Receive Credentials as an Organization
UniCore can not only issue and verify credentials, it can also act as a holder on behalf of your organization, like an organizational wallet. This is useful when another organization issues a credential to you (e.g. a certification, an accreditation or an endorsement) that you want to store and show to others.
Steps
-
Receive an offer: Another issuer sends a credential offer to your UniCore instance.
-
Accept or reject the offer: Decide whether you want to store the credential.
-
Use the credential: List stored credentials and create presentations from them.
1. Receive an offer
Issuers can send credential offers directly to your UniCore instance. When using UniCore as the issuer, this is done via the /v0/offers/send-offer-to-organization endpoint, using the URL of your instance as targetUrl.
Received offers are listed at GET /v0/holder/offers. An offer only contains metadata about the credential, the credential itself is only transmitted after you accept it.
2. Accept or reject the offer
- To accept an offer, make a
POSTrequest to/v0/holder/offers/{offer_id}/accept. UniCore then requests the credential from the issuer and stores it. - To reject an offer, make a
POSTrequest to/v0/holder/offers/{offer_id}/reject.
UniCore currently supports offers using the pre-authorized code flow. Offers that require a different flow are rejected with 501 Not Implemented.
3. Use the credential
- List all credentials held by your organization with
GET /v0/holder/credentials. - Create a signed presentation containing one or more of these credentials by making a
POSTrequest to/v0/holder/presentationswith theircredentialIds. - Retrieve the signed presentation as a compact JWT from
GET /v0/holder/presentations/{presentation_id}/signedand share it with anyone who needs to verify it.
Presentations can also be published in your DID document as Linked Verifiable Presentations (/v0/add-linked-verifiable-presentations), so that anyone who resolves your DID can see, for example, that you are endorsed by another organization.