Appearance
Universal Issuer
The Universal Issuer enables the issuance of different types of Verifiable Credentials (VCs), using a common interface.
The Universal Issuer can issue Verifiable Credentials in various formats (JSON-LD, VC-JWT, SD-JWT), as well as return metadata.
API Reference
See API Reference.
Issue a VC
When issuing a VC, the input is a credential plus options, and the output is the Verifiable Credential including a proof.
Issue a VC
The following request will return a Verifiable Credential.
NOTE
the issuer
DID must exist in your account's Wallet Service.
Supported options:
Field | Note | Possible Values | Default Value |
---|---|---|---|
format | The format of the Verifiable Credential to issue. | jsonld , jwt , jsonldjwt , sdjwt | jsonld |
type | The type of proof to generate for the Verifiable Credential. | Ed25519Signature2018 , Ed25519Signature2018 , JsonWebSignature2020 , etc. | If omitted, a default type of proof for the Issuer's verification method will be used. |
verificationMethod | The URI of the verification method to use for generating the proof. | If omitted, a default verification method for the Issuer's DID will be used. | |
proofPurpose | The purpose of the proof. | assertionMethod | |
returnMetadata | Whether to return metadata in the response. | true , false | false |
credentialStatus.type | The type of status list to set up for the Verifiable Credential. | RevocationList2020Status , StatusList2021Entry , etc. | If omitted, no status list will be set up. |
credentialFormatOptions.documentLoaderEnableHttps | Whether to load JSON-LD contexts remotely via HTTPS. | true , false | true |
credentialFormatOptions.documentLoaderEnableHttp | Whether to load JSON-LD contexts remotely via HTTP. | true , false | false |
credentialFormatOptions.documentLoaderEnableFile | Whether to load JSON-LD contexts remotely via local files. | true , false | false |
proofFormatOptions.overrideCanonicalization | Override the canonicalization algorithm to be used. | urdna2015 , jcs | If omitted, a default canonicalization algorithm for the format and proof type will be used. |
bash
curl -H "Authorization: Bearer b082c420-df67-4b06-899c-b7c51d75fba0" \
-X POST "https://api.godiddy.com/1.0.0/universal-issuer/credentials/issue" \
-H "Content-Type: application/json" \
-d '{
"credential": {
"@context": [
"https://www.w3.org/2018/credentials/v1",
"https://essif.europa.eu/schemas/vc/2020/v1"
],
"type": [
"VerifiableCredential",
"VerifiableAttestation",
"DiplomaCredential"
],
"issuer": "did:key:z6MkpMuEMxTKFnNugkZBa5YDtrwNaDun2HjSMiQNeUxsEB24",
"credentialSubject": {
"type": "Student",
"id": "did:key:z6MkqyYXcBQZ5hZ9BFHBiVnmrZ1C1HCpesgZQoTdgjLdU6Ah",
"studyProgram": "Master Studies in Computer Science",
"learningAchievement": "Master of Science",
"dateOfAchievement": "2021-03-18T00:00:00.000Z",
"eqfLevel": "http://data.europa.eu/snb/eqf/7",
"targetFrameworkName": "European Qualifications Framework for lifelong learning - (2008/C 111/01)"
}
},
"options": {
"format": "jsonld",
"type": "Ed25519Signature2020",
"returnMetadata": false,
"credentialFormatOptions": {
"documentLoaderEnableHttps": true
}
}
}'
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
Issue a VC with status list support
The following request will return a Verifiable Credential with status list support (revocation).
NOTE
The issuer
DID must exist in your account's Wallet Service.
NOTE
The request includes the credentialStatus.type
option.
bash
curl -H "Authorization: Bearer b082c420-df67-4b06-899c-b7c51d75fba0" \
-X POST "https://api.godiddy.com/1.0.0/universal-issuer/credentials/issue" \
-H "Content-Type: application/json" \
-d '{
"credential": {
"@context": [
"https://www.w3.org/2018/credentials/v1",
"https://essif.europa.eu/schemas/vc/2020/v1"
],
"type": [
"VerifiableCredential",
"VerifiableAttestation",
"DiplomaCredential"
],
"issuer": "did:key:z6MkpMuEMxTKFnNugkZBa5YDtrwNaDun2HjSMiQNeUxsEB24",
"credentialSubject": {
"type": "Student",
"id": "did:key:z6MkqyYXcBQZ5hZ9BFHBiVnmrZ1C1HCpesgZQoTdgjLdU6Ah",
"studyProgram": "Master Studies in Computer Science",
"learningAchievement": "Master of Science",
"dateOfAchievement": "2021-03-18T00:00:00.000Z",
"eqfLevel": "http://data.europa.eu/snb/eqf/7",
"targetFrameworkName": "European Qualifications Framework for lifelong learning - (2008/C 111/01)"
}
},
"options": {
"format": "jsonld",
"type": "Ed25519Signature2020",
"returnMetadata": false,
"credentialFormatOptions": {
"documentLoaderEnableHttps": true
},
"credentialStatus": {
"type":"StatusList2021Entry"
}
}
}'
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
Create an OID4VCI Credential Offer
When creating an OID4VCI Credential Offer, the inputs are the schema, format, and claim values, and the output is the Credential Offer.
As a prerequisite, a configuration value with key oidc
has to be set according to Issuer Configuration, which must contain one or more OID4VCI credential configurations, using of the DIDs in your Wallet Service.
Create an OID4VCI Credential Offer
The following request will return an OID4VCI Credential Offer.
bash
curl -H "Authorization: Bearer b082c420-df67-4b06-899c-b7c51d75fba0" \
-X POST "https://api.godiddy.com/1.0.0/universal-issuer-oid4vci/v13/authorize/pre-authorize" \
-H "Content-Type: application/json" \
-d '{
"claims": {
"type": "AchievementSubject",
"achievement": {
"type": "Achievement",
"name": "Universal Issuer issued Open Badge v3 credential",
"description": "Wallet can store and display Badge v3 credential",
"criteria": {
"type": "Criteria",
"narrative": "The first cohort of the JFF Plugfest 3 in Oct/Nov of 2023 collaborated to push interoperability of VCs in education forward."
},
"image": {
"id": "https://w3c-ccg.github.io/vc-ed/plugfest-2-2022/images/JFF-VC-EDU-PLUGFEST2-badge-image.png",
"type": "Image"
}
}
},
"schema": "OpenBadgeCredential_jwt_vc_json"
}'
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
claims
: Claims of the VC.schema
: The schema of the credential. Theschema
should be configured in the Issuer Configuration.