Offers (DCP)
The POST request to the /offers endpoint prompts a holder to request a new Verifiable Credential.
A Credential Issuer can proactively prompt a Holder to request a new Verifiable Credential. More information in the DCP specification.
Credential offer received successfully
No content
Bad Request - Invalid credential offer request
Internal Server Error
POST /offers HTTP/1.1
Host:
Content-Type: application/json
Accept: */*
Content-Length: 2
{}No content
Request model
The model for the CredentialOfferMessage is defined in: https://eclipse-dataspace-dcp.github.io/decentralized-claims-protocol/v1.0/resources/issuance/credential-offer-message-schema.json.
@contextArray of Strings. Root level. (Required) Specifies a valid Json-Ld context. Must contain"https://w3id.org/dspace-dcp/v1.0/dcp.jsonld"typeString. Root level. (Required) A string specifying the CredentialOfferMessage type. Must contain"CredentialOfferMessage"issuerString. Root level. (Required) The credential issuer DID.
credentialsArray of Objects. Root level. (Required) An array of credential objects that the issuer supports.idString. Contained in the credential object. (Required) A string defining a unique, stable identifier for this CredentialObject.typeString. Contained in credential object. (Required) A string specifying the object type. Must containCredentialObject.credentialTypeString. Contained in credential object. A single string specifying type of credential being offered.bindingMethodsArray of strings. Contained in credential object. An array of strings defining the key material that an issued credential is bound to.profileString. Contained in credential object. Contains the alias of the profiles, e.g."vc20-bssl/jwt".issuancePolicyObject. Contained in credential object. A presentation definition signifying the required Verifiable Presentation for issuance. Further details are omitted from this specifications, refer to https://identity.foundation/presentation-exchange/spec/v2.1.1/#presentation-definition for more information.
Example request
POST /offers
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
{
"@context": [
"https://w3id.org/dspace-dcp/v1.0/dcp.jsonld"
],
"type": "CredentialOfferMessage",
"issuer": "did:ishare:EU.NL.NTRLNL-10000000",
"credentials": [
{
"id": "d5c77b0e-7f4e-4fd5-8c5f-28b5fc3f96d1",
"type": "CredentialObject",
"credentialType": "FrameworkRole",
"bindingMethods": [
"did:web"
],
"profile": "vc10-sl2021/jwt",
"issuancePolicy": {
"id": "a468fc48-5c1a-43c7-903e-ab1851882afb",
"input_descriptors": [
{
"id": "framework-compliance",
"name": "Requires proof of compliance to framework",
"purpose" ::
"constraints": {
"fields": [
{
"path": [
"$.vc.type"
],
"filter": {
"type": "string",
"pattern": "^FrameworkCompliance$"
}
}
]
}
}
]
}
}
]
}Response model
On succesfull receipt of the CredentialOfferMessage, the holder must return a 200 code.
Last updated