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. |
dcql_query
objectresponse_mode=fragment
:
The wallet will redirect the browser back to redirect_uri
with the vp_token
and other parameters in the fragment part of the URL.
response_mode=direct_post.jwt
:
The wallet will send a direct POST request to the redirect_uri
containing a signed JWT.
request_uri
)request_uri
: