Documentation
Guides, API reference, and examples for integrating with VU Credentials.
Getting Started
Create your account, configure credential types, and issue your first credential in under 5 minutes.
Authentication
VU Credentials uses API keys for server-to-server authentication. Create and manage keys in the dashboard.
OIDC4VCI Issuance Flow
The credential issuance follows the OIDC4VCI pre-authorized code flow: create an offer, wallet exchanges for a token, then fetches the signed credential.
Verifying Credentials
Relying parties verify JWT VCs by fetching the issuer public key from /jwks and checking the ES256 signature, expiration, and credentialSubject.type.
Webhooks
Receive HMAC-SHA256 signed HTTP POST callbacks when credentials are issued. Configure your endpoint in Settings.
Discovery Endpoints
Public endpoints for wallet and verifier discovery. No authentication required.
API Endpoints
Core endpoints for credential issuance and verification
| Method | Path | Description |
|---|---|---|
| POST | /v1/offers | Create a credential offer |
| POST | /token | Exchange pre-authorized code for access token |
| POST | /credential | Issue a signed JWT VC |
| GET | /.well-known/openid-credential-issuer/:slug | Issuer metadata |
| GET | /.well-known/did.json | DID Web document |
| GET | /jwks | JSON Web Key Set |
Create Offer Request
POST /v1/offers with your API key
curl -X POST https://issuer.vucredentials.com/v1/offers \
-H "X-Api-Key: vu_your_api_key_here" \
-H "Content-Type: application/json" \
-d '{
"credentialTypeSlug": "kyc-level-2",
"subjectId": "user-123",
"claims": {
"firstName": "Jane",
"lastName": "Doe",
"country": "GB",
"kycProvider": "Onfido",
"kycStatus": "approved",
"kycApprovedAt": "2026-03-15T10:00:00Z"
}
}'
# Response:
# { "offerUri": "openid-credential-offer://...?credential_offer=..." }