credit-card-blankCredential Endpoint (OpenID4VCI)

circle-info

Specifications and best practice implementations for Verifiable Credentials are currently being developed. This page is expected to be updated, closely following these developments.

The POST request to the /credential endpoint is where credential requests are made and verifiable credentials are issued. This endpoint is part of the OpenID for Verifiable Credential Issuance (OpenID4VCI) protocol.

circle-info

The POST request to the /credential is an OPTIONAL endpoint and is part of iSHARE Framework's Verifiable Credentials support in line with OpenID for Verifiable Credential Issuance (OpenID4VCI).

Endpoint

POST /credential

The URL for this endpoint is provided in the Credential Issuer Metadata (see Credential Issuer Metadata).

Request model

Headers

  • Authorization String. (Required) OAuth 2.0 authorization based on bearer token. MUST contain "Bearer " + access token value. The access token is obtained from the Token Endpoint.

  • Content-Type String. MUST be equal to application/json.

Parameters

The request body MUST be a JSON object containing:

  • format String. The credential format requested (e.g., vc+sd-jwt, mso_mdoc). If not specified, the issuer's default format is used.

  • credential_definition Object. The credential definition specifying the type of credential requested:

    • type Array of Strings. (Required) Array of credential types (e.g., ["VerifiableCredential", "ParticipantCredential"]).

  • proof Object. Proof of possession of the key material. Contains:

    • proof_type String. (Required) The proof type (e.g., jwt).

    • jwt String. The JWT proof when proof_type is jwt. This JWT MUST be signed with the holder's key and MUST include the c_nonce received from the token endpoint.

  • transaction_id String. Transaction identifier for tracking the credential issuance request.

Example request

Response model

The response is a JSON object containing:

  • format String. (Required) The credential format of the issued credential.

  • credential String. (Required) The issued verifiable credential. The format depends on the format value:

    • For vc+sd-jwt: A signed JWT containing the credential

    • For mso_mdoc: A mobile document format credential

  • c_nonce String. A new nonce for subsequent credential requests.

  • c_nonce_expires_in Integer. The lifetime in seconds of the c_nonce.

Example response

iSHARE-Specific Requirements

Within iSHARE, the following requirements apply:

Last updated