Verification Requests
SVX Wallet supports verification request via OpenID 4 Verifiable Presentation (OID4VP)
A verification request is an OAuth 2.0 Authorization Request.
It can be generated based on an existing Verification Template.
The resulting Authorization Request object will convey the required credential.
SVX Wallet supports verification of presentation responses via the following response modes:
direct_postdirect_post.jwt
SVX Wallet supports the verifiable presentations of the following formats
jwt_vc_jsondc+sd-jwtmso_mdoc
Prerequisites
Who can undertake this operation?
Verification requests can only be created by people who have access to API. It can be managed by people who have access to the Dashboard and the API.
Generate Verification Request
Creation of a verification request
Endpoint
Use the following example to create a verification request with the Admin API:
The API returns the created verification request including its generated id.
The verification request object JWT can then be retrieved from the following URL.
GET {SVX_WALLET_BASE_URL}/verifier/requests/{id}/jwt
The above URL delivers a JWT-Secured Authorization Request (JAR) wth the typ header value oauth-authz-req+jwt.
The request also includes a client_id that with a prefix that can be used to specify the mechanism to obtain and validate the metadata of the verifier.
For example:
The requestee is expected to send a response to the following endpoint:
POST {SVX_WALLET_BASE_URL}/verifier/requests/{id}/responses
The SVX Wallet supports the following response_types:
direct_postdirect_post.jwtfor encrypted responses
direct_post
direct_postExample of a presentation response sent to the Verifier (SVX Wallet).
direct_post.jwt - encrypted response
direct_post.jwt - encrypted responseThe required information for the requestee to derive the shared secret are included in the request object. And similarly for the verifier as a requestor, the information to derive the shared secret is included in the encrypted response.
Example of an encrypted presentation response sent to the verifier (SVX Wallet).
An example of the decrypted JWT payload would be:
Which is similar to what is sent in a direct_post response mode.
Remaining endpoints
GET /verifier/requests- List all available verifier requestsGET /verifier/requests/{id}- Read verifier request by IDDELETE /verifier/requests/{id}- Read verifier request by IDGET /verifier/requests/{id}/responses- List all received presentation responses for a verification requestGET /verifier/requests/{id}/responses/{responseId}- Read presentation response by IDDELETE /verifier/requests/{id}/responses/{responseId}- Delete stored presentation response by ID
Last updated