⚠️ This API is under active development, please contact us for help ⚠️
Endpoint
Query Parameters
Name | Type | Required | Description |
---|---|---|---|
response_type | string | ✅ | Must be vp_token . |
response_mode | string | ✅ | Must be one of: fragment or direct_post.jwt . |
client_id | string | ✅ | Identifier of the Verifier (your server). Must match the x509_san_dns in your TLS certificate. Example: verifier.com . If the value is prefixed with x509_san_dns: , domain ownership will be verified. Without the prefix, it is treated as a pre-registered client. |
redirect_uri | string | ✅ | Verifier’s callback endpoint to receive the presentation response. Example: https://verifier.com/callback . |
dcql_query | object | ✅ | A JSON object describing the requested credentials, URL-encoded as a string. |
nonce | string | ✅ | Strong cryptographic random value to prevent replay attacks. Must be validated in the response. |
state | string | ❌ | Verifier-generated value to maintain application state and prevent CSRF attacks. |
Example Request
Example dcql_query
object
JSON
Response
Once the wallet processes the request:-
If
response_mode=fragment
: The wallet will redirect the browser back toredirect_uri
with thevp_token
and other parameters in the fragment part of the URL. -
If
response_mode=direct_post.jwt
: The wallet will send a direct POST request to theredirect_uri
containing a signed JWT.
Authorization Request (request_uri
)
Use of Authorization Requests is RECOMMENDED to ensure confidentiality, integrity, and authenticity of the request data, and to avoid issues caused by large request sizes.
Example of Authorization Request Using request_uri
: