Create a credential offer
The relying party issuer application provides the user experience that guides the user to
initiate a request for credential issuance. The relying party application creates a credential offer
and initial issuance state with the issuing agent that is hosted at the DC Agency Service. The
relying party application is responsible for sourcing and supplying the attributes and values that
are minted into the credential.
Note: Use an access token that is obtained by using the client
credentials grant with the credentials of the issuing agent to initiate this call.
POST https://<host>/diagency/v1.0/oidvc/vci/offers
{
"credential_configuration_ids": [
"2:mso_mdoc:baf2fda8-c412-428d-afe5-022c809c2c2c"
],
"credential_data": {
"org.iso.18013.5.1:family_name": "Breton",
"org.iso.18013.5.1:given_name": "Jessica",
"org.iso.18013.5.1:driving_privileges": "CAR",
"org.iso.18013.5.1:document_number": "1012923848"
}
}
The successful result of this call is a response that contains an OID4VCI credential offer. The
relying party issuer application displays a QR code or notifies the user wallet about the
offer.
https://${service_url}/diagency/v1.0/oidvc/vci/offers: (201)
{
"id": "6af001dc-88f6-4ae0-b65b-0be53416eee5",
"credentialOfferPayload": {
"credential_issuer": "https://${service_url}/diagency/v1.0/oidvc/vci/607f029f-f2b6-4731-b66f-5c2b805f5865",
"credential_configuration_ids": [
"2:mso_mdoc:baf2fda8-c412-428d-afe5-022c809c2c2c"
],
"grants": {
"authorization_code": {
"authorization_server": "https://${OP_HOST}/oauth2",
"issuer_state": "6af001dc-88f6-4ae0-b65b-0be53416eee5",
"client_id": "default_oid4vci_wallet"
}
}
},
"state": "OfferCreated"
}
The wallet obtains an access token to request a credential at the /credential
endpoint of the issuing agent.