credit-card-blankCredential storage (DCP)

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 /credentials endpoint with a CredentialMessage requests the storage of a credential. All roles (participants) must support this endpoint, since all roles must be able to store credentials. The endpoint would typically be provided by a Wallet provider.

circle-info

The POST request to the /credentials is an OPTIONAL endpoint and is part of the iSHARE Framework's Verifiable Credentials support in line with the Decentralised Claims Protocol (DCP).

Request issuance or storage of a Verifiable Credential

post

If invoked with a credential-request message, requests the issuance of a Verifiable Credential according to the Eclipse Decentralized Claims Protocol v1.0 specification. This is applicable to issuers only. If invoked with a credential-message, requests the storage of a credential, applicable to all roles (participants), since all roles must be able to store credentials. More information in the DCP specification of the credential request APIarrow-up-right and the DCP specification of the storage APIarrow-up-right.

Authorizations
AuthorizationstringRequired

iSHARE JWT Bearer token authentication

Body
object · CredentialRequestMessageSchemaOptional
or
object · CredentialMessageSchemaOptional
Responses
chevron-right
201

Credential (request) created successfully

post
/credentials

No content

Request model

The model for the CredentialMessage is defined in: https://eclipse-dataspace-dcp.github.io/decentralized-claims-protocol/v1.0/resources/issuance/credential-message-schema.jsonarrow-up-right.

  • @context Array of Strings. Root level. (Required) Specifies a valid Json-Ld context. Must contain "https://w3id.org/dspace-dcp/v1.0/dcp.jsonld"

  • type String. Root level. (Required) A string specifying the CredentialRequestMessage type. Must contain "CredentialMessage"

  • credentials Array of objects. Root level. An array of Credential Container objects.

    • credentialType String. Contained in Credential Container object. (Required) A single string specifying type of credential. Could contain a reference to a credential type defined in the iSHARE Framework (as Credential Schema).

    • payload String. Contained in Credential Container object. (Required) A Json Literalarrow-up-right containing a Verifiable Credential defined by VC DataModel version of the selected profile.

    • format String. Contained in Credential Container object. (Required) A JSON string that describes the format of the credential to be issued. Typically contains "jwt".

  • issuerPid String. Root level. (Required) A string corresponding to the issuance id on the Issuer side.

  • holderPid String. Root level. A string corresponding to the request id on the Holder side.

  • status String. Root level. (Required) A string stating whether the request was successful (ISSUED) or rejected (REJECTED).

Example request

Response model

After success, a 201 response will be provided.

Last updated