Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Resolve a did:cheqd Decentralized Identifier (DID) to fetch the associated DID Document, using cheqd Studio.
Use the cheqd MCP server to provision your AI Agent its own DID.
Publish multiple revocation or suspension updates, or rotate encryption keys using cheqd Studio.
Search for a DID-Linked Resource (DLR) associated with a cheqd Decentralized Identifier (DID) over REST API, using cheqd Studio.

Suspend or unsuspend a W3C Verifiable Credential using cheqd Studio.
Update the indices of a Bitstring Status List as a DID-Linked Resource (DLR) on cheqd, using cheqd Studio.
Generate API Keys to securely authenticate with cheqd Studio APIs.
Create a standalone public/private keypair, used to create Decentralized Identifiers (DIDs), using cheqd Studio.
Verify and validate your AI Agent's trust with cheqd's MCP server and TRAIN.




options must contain the revocation flag, and the size of the revocation registry. Also, ensure that a Tails Server is configured for the issuer.await agent.modules.cheqd.resolveResource(
'did:cheqd:testnet:92874297-d824-40ea-8ae5-364a1ec9237d/resources/6de33634-6439-4e46-aa3f-bfe03606b000'
)await agent.modules.cheqd.resolveResource(
'did:cheqd:testnet:92874297-d824-40ea-8ae5-364a1ec9237d?resourceName=exampleTrustRegistry&resourceType=TrustRegistry'
)await agent.modules.cheqd.resolveResource(
'did:cheqd:testnet:<uuid>?resourceName=example&resourceType=exampleType&resourceVersionTime=2023-01-01T00:00:00Z'
)const credentialDefinitionResult = await agent.modules.anoncreds.registerCredentialDefinition({
credentialDefinition: {
tag: 'default',
issuerId: '<did>',
schemaId: schemaResult.schemaState.schemaId,
},
options: {
supportRevocation: false,
},
})
if (credentialDefinitionResult.credentialDefinitionState.state === 'failed') {
throw new Error(
`Error creating credential definition: ${credentialDefinitionResult.credentialDefinitionState.reason}`
)
}/<mcp-server-name>:whois


Tutorial: Issue a Verifiable Credential using MCP Toolkit
Chronological changelog for cheqd Studio portal releases.
Get started with cheqd's API product offering for creating DIDs, trust registries and monetising credentials: cheqd Studio.
Understand how to issue a W3C Verifiable Credential including an encrypted Status List in the body.
Build and validate Decentralized Trust Chains, using cheqd Decentralized Identifiers (DIDs) and Verifiable Accreditations stored as DID-Linked Resources (DLRs).
Update a Token Status List JWT or CWT as a new DID-Linked Resource (DLR), using cheqd Studio.
Learn about structuring Verifiable Accreditations from a Trusted Accreditation Organisation (TAO) to a Trusted Issuer (TI) on cheqd.
Create a DID-Linked Resource (DLR) associated with a cheqd Decentralized Identifier (DID) over REST API, using cheqd Studio.
Create cheqd DID-Linked Resources (DLRs) linked to cheqd Decentralized Identifiers (DIDs) using Credo.
{
"anoncreds": {
"requested_attributes": <<requestedAttributes>>,
"requested_predicates": <<requestedPredicates>>,
"self_attested_attributes": {}
}










agent.dids.create(), but this does require an endorser DID to be present as the submitterDid. This is optional, if you have created a DID from the agent before as described here.await agent.dids.deactivate({
did: 'did:cheqd:testnet:b84817b8-43ee-4483-98c5-f03760816411',
options: {
versionId: '3.0', // Optional: for tracking version history or audit purposes
},
})const seed = TypedArrayEncoder.fromString(`<seed>`) // Secret seed. Should be kept secure in production!
const cheqdDid = 'did:cheqd:testnet:d37eba59-513d-42d3-8f9f-d1df0548b675' // Cheqd DID to be imported
await agent.dids.import({
did: cheqdDid,
overwrite: true,
privateKeys: [
{
privateKey: seed,
keyType: KeyType.Ed25519,
},
],
})const schemaResult = await agent.modules.anoncreds.registerSchema({
schema: {
attrNames: ['name', 'degree', 'date'],
issuerId: '<did>',
name: 'Example Schema to register',
version: '1.0.0',
},
options: {},
})
if (schemaResult.schemaState.state === 'failed') {
throw new Error(`Error creating schema: ${schemaResult.schemaState.reason}`)
}.envENABLE_AUTHENTICATIONtrue.envemploymentCredentialRevocationListdid:cheqd:testnet:7bf81a20-633c-4cc7-bc4a-5a45801005e0

{
"alg": "ES256",
"kid": "12",
"typ": "statuslist+jwt"
}
.
{
"exp": 2291720170,
"iat": 1686920170,
"iss": "https://example.com",
"status_list": {
"bits": 3,
"lst": "eNrbuRgAAhcBXQHutdpRiBFREinSjQfeTpXmdQfwefegD"
},
"sub": "https://example.com/statuslists/1"
}d28453a20126106e7374617475736c6973742b637774a1044231325860a502782168
747470733a2f2f6578616d706c652e636f6d2f7374617475736c697374732f310173
68747470733a2f2f6578616d706c652e636f6d061a648c5bea041a8898
56a2646269747301636c73744a78dadbb918000217015d58400f2ca3772e10b09d5d
6ed56461f7cba1a816c6234072d1bb693db277048e5db5a4e64444492a9
c9714db99cc7aadb3812ec90cab7794170bab5b473Advanced setup guide for running the cheqd Studio.
Learn how to include or reference Trust Registries and Verifiable Accreditations within the body of W3C Verifiable Credentials.
Create a Token Status List JWT or CWT as a DID-Linked Resource (DLR), using cheqd Studio.
Get started with cheqd's identity functionality and product offerings.
Issue Verifiable Credentials with Credo, signed by cheqd Decentralized Identifiers (DIDs).
Create a DID-Linked Resource (DLR) on cheqd using the Credo Agent.
10{
"did": "string",
"statusListName": "string",
"index": 0,
"makeFeePayment": false
}"credentialSubject": {
"id": "did:cheqd:testnet:e66a9416-d03e-4ced-95e3-07af16e25bc5",
"accreditedFor": [
{
"schemaId": "did:cheqd:testnet:8ea036da-f340-480d-8952-f5561ea1763c/resources/b10146d7-0d0f-41e0-8ee3-c76db64890be",
"types": [
"VerifiableCredential",
"VerifiableAttestation",
"DiplomaCredential"
],
"limitJurisdiction": "https://publications.europa.eu/resource/authority/atu/FIN"
}
]
},
"termsOfUse": {
"type": "AccreditationPolicy",
"parentAccreditation": "did:cheqd:testnet:8ea036da-f340-480d-8952-f5561ea1763c/resources/18de60ec-bed1-42e5-980c-601c432bc60b",
"rootAuthorization": "did:cheqd:testnet:8ea036da-f340-480d-8952-f5561ea1763c/resources/18de60ec-bed1-42e5-980c-601c432bc60b"
}
{
"name": "degreeSchema",
"version": "1.5.7",
"attrNames": ["name", "age", "degree", "grade"]
}$ base64 -w 0 resource.json
<path-to-the-resource-file>$ base64 -w 0 resource.json
SGVsbG8sIHdvcmxkimport { ProofEventTypes, ProofState } from '@credo-ts/core'
const setupProofListener = (agent: Agent) => {
agent.events.on(ProofEventTypes.ProofStateChanged, async ({ payload }) => {
const { proofRecord } = payload
switch (proofRecord.state) {
case ProofState.RequestReceived:
console.log('Holder: Proof request received, creating presentation...')
const requestedCredentials = await agent.proofs.selectCredentialsForRequest({
proofRecordId: proofRecord.id,
})
await agent.proofs.acceptRequest({
proofRecordId: proofRecord.id,
proofFormats: {
presentationExchange: {
credentials: requestedCredentials.proofFormats['presentation-exchange']?.credentials || {},
},
},
})
break
case ProofState.PresentationReceived:
console.log('Issuer: Presentation received, verifying...')
await agent.proofs.acceptPresentation({
proofRecordId: proofRecord.id,
})
break
case ProofState.Done:
console.log('Proof verification completed!')
const proof = await agent.proofs.getById(proofRecord.id)
console.log('Proof is valid:', proof.isVerified)
break
}
})
}// Define what we want to verify
const presentationDefinition = {
id: 'permanent-resident-verification',
input_descriptors: [
{
id: 'permanent-resident-card',
name: 'Permanent Resident Card',
purpose: 'Verify permanent resident status',
constraints: {
fields: [
{
path: ['$.type'],
filter: {
type: 'array',
contains: { const: 'PermanentResidentCard' },
},
},
{
path: ['$.credentialSubject.givenName'],
filter: { type: 'string' },
},
{
path: ['$.credentialSubject.familyName'],
filter: { type: 'string' },
},
{
path: ['$.credentialSubject.lprNumber'],
filter: { type: 'string' },
},
],
},
},
],
}
// Get Connection
const {invitationUrl, issuerConnection} = await createInvitation(issuerAgent)
console.log('Requesting proof verification...')
const proofExchange = await issuerAgent.proofs.requestProof({
connectionId: issuerConnection.id,
protocolVersion: 'v2',
proofFormats: {
presentationExchange: { presentationDefinition },
},
comment: 'Please present your Permanent Resident Card for verification',
})
console.log('Proof request sent:', proofExchange.id)
// The rest of the flow is handled automatically by event listenersimport { DidDocumentService } from '@credo-ts/core'
await agent.dids.update({
did: 'did:cheqd:testnet:b84817b8-43ee-4483-98c5-f03760816411',
// Used to authorize and derive additional keys, if needed
secret: {
verificationMethod: {
id: 'key-2',
type: 'JsonWebKey2020', // Can also be Ed25519VerificationKey2020, etc.
},
},
didDocument: {
id: 'did:cheqd:testnet:b84817b8-43ee-4483-98c5-f03760816411',
controller: ['did:cheqd:testnet:b84817b8-43ee-4483-98c5-f03760816411'],
verificationMethod: [
{
id: 'did:cheqd:testnet:b84817b8-43ee-4483-98c5-f03760816411#key-1',
type: 'Ed25519VerificationKey2020',
controller: 'did:cheqd:testnet:b84817b8-43ee-4483-98c5-f03760816411',
publicKeyMultibase: 'z6MknkzLUEP5cxqqsaysNMWoh8NJRb3YsowTCj2D6yhwyEdj',
},
],
authentication: [
'did:cheqd:testnet:b84817b8-43ee-4483-98c5-f03760816411#key-1',
],
service: [
new DidDocumentService({
id: 'did:cheqd:testnet:b84817b8-43ee-4483-98c5-f03760816411#website',
type: 'linkedDomains',
serviceEndpoint: 'https://rand.in',
}),
],
},
})// from mcp-toolkit folder
cd docker
docker compose --profile demo up -d{
"alias": "Faber",
"handshake_protocols": ["https://didcomm.org/didexchange/1.1"],
"use_public_did": false,
"my_label": "Invitation to Faber"
}$ base64 -w 0 resource.json
<path-to-the-resource-file>$ base64 -w 0 resource.json
HfSynOpmBrhgfYguING{
"data": "HfSynOpmBrhgfYguING",
"encoding": "base64url",
"name": "DegreeCredentialStatus",
"type": "TokenStatusList"
}docker compose -f docker/no-external-db/docker-compose-no-db.yml up --detachLOGTO_WEBHOOK_SECRET










did:cheqd){
"@context": [
"https://www.w3.org/ns/credentials/v2",
"https://www.w3.org/ns/credentials/examples/v2"
],
"id": "http://university.example/credentials/3732",
"type": ["VerifiableCredential", "ExampleDegreeCredential"],
"issuer": "did:cheqd:testnet:c2f18b6b-32e2-48d1-a5a8-5f5d2d9798f0",
"validFrom": "2010-01-01T00:00:00Z",
"credentialSubject": {
"id": "did:cheqd:testnet:b4902745-5b5b-423e-820a-0773b033f2b9",
"degree": {
"type": "ExampleBachelorDegree",
"name": "Bachelor of Science and Arts"
}
},
"termsOfUse": {
"type": "AttestationPolicy",
"parentAccreditation": "did:cheqd:testnet:c2f18b6b-32e2-48d1-a5a8-5f5d2d9798f0/resources/58c01595-f884-4a3b-add4-8c691e16b8ee",
"rootAuthorization": "did:cheqd:testnet:c2f18b6b-32e2-48d1-a5a8-5f5d2d9798f0/resources/58c01595-f884-4a3b-add4-8c691e16b8ee"
}
}
{
"issuer": "did:cheqd:testnet:c2f18b6b-32e2-48d1-a5a8-5f5d2d9798f0",
"type": ["VerifiableCredential", "ExampleDegreeCredential"],
"termsofuse": "AttestationPolicy",
"parentAccreditation": "did:cheqd:testnet:c2f18b6b-32e2-48d1-a5a8-5f5d2d9798f0/resources/58c01595-f884-4a3b-add4-8c691e16b8ee",
"DNSTrustFrameworkPointers": ["example.trust-scheme.org"]
}{
"VerificationStatus": true,
"VerificationResult": {
"AccreditorDIDs": [
"did:cheqd:testnet:c2f18b6b-32e2-48d1-a5a8-5f5d2d9798f0",
"did:cheqd:testnet:8ea036da-f340-480d-8952-f5561ea1763c"
],
"FoundRootIssuerDID": "did:cheqd:testnet:8ea036da-f340-480d-8952-f5561ea1763c",
"TrustFramework": "Example Trust Framework",
"TrustFrameworkId": "https://example.com/governance-framework/124",
"VerifyRootIssuerDIDinDNS": true
}
}await this.agent.modules.proofs.requestProof({
protocolVersion: 'v2',
connectionId: connectionRecord.id,
proofFormats: {
anoncreds: {
name: 'proof-request',
version: '1.0',
requested_attributes: {
name: {
name: 'name',
restrictions: [
{
cred_def_id: this.credentialDefinition?.credentialDefinitionId,
},
],
},
},
},
},
})this.agent.events.on(ProofEventTypes.ProofStateChanged
async ({ payload }: ProofStateChangedEvent) => {
if (payload.proofRecord.state === ProofState.RequestReceived) {
const requestedCredentials = await this.agent.modules.proofs.selectCredentialsForRequest({
proofRecordId: payload.proofRecord.id,
})
await this.agent.modules.proofs.acceptRequest({
proofRecordId: proofRecord.id,
proofFormats: requestedCredentials.proofFormats,
})
}
})// Create a verifier, assuming the agent is called 'verifier'
const openId4VcVerifier = await verifier.modules.openId4VcVerifier.createVerifier({})
// Create a did:key that we will use for signing OpenID4VP authorization requests
const verifierDidResult = await issuer.dids.create<KeyDidCreateOptions>({
method: 'key',
options: {
keyType: KeyType.Ed25519,
},
})
if (verifierDidResult.didState.state !== 'finished') {
throw new Error('DID creation failed.')
}
const verifierDidKey = DidKey.fromDid(verifierDidResult.didState.did)const { authorizationRequest, verificationSession } =
await verifier.modules.openId4VcVerifier.createAuthorizationRequest({
verifierId: openId4VcVerifier.verifierId,
requestSigner: {
didUrl: `${verifierDidKey.did}#${verifierDidKey.key.fingerprint}`,
method: 'did',
},
// Add DIF presentation exchange data
presentationExchange: {
definition: {
id: '9ed05140-b33b-445e-a0f0-9a23aa501868',
name: 'Employee Verification',
purpose: 'We need to verify your employee status to grant access to the employee portal',
input_descriptors: [
{
id: '9c98fb43-6fd5-49b1-8dcc-69bd2a378f23',
constraints: {
// Require limit disclosure
limit_disclosure: 'required',
fields: [
{
filter: {
type: 'string',
const: 'AcmeCorpEmployee',
},
path: ['$.vct'],
},
],
},
},
],
},
},
})// Listen and react to changes in the verification session
verifier.events.on<OpenId4VcVerificationSessionStateChangedEvent>(
OpenId4VcVerifierEvents.VerificationSessionStateChanged,
async (event) => {
if (event.payload.verificationSession.id === verificationSession.id) {
console.log('Verification session state changed to ', event.payload.verificationSession.state)
}
if (event.payload.verificationSession.state === OpenId4VcVerificationSessionState.ResponseVerified) {
const verifiedAuthorizationResponse = await verifier.modules.openId4VcVerifier.getVerifiedAuthorizationResponse(
verificationSession.id
)
console.log('Successfully verified presentation.', JSON.stringify(verifiedAuthorizationResponse, null, 2))
console.log('Exiting...')
process.exit()
}
}
)"app,logto"{
"alg": "ES256",
"kid": "12",
"typ": "statuslist+jwt"
}
.
{
"exp": 2291720170,
"iat": 1686920170,
"iss": "https://example.com",
"status_list": {
"bits": 1,
"lst": "eNrbuRgAAhcBXQ"
},
"sub": "https://example.com/statuslists/1"
}d28453a20126106e7374617475736c6973742b637774a1044231325860a502782168
747470733a2f2f6578616d706c652e636f6d2f7374617475736c697374732f310173
68747470733a2f2f6578616d706c652e636f6d061a648c5bea041a8898
56a2646269747301636c73744a78dadbb918000217015d58400f2ca3772e10b09d5d
6ed56461f7cba1a816c6234072d1bb693db277048e5db5a4e64444492a9
c9714db99cc7aadb3812ec90cab7794170bab5b473



Issue and manage Verifiable Credentials and Presentations, signed by cheqd Decentralized Identifiers (DIDs).
Issue a Verifiable Credential (AnonCreds), signed with a did:cheqd Decentralized Identifier (DID).
Receive and present a SD-JWT Verifiable Credential, signed by a did:cheqd Decentralized Identifier (DID), using Credo and OpenID4VP.
chmod +x docker/with-external-db/pg-init-scripts/create-multiple-postgresql-databases.shdocker compose -f docker/with-external-db/docker-compose-with-db.yml --profile logto up --detachdocker compose -f docker/with-external-db/docker-compose-with-db.yml up --detachdocker compose -f docker/with-external-db/docker-compose-with-db.yml --profile app-setup up --detachdocker compose -f docker/with-external-db/docker-compose-with-db.yml --profile logto-setup up --detachdocker build --file docker/Dockerfile --target runner . --tag credential-service:localdid:cheqd:testnet:0ff9df5d-653b-4f77-a66c-0035abc34d63employmentCredentialRevocationList1400001.0https://www.foo.com{
"did": "did:cheqd:testnet:7c2b990c-3d05-4ebf-91af-f4f4d0091d2e",
"statusListName": "cheqd-employee-credentials",
"length": 140000,
"encoding": "base64url"
}Root Authorization for Trust Chain (published by rTAO)
↓
Verifiable Accreditation from rTAO to TAO
↓
Verifiable Accreditation from TAO to Trusted Issuer
↓
Verifiable Credential (Attestation) issued to subjectTAO: did:cheqd:gov-edu ← Department of Education
└── Root Authorization → "cheqd Governance Framework"
↓
TAO: did:cheqd:state-certifier ← State Certification Body
↓
Trusted Issuer: did:cheqd:university-123 ← Accredited University
↓
Verifiable Credential: Bachelor of Scienceconst key = await agent.wallet.createKey({
keyType: KeyType.Ed25519,
})
const ed25519PublicKeyBase58 = key.publicKeyBase58import { DidDocument } from '@credo-ts/core'
await agent.dids.create<CheqdDidCreateOptions>({
method: 'cheqd',
secret: {}, // No secret needed if key is already in wallet
options: {
network: 'testnet',
},
didDocument: new DidDocument({
id: 'did:cheqd:testnet:92874297-d824-40ea-8ae5-364a1ec9237d',
controller: ['did:cheqd:testnet:92874297-d824-40ea-8ae5-364a1ec9237d'],
verificationMethod: [
{
id: 'did:cheqd:testnet:92874297-d824-40ea-8ae5-364a1ec9237d#key-1',
type: 'Ed25519VerificationKey2018',
controller: 'did:cheqd:testnet:92874297-d824-40ea-8ae5-364a1ec9237d',
publicKeyBase58: ed25519PublicKeyBase58,
},
],
authentication: [
'did:cheqd:testnet:92874297-d824-40ea-8ae5-364a1ec9237d#key-1',
],
}),
})await agent.dids.create({
method: 'cheqd',
secret: {
verificationMethod: {
id: 'key-1', // Logical key name
type: 'Ed25519VerificationKey2020', // Or another supported type
},
},
options: {
network: 'testnet',
methodSpecificIdAlgo: 'uuid', // Optional: 'uuid' (default) or 'base58'
},
})trust.federation1.com. NS ns1.trust.federation1.com.
ns1.trust.federation1.com. A 203.0.113.10_did.trust.federation1.com. TXT "did:cheqd:mainnet:rtao123"await agent.modules.cheqd.createResource(
'did:cheqd:testnet:92874297-d824-40ea-8ae5-364a1ec9237d',
{
id: '6de33634-6439-4e46-aa3f-bfe03606b000',
name: 'exampleTrustRegistry',
resourceType: 'TrustRegistry',
version: '1.0',
data: {
name: 'Example Org',
jurisdiction: 'EU',
},
}
)$ base64 -w 0 resource.json
<path-to-the-resource-file>$ base64 -w 0 resource.json
SGVsbG8sIHdvcmxk{
"data": "SGVsbG8sIHdvcmxk",
"encoding": "base64url",
"name": "DegreeCredentialStatus",
"type": "TokenStatusList"
}"linkedResourceMetadata": [
{
"resourceURI": "did:cheqd:testnet:0a5b94d0-a417-48ed-a6f5-4abc9e95888d/resources/4e1104f9-2ee9-4bde-adc2-ab8ba72b124a",
"resourceCollectionId": "0a5b94d0-a417-48ed-a6f5-4abc9e95888d",
"resourceId": "4e1104f9-2ee9-4bde-adc2-ab8ba72b124a",
"resourceName": "DegreeCredentialStatus",
"resourceType": "TokenStatusList",
"mediaType": "application/json",
"resourceVersion": "",
"created": "2023-03-24T12:13:45Z",
"checksum": "6819aaecd4073173b159fedf8077c38e14939d03d58e7f4e2a0ddfe034eb2ed4",
"previousVersionId": null,
"nextVersionId": null
} {
"did": "did:cheqd:mainnet:71e24492-e62c-4e55-a581-007a6e36e881",
"service": [
{
"id": "did:cheqd:mainnet:71e24492-e62c-4e55-a581-007a6e36e881#website",
"type": "LinkedDomains",
"serviceEndpoint": [
"https:example.com"
]
}
]
}{
"did": "did:cheqd:mainnet:71e24492-e62c-4e55-a581-007a6e36e881",
"verificationMethod": [
{
"id":"did:cheqd:mainnet:71e24492-e62c-4e55-a581-007a6e36e881#key-2",
"type":"Ed25519VerificationKey2018",
"controller":"did:cheqd:mainnet:71e24492-e62c-4e55-a581-007a6e36e881",
"publicKeyBase58":"4sjwZ3VGWupJ26ytxjhU6LhjKiPrHV5reZbaNseyHtf8"
}
],
"authentication": [
"did:cheqd:mainnet:71e24492-e62c-4e55-a581-007a6e36e881#key-2"
]
}{
"didDocument": {
"@context": [
"https://www.w3.org/ns/did/v1",
"https://w3id.org/security/suites/ed25519-2018/v1"
],
"id": "did:cheqd:mainnet:71e24492-e62c-4e55-a581-007a6e36e881",
"controller": [
"did:cheqd:mainnet:71e24492-e62c-4e55-a581-007a6e36e881"
],
"verificationMethod": [
{
"id": "did:cheqd:mainnet:71e24492-e62c-4e55-a581-007a6e36e881#key-1",
"type": "Ed25519VerificationKey2018",
"controller": "did:cheqd:mainnet:71e24492-e62c-4e55-a581-007a6e36e881",
"publicKeyBase58": "4sjwZ3VGWupJ26ytxjhU6LhjKiPrHV5reZbaNseyHtf8"
}
],
"authentication": [
"did:cheqd:mainnet:71e24492-e62c-4e55-a581-007a6e36e881#key-1"
],
"service": [
{
"id": "did:cheqd:mainnet:71e24492-e62c-4e55-a581-007a6e36e881#website",
"type": "LinkedDomains",
"serviceEndpoint": [
"https://example.com"
]
}
]
}
}








{
"@context": [
"https://www.w3.org/2018/credentials/v1"
],
"issuer": {
"id": "did:cheqd:testnet:c6630f1e-9248-4af6-b7ac-5bcaf646f213"
},
"type": [
"VerifiableCredential",
"VerifiableAuthorizationForTrustChain"
],
"issuanceDate": "2025-04-01T07:19:55.000Z",
"credentialSubject": {
"id": "did:cheqd:testnet:0a35d559-00ff-41b6-81ad-f64faa522771",
"accreditedFor": [
{
"schemaId": "https://resolver.cheqd.net/1.0/identifiers/did:cheqd:testnet:c6630f1e-9248-4af6-b7ac-5bcaf646f213?resourceName=AIAgentAuthorization&resourceType=JSONSchemaValidator2020",
"types": [
"VerifiableCredential",
"AIAgentAuthorization"
]
},
{
"schemaId": "https://resolver.cheqd.net/1.0/identifiers/did:cheqd:testnet:b003df6f-ec8e-48dd-9a2b-7011c5cf0a5e?resourceName=VerifiableAccreditation&resourceType=JSONSchemaValidator2020",
"types": [
"VerifiableCredential",
"VerifiableAccreditation",
"VerifiableAccreditationToAccredit"
]
},
{
"schemaId": "https://resolver.cheqd.net/1.0/identifiers/did:cheqd:testnet:b003df6f-ec8e-48dd-9a2b-7011c5cf0a5e?resourceName=VerifiableAttestation&resourceType=JSONSchemaValidator2020",
"types": [
"VerifiableCredential",
"VerifiableAttestation",
"VerifiableAccreditationToAttest"
]
}
]
},
"termsOfUse": {
"type": "TrustFrameworkPolicy",
"trustFramework": "DAIAA Governance Framework",
"trustFrameworkId": "https://medium.com/quantum-economics/why-we-started-the-decentralized-ai-agent-alliance-6eb0938d7bc5"
},
"proof": {
"type": "JwtProof2020",
"jwt": "eyJhbGciOiJFZERTQSIsInR5cCI6IkpXVCJ9..."
}
}Root Authorization (rTAO defines framework)
↓
Verifiable Accreditation (TAO is authorized to operate)
↓
Verifiable Accreditation (Trusted Issuer is authorized)
↓
Verifiable Credential (End-user receives attestation)"credentialSubject": {
"id": "did:cheqd:testnet:e66a9416-d03e-4ced-95e3-07af16e25bc5",
"accreditedFor": [
{
"schemaId": "did:cheqd:testnet:8ea036da-f340-480d-8952-f5561ea1763c/resources/b10146d7-0d0f-41e0-8ee3-c76db64890be",
"types": [
"VerifiableCredential",
"VerifiableAccreditation",
"VerifiableAttestation",
"VerifiableAccreditationToAccredit"
],
"limitJurisdiction": "https://publications.europa.eu/resource/authority/atu/FIN"
}
]
},
"termsOfUse": {
"type": "AccreditationPolicy",
"parentAccreditation": "did:cheqd:testnet:8ea036da-f340-480d-8952-f5561ea1763c/resources/18de60ec-bed1-42e5-980c-601c432bc60b",
"rootAuthorization": "did:cheqd:testnet:8ea036da-f340-480d-8952-f5561ea1763c/resources/18de60ec-bed1-42e5-980c-601c432bc60b"
}
{
"@context": [
"https://www.w3.org/2018/credentials/v1",
"https://schema.org/schema.jsonld",
"https://veramo.io/contexts/profile/v1"
],
"issuer": {
"id": "did:cheqd:testnet:b003df6f-ec8e-48dd-9a2b-7011c5cf0a5e"
},
"type": [
"VerifiableCredential",
"VerifiableAccreditationToAccredit"
],
"issuanceDate": "2024-08-07T02:08:30.000Z",
"credentialSubject": {
"accreditedFor": [
{
"schemaId": "https://resolver.cheqd.net/1.0/identifiers/did:cheqd:testnet:b003df6f-ec8e-48dd-9a2b-7011c5cf0a5e?resourceName=VerifiableAccreditation&resourceType=JSONSchemaValidator2020",
"types": [
"VerifiableCredential",
"VerifiableAccreditation",
"VerifiableAttestation",
"VerifiableAccreditationToAccredit"
]
}
],
"id": "did:cheqd:testnet:6af412d7-2f04-4e12-a424-e6719db487ad"
},
"termsOfUse": {
"type": "AccreditationPolicy",
"parentAccreditation": "did:cheqd:testnet:8ea036da-f340-480d-8952-f5561ea1763c/resources/18de60ec-bed1-42e5-980c-601c432bc60b",
"rootAuthorization": "did:cheqd:testnet:8ea036da-f340-480d-8952-f5561ea1763c/resources/18de60ec-bed1-42e5-980c-601c432bc60b"
},
"proof": {
"type": "JwtProof2020",
"jwt": "eyJhbGciOiJFZERTQSIsInR5cCI6IkpXVCJ9.eyJ2YyI6eyJAY29udGV4dCI6WyJodHRwczovL3d3dy53My5vcmcvMjAxOC9jcmVkZW50aWFscy92MSIsImh0dHBzOi8vc2NoZW1hLm9yZy9zY2hlbWEuanNvbmxkIiwiaHR0cHM6Ly92ZXJhbW8uaW8vY29udGV4dHMvcHJvZmlsZS92MSJdLCJ0eXBlIjpbIlZlcmlmaWFibGVDcmVkZW50aWFsIiwiVmVyaWZpYWJsZUF1dGhvcmlzYXRpb25Gb3JUcnVzdENoYWluIl0sImNyZWRlbnRpYWxTdWJqZWN0Ijp7ImFjY3JlZGl0ZWRGb3IiOlt7InNjaGVtYUlkIjoiZGlkOmNoZXFkOnRlc3RuZXQ6OGVhMDM2ZGEtZjM0MC00ODBkLTg5NTItZjU1NjFlYTE3NjNjL3Jlc291cmNlcy9iMTAxNDZkNy0wZDBmLTQxZTAtOGVlMy1jNzZkYjY0ODkwYmUiLCJ0eXBlcyI6WyJWZXJpZmlhYmxlQ3JlZGVudGlhbCIsIlZlcmlmaWFibGVBY2NyZWRpdGF0aW9uIiwiVmVyaWZpYWJsZUF0dGVzdGF0aW9uIiwiVmVyaWZpYWJsZUFjY3JlZGl0YXRpb25Ub0FjY3JlZGl0Il0sImxpbWl0SnVyaXNkaWN0aW9uIjoiaHR0cHM6Ly9wdWJsaWNhdGlvbnMuZXVyb3BhLmV1L3Jlc291cmNlL2F1dGhvcml0eS9hdHUvRklOIn1dfX0sInN1YiI6ImRpZDpjaGVxZDp0ZXN0bmV0OjZhZjQxMmQ3LTJmMDQtNGUxMi1hNDI0LWU2NzE5ZGI0ODdhZCIsIm5iZiI6MTcyMjk5NjUxMCwiaXNzIjoiZGlkOmNoZXFkOnRlc3RuZXQ6YjAwM2RmNmYtZWM4ZS00OGRkLTlhMmItNzAxMWM1Y2YwYTVlIn0.CrEirG-Yki2HCfY6GjNR_Oqx0ZV6uJr1NPpTTLnVWfG1Q9R3YASj7IyEZ3FtVGRmdSNhQ9v2pmPijVxeBnwPAg"
}
}"credentialSubject": {
"id": "did:cheqd:testnet:a2b675de-33d0-4044-8183-0d74f210cceb",
"accreditedFor": [
{
"schemaId": "did:cheqd:testnet:8ea036da-f340-480d-8952-f5561ea1763c/resources/b10146d7-0d0f-41e0-8ee3-c76db64890be",
"types": [
"VerifiableCredential",
"VerifiableAccreditation",
"VerifiableAttestation",
"VerifiableAccreditationToAccredit"
],
"limitJurisdiction": "https://publications.europa.eu/resource/authority/atu/FIN"
}
]
}"termsOfUse": {
"type": "AccreditationPolicy",
"parentAccreditation": "did:cheqd:testnet:8ea036da-f340-480d-8952-f5561ea1763c/resources/18de60ec-bed1-42e5-980c-601c432bc60b",
"rootAuthorization": "did:cheqd:testnet:8ea036da-f340-480d-8952-f5561ea1763c/resources/18de60ec-bed1-42e5-980c-601c432bc60b"
}
{
"@context": [
"https://www.w3.org/2018/credentials/v1",
"https://schema.org/schema.jsonld",
"https://veramo.io/contexts/profile/v1"
],
"issuer": {
"id": "did:cheqd:testnet:b003df6f-ec8e-48dd-9a2b-7011c5cf0a5e"
},
"type": [
"VerifiableCredential",
"VerifiableAccreditationToAccredit"
],
"issuanceDate": "2024-08-07T02:08:30.000Z",
"credentialSubject": {
"accreditedFor": [
{
"schemaId": "https://resolver.cheqd.net/1.0/identifiers/did:cheqd:testnet:b003df6f-ec8e-48dd-9a2b-7011c5cf0a5e?resourceName=VerifiableAccreditation&resourceType=JSONSchemaValidator2020",
"types": [
"VerifiableCredential",
"VerifiableAccreditation",
"VerifiableAttestation",
"VerifiableAccreditationToAccredit"
]
}
],
"id": "did:cheqd:testnet:6af412d7-2f04-4e12-a424-e6719db487ad"
},
"termsOfUse": {
"type": "AccreditationPolicy",
"parentAccreditation": "did:cheqd:testnet:8ea036da-f340-480d-8952-f5561ea1763c/resources/18de60ec-bed1-42e5-980c-601c432bc60b",
"rootAuthorization": "did:cheqd:testnet:8ea036da-f340-480d-8952-f5561ea1763c/resources/18de60ec-bed1-42e5-980c-601c432bc60b"
},
"proof": {
"type": "JwtProof2020",
"jwt": "eyJhbGciOiJFZERTQSIsInR5cCI6IkpXVCJ9.eyJ2YyI6eyJAY29udGV4dCI6WyJodHRwczovL3d3dy53My5vcmcvMjAxOC9jcmVkZW50aWFscy92MSIsImh0dHBzOi8vc2NoZW1hLm9yZy9zY2hlbWEuanNvbmxkIiwiaHR0cHM6Ly92ZXJhbW8uaW8vY29udGV4dHMvcHJvZmlsZS92MSJdLCJ0eXBlIjpbIlZlcmlmaWFibGVDcmVkZW50aWFsIiwiVmVyaWZpYWJsZUF1dGhvcmlzYXRpb25Gb3JUcnVzdENoYWluIl0sImNyZWRlbnRpYWxTdWJqZWN0Ijp7ImFjY3JlZGl0ZWRGb3IiOlt7InNjaGVtYUlkIjoiZGlkOmNoZXFkOnRlc3RuZXQ6OGVhMDM2ZGEtZjM0MC00ODBkLTg5NTItZjU1NjFlYTE3NjNjL3Jlc291cmNlcy9iMTAxNDZkNy0wZDBmLTQxZTAtOGVlMy1jNzZkYjY0ODkwYmUiLCJ0eXBlcyI6WyJWZXJpZmlhYmxlQ3JlZGVudGlhbCIsIlZlcmlmaWFibGVBY2NyZWRpdGF0aW9uIiwiVmVyaWZpYWJsZUF0dGVzdGF0aW9uIiwiVmVyaWZpYWJsZUFjY3JlZGl0YXRpb25Ub0FjY3JlZGl0Il0sImxpbWl0SnVyaXNkaWN0aW9uIjoiaHR0cHM6Ly9wdWJsaWNhdGlvbnMuZXVyb3BhLmV1L3Jlc291cmNlL2F1dGhvcml0eS9hdHUvRklOIn1dfX0sInN1YiI6ImRpZDpjaGVxZDp0ZXN0bmV0OjZhZjQxMmQ3LTJmMDQtNGUxMi1hNDI0LWU2NzE5ZGI0ODdhZCIsIm5iZiI6MTcyMjk5NjUxMCwiaXNzIjoiZGlkOmNoZXFkOnRlc3RuZXQ6YjAwM2RmNmYtZWM4ZS00OGRkLTlhMmItNzAxMWM1Y2YwYTVlIn0.CrEirG-Yki2HCfY6GjNR_Oqx0ZV6uJr1NPpTTLnVWfG1Q9R3YASj7IyEZ3FtVGRmdSNhQ9v2pmPijVxeBnwPAg"
}
}{
"@context": [
"https://www.w3.org/2018/credentials/v1",
"https://veramo.io/contexts/profile/v1",
"https://resolver.cheqd.net/1.0/identifiers/did:cheqd:testnet:z6jKUJA5YcZsNxZgsrQPKPipL2FRTf4s/resources/a20aa56a-a76f-4828-8a98-4c85d9494545"
],
"type": [
"VerifiableCredential",
"EventReservation"
],
"issuanceDate": "2022-11-17T03:19:03.328Z",
"credentialSubject": {
"id": "did:key:z6MkwTr46BWU42YejmZrDDCbL127dBoxSXeLuaHS75vTCg7i"
},
"reservationId": "4810116769",
"reservationStatus": "https://schema.org/ReservationConfirmed",
"reservationFor": {
"@type": "Event",
"name": "Internet Identity Workshop IIWXXXV",
"startDate": "2022-11-16T16:00:00",
"endDate": "2022-11-18T00:00:00",
"location": "Computer History Museum, 1401 N Shoreline Blvd, Mountain View, CA 94043",
"logo": "https://resolver.cheqd.net/1.0/identifiers/did:cheqd:testnet:z6jKUJA5YcZsNxZgsrQPKPipL2FRTf4s/resources/8140ec3a-d8bb-4f59-9784-a1cbf91a4a35"
},
"issuer": {
"id": "did:cheqd:mainnet:zAXwwqZzhCZA1L77ZBa8fhVNjL9MQCHX"
},
"proof": {
"type": "JwtProof2020",
"jwt": "eyJhbGciOiJFZERTQSIsInR5cCI6IkpXVCJ9.eyJ2YyI6eyJAY29udGV4dCI6WyJodHRwczovL3d3dy53My5vcmcvMjAxOC9jcmVkZW50aWFscy92MSIsImh0dHBzOi8vdmVyYW1vLmlvL2NvbnRleHRzL3Byb2ZpbGUvdjEiLCJodHRwczovL3Jlc29sdmVyLmNoZXFkLm5ldC9kaWQ6Y2hlcWQ6dGVzdG5ldDp6NmpLVUpBNVljWnNOeFpnc3JRUEtQaXBMMkZSVGY0cy9yZXNvdXJjZXMvYTIwYWE1NmEtYTc2Zi00ODI4LThhOTgtNGM4NWQ5NDk0NTQ1Il0sInR5cGUiOlsiVmVyaWZpYWJsZUNyZWRlbnRpYWwiLCJFdmVudFJlc2VydmF0aW9uIl0sImNyZWRlbnRpYWxTdWJqZWN0Ijp7ImlkIjoiZGlkOmtleTp6Nk1rd1RyNDZCV1U0Mlllam1ackREQ2JMMTI3ZEJveFNYZUx1YUhTNzV2VENnN2kifX0sIkBjb250ZXh0IjpbImh0dHBzOi8vd3d3LnczLm9yZy8yMDE4L2NyZWRlbnRpYWxzL3YxIiwiaHR0cHM6Ly92ZXJhbW8uaW8vY29udGV4dHMvcHJvZmlsZS92MSIsImh0dHBzOi8vcmVzb2x2ZXIuY2hlcWQubmV0L2RpZDpjaGVxZDp0ZXN0bmV0Ono2aktVSkE1WWNac054WmdzclFQS1BpcEwyRlJUZjRzL3Jlc291cmNlcy9hMjBhYTU2YS1hNzZmLTQ4MjgtOGE5OC00Yzg1ZDk0OTQ1NDUiXSwidHlwZSI6WyJWZXJpZmlhYmxlQ3JlZGVudGlhbCIsIkV2ZW50UmVzZXJ2YXRpb24iXSwiaXNzdWFuY2VEYXRlIjoiMjAyMi0xMS0xN1QwMzoxOTowMy4zMjhaIiwiY3JlZGVudGlhbFN1YmplY3QiOnsiaWQiOiJkaWQ6a2V5Ono2TWt3VHI0NkJXVTQyWWVqbVpyRERDYkwxMjdkQm94U1hlTHVhSFM3NXZUQ2c3aSJ9LCJyZXNlcnZhdGlvbklkIjoiNDgxMDExNjc2OSIsInJlc2VydmF0aW9uU3RhdHVzIjoiaHR0cHM6Ly9zY2hlbWEub3JnL1Jlc2VydmF0aW9uQ29uZmlybWVkIiwicmVzZXJ2YXRpb25Gb3IiOnsiQHR5cGUiOiJFdmVudCIsIm5hbWUiOiJJbnRlcm5ldCBJZGVudGl0eSBXb3Jrc2hvcCBJSVdYWFhWIiwic3RhcnREYXRlIjoiMjAyMi0xMS0xNlQxNjowMDowMCIsImVuZERhdGUiOiIyMDIyLTExLTE4VDAwOjAwOjAwIiwibG9jYXRpb24iOiJDb21wdXRlciBIaXN0b3J5IE11c2V1bSwgMTQwMSBOIFNob3JlbGluZSBCbHZkLCBNb3VudGFpbiBWaWV3LCBDQSA5NDA0MyIsImxvZ28iOiJodHRwczovL3Jlc29sdmVyLmNoZXFkLm5ldC8xLjAvaWRlbnRpZmllcnMvZGlkOmNoZXFkOnRlc3RuZXQ6ejZqS1VKQTVZY1pzTnhaZ3NyUVBLUGlwTDJGUlRmNHMvcmVzb3VyY2VzLzgxNDBlYzNhLWQ4YmItNGY1OS05Nzg0LWExY2JmOTFhNGEzNSJ9LCJpc3N1ZXIiOnsiaWQiOiJkaWQ6Y2hlcWQ6bWFpbm5ldDp6QVh3d3FaemhDWkExTDc3WkJhOGZoVk5qTDlNUUNIWCJ9LCJzdWIiOiJkaWQ6a2V5Ono2TWt3VHI0NkJXVTQyWWVqbVpyRERDYkwxMjdkQm94U1hlTHVhSFM3NXZUQ2c3aSIsIm5iZiI6MTY2ODY1NTE0MywiaXNzIjoiZGlkOmNoZXFkOm1haW5uZXQ6ekFYd3dxWnpoQ1pBMUw3N1pCYThmaFZOakw5TVFDSFgifQ.U4vPbvdY7724a1jJwiDeCH_4_YC5sKUMcH6lY_XCVWBTE1RvYAnTj4fPHWMy6zSVFL9TAk4ZBOqFjKUtShBSCw"
}
}{
"@context": {
"id": "@id",
"type": "@type",
"@version": 1.1,
"schema": "http://schema.org/#",
"xsd": "https://www.w3.org/2001/XMLSchema#",
"reservationId": {
"@id": "schema: reservationId",
"@type": "xsd:string"
},
"reservationStatus": "schema: reservationStatus",
"reservationFor": {
"@id": "schema: reservationFor",
"@type": "@id",
"@context": {
"name": "schema: name",
"startDate": "schema: startDate",
"endDate": "schema: endDate",
"location": {
"@id": "schema: location",
"@type": "xsd: string"
},
"logo": "schema: logo"
}
}
}
}const createNewInvitation = async (agent: Agent) => {
const outOfBandRecord = await agent.modules.oob.createInvitation()
return {
invitationUrl: outOfBandRecord.outOfBandInvitation.toUrl({ domain: 'http://localhost:3001' }),
outOfBandRecord,
}
}const receiveInvitation = async (agent: Agent, invitationUrl: string) => {
const { outOfBandRecord } = await agent.modules.oob.receiveInvitationFromUrl(invitationUrl)
if (!outOfBandRecord) {
throw new Error(redText(Output.NoConnectionRecordFromOutOfBand))
}
return outOfBandRecord
}await this.agent.modules.credentials.offerCredential({
connectionId: connectionRecord.id,
protocolVersion: 'v2',
credentialFormats: {
anoncreds: {
attributes: [
{
name: 'name',
value: 'Alice Smith',
},
{
name: 'degree',
value: 'Computer Science',
},
{
name: 'date',
value: '01/01/2022',
},
],
credentialDefinitionId: credentialDefinition.credentialDefinitionId,
},
},
})this.agent.events.on(CredentialEventTypes.CredentialStateChanged,
async ({ payload }: CredentialStateChangedEvent) => {
switch (payload.credentialRecord.state) {
case CredentialState.OfferReceived:
console.log('received a credential')
// custom logic here
await this.agent.modules.credentials.acceptOffer({ credentialRecordId: payload.credentialRecord.id })
break
case CredentialState.Done:
console.log(`Credential for credential id ${payload.credentialRecord.id} is accepted`)
// For demo purposes we exit the program here.
process.exit(0)
}
})import { Agent, DidsModule } from '@credo-ts/core';
import { agentDependencies } from '@credo-ts/node';
import { CheqdModule } from '@credo-ts/cheqd';
import { OpenId4VcHolderModule } from '@credo-ts/openid4vc';
const holder = new Agent({
config,
dependencies: agentDependencies,
modules: {
dids: new DidsModule({
resolvers: [new CheqdDidResolver()],
}),
openId4VcHolderModule: new OpenId4VcHolderModule(),
},
});import { DidKey, KeyDidCreateOptions, getJwkFromKey } from '@credo-ts/core';
const resolved = await holder.modules.openId4VcHolder.resolveCredentialOffer(credentialOffer);
const credentials = await holder.modules.openId4VcHolder.acceptCredentialOfferUsingPreAuthorizedCode(
resolved,
{
credentialBindingResolver: async ({
supportedDidMethods,
keyType,
supportsAllDidMethods,
supportsJwk,
credentialFormat,
}) => {
if (supportsAllDidMethods || supportedDidMethods?.includes('did:key')) {
const didResult = await holder.dids.create<KeyDidCreateOptions>({
method: 'key',
options: { keyType },
});
const didKey = DidKey.fromDid(didResult.didState.did);
return {
method: 'did',
didUrl: `${didKey.did}#${didKey.key.fingerprint}`,
};
}
if (supportsJwk && credentialFormat === OpenId4VciCredentialFormatProfile.SdJwtVc) {
const key = await holder.wallet.createKey({ keyType });
return { method: 'jwk', getJwkFromKey(key) };
}
throw new Error('No binding method supported.');
},
}
);
// Store the received credentials
const records: Array<W3cCredentialRecord | SdJwtVcRecord> = []
for (const credential of credentials) {
if ('compact' in credential) {
const record = await holder.sdJwtVc.store(credential.compact)
records.push(record)
} else {
const record = await holder.w3cCredentials.storeCredential({
credential,
})
records.push(record)
}
}// resolved credential offer contains the offer, metadata, etc..
const resolvedRequest = await holder.modules.openId4VcHolderModule.resolveSiopAuthorizationRequest(authorizationRequest)
console.log(
'Resolved credentials for request', JSON.stringify(resolvedRequest.presentationExchange.credentialsForRequest, null, 2)
)
const presExchangeService = holder.dependencyManager.resolve(DifPresentationExchangeService)
// Automatically select credentials. In a wallet you could manually choose which credentials to return based on the "resolvedAuthorizationRequest.presentationExchange.credentialsForRequest" value
const selectedCredentials = presExchangeService.selectCredentialsForRequest(
resolvedRequest.presentationExchange.credentialsForRequest
)
// issuer only supports pre-authorized flow for now
const authorizationResponse = await holder.modules.openId4VcHolderModule.acceptSiopAuthorizationRequest({
authorizationRequest: resolvedRequest.authorizationRequest,
presentationExchange: {
credentials: selectedCredentials,
},
})
console.log('Submitted authorization response', JSON.stringify(authorizationResponse.submittedResponse, null, 2))


Setup and Configure your MCP Server to begin using cheqd's identity functionality with your AI Agent.
Validate the trust chain of a credential using TRAIN, to recursively traverse back to a Root of Trust, and determine the accreditations and authorizations of an issuer Decentralized Identifier (DID).
{
"issuerDid": "did:cheqd:testnet:0a35d559-00ff-41b6-81ad-f64faa522771", // DID of Trusted Issuer
"subjectDid": "did:cheqd:testnet:a7e8bf7c-9d97-4b1e-a7bb-43a6754aafbf", // DID of AI Agent
"attributes": {
"aiAgentName": "ChatGPT-4 Turbo",
"aiAgentVersion": "4.0-turbo",
"model": "GPT-4 Turbo",
"modelVersion": "4.0",
"contextWindow": 128000,
"temperature": 0.7,
"topK": 40,
"topP": 0.9,
"maxTokens": 4096,
"fineTuned": false,
"fineTuningDetails": null,
"safetyRating": "ISO 42001 Certified",
"evaluationMetrics": [
"BLEU-4",
"ROUGE-L",
"F1 Score: 92.5%"
],
"certificationAuthority": "AI Ethics Board",
"validUntil": "2026-03-28T12:00:00Z"
},
"type": [
"VerifiableCredential",
"VerifiableAttestation",
"AIAgentAuthorization"
],
"format": "jwt",
"credentialSchema": "https://resolver.cheqd.net/1.0/identifiers/did:cheqd:testnet:c6630f1e-9248-4af6-b7ac-5bcaf646f213?resourceName=AIAgentAuthorization&resourceType=JSONSchemaValidator2020",
"termsOfUse": {
"type": "AttestationPolicy",
"parentAccreditation": "did:cheqd:testnet:0a35d559-00ff-41b6-81ad-f64faa522771?resourceName=AccreditationToAttest&resourceType=VerifiableAccreditationToAttest",
"rootAuthorization": "did:cheqd:testnet:c6630f1e-9248-4af6-b7ac-5bcaf646f213?resourceName=OrganisationAuthorizationForAIAgents&resourceType=VerifiableAuthorizationForTrustChain"
}
}{
"credentialSubject": {
"aiAgentName": "ChatGPT-4 Turbo",
"aiAgentVersion": "4.0-turbo",
"model": "GPT-4 Turbo",
"modelVersion": "4.0",
"contextWindow": 128000,
"temperature": 0.7,
"topK": 40,
"topP": 0.9,
"maxTokens": 4096,
"fineTuned": false,
"fineTuningDetails": null,
"safetyRating": "ISO 42001 Certified",
"evaluationMetrics": [
"BLEU-4",
"ROUGE-L",
"F1 Score: 92.5%"
],
"certificationAuthority": "AI Ethics Board",
"validUntil": "2026-03-28T12:00:00Z",
"id": "did:cheqd:testnet:a7e8bf7c-9d97-4b1e-a7bb-43a6754aafbf"
},
"issuer": {
"id": "did:cheqd:testnet:0a35d559-00ff-41b6-81ad-f64faa522771"
},
"type": [
"VerifiableCredential",
"VerifiableAttestation",
"AIAgentAuthorization"
],
"termsOfUse": {
"type": "AttestationPolicy",
"parentAccreditation": "did:cheqd:testnet:0a35d559-00ff-41b6-81ad-f64faa522771?resourceName=AccreditationToAttest&resourceType=VerifiableAccreditationToAttest",
"rootAuthorization": "did:cheqd:testnet:c6630f1e-9248-4af6-b7ac-5bcaf646f213?resourceName=OrganisationAuthorizationForAIAgents&resourceType=VerifiableAuthorizationForTrustChain"
},
"credentialSchema": "https://resolver.cheqd.net/1.0/identifiers/did:cheqd:testnet:c6630f1e-9248-4af6-b7ac-5bcaf646f213?resourceName=AIAgentAuthorization&resourceType=JSONSchemaValidator2020",
"@context": [
"https://www.w3.org/2018/credentials/v1"
],
"issuanceDate": "2025-04-04T02:43:52.000Z",
"proof": {
"type": "JwtProof2020",
"jwt": "eyJhbGciOiJFZERTQSIsInR5cCI6IkpXVCJ9.eyJ2YyI6eyJAY29udGV4dCI6WyJodHRwczovL3d3dy53My5vcmcvMjAxOC9jcmVkZW50aWFscy92MSJdLCJ0eXBlIjpbIlZlcmlmaWFibGVDcmVkZW50aWFsIiwiVmVyaWZpYWJsZUF0dGVzdGF0aW9uIiwiQUlBZ2VudEF1dGhvcmlzYXRpb24iXSwiY3JlZGVudGlhbFN1YmplY3QiOnsiYWlBZ2VudE5hbWUiOiJDaGF0R1BULTQgVHVyYm8iLCJhaUFnZW50VmVyc2lvbiI6IjQuMC10dXJibyIsIm1vZGVsIjoiR1BULTQgVHVyYm8iLCJtb2RlbFZlcnNpb24iOiI0LjAiLCJjb250ZXh0V2luZG93IjoxMjgwMDAsInRlbXBlcmF0dXJlIjowLjcsInRvcEsiOjQwLCJ0b3BQIjowLjksIm1heFRva2VucyI6NDA5NiwiZmluZVR1bmVkIjpmYWxzZSwiZmluZVR1bmluZ0RldGFpbHMiOm51bGwsInNhZmV0eVJhdGluZyI6IklTTyA0MjAwMSBDZXJ0aWZpZWQiLCJldmFsdWF0aW9uTWV0cmljcyI6WyJCTEVVLTQiLCJST1VHRS1MIiwiRjEgU2NvcmU6IDkyLjUlIl0sImNlcnRpZmljYXRpb25BdXRob3JpdHkiOiJBSSBFdGhpY3MgQm9hcmQiLCJ2YWxpZFVudGlsIjoiMjAyNi0wMy0yOFQxMjowMDowMFoifSwidGVybXNPZlVzZSI6eyJ0eXBlIjoiQXR0ZXN0YXRpb25Qb2xpY3kiLCJwYXJlbnRBY2NyZWRpdGF0aW9uIjoiZGlkOmNoZXFkOnRlc3RuZXQ6MGEzNWQ1NTktMDBmZi00MWI2LTgxYWQtZjY0ZmFhNTIyNzcxP3Jlc291cmNlTmFtZT1BY2NyZWRpdGF0aW9uVG9BdHRlc3QmcmVzb3VyY2VUeXBlPVZlcmlmaWFibGVBY2NyZWRpdGF0aW9uVG9BdHRlc3QiLCJyb290QXV0aG9yaXNhdGlvbiI6ImRpZDpjaGVxZDp0ZXN0bmV0OmM2NjMwZjFlLTkyNDgtNGFmNi1iN2FjLTViY2FmNjQ2ZjIxMz9yZXNvdXJjZU5hbWU9T3JnYW5pc2F0aW9uQXV0aG9yaXNhdGlvbkZvckFJQWdlbnRzJnJlc291cmNlVHlwZT1WZXJpZmlhYmxlQXV0aG9yaXNhdGlvbkZvclRydXN0Q2hhaW4ifSwiY3JlZGVudGlhbFNjaGVtYSI6Imh0dHBzOi8vcmVzb2x2ZXIuY2hlcWQubmV0LzEuMC9pZGVudGlmaWVycy9kaWQ6Y2hlcWQ6dGVzdG5ldDpjNjYzMGYxZS05MjQ4LTRhZjYtYjdhYy01YmNhZjY0NmYyMTM_cmVzb3VyY2VOYW1lPUFJQWdlbnRBdXRob3Jpc2F0aW9uJnJlc291cmNlVHlwZT1KU09OU2NoZW1hVmFsaWRhdG9yMjAyMCJ9LCJzdWIiOiJkaWQ6Y2hlcWQ6dGVzdG5ldDphN2U4YmY3Yy05ZDk3LTRiMWUtYTdiYi00M2E2NzU0YWFmYmYiLCJuYmYiOjE3NDM3MzQ2MzIsImlzcyI6ImRpZDpjaGVxZDp0ZXN0bmV0OjBhMzVkNTU5LTAwZmYtNDFiNi04MWFkLWY2NGZhYTUyMjc3MSJ9.z9xTp5dSMACTLhrAsO-RBjcmaJJvWHqD6_78FTjaOkBroAMS0f8NlvpIrC7CGojkzCv_T8M_VBexzXU9I8JKAg"
}
}did:cheqd:testnet:7bf81a20-633c-4cc7-bc4a-5a45801005e0employmentCredentialRevocationList10{
"checked": true,
"revoked": false
}{
"checked": true,
"revoked": false
} "paymentConditions": [
{
"type": "timelockPayment",
"feePaymentAddress": "cheqd1xl5wccz667lk06ahama26pdqvrkz5aws6m0ztp",
"feePaymentAmount": "147603000000000ncheq",
"intervalInSeconds": 3153600000
}
],{
"unifiedAccessControlCondition": {
"conditionType": "cosmos",
"path": "/cosmos/tx/v1beta1/txs?events=transfer.recipient='cheqd1xl5wccz667lk06ahama26pdqvrkz5aws6m0ztp'&events=transfer.amount='147603000000000ncheq'&order_by=2&pagination.limit=1",
"chain": "cheqdMainnet",
"method": "timelock",
"parameters": ["latest"],
"returnValueTest": {
"key": "$.tx_responses.*.timestamp",
"comparator": "<=",
"value": "3153600000"
}
},
"returnTxResponse": true
}
driver-did-cheqd:
image: ghcr.io/cheqd/did-registrar:production-latest
platform: linux/amd64
ports:
- "9089:3000"
restart: on-failure
environment:
- FEE_PAYER_TESTNET_MNEMONIC=${FEE_PAYER_TESTNET_MNEMONIC}
- FEE_PAYER_MAINNET_MNEMONIC=${FEE_PAYER_MAINNET_MNEMONIC}export FEE_PAYER_TESTNET_MNEMONIC="your testnet mnemonic phrase ..."
export FEE_PAYER_MAINNET_MNEMONIC="your mainnet mnemonic phrase ..."docker-compose up -ddid_registrar:
image: universalregistrar/uni-registrar-web:latest
platform: linux/amd64
ports:
- "9080:9080"
depends_on:
- driver-did-cheqddocker-compose up -dcurl -X GET http://localhost:9080/1.0/propertiesdid_resolver:
image: ghcr.io/cheqd/did-resolver:latest
platform: linux/amd64
ports:
- target: 8080
published: 8080
mode: host
restart: on-failure
environment:
MAINNET_ENDPOINT: "grpc.cheqd.net:443,true,5s"
TESTNET_ENDPOINT: "grpc.cheqd.network:443,true,5s"
LOG_LEVEL: "warn"
RESOLVER_LISTENER: "0.0.0.0:8080"docker-compose up -dwallet-name: issuer
wallet-key: somesecret
wallet-storage-type: postgres_storage
wallet-storage-creds: '{"account":"postgres","password":"postgres","admin_account":"postgres","admin_password":"postgres"}'
wallet-storage-config: '{"url":"localhost:5432","max_connections":5}'aca-py start --arg-file ./configs/settings.ymlFROM ghcr.io/openwallet-foundation/acapy:py3.12-1.1.0
USER root
# install plugins as binaries
RUN pip install git+https://github.com/openwallet-foundation/acapy-plugins@main#subdirectory=cheqd
USER $user
COPY ./configs configs
ENTRYPOINT ["aca-py"]docker build -t issuer-agent .issuer:
image: issuer-agent:latest
ports:
- "3001:3001"
- "3002:3002"
command: >
start --arg-file ./configs/settings.yml
healthcheck:
test: curl -s -o /dev/null -w '%{http_code}' "http://localhost:3001/status/live" | grep "200" > /dev/null
start_period: 30s
interval: 7s
timeout: 5s
retries: 5
depends_on:
- did_registrar
- did_resolverresolver_url: "http://localhost:8080/1.0/identifiers/"
registrar_url: "http://localhost:9080/1.0/"aca-py start --wallet-type askar-anoncreds --wallet-storage-type postgres_storageDNSTrustFrameworkPointer







docker-compose up -dyarn add @credo-ts/cheqd
# or
npm install @credo-ts/cheqd{
"overrides": {
"@cosmjs/amino": "npm:@cosmjs-rn/amino@^0.27.1",
"@cosmjs/encoding": "npm:@cosmjs-rn/encoding@^0.27.1",
"@cosmjs/math": "npm:@cosmjs-rn/math@^0.27.1",
"@cosmjs/stargate": "npm:@cosmjs-rn/stargate@^0.27.1",
"@cosmjs/tendermint-rpc": "npm:@cosmjs-rn/tendermint-rpc@^0.27.1",
"@cosmjs/utils": "npm:@cosmjs-rn/utils@^0.27.1",
"@cosmjs/proto-signing": "npm:@cosmjs-rn/proto-signing@^0.27.1",
"@cosmjs/crypto": "npm:@cosmjs-rn/crypto@^0.27.1"
}
}{
"resolutions": {
"@cosmjs/amino": "npm:@cosmjs-rn/amino@^0.27.1",
"@cosmjs/encoding": "npm:@cosmjs-rn/encoding@^0.27.1",
"@cosmjs/math": "npm:@cosmjs-rn/math@^0.27.1",
"@cosmjs/stargate": "npm:@cosmjs-rn/stargate@^0.27.1",
"@cosmjs/tendermint-rpc": "npm:@cosmjs-rn/tendermint-rpc@^0.27.1",
"@cosmjs/utils": "npm:@cosmjs-rn/utils@^0.27.1",
"@cosmjs/proto-signing": "npm:@cosmjs-rn/proto-signing@^0.27.1",
"@cosmjs/crypto": "npm:@cosmjs-rn/crypto@^0.27.1"
}
}bashCopyEdityarn add buffertsCopyEditimport { Buffer } from 'buffer'
global.Buffer = BuffertsCopyEditimport './shim'import { Agent, DidsModule, KeyType, DidDocument } from '@credo-ts/core'
import { agentDependencies } from '@credo-ts/node'
import { AskarModule } from '@credo-ts/askar'
import { askar } from '@openwallet-foundation/askar-nodejs'
import {
ConnectionsModule,
V2ProofProtocol,
V2CredentialProtocol,
ProofsModule,
AutoAcceptProof,
AutoAcceptCredential,
CredentialsModule,
HttpOutboundTransport,
getDefaultDidcommModules,
} from '@credo-ts/didcomm'
import {
CheqdAnonCredsRegistry,
CheqdDidRegistrar,
CheqdDidResolver,
CheqdModule,
CheqdModuleConfig,
} from '@credo-ts/cheqd'
import { AnonCredsModule } from '@credo-ts/anoncreds'
import { anoncreds } from '@hyperledger/anoncreds-nodejs'
const agent = new Agent({
config,
dependencies: agentDependencies,
modules: {
dids: new DidsModule({
registrars: [new CheqdDidRegistrar()],
resolvers: [new CheqdDidResolver()],
}),
// AnonCreds
anoncreds: new AnonCredsModule({
registries: [new CheqdAnonCredsRegistry()],
anoncreds,
}),
// Add cheqd module
cheqd: new CheqdModule(
new CheqdModuleConfig({
networks: [
{
network: '<mainnet or testnet>',
cosmosPayerSeed: '<cosmos payer seed or mnemonic>',
},
],
})
),
// Indy VDR can optionally be used with Askar as wallet and storage implementation
askar: new AskarModule({
askar,
}),
connections: new ConnectionsModule({
autoAcceptConnections: true,
}),
credentials: new CredentialsModule({
autoAcceptCredentials: AutoAcceptCredential.ContentApproved,
credentialProtocols: [
new V2CredentialProtocol({
credentialFormats: [new LegacyIndyCredentialFormatService(), new AnonCredsCredentialFormatService()],
}),
],
}),
},
})

"mcpServers": {
"cheqd-mcp": {
"command": "npx",
"args": [
"mcp-remote",
"https://remote-mcp.cheqd.io/mcp"
],
}
}# Clone the repository
git clone https://github.com/cheqd/mcp-toolkit.git
cd mcp-toolkitTOOLS="credo" # Required tool configuration
PORT="5000" # The Port where the Remote MCP Server will run
CREDO_PORT="3000" # Port for the Credo agent
CREDO_NAME="faber" # Name of the Credo agent
CREDO_ENDPOINT="http://faber:3000" # Public endpoint connections
CREDO_CHEQD_TESTNET_MNEMONIC="your-testnet-mnemonic" # Required for cheqd network access
TRAIN_ENDPOINT="https://dev-train.trust-scheme.de/tcr/v1/" # The TRAIN endpoint for verification of trust registry {
"mcpServers": {
"cheqd": {
"command": "docker",
"args": [
"compose",
"-f",
"/path/to/repo/mcp-toolkit/docker/docker-compose.yml",
"run",
"--rm",
"-p",
"3000:3000",
"--name",
"faber",
"-T",
"mcp-server"
]
}
}
}CopyEdittrust.federation1.com. NS ns1.trust.federation1.com.cssCopyEditns1.trust.federation1.com. A 192.0.2.4bashCopyEdit./deploy.sh buildarduinoCopyEdit_did.trust.federation1.com. TXT "did:cheqd:mainnet:rtao123"npm install @credo-ts/core @credo-ts/node @credo-ts/askar @credo-ts/cheqd
npm install @hyperledger/aries-askar-nodejsimport type { InitConfig } from '@credo-ts/core'
import { AskarModule } from '@credo-ts/askar'
import {
Agent,
CredentialsModule,
V2CredentialProtocol,
JsonLdCredentialFormatService,
DidsModule,
HttpOutboundTransport,
WsOutboundTransport,
ProofsModule,
V2ProofProtocol,
DifPresentationExchangeProofFormatService,
CacheModule,
InMemoryLruCache,
W3cCredentialsModule,
KeyType,
DidDocumentBuilder,
utils,
getEd25519VerificationKey2018,
} from '@credo-ts/core'
import { agentDependencies, HttpInboundTransport } from '@credo-ts/node'
import { ariesAskar } from '@hyperledger/aries-askar-nodejs'
import { CheqdModule, CheqdModuleConfig, CheqdDidRegistrar, CheqdDidResolver } from '@credo-ts/cheqd'
let issuerDid: string
const issuerConfig: InitConfig = {
label: 'cheqd-jsonld-issuer',
walletConfig: {
id: 'cheqd-issuer-wallet',
key: 'testkey0000000000000000000000000',
},
}
const initializeIssuerAgent = async () => {
const issuer = new Agent({
config: issuerConfig,
dependencies: agentDependencies,
modules: {
askar: new AskarModule({ ariesAskar }),
dids: new DidsModule({
registrars: [new CheqdDidRegistrar()],
resolvers: [new CheqdDidResolver()],
}),
cheqd: new CheqdModule(
new CheqdModuleConfig({
networks: [
{
network: 'testnet', // or 'mainnet'
cosmosPayerSeed: 'your-cosmos-payer-seed-here',
},
],
})
),
credentials: new CredentialsModule({
credentialProtocols: [
new V2CredentialProtocol({
credentialFormats: [new JsonLdCredentialFormatService()],
}),
],
}),
proofs: new ProofsModule({
proofProtocols: [
new V2ProofProtocol({
proofFormats: [new DifPresentationExchangeProofFormatService()],
}),
],
}),
cache: new CacheModule({
cache: new InMemoryLruCache({ limit: 100 }),
}),
w3cCredentials: new W3cCredentialsModule({}),
},
})
// Register transports
issuer.registerOutboundTransport(new WsOutboundTransport())
issuer.registerOutboundTransport(new HttpOutboundTransport())
issuer.registerInboundTransport(new HttpInboundTransport({ port: 3001 }))
await issuer.initialize()
return issuer
}const holderConfig: InitConfig = {
label: 'cheqd-jsonld-holder',
walletConfig: {
id: 'cheqd-holder-wallet',
key: 'testkey0000000000000000000000000',
},
}
const initializeHolderAgent = async () => {
const holder = new Agent({
config: holderConfig,
dependencies: agentDependencies,
modules: {
askar: new AskarModule({ ariesAskar }),
dids: new DidsModule({
resolvers: [new CheqdDidResolver()],
}),
credentials: new CredentialsModule({
credentialProtocols: [
new V2CredentialProtocol({
credentialFormats: [new JsonLdCredentialFormatService()],
}),
],
}),
proofs: new ProofsModule({
proofProtocols: [
new V2ProofProtocol({
proofFormats: [new DifPresentationExchangeProofFormatService()],
}),
],
}),
cache: new CacheModule({
cache: new InMemoryLruCache({ limit: 100 }),
}),
w3cCredentials: new W3cCredentialsModule({}),
},
})
// Register transports
holder.registerOutboundTransport(new WsOutboundTransport())
holder.registerOutboundTransport(new HttpOutboundTransport())
holder.registerInboundTransport(new HttpInboundTransport({ port: 3002 }))
await holder.initialize()
return holder
}// Create a cheqd DID with Ed25519 verification method
const did = `did:cheqd:testnet:${utils.uuid()}`
const ed25519Key = await issuer.wallet.createKey({ keyType: KeyType.Ed25519 })
const createResult = await issuer.dids.create({
method: 'cheqd',
didDocument: new DidDocumentBuilder(did)
.addController(did)
.addVerificationMethod(
getEd25519VerificationKey2018({
key: ed25519Key,
controller: did,
id: `${did}#${ed25519Key.fingerprint}`,
})
)
.addAssertionMethod(`${did}#${ed25519Key.fingerprint}`)
.addAuthentication(`${did}#${ed25519Key.fingerprint}`)
.build(),
})
if (!createResult.didState.did) {
throw new Error('cheqd DID creation failed')
}
issuerDid = createResult.didState.did
console.log('Issuer DID created:', issuerDid)const createNewInvitation = async (agent: Agent) => {
const outOfBandRecord = await agent.modules.oob.createInvitation()
return {
invitationUrl: outOfBandRecord.outOfBandInvitation.toUrl({ domain: 'http://localhost:3001' }),
outOfBandRecord,
}
}const receiveInvitation = async (agent: Agent, invitationUrl: string) => {
const { outOfBandRecord } = await agent.modules.oob.receiveInvitationFromUrl(invitationUrl)
if (!outOfBandRecord) {
throw new Error(redText(Output.NoConnectionRecordFromOutOfBand))
}
return outOfBandRecord
}import { CredentialEventTypes, CredentialState } from '@credo-ts/core'
const setupCredentialListener = (agent: Agent) => {
agent.events.on(CredentialEventTypes.CredentialStateChanged, async ({ payload }) => {
const { credentialRecord } = payload
switch (credentialRecord.state) {
case CredentialState.ProposalReceived:
console.log('Issuer: Credential proposal received')
await agent.credentials.acceptProposal({
credentialRecordId: credentialRecord.id,
comment: 'JSON-LD Credential Offer',
})
break
case CredentialState.OfferReceived:
console.log('Holder: Credential offer received, accepting...')
await agent.credentials.acceptOffer({
credentialRecordId: credentialRecord.id,
credentialFormats: { jsonld: {} },
})
break
case CredentialState.RequestReceived:
console.log('Issuer: Credential request received, issuing credential...')
await agent.credentials.acceptRequest({
credentialRecordId: credentialRecord.id,
comment: 'JSON-LD Credential',
})
break
case CredentialState.CredentialReceived:
console.log('Holder: Credential received, accepting...')
await agent.credentials.acceptCredential({
credentialRecordId: credentialRecord.id,
})
break
case CredentialState.Done:
console.log('Done: Credential exchange completed!')
break
}
})
}// Define the credential to be proposed
const credentialOptions = {
credential: {
'@context': [
'https://www.w3.org/2018/credentials/v1',
'https://w3id.org/citizenship/v1',
'https://w3id.org/security/bbs/v1',
],
id: 'https://cheqd.io/credentials/permanent-resident-card',
type: ['VerifiableCredential', 'PermanentResidentCard'],
issuer: issuerDid,
issuanceDate: new Date().toISOString(),
expirationDate: new Date(Date.now() + 10 * 365 * 24 * 60 * 60 * 1000).toISOString(), // 10 years
credentialSubject: {
id: 'did:example:holder123',
type: ['PermanentResident', 'Person'],
givenName: 'John',
familyName: 'Doe',
gender: 'Male',
birthDate: '1990-01-01',
birthCountry: 'United States',
residentSince: '2020-01-01',
lprNumber: '123-456-789',
lprCategory: 'IR1',
},
},
options: {
proofType: 'Ed25519Signature2018',
proofPurpose: 'assertionMethod',
},
}
// Get Connection
const holderConnection = await receiveInvitation(holderAgent, invitationUrl)
// Holder proposes credential
console.log('Starting credential proposal...')
const credentialExchange = await holderAgent.credentials.proposeCredential({
connectionId: holderConnection.id,
protocolVersion: 'v2',
credentialFormats: { jsonld: credentialOptions },
comment: 'Requesting Permanent Resident Card',
})
console.log('Credential exchange initiated:', credentialExchange.id)
// The rest of the flow is handled automatically by event listeners
// Wait for completion...Create a Decentralized Identifier (DID) with the did:cheqd DID method using cheqd Studio.
did:cheqd:testnet:7bf81a20-633c-4cc7-bc4a-5a45801005e0did:key:z6MkhaXgBZDvotDkL5257faiztiGiC2QtKLGpbnnEGta2doK{
"name": "Bob",
"gender": "male"
}https://common.schemas.verida.io/health/pathology/tests/covid19/pcr/v0.1.0/schema.jsonhttps://www.w3.org/2018/credentials/v1VerifiableCredential2023-06-08T13:49:28.000Z{
"statusPurpose": "revocation",
"statusListName": "employee-credentials"
}{
"statusPurpose": "revocation",
"statusListName": "employee-credentials"
}
{
"statusPurpose": "revocation",
"statusListName": "employee-credentials",
"statusListIndex": 1543
}
{
"statusPurpose": "revocation",
"statusListName": "employee-credentials"
"statusListRangeStart": 1000,
"statusListRangeEnd": 2000
}{
"statusPurpose": "revocation",
"statusListName": "employee-credentials"
"statusListRangeStart": 1000,
"statusListRangeEnd": 2000,
"indexNotIn": 1001. 1264. 1268, 1854
}
{
"issuerDid": "did:cheqd:testnet:7bf81a20-633c-4cc7-bc4a-5a45801005e0",
"subjectDid": "did:key:z6MkhaXgBZDvotDkL5257faiztiGiC2QtKLGpbnnEGta2doK",
"attributes": {
"gender": "male",
"name": "Bob"
},
"@context": [
"https://schema.org"
],
"type": [
"Person"
],
"credentialSchema": "https://common.schemas.verida.io/identity/kyc/FinClusive/individual-basic/v0.1.0/schema.json",
"format": "jwt",
"credentialStatus": {
"statusPurpose": "revocation",
"statusListName": "employee-credentials",
"statusListIndex": 10
}
}did:cheqd:testnet:0ff9df5d-653b-4f77-a66c-0035abc34d63employmentCredentialRevocationListcheqd1qs0nhyk868c246defezhz5eymlt0dmajna2csg100101400001.0https://www.foo.com{
"did": "did:cheqd:testnet:7c2b990c-3d05-4ebf-91af-f4f4d0091d2e",
"statusListName": "cheqd-employee-credentials-encrypted",
"paymentConditions": [
{
"feePaymentAddress": "cheqd1qs0nhyk868c246defezhz5eymlt0dmajna2csg",
"feePaymentAmount": 20,
"feePaymentWindow": 10
}
]
}{
"created": true,
"resource": {
"StatusList2021": {
"encodedList": "496fdfbeb745b4db03fcdb40566f9c4c4a1c0f184b31255e641b6e7bdfb9b6946c12be87ca3763be0393c00b67ac1e8737c106b32f46ef59c765754415b5e8cc7c65fccaa3374620430ea476301a5e0dd63340e7a27a68bc627518471f22e4a2",
"type": "StatusList2021Revocation",
"validFrom": "2023-06-26T11:45:19.349Z"
},
"metadata": {
"type": "StatusList2021Revocation",
"encoding": "base64url",
"encrypted": true,
"encryptedSymmetricKey": "b11182dc524b8181f9a6aef4c4ad0a1c14e40033b9112dffd8d1bcf6cc3b85abc07ded2205ee94068a99f4202502cb0855f322583fa6ce1534d3a05bf36891766ea2c5f90a982b3040680762977d404d758a2370224a239c8279aa7d21e980931c42055b17ca4c7dbffa4782480a8b6279cf989b2f166d5fdb4b2c1b5a63927200000000000000203018dcaba26df45a415bb599218b27ca853a70289d7a3ed3ed0e3730452e8f8d9af91b6e71312565d2c069341f6660ab",
"paymentConditions": [
{
"feePaymentAddress": "cheqd1qs0nhyk868c246defezhz5eymlt0dmajna2csg",
"feePaymentAmount": "20000000000ncheq",
"intervalInSeconds": 600,
"type": "timelockPayment"
}
]
},
"resourceMetadata": {
"resourceURI": "did:cheqd:testnet:7c2b990c-3d05-4ebf-91af-f4f4d0091d2e/resources/5945233a-a4b5-422b-b893-eaed5cedd2dc",
"resourceCollectionId": "7c2b990c-3d05-4ebf-91af-f4f4d0091d2e",
"resourceId": "5945233a-a4b5-422b-b893-eaed5cedd2dc",
"resourceName": "cheqd-revocation-encrypted-1",
"resourceType": "StatusList2021Revocation",
"mediaType": "application/json",
"resourceVersion": "2023-06-26T11:45:19.349Z",
"created": "2023-06-26T11:45:20Z",
"checksum": "909e22e371a41afbb96c330a97752cf7c8856088f1f937f87decbef06cbe9ca2",
"previousVersionId": null,
"nextVersionId": null
},
"symmetricKey": "dfe204ee95ae74ea5d74b94c3d8ff782273905b07fbc9f8c3d961c3b43849f18"
}
}options{
"idFragment": "service-1",
"type": "LinkedDomains",
"serviceEndpoint": [
"https://example.com"
]
}{
"did": "did:cheqd:testnet:ca029356-69dc-4cb4-a4c6-13b959ffaad6",
"keys": [
{
"kid": "1a07cb379cd6f2d9acddf9a6d6af4e930d5696818a38020bde2b6ead5cd85039",
"kms": "postgres",
"type": "Ed25519",
"publicKeyHex": "1a07cb379cd6f2d9acddf9a6d6af4e930d5696818a38020bde2b6ead5cd85039",
"meta": {
"algorithms": [
"EdDSA",
"Ed25519"
]
},
"controller": "did:cheqd:testnet:ca029356-69dc-4cb4-a4c6-13b959ffaad6"
}
],
"services": [],
"provider": "did:cheqd:testnet",
"controllerKeyRefs": [
"1a07cb379cd6f2d9acddf9a6d6af4e930d5696818a38020bde2b6ead5cd85039"
],
"controllerKeys": [
{
"kid": "1a07cb379cd6f2d9acddf9a6d6af4e930d5696818a38020bde2b6ead5cd85039",
"kms": "postgres",
"type": "Ed25519",
"publicKeyHex": "1a07cb379cd6f2d9acddf9a6d6af4e930d5696818a38020bde2b6ead5cd85039",
"meta": {
"algorithms": [
"EdDSA",
"Ed25519"
]
},
"controller": "did:cheqd:testnet:ca029356-69dc-4cb4-a4c6-13b959ffaad6"
}
],
"controllerKeyId": "1a07cb379cd6f2d9acddf9a6d6af4e930d5696818a38020bde2b6ead5cd85039"
}{
"network": "testnet",
"identifierFormatType": "uuid",
"options": {
"verificationMethodType": "Ed25519VerificationKey2018"
}
}{
"network": "testnet",
"identifierFormatType": "uuid",
"options": {
"key": "8255ddadd75695e01f3d98fcec8ccc7861a030b317d4326b0e48a4d579ddc43a", // Pass kid if you have created a key separately
"verificationMethodType": "Ed25519VerificationKey2018"
}
}{
"didDocument": {
"id": "did:cheqd:testnet:0ff9df5d-653b-4f77-a66c-0035abc34d63",
"controller": [
"did:cheqd:testnet:0ff9df5d-653b-4f77-a66c-0035abc34d63"
],
"verificationMethod": [
{
"id": "did:cheqd:testnet:0ff9df5d-653b-4f77-a66c-0035abc34d63#key-1",
"type": "JsonWebKey2020",
"controller": "did:cheqd:testnet:0ff9df5d-653b-4f77-a66c-0035abc34d63",
"publicKeyJwk": {
"crv": "Ed25519",
"kty": "OKP",
"x": "BFSLOxwMJgpmWRtTUuo0JAvz6VXGp4WDDcN0dFfCQKo"
}
}
],
"authentication": [
"did:cheqd:testnet:0ff9df5d-653b-4f77-a66c-0035abc34d63#key-1"
]
}
}
"options": {
"key": "8255ddadd75695e01f3d98fcec8ccc7861a030b317d4326b0e48a4d579ddc43a",
"verificationMethodType": "Ed25519VerificationKey2018"
},
"didDocument": {
"@context": [
"https://www.w3.org/ns/did/v1"
],
"id": "did:cheqd:testnet:7bf81a20-633c-4cc7-bc4a-5a45801005e0",
"controller": [
"did:cheqd:testnet:7bf81a20-633c-4cc7-bc4a-5a45801005e0"
],
"authentication": [
"did:cheqd:testnet:7bf81a20-633c-4cc7-bc4a-5a45801005e0#key-1"
],
"service": [
{
"id": "did:cheqd:testnet:7bf81a20-633c-4cc7-bc4a-5a45801005e0#service-1",
"type": "LinkedDomains",
"serviceEndpoint": [
"https://example.com"
]
}
]
}
}npm install @credo-ts/core @credo-ts/node @credo-ts/cheqd
npm install @credo-ts/openid4vcimport { Agent, DidsModule, KeyType } from '@credo-ts/core';
import { agentDependencies } from '@credo-ts/node';
import { CheqdModule } from '@credo-ts/cheqd';
import express, { Router } from 'express'
import { OpenId4VcIssuerModule, OpenId4VcVerifierModule } from '@credo-ts/openid4vc';
// Create two express routers, all endpoints for the
// issuer and verifier will be added to these routers
const verifierRouter = Router()
const issuerRouter = Router()
// Register the routers on the express server. The path should match
// with the baseUrl you configure in the modules below.
const app = express()
app.use('/oid4vci', issuerRouter)
app.use('/siop', verifierRouter)
const issuer = new Agent({
config,
dependencies: agentDependencies,
modules: {
dids: new DidsModule({
registrars: [new CheqdDidRegistrar()],
resolvers: [new CheqdDidResolver()],
}),
cheqd: new CheqdModule(
new CheqdModuleConfig({
networks: [
{
network: '<mainnet or testnet>',
cosmosPayerSeed: '<cosmos payer seed or mnemonic>',
},
],
})
),
openId4VcIssuer: new OpenId4VcIssuerModule({
baseUrl: 'https://your-issuer-host/oid4vci',
router: issuerRouter,
endpoints: {
// The credentialRequestToCredentialMapper is the only required endpoint
// configuration that must be provided. This method is called whenever a
// credential request has been received for an offer we created. The callback should
// return the issued credential to return in the credential response to the holder.
credential: {
// you'll map credential once requests come in
credentialRequestToCredentialMapper: async ({ credentialRequest }) => {
// See step 5.
},
},
},
}),
// openId4VcVerifier module can only be used in Node.js
openId4VcVerifier: new OpenId4VcVerifierModule({
baseUrl: 'https://your-issuer-host/siop',
router: verifierRouter,
}),
},
});
// listen on port 3000 for the openid4vc app.
app.listen(3000)// Create a did:cheqd that we will use for issuance
const issuerDidResult = await issuer.dids.create({
method: 'cheqd',
options: {
network: 'testnet',
methodSpecificIdAlgo: 'uuid',
},
})
if (issuerDidResult.didState.state !== 'finished') {
throw new Error('DID creation failed.')
}
const issuerDid = issuerDidResult.did;import { JwaSignatureAlgorithm } from '@credo-ts/core'
// Create an issuer with one supported credential: AcmeCorpEmployee
const openid4vcIssuer = await issuer.modules.openId4VcIssuer.createIssuer({
display: [
{
name: 'ACME Corp.',
description: 'ACME Corp. is a company that provides the best services.',
text_color: '#000000',
background_color: '#FFFFFF',
logo: {
url: 'https://acme.com/logo.png',
alt_text: 'ACME Corp. logo',
},
},
],
credentialsSupported: [
{
format: 'vc+sd-jwt',
vct: 'AcmeCorpEmployee',
id: 'AcmeCorpEmployee',
cryptographic_binding_methods_supported: ['did:cheqd'],
cryptographic_suites_supported: [JwaSignatureAlgorithm.ES256],
},
],
})const credentialRequestToCredentialMapper: OpenId4VciCredentialRequestToCredentialMapper = async ({
// agent context for the current wallet / tenant
agentContext,
// the credential offer related to the credential request
credentialOffer,
// the received credential request
credentialRequest,
// the list of credentialsSupported entries
credentialsSupported,
// the cryptographic binding provided by the holder in the credential request proof
holderBinding,
// the issuance session associated with the credential request and offer
issuanceSession,
}) => {
const firstSupported = credentialsSupported[0]
const { sub } = credentialRequest.claims;
const payload = {
vct: firstSupported.vct, // Verifiable Credential Type identifier
// Credential subject fields (flattened)
credentialSubjectId: sub, // Represents subject's DID (e.g., Holder DID)
firstName: 'John',
lastName: 'Doe',
employeeId: 'EMP-1234',
role: 'engineer',
// Optional: evidence and schema
evidence: [{
type: 'EmployeeRecord',
verifier: issuerDid,
evidenceDocument: 'HR Database Entry 2024-Q1',
subjectPresence: 'Physical',
documentPresence: 'Digital',
}],
credentialSchema: {
id: 'https://example.org/schemas/employee-passport.json',
type: 'JsonSchemaValidator2018',
},
// Credential Status
credentialStatus: {
id: 'https://status.cheqd.net/vc/123456',
type: 'StatusList2021Entry',
statusPurpose: 'revocation',
statusListIndex: '123456',
statusListCredential: 'https://status.cheqd.net/list/employee-vc.json',
},
// Timestamps in numeric format
notBefore: Math.floor(Date.now() / 1000),
expiry: Math.floor((Date.now() + 31536000000) / 1000),
// Terms of Use
termsOfUse: [
{
type: 'OdrlPolicy2017',
profile: 'https://cheqd.net/policies/employee-vc-policy.json',
prohibition: [
{
assigner: issuerDid,
target: 'credential',
action: 'share',
},
],
},
],
};
return {
credentialSupportedId: firstSupported.id,
format: 'vc+sd-jwt',
// We can provide the holderBinding as is, if we don't want to make changes
holder: holderBinding,
payload: payload,
disclosureFrame: {
_sd: ['lastName', 'credentialStatus', 'termsOfUse'],
},
issuer: {
method: 'cheqd',
issuerDid,
},
};
}tsCopyEditdisclosureFrame: {
_sd: ['lastName', 'role', 'evidence', 'termsOfUse'],
}const { credentialOffer, issuanceSession } =
await issuer.modules.openId4VcIssuer.createCredentialOffer({
issuerId: openid4vcIssuer.issuerId,
// values must match the `id` of the credential supported by the issuer
offeredCredentials: ['AcmeCorpEmployee'],
// Only pre-authorized code flow is supported
preAuthorizedCodeFlowConfig: {
userPinRequired: false,
},
// You can store any metadata about the issuance here
issuanceMetadata: {
someKey: 'someValue',
},
})
// Listen and react to changes in the issuance session
issuer.events.on<OpenId4VcIssuanceSessionStateChangedEvent>(
OpenId4VcIssuerEvents.IssuanceSessionStateChanged,
(event) => {
if (event.payload.issuanceSession.id === issuanceSession.id) {
console.log('Issuance session state changed to ',
event.payload.issuanceSession.state)
}
}
)Issue Verifiable Accreditations as DID-Linked Resources using cheqd Studio.




{
"issuerDid": "did:cheqd:testnet:b003df6f-ec8e-48dd-9a2b-7011c5cf0a5e",
"subjectDid": "did:cheqd:testnet:6af412d7-2f04-4e12-a424-e6719db487ad",
"schemas": [
{
"types": [
"VerifiableCredential",
"MuseumPassCredential"
],
"url": "https://resolver.cheqd.net/1.0/identifiers/did:cheqd:testnet:0a5b94d0-a417-48ed-a6f5-4abc9e95888d?resourceName=MuseumPassCredentialSchema&resourceType=JsonSchemaValidator2018"
}
],
"format": "jwt",
"accreditationName": "authorizeAccreditationTest",
"trustFramework": "https://learn.cheqd.io/governance/start",
"trustFrameworkId": "cheqd Governance Framework"
}{
"@context": [
"https://www.w3.org/2018/credentials/v1"
],
"type": [
"VerifiableCredential",
"VerifiableAuthorizationForTrustChain"
],
"issuer": {
"id": "did:cheqd:testnet:b003df6f-ec8e-48dd-9a2b-7011c5cf0a5e"
},
"credentialSubject": {
"accreditedFor": [
{
"schemaId": "https://resolver.cheqd.net/1.0/identifiers/did:cheqd:testnet:0a5b94d0-a417-48ed-a6f5-4abc9e95888d?resourceName=MuseumPassCredentialSchema&resourceType=JsonSchemaValidator2018",
"types": [
"VerifiableCredential",
"MuseumPassCredential"
]
}
],
"id": "did:cheqd:testnet:6af412d7-2f04-4e12-a424-e6719db487ad"
},
"issuanceDate": "2024-10-15T04:06:47.000Z",
"termsOfUse": {
"type": "TrustFrameworkPolicy",
"trustFramework": "https://learn.cheqd.io/governance/start",
"trustFrameworkId": "cheqd Governance Framework"
},
"proof": {
"type": "JwtProof2020",
"jwt": "eyJhbGciOiJFZERTQSIsInR5cCI6IkpXVCJ9.eyJ2YyI6eyJAY29udGV4dCI6WyJodHRwczovL3d3dy53My5vcmcvMjAxOC9jcmVkZW50aWFscy92MSJdLCJ0eXBlIjpbIlZlcmlmaWFibGVDcmVkZW50aWFsIiwiVmVyaWZpYWJsZUF1dGhvcmlzYXRpb25Gb3JUcnVzdENoYWluIl0sImNyZWRlbnRpYWxTdWJqZWN0Ijp7ImFjY3JlZGl0ZWRGb3IiOlt7InNjaGVtYUlkIjoiaHR0cHM6Ly9yZXNvbHZlci5jaGVxZC5uZXQvMS4wL2lkZW50aWZpZXJzL2RpZDpjaGVxZDp0ZXN0bmV0OjBhNWI5NGQwLWE0MTctNDhlZC1hNmY1LTRhYmM5ZTk1ODg4ZD9yZXNvdXJjZU5hbWU9TXVzZXVtUGFzc0NyZWRlbnRpYWxTY2hlbWEmcmVzb3VyY2VUeXBlPUpzb25TY2hlbWFWYWxpZGF0b3IyMDE4IiwidHlwZSI6Ik11c2V1bVBhc3NDcmVkZW50aWFsIn1dfSwidGVybXNPZlVzZSI6eyJ0eXBlIjoiVmVyaWZpYWJsZUF1dGhvcmlzYXRpb25Gb3JUcnVzdENoYWluIiwidHJ1c3RGcmFtZXdvcmsiOiJodHRwczovL2xlYXJuLmNoZXFkLmlvL2dvdmVybmFuY2Uvc3RhcnQiLCJ0cnVzdEZyYW1ld29ya0lkIjoiY2hlcWQgR292ZXJuYW5jZSBGcmFtZXdvcmsifX0sInN1YiI6ImRpZDpjaGVxZDp0ZXN0bmV0OjZhZjQxMmQ3LTJmMDQtNGUxMi1hNDI0LWU2NzE5ZGI0ODdhZCIsIm5iZiI6MTcyODk2NTIwNywiaXNzIjoiZGlkOmNoZXFkOnRlc3RuZXQ6YjAwM2RmNmYtZWM4ZS00OGRkLTlhMmItNzAxMWM1Y2YwYTVlIn0.6dKE9-y2Id852onu1_WnD6aJnDtxgFZcjCbCfQ8MT1ACsHY8ox5jiKP4QUJNmhwesLidC99Qa0uyCrUhvHc2Bg"
}
}{
"issuerDid": "did:cheqd:testnet:b003df6f-ec8e-48dd-9a2b-7011c5cf0a5e",
"subjectDid": "did:cheqd:testnet:6af412d7-2f04-4e12-a424-e6719db487ad",
"schemas": [
{
"types": [
"VerifiableCredential",
"MuseumPassCredential"
],
"url": "https://resolver.cheqd.net/1.0/identifiers/did:cheqd:testnet:0a5b94d0-a417-48ed-a6f5-4abc9e95888d?resourceName=MuseumPassCredentialSchema&resourceType=JsonSchemaValidator2018"
}
],
"format": "jwt",
"accreditationName": "accreditationToAttestTest",
"parentAccreditation": "did:cheqd:testnet:15b74787-6e48-4fd5-8020-eab24e990578?resourceName=accreditAccreditation&resourceType=VerifiableAccreditationToAccredit",
"rootAuthorization": "did:cheqd:testnet:5RpEg66jhhbmASWPXJRWrA?resourceName=authorizeAccreditation&resourceType=VerifiableAuthorisationForTrustChain",
}{
"@context": [
"https://www.w3.org/2018/credentials/v1"
],
"type": [
"VerifiableCredential",
"VerifiableAccreditationToAccredit"
],
"issuer": {
"id": "did:cheqd:testnet:b003df6f-ec8e-48dd-9a2b-7011c5cf0a5e"
},
"credentialSubject": {
"accreditedFor": [
{
"schemaId": "https://resolver.cheqd.net/1.0/identifiers/did:cheqd:testnet:0a5b94d0-a417-48ed-a6f5-4abc9e95888d?resourceName=MuseumPassCredentialSchema&resourceType=JsonSchemaValidator2018",
"types": [
"VerifiableCredential",
"MuseumPassCredential"
]
}
],
"id": "did:cheqd:testnet:6af412d7-2f04-4e12-a424-e6719db487ad"
},
"issuanceDate": "2024-10-15T04:06:47.000Z",
"termsOfUse": {
"type": "VerifiableAuthorisationForTrustChain",
"parentAccreditation": "did:cheqd:testnet:15b74787-6e48-4fd5-8020-eab24e990578?resourceName=accreditAccreditation&resourceType=VerifiableAccreditationToAccredit",
"rootAuthorization": "did:cheqd:testnet:5RpEg66jhhbmASWPXJRWrA?resourceName=authorizeAccreditation&resourceType=VerifiableAuthorisationForTrustChain",
},
"proof": {
"type": "JwtProof2020",
"jwt": "eyJhbGciOiJFZERTQSIsInR5cCI6IkpXVCJ9.eyJ2YyI6eyJAY29udGV4dCI6WyJodHRwczovL3d3dy53My5vcmcvMjAxOC9jcmVkZW50aWFscy92MSJdLCJ0eXBlIjpbIlZlcmlmaWFibGVDcmVkZW50aWFsIiwiVmVyaWZpYWJsZUF1dGhvcmlzYXRpb25Gb3JUcnVzdENoYWluIl0sImNyZWRlbnRpYWxTdWJqZWN0Ijp7ImFjY3JlZGl0ZWRGb3IiOlt7InNjaGVtYUlkIjoiaHR0cHM6Ly9yZXNvbHZlci5jaGVxZC5uZXQvMS4wL2lkZW50aWZpZXJzL2RpZDpjaGVxZDp0ZXN0bmV0OjBhNWI5NGQwLWE0MTctNDhlZC1hNmY1LTRhYmM5ZTk1ODg4ZD9yZXNvdXJjZU5hbWU9TXVzZXVtUGFzc0NyZWRlbnRpYWxTY2hlbWEmcmVzb3VyY2VUeXBlPUpzb25TY2hlbWFWYWxpZGF0b3IyMDE4IiwidHlwZSI6Ik11c2V1bVBhc3NDcmVkZW50aWFsIn1dfSwidGVybXNPZlVzZSI6eyJ0eXBlIjoiVmVyaWZpYWJsZUF1dGhvcmlzYXRpb25Gb3JUcnVzdENoYWluIiwidHJ1c3RGcmFtZXdvcmsiOiJodHRwczovL2xlYXJuLmNoZXFkLmlvL2dvdmVybmFuY2Uvc3RhcnQiLCJ0cnVzdEZyYW1ld29ya0lkIjoiY2hlcWQgR292ZXJuYW5jZSBGcmFtZXdvcmsifX0sInN1YiI6ImRpZDpjaGVxZDp0ZXN0bmV0OjZhZjQxMmQ3LTJmMDQtNGUxMi1hNDI0LWU2NzE5ZGI0ODdhZCIsIm5iZiI6MTcyODk2NTIwNywiaXNzIjoiZGlkOmNoZXFkOnRlc3RuZXQ6YjAwM2RmNmYtZWM4ZS00OGRkLTlhMmItNzAxMWM1Y2YwYTVlIn0.6dKE9-y2Id852onu1_WnD6aJnDtxgFZcjCbCfQ8MT1ACsHY8ox5jiKP4QUJNmhwesLidC99Qa0uyCrUhvHc2Bg"
}
}{
"issuerDid": "did:cheqd:testnet:b003df6f-ec8e-48dd-9a2b-7011c5cf0a5e",
"subjectDid": "did:cheqd:testnet:6af412d7-2f04-4e12-a424-e6719db487ad",
"schemas": [
{
"types": [
"VerifiableCredential",
"MuseumPassCredential"
],
"url": "https://resolver.cheqd.net/1.0/identifiers/did:cheqd:testnet:0a5b94d0-a417-48ed-a6f5-4abc9e95888d?resourceName=MuseumPassCredentialSchema&resourceType=JsonSchemaValidator2018"
}
],
"format": "jwt",
"accreditationName": "accreditationToAttestTest",
"parentAccreditation": "did:cheqd:testnet:15b74787-6e48-4fd5-8020-eab24e990578?resourceName=accreditAccreditation&resourceType=VerifiableAccreditationToAccredit",
"rootAuthorization": "did:cheqd:testnet:5RpEg66jhhbmASWPXJRWrA?resourceName=authorizeAccreditation&resourceType=VerifiableAuthorizationForTrustChain",
}{
"@context": [
"https://www.w3.org/2018/credentials/v1"
],
"type": [
"VerifiableCredential",
"VerifiableAccreditationToAccredit"
],
"issuer": {
"id": "did:cheqd:testnet:b003df6f-ec8e-48dd-9a2b-7011c5cf0a5e"
},
"credentialSubject": {
"accreditedFor": [
{
"schemaId": "https://resolver.cheqd.net/1.0/identifiers/did:cheqd:testnet:0a5b94d0-a417-48ed-a6f5-4abc9e95888d?resourceName=MuseumPassCredentialSchema&resourceType=JsonSchemaValidator2018",
"types": [
"VerifiableCredential",
"MuseumPassCredential"
]
}
],
"id": "did:cheqd:testnet:6af412d7-2f04-4e12-a424-e6719db487ad"
},
"issuanceDate": "2024-10-15T04:06:47.000Z",
"termsOfUse": {
"type": "VerifiableAuthorisationForTrustChain",
"parentAccreditation": "did:cheqd:testnet:15b74787-6e48-4fd5-8020-eab24e990578?resourceName=accreditAccreditation&resourceType=VerifiableAccreditationToAccredit",
"rootAuthorization": "did:cheqd:testnet:5RpEg66jhhbmASWPXJRWrA?resourceName=authorizeAccreditation&resourceType=VerifiableAuthorisationForTrustChain",
},
"proof": {
"type": "JwtProof2020",
"jwt": "eyJhbGciOiJFZERTQSIsInR5cCI6IkpXVCJ9.eyJ2YyI6eyJAY29udGV4dCI6WyJodHRwczovL3d3dy53My5vcmcvMjAxOC9jcmVkZW50aWFscy92MSJdLCJ0eXBlIjpbIlZlcmlmaWFibGVDcmVkZW50aWFsIiwiVmVyaWZpYWJsZUF1dGhvcmlzYXRpb25Gb3JUcnVzdENoYWluIl0sImNyZWRlbnRpYWxTdWJqZWN0Ijp7ImFjY3JlZGl0ZWRGb3IiOlt7InNjaGVtYUlkIjoiaHR0cHM6Ly9yZXNvbHZlci5jaGVxZC5uZXQvMS4wL2lkZW50aWZpZXJzL2RpZDpjaGVxZDp0ZXN0bmV0OjBhNWI5NGQwLWE0MTctNDhlZC1hNmY1LTRhYmM5ZTk1ODg4ZD9yZXNvdXJjZU5hbWU9TXVzZXVtUGFzc0NyZWRlbnRpYWxTY2hlbWEmcmVzb3VyY2VUeXBlPUpzb25TY2hlbWFWYWxpZGF0b3IyMDE4IiwidHlwZSI6Ik11c2V1bVBhc3NDcmVkZW50aWFsIn1dfSwidGVybXNPZlVzZSI6eyJ0eXBlIjoiVmVyaWZpYWJsZUF1dGhvcmlzYXRpb25Gb3JUcnVzdENoYWluIiwidHJ1c3RGcmFtZXdvcmsiOiJodHRwczovL2xlYXJuLmNoZXFkLmlvL2dvdmVybmFuY2Uvc3RhcnQiLCJ0cnVzdEZyYW1ld29ya0lkIjoiY2hlcWQgR292ZXJuYW5jZSBGcmFtZXdvcmsifX0sInN1YiI6ImRpZDpjaGVxZDp0ZXN0bmV0OjZhZjQxMmQ3LTJmMDQtNGUxMi1hNDI0LWU2NzE5ZGI0ODdhZCIsIm5iZiI6MTcyODk2NTIwNywiaXNzIjoiZGlkOmNoZXFkOnRlc3RuZXQ6YjAwM2RmNmYtZWM4ZS00OGRkLTlhMmItNzAxMWM1Y2YwYTVlIn0.6dKE9-y2Id852onu1_WnD6aJnDtxgFZcjCbCfQ8MT1ACsHY8ox5jiKP4QUJNmhwesLidC99Qa0uyCrUhvHc2Bg"
}
}"linkedResourceMetadata": [
{
"resourceURI": "did:cheqd:testnet:0a5b94d0-a417-48ed-a6f5-4abc9e95888d/resources/4e1104f9-2ee9-4bde-adc2-ab8ba72b124a",
"resourceCollectionId": "0a5b94d0-a417-48ed-a6f5-4abc9e95888d",
"resourceId": "4e1104f9-2ee9-4bde-adc2-ab8ba72b124a",
"resourceName": "OxfordUniversityAccreditation",
"resourceType": "VerifiableAccreditationToAccredit",
"mediaType": "application/json",
"resourceVersion": "",
"created": "2023-03-24T12:13:45Z",
"checksum": "6819aaecd4073173b159fedf8077c38e14939d03d58e7f4e2a0ddfe034eb2ed4",
"previousVersionId": null,
"nextVersionId": null
} {
"@type": "http://schema.org/Person",
"http://schema.org/address": {
"@type": "http://schema.org/PostalAddress",
"http://schema.org/streetAddress": "123 Main St.",
"http://schema.org/addressLocality": "Blacksburg",
"http://schema.org/addressRegion": "VA",
"http://schema.org/postalCode": "24060",
"http://schema.org/addressCountry": "US"
}
}{
"@context": [
"https://www.w3.org/2018/credentials/v1",
"https://veramo.io/contexts/profile/v1",
"https://resolver.cheqd.net/1.0/identifiers/did:cheqd:testnet:z6jKUJA5YcZsNxZgsrQPKPipL2FRTf4s/resources/a20aa56a-a76f-4828-8a98-4c85d9494545"
],
"type": [
"VerifiableCredential",
"EventReservation"
],
"issuanceDate": "2022-11-17T03:19:03.328Z",
"credentialSubject": {
"id": "did:key:z6MkwTr46BWU42YejmZrDDCbL127dBoxSXeLuaHS75vTCg7i"
},
"reservationId": "4810116769",
"reservationStatus": "https://schema.org/ReservationConfirmed",
"reservationFor": {
"@type": "Event",
"name": "Internet Identity Workshop IIWXXXV",
"startDate": "2022-11-16T16:00:00",
"endDate": "2022-11-18T00:00:00",
"location": "Computer History Museum, 1401 N Shoreline Blvd, Mountain View, CA 94043",
"logo": "https://resolver.cheqd.net/1.0/identifiers/did:cheqd:testnet:z6jKUJA5YcZsNxZgsrQPKPipL2FRTf4s/resources/8140ec3a-d8bb-4f59-9784-a1cbf91a4a35"
},
"issuer": {
"id": "did:cheqd:mainnet:zAXwwqZzhCZA1L77ZBa8fhVNjL9MQCHX"
},
"proof": {
"type": "JwtProof2020",
"jwt": "eyJhbGciOiJFZERTQSIsInR5cCI6IkpXVCJ9.eyJ2YyI6eyJAY29udGV4dCI6WyJodHRwczovL3d3dy53My5vcmcvMjAxOC9jcmVkZW50aWFscy92MSIsImh0dHBzOi8vdmVyYW1vLmlvL2NvbnRleHRzL3Byb2ZpbGUvdjEiLCJodHRwczovL3Jlc29sdmVyLmNoZXFkLm5ldC9kaWQ6Y2hlcWQ6dGVzdG5ldDp6NmpLVUpBNVljWnNOeFpnc3JRUEtQaXBMMkZSVGY0cy9yZXNvdXJjZXMvYTIwYWE1NmEtYTc2Zi00ODI4LThhOTgtNGM4NWQ5NDk0NTQ1Il0sInR5cGUiOlsiVmVyaWZpYWJsZUNyZWRlbnRpYWwiLCJFdmVudFJlc2VydmF0aW9uIl0sImNyZWRlbnRpYWxTdWJqZWN0Ijp7ImlkIjoiZGlkOmtleTp6Nk1rd1RyNDZCV1U0Mlllam1ackREQ2JMMTI3ZEJveFNYZUx1YUhTNzV2VENnN2kifX0sIkBjb250ZXh0IjpbImh0dHBzOi8vd3d3LnczLm9yZy8yMDE4L2NyZWRlbnRpYWxzL3YxIiwiaHR0cHM6Ly92ZXJhbW8uaW8vY29udGV4dHMvcHJvZmlsZS92MSIsImh0dHBzOi8vcmVzb2x2ZXIuY2hlcWQubmV0L2RpZDpjaGVxZDp0ZXN0bmV0Ono2aktVSkE1WWNac054WmdzclFQS1BpcEwyRlJUZjRzL3Jlc291cmNlcy9hMjBhYTU2YS1hNzZmLTQ4MjgtOGE5OC00Yzg1ZDk0OTQ1NDUiXSwidHlwZSI6WyJWZXJpZmlhYmxlQ3JlZGVudGlhbCIsIkV2ZW50UmVzZXJ2YXRpb24iXSwiaXNzdWFuY2VEYXRlIjoiMjAyMi0xMS0xN1QwMzoxOTowMy4zMjhaIiwiY3JlZGVudGlhbFN1YmplY3QiOnsiaWQiOiJkaWQ6a2V5Ono2TWt3VHI0NkJXVTQyWWVqbVpyRERDYkwxMjdkQm94U1hlTHVhSFM3NXZUQ2c3aSJ9LCJyZXNlcnZhdGlvbklkIjoiNDgxMDExNjc2OSIsInJlc2VydmF0aW9uU3RhdHVzIjoiaHR0cHM6Ly9zY2hlbWEub3JnL1Jlc2VydmF0aW9uQ29uZmlybWVkIiwicmVzZXJ2YXRpb25Gb3IiOnsiQHR5cGUiOiJFdmVudCIsIm5hbWUiOiJJbnRlcm5ldCBJZGVudGl0eSBXb3Jrc2hvcCBJSVdYWFhWIiwic3RhcnREYXRlIjoiMjAyMi0xMS0xNlQxNjowMDowMCIsImVuZERhdGUiOiIyMDIyLTExLTE4VDAwOjAwOjAwIiwibG9jYXRpb24iOiJDb21wdXRlciBIaXN0b3J5IE11c2V1bSwgMTQwMSBOIFNob3JlbGluZSBCbHZkLCBNb3VudGFpbiBWaWV3LCBDQSA5NDA0MyIsImxvZ28iOiJodHRwczovL3Jlc29sdmVyLmNoZXFkLm5ldC8xLjAvaWRlbnRpZmllcnMvZGlkOmNoZXFkOnRlc3RuZXQ6ejZqS1VKQTVZY1pzTnhaZ3NyUVBLUGlwTDJGUlRmNHMvcmVzb3VyY2VzLzgxNDBlYzNhLWQ4YmItNGY1OS05Nzg0LWExY2JmOTFhNGEzNSJ9LCJpc3N1ZXIiOnsiaWQiOiJkaWQ6Y2hlcWQ6bWFpbm5ldDp6QVh3d3FaemhDWkExTDc3WkJhOGZoVk5qTDlNUUNIWCJ9LCJzdWIiOiJkaWQ6a2V5Ono2TWt3VHI0NkJXVTQyWWVqbVpyRERDYkwxMjdkQm94U1hlTHVhSFM3NXZUQ2c3aSIsIm5iZiI6MTY2ODY1NTE0MywiaXNzIjoiZGlkOmNoZXFkOm1haW5uZXQ6ekFYd3dxWnpoQ1pBMUw3N1pCYThmaFZOakw5TVFDSFgifQ.U4vPbvdY7724a1jJwiDeCH_4_YC5sKUMcH6lY_XCVWBTE1RvYAnTj4fPHWMy6zSVFL9TAk4ZBOqFjKUtShBSCw"
}
}





{
"kms": "local",
"payload": {
"collectionId": "1f8e08a2-eeb6-40c3-9e01-33e4a0d1479d",
"id": "f3d39687-69f5-4046-a960-3aae86a0d3ca",
"name": "PassportSchema",
"version": "", // optional
"resourceType": "CL-Schema",
"alsoKnownAs": [], // optional alternative URIs
"data": "SGVsbG8sIHdvcmxk" // base 64 encoded file
},
"signInputs": [{
"verificationMethodId": "did:cheqd:testnet:z4ZUuPbs1xyK7y8d#key-1",
"keyType": "Ed25519",
"privateKeyHex": "0f5c124886178037952e87e0cdc55d185732577fca19ae877e64ac9ab24a0cc534e5326e70f1a42d785d93048aee806c359ec75a7b06f39253befd1746708438"
}]
}"linkedResourceMetadata": [
{
"resourceURI": "did:cheqd:mainnet:1f8e08a2-eeb6-40c3-9e01-33e4a0d1479d/resources/f3d39687-69f5-4046-a960-3aae86a0d3ca",
"resourceCollectionId": "1f8e08a2-eeb6-40c3-9e01-33e4a0d1479d",
"resourceId": "f3d39687-69f5-4046-a960-3aae86a0d3ca",
"resourceName": "PassportSchema", // First version of a Resource called PassportSchema
"resourceType": "CL-Schema",
"mediaType": "application/json",
"created": "2022-07-19T08:40:00Z",
"checksum": "7b2022636f6e74656e74223a202274657374206461746122207d0ae3b0c44298",
"previousVersionId": "", // empty string if no previous version, otherwise, resourceId of previous version
"nextVersionId": "", // null if no new version, otherwise, resourceId of new version
}
]{
"@context": "https://w3id.org/did-resolution/v1",
"didResolutionMetadata": {
"contentType": "application/did+ld+json",
"retrieved": "2022-11-28T05:01:50Z",
"did": {
"didString": "did:cheqd:mainnet:1f8e08a2-eeb6-40c3-9e01-33e4a0d1479d",
"methodSpecificId": "1f8e08a2-eeb6-40c3-9e01-33e4a0d1479d",
"method": "cheqd"
}
},
"didDocument": {
"@context": [
"https://www.w3.org/ns/did/v1"
],
"id": "did:cheqd:mainnet:1f8e08a2-eeb6-40c3-9e01-33e4a0d1479d",
"controller": [
"did:cheqd:mainnet:1f8e08a2-eeb6-40c3-9e01-33e4a0d1479d"
],
"verificationMethod": [
{
"id": "did:cheqd:mainnet:1f8e08a2-eeb6-40c3-9e01-33e4a0d1479d#verKey1",
"type": "Ed25519VerificationKey2020",
"controller": "did:cheqd:mainnet:1f8e08a2-eeb6-40c3-9e01-33e4a0d1479d",
"publicKeyMultibase": "zB5wPyMGYL4LbT424Z7yXHm6nZrrLqZZg9eWtVmedodys"
},
],
"authentication": [
"did:cheqd:mainnet:1f8e08a2-eeb6-40c3-9e01-33e4a0d1479d#verKey1"
]
},
"didDocumentMetadata": {
"created": "2015-04-10T11:51:40Z",
"versionId": "ea2b76cf-a118-403a-8f49-244e56c9dcb8",
"linkedResourceMetadata": [
{ // First version of a Resource called PassportSchema
"resourceURI": "did:cheqd:mainnet:1f8e08a2-eeb6-40c3-9e01-33e4a0d1479d/resources/f3d39687-69f5-4046-a960-3aae86a0d3ca",
"resourceCollectionId": "1f8e08a2-eeb6-40c3-9e01-33e4a0d1479d", // Derived Collection ID
"resourceId": "f3d39687-69f5-4046-a960-3aae86a0d3ca",
"resourceName": "PassportSchema",
"resourceType": "CL-Schema",
"mediaType": "application/json",
"created": "2015-04-16T14:01:42Z",
"checksum": "72f9d4f96c6f4fedcfd5d1691b10d60d14a008cace269ddb35342aa8d43a30fc",
"previousVersionId": null, // No previous or next versions
"nextVersionId": null // No previous or next versions
}
]
}
}{
"@context": "https://w3id.org/did-resolution/v1",
"didResolutionMetadata": {
"contentType": "application/did+ld+json",
"retrieved": "2022-11-28T05:01:50Z",
"did": {
"didString": "did:cheqd:mainnet:1f8e08a2-eeb6-40c3-9e01-33e4a0d1479d",
"methodSpecificId": "1f8e08a2-eeb6-40c3-9e01-33e4a0d1479d",
"method": "cheqd"
}
},
"didDocument": {
"@context": [
"https://www.w3.org/ns/did/v1"
],
"id": "did:cheqd:mainnet:1f8e08a2-eeb6-40c3-9e01-33e4a0d1479d",
"controller": [
"did:cheqd:mainnet:1f8e08a2-eeb6-40c3-9e01-33e4a0d1479d"
],
"verificationMethod": [
{
"id": "did:cheqd:mainnet:1f8e08a2-eeb6-40c3-9e01-33e4a0d1479d#verKey1",
"type": "Ed25519VerificationKey2020",
"controller": "did:cheqd:mainnet:1f8e08a2-eeb6-40c3-9e01-33e4a0d1479d",
"publicKeyMultibase": "zB5wPyMGYL4LbT424Z7yXHm6nZrrLqZZg9eWtVmedodys"
},
],
"authentication": [
"did:cheqd:mainnet:1f8e08a2-eeb6-40c3-9e01-33e4a0d1479d#verKey1"
]
},
"didDocumentMetadata": {
"created": "2015-04-10T11:51:40Z",
"versionId": "9D760202FF2BD4A12344283627FF251BE6C48812C7626C3564C1C2843CAB9085",
"linkedResourceMetadata": [
{ // First version of a Resource called PassportSchema
"resourceURI": "did:cheqd:mainnet:1f8e08a2-eeb6-40c3-9e01-33e4a0d1479d/resources/f3d39687-69f5-4046-a960-3aae86a0d3ca",
"resourceCollectionId": "1f8e08a2-eeb6-40c3-9e01-33e4a0d1479d", // Derived Collection ID
"resourceId": "f3d39687-69f5-4046-a960-3aae86a0d3ca",
"resourceName": "PassportSchema", // Resource name remains the same
"resourceType": "CL-Schema", // Resource type remains the same
"mediaType": "application/json",
"created": "2015-04-16T14:01:42Z",
"checksum": "72f9d4f96c6f4fedcfd5d1691b10d60d14a008cace269ddb35342aa8d43a30fc",
"previousVersionId": null,
"nextVersionId": "8f86d7aa-dc6a-4cee-ac37-97956542d587"
},
{ // Second version of a Resource called PassportSchema
"resourceURI": "did:cheqd:mainnet:1f8e08a2-eeb6-40c3-9e01-33e4a0d1479d/resources/8f86d7aa-dc6a-4cee-ac37-97956542d587",
"resourceCollectionId": "1f8e08a2-eeb6-40c3-9e01-33e4a0d1479d", // Derived Collection ID
"resourceId": "8f86d7aa-dc6a-4cee-ac37-97956542d587",
"resourceName": "PassportSchema", // Resource name remains the same
"resourceType": "CL-Schema", // Resource type remains the same
"mediaType": "application/json",
"created": "2020-06-16T14:02:39Z",
"checksum": "ec54f8019b869d5511b42678ea859b9dc185f487bf1776cb079fda0930331689",
"previousVersionId": "f3d39687-69f5-4046-a960-3aae86a0d3ca",
"nextVersionId": "bd128013-636d-4240-b48b-fc88bf9ee8de"
},
{ // Third version of a Resource called PassportSchema
"resourceURI": "did:cheqd:mainnet:1f8e08a2-eeb6-40c3-9e01-33e4a0d1479d/resources/bd128013-636d-4240-b48b-fc88bf9ee8de",
"resourceCollectionId": "1f8e08a2-eeb6-40c3-9e01-33e4a0d1479d", // Derived Collection ID
"resourceId": "bd128013-636d-4240-b48b-fc88bf9ee8de",
"resourceName": "PassportSchema", // Resource name remains the same
"resourceType": "CL-Schema", // Resource type remains the same
"mediaType": "application/json",
"created": "2022-09-16T14:10:46Z",
"checksum": "cc187364f3bf071e5411cb6074d9c44a1b416a32b8eea581d113e486d1d586cf",
"previousVersionId": "8f86d7aa-dc6a-4cee-ac37-97956542d587",
"nextVersionId": null
}
]
}
}



Walkthrough for setting up Trust Registries for your AI Agents.
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "Verifiable Attestation",
"description": "The schema defines a generic structure for any Verifiable Credentials according to the VCDM v1.1",
"type": "object",
"properties": {
"@context": {
"description": "Semantic context for the issued credential. First element MUST be https://www.w3.org/2018/credentials/v1",
"type": "array",
"items": {
"type": "string",
"format": "uri"
},
"contains": {
"const": "https://www.w3.org/2018/credentials/v1"
},
"minItems": 1,
"uniqueItems": true
},
"id": {
"description": "Globally unique identifier for the issued credential",
"type": "string",
"format": "uri"
},
"type": {
"description": "Full type chain, used to identify the credential base types",
"type": "array",
"items": {
"type": "string"
},
"contains": {
"type": "string",
"const": "VerifiableAttestation"
},
"uniqueItems": true
},
"issuer": {
"description": "Defines a property for expressing the issuer of a Verifiable Credential",
"oneOf": [
{
"description": "DID of the credential issuer",
"type": "string",
"format": "uri"
},
{
"type": "object",
"required": ["id"],
"properties": {
"id": {
"description": "DID of the credential issuer",
"type": "string",
"format": "uri"
}
}
}
]
},
"issuanceDate": {
"description": "Defines the date and time, when the issued credential becomes valid",
"type": "string",
"format": "date-time"
},
"issued": {
"description": "Defines when the issued credential was issued",
"type": "string",
"format": "date-time"
},
"validFrom": {
"description": "Defines the date and time, when the issued credential becomes valid",
"type": "string",
"format": "date-time"
},
"validUntil": {
"description": "Defines the date and time, when the issued credential expires",
"type": "string",
"format": "date-time"
},
"expirationDate": {
"description": "Defines the date and time, when the issued credential expires",
"type": "string",
"format": "date-time"
},
"credentialSubject": {
"description": "Defines information about the subject that is defined by the type chain",
"anyOf": [
{
"$ref": "#/$defs/credentialSubject"
},
{
"type": "array",
"items": {
"$ref": "#/$defs/credentialSubject"
}
}
]
},
"credentialStatus": {
"description": "Defines suspension and/or revocation details for the issued credential. Further redefined by the type extension",
"anyOf": [
{
"$ref": "#/$defs/credentialStatus"
},
{
"type": "array",
"items": {
"$ref": "#/$defs/credentialStatus"
}
}
]
},
"credentialSchema": {
"description": "One or more schemas that validate the Verifiable Credential.",
"anyOf": [
{
"$ref": "#/$defs/credentialSchema"
},
{
"type": "array",
"items": {
"$ref": "#/$defs/credentialSchema"
}
}
]
},
"termsOfUse": {
"description": "Contains the terms under which the issued credential was issued",
"anyOf": [
{
"$ref": "#/$defs/termsOfUse"
},
{
"type": "array",
"items": {
"$ref": "#/$defs/termsOfUse"
}
}
]
},
"evidence": {
"description": "Contains the optional evidence used to issue this credential",
"anyOf": [
{
"$ref": "#/$defs/evidence"
},
{
"type": "array",
"items": {
"$ref": "#/$defs/evidence"
}
}
]
}
},
"required": [
"@context",
"id",
"type",
"issuer",
"credentialSubject"
],
"$defs": {
"credentialSubject": {
"description": "Defines information about the subject that is defined by the type chain",
"type": "object",
"properties": {
"id": {
"description": "Defines the DID of the subject that is described by the issued credential",
"type": "string",
"format": "uri"
}
}
},
"credentialStatus": {
"description": "Defines suspension and/or revocation details for the issued credential. Further redefined by the type extension",
"type": "object",
"properties": {
"id": {
"description": "Exact identity for the credential status",
"type": "string",
"format": "uri"
},
"type": {
"description": "Defines the revocation type extension",
"type": "string"
}
},
"required": ["id", "type"]
},
"credentialSchema": {
"description": "Contains information about the credential schema on which the issued credential is based",
"type": "object",
"properties": {
"id": {
"description": "References the credential schema stored on the Trusted Schemas Registry (TSR) on which the Verifiable Authorisation is based on",
"type": "string",
"format": "uri"
},
"type": {
"description": "Defines credential schema type",
"type": "string"
}
},
"required": ["id", "type"]
},
"termsOfUse": {
"description": "Contains the terms under which the issued credential was issued",
"type": "object",
"properties": {
"id": {
"description": "Contains a URL that points to where more information about this instance of terms of use can be found.",
"type": "string"
},
"type": {
"description": "Defines the type extension",
"type": "string"
}
},
"required": ["type"]
},
"evidence": {
"type": "object",
"properties": {
"id": {
"description": "If present, it SHOULD contain a URL that points to where more information about this instance of evidence can be found.",
"type": "string"
},
"type": {
"anyOf": [
{
"description": "Defines the evidence type extension",
"type": "string"
},
{
"description": "Defines the evidence type extension",
"type": "array",
"items": {
"type": "string"
}
}
]
}
},
"required": ["type"]
}
}
}{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "Verifiable Accreditation",
"description": "Schema of a Verifiable Accreditation",
"type": "object",
"allOf": [
{
"$ref": "https://resolver.cheqd.net/1.0/identifiers/did:cheqd:testnet:b003df6f-ec8e-48dd-9a2b-7011c5cf0a5e?resourceName=VerifiableAttestation&resourceType=JSONSchemaValidator2020"
},
{
"properties": {
"credentialSubject": {
"description": "Defines additional information about the subject that is described by the Verifiable Accreditation",
"type": "object",
"properties": {
"id": {
"description": "Defines a unique identifier of the Verifiable Accreditation",
"type": "string",
"format": "uri"
},
"accreditedFor": {
"description": "Defines a list of claims that define/determine the authorisation of an Issuer to issue certain types of VCs",
"type": "array",
"items": {
"type": "object",
"properties": {
"schemaId": {
"description": "Schema, registered in Trusted Schemas Registry, which the accredited organisation is allowed to issue, as per their accreditation",
"type": "string",
"format": "uri"
},
"types": {
"type": "array",
"items": {
"type": "string"
}
},
"limitJurisdiction": {
"anyOf": [
{
"description": "Defines the jurisdiction for which the accreditation is valid",
"type": "string",
"format": "uri"
},
{
"type": "array",
"description": "Defines the jurisdictions for which the accreditation is valid",
"items": {
"type": "string",
"format": "uri"
}
}
]
}
},
"required": ["schemaId", "types"]
}
}
},
"required": ["id", "accreditedFor"]
},
"credentialStatus": {
"description": "Defines revocation details for the issued credential. Further redefined by type extension",
"type": "object",
"properties": {
"id": {
"description": "Exact identity for the credential status",
"type": "string",
"format": "uri"
},
"type": {
"description": "Defines the revocation status type",
"type": "string",
"const": "EbsiAccreditationEntry"
}
},
"required": ["id", "type"]
}
},
"required": [
"credentialSubject",
"termsOfUse"
]
}
]
}
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"allOf": [
{
"$ref": "https://resolver.cheqd.net/1.0/identifiers/did:cheqd:testnet:b003df6f-ec8e-48dd-9a2b-7011c5cf0a5e?resourceName=VerifiableAttestation&resourceType=JSONSchemaValidator2020"
},
{
"properties": {
"credentialSubject": {
"type": "object",
"properties": {
"id": {
"type": "string",
"pattern": "uri"
},
"aiAgentName": {
"type": "string"
},
"aiAgentVersion": {
"type": "string"
},
"model": {
"type": "string"
},
"modelVersion": {
"type": "string"
},
"contextWindow": {
"type": "integer",
"minimum": 0
},
"temperature": {
"type": "number",
"minimum": 0,
"maximum": 1
},
"topK": {
"type": "integer",
"minimum": 0
},
"topP": {
"type": "number",
"minimum": 0,
"maximum": 1
},
"maxTokens": {
"type": "integer",
"minimum": 0
},
"fineTuned": {
"type": "boolean"
},
"fineTuningDetails": {
"type": "string",
"nullable": true
},
"safetyRating": {
"type": "string"
},
"evaluationMetrics": {
"type": "array",
"items": {
"type": "string"
}
},
"certificationAuthority": {
"type": "string"
},
"validUntil": {
"type": "string",
"format": "date-time"
}
},
"required": [
"id",
"aiAgentName",
"model"
]
},
"proof": {
"description": "Contains information about the proof",
"type": "object",
"properties": {
"type": {
"description": "Defines the proof type",
"type": "string"
},
"proofPurpose": {
"description": "Defines the purpose of the proof",
"type": "string"
},
"created": {
"description": "Defines the date and time, when the proof has been created",
"type": "string",
"format": "date-time"
},
"verificationMethod": {
"description": "Contains information about the verification method / proof mechanisms",
"type": "string"
},
"jws": {
"description": "Defines the proof value in JWS format",
"type": "string"
}
},
"required": [
"type",
"proofPurpose",
"created",
"verificationMethod",
"jws"
]
}
},
"required": ["credentialSubject", "proof"]
}
]
}{
"issuerDid": "did:cheqd:testnet:b003df6f-ec8e-48dd-9a2b-7011c5cf0a5e", // This is the Root DID for the Trust Chain
"subjectDid": "did:cheqd:testnet:6af412d7-2f04-4e12-a424-e6719db487ad", // This is the DID Authorized at a Root Level and may often be the same DID as the issuer
"schemas": [ // enter the schemas you have created for your trust registry
{
"types": "AIAgentAuthorization",
"url": "https://resolver.cheqd.net/1.0/identifiers/did:cheqd:testnet:c6630f1e-9248-4af6-b7ac-5bcaf646f213?resourceName=AIAgentAuthorization&resourceType=JSONSchemaValidator2020"
},
{
"uri": "https://resolver.cheqd.net/1.0/identifiers/did:cheqd:testnet:b003df6f-ec8e-48dd-9a2b-7011c5cf0a5e?resourceName=VerifiableAccreditation&resourceType=JSONSchemaValidator2020",
"types": [
"VerifiableCredential",
"VerifiableAccreditation",
"VerifiableAccreditationToAccredit"
]
},
{
"uri": "https://resolver.cheqd.net/1.0/identifiers/did:cheqd:testnet:b003df6f-ec8e-48dd-9a2b-7011c5cf0a5e?resourceName=VerifiableAttestation&resourceType=JSONSchemaValidator2020",
"types": [
"VerifiableCredential",
"VerifiableAttestation",
"VerifiableAccreditationToAttest"
]
}
],
"format": "jwt",
"accreditationName": "TrustFrameworkPolicy",
"trustFramework": "https://learn.cheqd.io/governance/start",
"trustFrameworkId": "cheqd Governance Framework"
}{
"@context": [
"https://www.w3.org/2018/credentials/v1"
],
"type": [
"VerifiableCredential",
"VerifiableAuthorizationForTrustChain"
],
"issuer": {
"id": "did:cheqd:testnet:b003df6f-ec8e-48dd-9a2b-7011c5cf0a5e"
},
"credentialSubject": {
"accreditedFor": [
{
"schemaId": "https://resolver.cheqd.net/1.0/identifiers/did:cheqd:testnet:0a5b94d0-a417-48ed-a6f5-4abc9e95888d?resourceName=MuseumPassCredentialSchema&resourceType=JsonSchemaValidator2018",
"type": "MuseumPassCredential"
}
],
"id": "did:cheqd:testnet:6af412d7-2f04-4e12-a424-e6719db487ad"
},
"issuanceDate": "2024-10-15T04:06:47.000Z",
"termsOfUse": {
"type": "TrustFrameworkPolicy",
"trustFramework": "https://learn.cheqd.io/governance/start",
"trustFrameworkId": "cheqd Governance Framework"
},
"proof": {
"type": "JwtProof2020",
"jwt": "eyJhbGciOiJFZERTQSIsInR5cCI6IkpXVCJ9.eyJ2YyI6eyJAY29udGV4dCI6WyJodHRwczovL3d3dy53My5vcmcvMjAxOC9jcmVkZW50aWFscy92MSJdLCJ0eXBlIjpbIlZlcmlmaWFibGVDcmVkZW50aWFsIiwiVmVyaWZpYWJsZUF1dGhvcmlzYXRpb25Gb3JUcnVzdENoYWluIl0sImNyZWRlbnRpYWxTdWJqZWN0Ijp7ImFjY3JlZGl0ZWRGb3IiOlt7InNjaGVtYUlkIjoiaHR0cHM6Ly9yZXNvbHZlci5jaGVxZC5uZXQvMS4wL2lkZW50aWZpZXJzL2RpZDpjaGVxZDp0ZXN0bmV0OjBhNWI5NGQwLWE0MTctNDhlZC1hNmY1LTRhYmM5ZTk1ODg4ZD9yZXNvdXJjZU5hbWU9TXVzZXVtUGFzc0NyZWRlbnRpYWxTY2hlbWEmcmVzb3VyY2VUeXBlPUpzb25TY2hlbWFWYWxpZGF0b3IyMDE4IiwidHlwZSI6Ik11c2V1bVBhc3NDcmVkZW50aWFsIn1dfSwidGVybXNPZlVzZSI6eyJ0eXBlIjoiVmVyaWZpYWJsZUF1dGhvcmlzYXRpb25Gb3JUcnVzdENoYWluIiwidHJ1c3RGcmFtZXdvcmsiOiJodHRwczovL2xlYXJuLmNoZXFkLmlvL2dvdmVybmFuY2Uvc3RhcnQiLCJ0cnVzdEZyYW1ld29ya0lkIjoiY2hlcWQgR292ZXJuYW5jZSBGcmFtZXdvcmsifX0sInN1YiI6ImRpZDpjaGVxZDp0ZXN0bmV0OjZhZjQxMmQ3LTJmMDQtNGUxMi1hNDI0LWU2NzE5ZGI0ODdhZCIsIm5iZiI6MTcyODk2NTIwNywiaXNzIjoiZGlkOmNoZXFkOnRlc3RuZXQ6YjAwM2RmNmYtZWM4ZS00OGRkLTlhMmItNzAxMWM1Y2YwYTVlIn0.6dKE9-y2Id852onu1_WnD6aJnDtxgFZcjCbCfQ8MT1ACsHY8ox5jiKP4QUJNmhwesLidC99Qa0uyCrUhvHc2Bg"
}
}{
"issuerDid": "did:cheqd:testnet:b003df6f-ec8e-48dd-9a2b-7011c5cf0a5e",
"subjectDid": "did:cheqd:testnet:6af412d7-2f04-4e12-a424-e6719db487ad",
"schemas": [
{
"types": "AIAgentAuthorization",
"url": "https://resolver.cheqd.net/1.0/identifiers/did:cheqd:testnet:c6630f1e-9248-4af6-b7ac-5bcaf646f213?resourceName=AIAgentAuthorization&resourceType=JSONSchemaValidator2020"
},
{
"uri": "https://resolver.cheqd.net/1.0/identifiers/did:cheqd:testnet:b003df6f-ec8e-48dd-9a2b-7011c5cf0a5e?resourceName=VerifiableAccreditation&resourceType=JSONSchemaValidator2020",
"types": [
"VerifiableCredential",
"VerifiableAccreditation",
"VerifiableAccreditationToAccredit"
]
},
{
"uri": "https://resolver.cheqd.net/1.0/identifiers/did:cheqd:testnet:b003df6f-ec8e-48dd-9a2b-7011c5cf0a5e?resourceName=VerifiableAttestation&resourceType=JSONSchemaValidator2020",
"types": [
"VerifiableCredential",
"VerifiableAttestation",
"VerifiableAccreditationToAttest"
]
}
],
"format": "jwt",
"accreditationName": "accreditationToAttestTest",
"parentAccreditation": "did:cheqd:testnet:15b74787-6e48-4fd5-8020-eab24e990578?resourceName=accreditAccreditation&resourceType=VerifiableAccreditationToAccredit",
"rootAuthorization": "did:cheqd:testnet:5RpEg66jhhbmASWPXJRWrA?resourceName=authorizeAccreditation&resourceType=VerifiableAuthorizationForTrustChain",
}{
"@context": [
"https://www.w3.org/2018/credentials/v1"
],
"type": [
"VerifiableCredential",
"VerifiableAccreditationToAccredit"
],
"issuer": {
"id": "did:cheqd:testnet:b003df6f-ec8e-48dd-9a2b-7011c5cf0a5e"
},
"credentialSubject": {
"accreditedFor": [
{
"schemaId": "https://resolver.cheqd.net/1.0/identifiers/did:cheqd:testnet:0a5b94d0-a417-48ed-a6f5-4abc9e95888d?resourceName=MuseumPassCredentialSchema&resourceType=JsonSchemaValidator2018",
"type": "AIAgentAuthorization"
}
],
"id": "did:cheqd:testnet:6af412d7-2f04-4e12-a424-e6719db487ad"
},
"issuanceDate": "2024-10-15T04:06:47.000Z",
"termsOfUse": {
"type": "AccreditationPolicy",
"parentAccreditation": "did:cheqd:testnet:15b74787-6e48-4fd5-8020-eab24e990578?resourceName=accreditAccreditation&resourceType=VerifiableAccreditationToAccredit",
"rootAuthorization": "did:cheqd:testnet:5RpEg66jhhbmASWPXJRWrA?resourceName=authorizeAccreditation&resourceType=VerifiableAuthorizationForTrustChain",
},
"proof": {
"type": "JwtProof2020",
"jwt": "eyJhbGciOiJFZERTQSIsInR5cCI6IkpXVCJ9.eyJ2YyI6eyJAY29udGV4dCI6WyJodHRwczovL3d3dy53My5vcmcvMjAxOC9jcmVkZW50aWFscy92MSJdLCJ0eXBlIjpbIlZlcmlmaWFibGVDcmVkZW50aWFsIiwiVmVyaWZpYWJsZUF1dGhvcmlzYXRpb25Gb3JUcnVzdENoYWluIl0sImNyZWRlbnRpYWxTdWJqZWN0Ijp7ImFjY3JlZGl0ZWRGb3IiOlt7InNjaGVtYUlkIjoiaHR0cHM6Ly9yZXNvbHZlci5jaGVxZC5uZXQvMS4wL2lkZW50aWZpZXJzL2RpZDpjaGVxZDp0ZXN0bmV0OjBhNWI5NGQwLWE0MTctNDhlZC1hNmY1LTRhYmM5ZTk1ODg4ZD9yZXNvdXJjZU5hbWU9TXVzZXVtUGFzc0NyZWRlbnRpYWxTY2hlbWEmcmVzb3VyY2VUeXBlPUpzb25TY2hlbWFWYWxpZGF0b3IyMDE4IiwidHlwZSI6Ik11c2V1bVBhc3NDcmVkZW50aWFsIn1dfSwidGVybXNPZlVzZSI6eyJ0eXBlIjoiVmVyaWZpYWJsZUF1dGhvcmlzYXRpb25Gb3JUcnVzdENoYWluIiwidHJ1c3RGcmFtZXdvcmsiOiJodHRwczovL2xlYXJuLmNoZXFkLmlvL2dvdmVybmFuY2Uvc3RhcnQiLCJ0cnVzdEZyYW1ld29ya0lkIjoiY2hlcWQgR292ZXJuYW5jZSBGcmFtZXdvcmsifX0sInN1YiI6ImRpZDpjaGVxZDp0ZXN0bmV0OjZhZjQxMmQ3LTJmMDQtNGUxMi1hNDI0LWU2NzE5ZGI0ODdhZCIsIm5iZiI6MTcyODk2NTIwNywiaXNzIjoiZGlkOmNoZXFkOnRlc3RuZXQ6YjAwM2RmNmYtZWM4ZS00OGRkLTlhMmItNzAxMWM1Y2YwYTVlIn0.6dKE9-y2Id852onu1_WnD6aJnDtxgFZcjCbCfQ8MT1ACsHY8ox5jiKP4QUJNmhwesLidC99Qa0uyCrUhvHc2Bg"
}
}{
"issuerDid": "did:cheqd:testnet:b003df6f-ec8e-48dd-9a2b-7011c5cf0a5e",
"subjectDid": "did:cheqd:testnet:6af412d7-2f04-4e12-a424-e6719db487ad",
"schemas": [
{
"types": "AIAgentAuthorization",
"url": "https://resolver.cheqd.net/1.0/identifiers/did:cheqd:testnet:c6630f1e-9248-4af6-b7ac-5bcaf646f213?resourceName=AIAgentAuthorization&resourceType=JSONSchemaValidator2020"
},
{
"uri": "https://resolver.cheqd.net/1.0/identifiers/did:cheqd:testnet:b003df6f-ec8e-48dd-9a2b-7011c5cf0a5e?resourceName=VerifiableAccreditation&resourceType=JSONSchemaValidator2020",
"types": [
"VerifiableCredential",
"VerifiableAccreditation",
"VerifiableAccreditationToAccredit"
]
},
{
"uri": "https://resolver.cheqd.net/1.0/identifiers/did:cheqd:testnet:b003df6f-ec8e-48dd-9a2b-7011c5cf0a5e?resourceName=VerifiableAttestation&resourceType=JSONSchemaValidator2020",
"types": [
"VerifiableCredential",
"VerifiableAttestation",
"VerifiableAccreditationToAttest"
]
}
],
"format": "jwt",
"accreditationName": "accreditationToAttestTest",
"parentAccreditation": "did:cheqd:testnet:15b74787-6e48-4fd5-8020-eab24e990578?resourceName=accreditAccreditation&resourceType=VerifiableAccreditationToAccredit",
"rootAuthorization": "did:cheqd:testnet:5RpEg66jhhbmASWPXJRWrA?resourceName=authorizeAccreditation&resourceType=VerifiableAuthorizationForTrustChain",
}{
"@context": [
"https://www.w3.org/2018/credentials/v1"
],
"type": [
"VerifiableCredential",
"VerifiableAccreditationToAccredit"
],
"issuer": {
"id": "did:cheqd:testnet:b003df6f-ec8e-48dd-9a2b-7011c5cf0a5e"
},
"credentialSubject": {
"accreditedFor": [
{
"schemaId": "https://resolver.cheqd.net/1.0/identifiers/did:cheqd:testnet:0a5b94d0-a417-48ed-a6f5-4abc9e95888d?resourceName=MuseumPassCredentialSchema&resourceType=JsonSchemaValidator2018",
"type": "MuseumPassCredential"
}
],
"id": "did:cheqd:testnet:6af412d7-2f04-4e12-a424-e6719db487ad"
},
"issuanceDate": "2024-10-15T04:06:47.000Z",
"termsOfUse": {
"type": "VerifiableAuthorizationForTrustChain",
"parentAccreditation": "did:cheqd:testnet:15b74787-6e48-4fd5-8020-eab24e990578?resourceName=accreditAccreditation&resourceType=VerifiableAccreditationToAccredit",
"rootAuthorization": "did:cheqd:testnet:5RpEg66jhhbmASWPXJRWrA?resourceName=authorizeAccreditation&resourceType=VerifiableAuthorizationForTrustChain",
},
"proof": {
"type": "JwtProof2020",
"jwt": "eyJhbGciOiJFZERTQSIsInR5cCI6IkpXVCJ9.eyJ2YyI6eyJAY29udGV4dCI6WyJodHRwczovL3d3dy53My5vcmcvMjAxOC9jcmVkZW50aWFscy92MSJdLCJ0eXBlIjpbIlZlcmlmaWFibGVDcmVkZW50aWFsIiwiVmVyaWZpYWJsZUF1dGhvcmlzYXRpb25Gb3JUcnVzdENoYWluIl0sImNyZWRlbnRpYWxTdWJqZWN0Ijp7ImFjY3JlZGl0ZWRGb3IiOlt7InNjaGVtYUlkIjoiaHR0cHM6Ly9yZXNvbHZlci5jaGVxZC5uZXQvMS4wL2lkZW50aWZpZXJzL2RpZDpjaGVxZDp0ZXN0bmV0OjBhNWI5NGQwLWE0MTctNDhlZC1hNmY1LTRhYmM5ZTk1ODg4ZD9yZXNvdXJjZU5hbWU9TXVzZXVtUGFzc0NyZWRlbnRpYWxTY2hlbWEmcmVzb3VyY2VUeXBlPUpzb25TY2hlbWFWYWxpZGF0b3IyMDE4IiwidHlwZSI6Ik11c2V1bVBhc3NDcmVkZW50aWFsIn1dfSwidGVybXNPZlVzZSI6eyJ0eXBlIjoiVmVyaWZpYWJsZUF1dGhvcmlzYXRpb25Gb3JUcnVzdENoYWluIiwidHJ1c3RGcmFtZXdvcmsiOiJodHRwczovL2xlYXJuLmNoZXFkLmlvL2dvdmVybmFuY2Uvc3RhcnQiLCJ0cnVzdEZyYW1ld29ya0lkIjoiY2hlcWQgR292ZXJuYW5jZSBGcmFtZXdvcmsifX0sInN1YiI6ImRpZDpjaGVxZDp0ZXN0bmV0OjZhZjQxMmQ3LTJmMDQtNGUxMi1hNDI0LWU2NzE5ZGI0ODdhZCIsIm5iZiI6MTcyODk2NTIwNywiaXNzIjoiZGlkOmNoZXFkOnRlc3RuZXQ6YjAwM2RmNmYtZWM4ZS00OGRkLTlhMmItNzAxMWM1Y2YwYTVlIn0.6dKE9-y2Id852onu1_WnD6aJnDtxgFZcjCbCfQ8MT1ACsHY8ox5jiKP4QUJNmhwesLidC99Qa0uyCrUhvHc2Bg"
}
}This endpoint returns the custodian-mode client details for authenticated users.
The request was successful.
A problem with the input fields has occurred. Additional state information plus metadata may be available in the response body.
Access token is missing or invalid
An internal error has occurred. Additional state information plus metadata may be available in the response body.
This endpoint fetches an identity key pair's details for a given key ID. Only the user account associated with the custodian-mode client can fetch the key pair.
Key ID of the identity key pair to fetch.
The request was successful.
A problem with the input fields has occurred. Additional state information plus metadata may be available in the response body.
Access token is missing or invalid
An internal error has occurred. Additional state information plus metadata may be available in the response body.
This endpoint returns the list of DIDs controlled by the account.
Filter DID by the network published.
Filter DID by the provider.
Include metadata in response.
Filter resource by created date
Page number.
Number of items to be listed in a single page.
The request was successful.
A problem with the input fields has occurred. Additional state information plus metadata may be available in the response body.
Access token is missing or invalid
An internal error has occurred. Additional state information plus metadata may be available in the response body.
GET /account HTTP/1.1
Host: studio-api.cheqd.net
x-api-key: YOUR_API_KEY
Accept: */*
{
"customer": {
"customerId": "text",
"name": "text"
},
"paymentAccount": {
"mainnet": "text",
"testnet": "text"
}
}{
"kid": "text",
"type": "Ed25519",
"publicKeyHex": "text"
}GET /key/read/{kid} HTTP/1.1
Host: studio-api.cheqd.net
x-api-key: YOUR_API_KEY
Accept: */*
{
"total": 1,
"dids": [
"text"
]
}GET /did/list HTTP/1.1
Host: studio-api.cheqd.net
x-api-key: YOUR_API_KEY
Accept: */*
DID identifier to resolve.
did:cheqd:mainnet:7bf81a20-633c-4cc7-bc4a-5a45801005e0Return only metadata of DID Document instead of actual DID Document.
Unique UUID version identifier of DID Document. Allows for fetching a specific version of the DID Document. See cheqd DID Method Specification for more details.
3ccde6ba-6ba5-56f2-9f4f-8825561a9860Returns the closest version of the DID Document at or before specified time. See DID Resolution handling for did:cheqd for more details.
1970-01-01T00:00:00ZThis directive transforms the Verification Method key format from the version in the DID Document to the specified format chosen below.
Query DID Document for a specific Service Endpoint by Service ID (e.g., service-1 in did:cheqd:mainnet:7bf81a20-633c-4cc7-bc4a-5a45801005e0#service-1). This will typically redirect to the Service Endpoint based on DID Resolution specification algorithm.
service-1Relative reference is a query fragment appended to the Service Endpoint URL. Must be used along with the service query property above. See DID Resolution specification algorithm for more details.
/path/to/fileThe type of Status List.
The update action to be performed on the encrypted status list, can be revoke, suspend or reinstate
DID identifier
did:cheqd:mainnet:7bf81a20-633c-4cc7-bc4a-5a45801005e0Fetch a DID-Linked Resource by Resource ID unique identifier. Since this is a unique identifier, other Resource query parameters are not required. See DID-Linked Resources for more details.
3ccde6ba-6ba5-56f2-9f4f-8825561a9860Filter a DID-Linked Resource query by Resource Name. See DID-Linked Resources for more details.
cheqd-issuer-logoFilter a DID-Linked Resource query by Resource Type. See DID-Linked Resources for more details.
CredentialArtworkFilter a DID-Linked Resource query by Resource Version, which is an optional free-text field used by issuers (e.g., "v1", "Final Version", "1st January 1970" etc). See DID-Linked Resources for more details.
v1Filter a DID-Linked Resource query which returns the closest version of the Resource at or before specified time. See DID-Linked Resources for more details.
1970-01-01T00:00:00ZRequest integrity check against a given DID-Linked Resource by providing a SHA-256 checksum hash. See DID-Linked Resources for more details.
dc64474d062ed750a66bad58cb609928de55ed0d81defd231a4a4bf97358e9edReturn only metadata of DID-Linked Resource instead of actual DID-Linked Resource. Mutually exclusive with some of the other parameters.
If set to true the verification will also check the status of the credential. Requires the VC to have a credentialStatus property.
falseWhen dealing with JSON-LD you also MUST provide the proper contexts. Set this to true ONLY if you want the @context URLs to be fetched in case they are a custom context.
falseIf set to true allow to verify credential which based on deactivated DID.
falseThe type of Status List.
The update action to be performed on the unencrypted status list, can be revoke, suspend, reinstate or custom states
The type of Status List.
Set whether the StatusList2021 or BitstringStatusList resource should be published to the ledger or not. If set to false, the StatusList2021 or BitstringStatusList publisher should manually publish the resource.
Verifiable Credential to be revoked as a VC-JWT string or a JSON object.
The symmetric key used to encrypt the StatusList2021 DID-Linked Resource. Required if the StatusList2021 DID-Linked Resource is encrypted.
The type of Status List.
Set whether the StatusList2021 or BitstringStatusList resource should be published to the ledger or not. If set to false, the StatusList2021 or BitstringStatusList publisher should manually publish the resource.
Verifiable Credential to be revoked as a VC-JWT string or a JSON object.
The symmetric key used to encrypt the StatusList2021 DID-Linked Resource. Required if the StatusList2021 DID-Linked Resource is encrypted.
Key type of the identity key pair to create.
The request was successful.
A problem with the input fields has occurred. Additional state information plus metadata may be available in the response body.
Access token is missing or invalid
An internal error has occurred. Additional state information plus metadata may be available in the response body.
DID identifier to deactivate.
List of key references (publicKeys) which will be used for signing the message. The should be in hexadecimal format and placed in the wallet of current user.
The DID of the issuer of the status list.
The type of Status List.
The purpose of the status list. Can be either revocation or suspension.
The name of the Status List DID-Linked Resource.
The request was successful.
A problem with the input fields has occurred. Additional state information plus metadata may be available in the response body.
Access token is missing or invalid
An internal error has occurred. Additional state information plus metadata may be available in the response body.
If set to true the verification will also check the status of the presentation. Requires the VP to have a credentialStatus property.
falseWhen dealing with JSON-LD you also MUST provide the proper contexts. * Set this to true ONLY if you want the @context URLs to be fetched in case they are a custom context.
falseIf set to true allow to verify credential which based on deactivated DID.
falseThe type of Status List.
Set whether the StatusList2021 or BitstringStatusList resource should be published to the ledger or not. If set to false, the StatusList2021 or BitstringStatusList publisher should manually publish the resource.
trueVerifiable Credential to be revoked as a VC-JWT string or a JSON object.
The symmetric key used to encrypt the StatusList2021 DID-Linked Resource. Required if the StatusList2021 DID-Linked Resource is encrypted.
If set to true the verification will also check the status of the accreditation. Requires the VC to have a credentialStatus property.
falseIf set to true allow to verify accreditation which based on deactivated DID.
falseDID of the Verifiable Accreditation holder/subject. This needs to be a did:key DID.
did:cheqd:testnet:5efa5126-c070-420f-a9c2-d22ae6eefb92DID URL of the Verifiable Accreditation to be verified as a VC-JWT string or a JSON object.
did:cheqd:testnet:7c2b990c-3d05-4ebf-91af-f4f4d0091d2e?resourceName=cheqd-issuer-logo&resourceType=CredentialArtworkDID of the Verifiable Accreditation holder/subject
did:cheqd:testnet:7c2b990c-3d05-4ebf-91af-f4f4d0091d2eUnique resource identifier of the Verifiable Accreditation
398cee0a-efac-4643-9f4c-74c48c72a14bResource name of the Verifiable Accreditation
cheqd-issuer-logoResource type of the Verifiable Accreditation
CredentialArtworkKey type of the identity key pair to create.
The request was successful.
A problem with the input fields has occurred. Additional state information plus metadata may be available in the response body.
Access token is missing or invalid
An internal error has occurred. Additional state information plus metadata may be available in the response body.
The type of Status List.
The purpose of the status list. Can be either revocation or suspension.
DID of the StatusList2021 publisher.
The name of the StatusList2021 DID-Linked Resource to be checked.
Credential status index to be checked for revocation or suspension.
List of credential status indices to be checked for revocation or suspension.
Start of the credential status index range to be checked for revocation or suspension.
End of the credential status index range to be checked for revocation or suspension.
Optional Resolvable DID URL of the BitstringStatusList credential to be checked.
Optional size of the BitstringStatusList.
2Array of status messages for each bit in the BitstringStatusList.
Automatically make fee payment (if required) based on payment conditions to unlock encrypted StatusList2021 or BitstringStatusList DID-Linked Resource.
trueDID identifier to link the resource to.
Input fields for DID-Linked Resource creation.
Encoded string containing the data to be stored in the DID-Linked Resource.
Encoding format used to encode the data.
Name of DID-Linked Resource.
Type of DID-Linked Resource. This is NOT the same as the media type, which is calculated automatically ledger-side.
Optional field to assign a human-readable version in the DID-Linked Resource.
List of key references (publicKeys) which will be used for signing the message. The should be in hexadecimal format and placed in the wallet of current user.
DID identifier to link the resource to.
Input fields for DID-Linked Resource creation.
Encoded string containing the data to be stored in the DID-Linked Resource.
Encoding format used to encode the data.
Name of DID-Linked Resource.
Type of DID-Linked Resource. This is NOT the same as the media type, which is calculated automatically ledger-side.
Optional field to assign a human-readable version in the DID-Linked Resource.
List of key references (publicKeys) which will be used for signing the message. The should be in hexadecimal format and placed in the wallet of current user.
The request was successful.
did:cheqd:testnet:55dbc8bf-fba3-4117-855c-1e0dc1d3bb47/resources/398cee0a-efac-4643-9f4c-74c48c72a14b55dbc8bf-fba3-4117-855c-1e0dc1d3bb47398cee0a-efac-4643-9f4c-74c48c72a14bcheqd-issuer-logoCredentialArtworkimage/png1.0a95380f460e63ad939541a57aecbfd795fcd37c6d78ee86c885340e33a91b5592021-09-01T12:00:00Zd4829ac7-4566-478c-a408-b44767eddadcad7a8442-3531-46eb-a024-53953ec6e4ffA problem with the input fields has occurred. Additional state information plus metadata may be available in the response body.
Access token is missing or invalid
An internal error has occurred. Additional state information plus metadata may be available in the response body.
DID identifier to link the resource to.
Input fields for DID-Linked Resource creation.
Encoded string containing the data to be stored in the DID-Linked Resource.
Encoding format used to encode the data.
Name of DID-Linked Resource.
Type of DID-Linked Resource. This is NOT the same as the media type, which is calculated automatically ledger-side.
Optional field to assign a human-readable version in the DID-Linked Resource.
List of key references (publicKeys) which will be used for signing the message. The should be in hexadecimal format and placed in the wallet of current user.
The request was successful.
did:cheqd:testnet:55dbc8bf-fba3-4117-855c-1e0dc1d3bb47/resources/398cee0a-efac-4643-9f4c-74c48c72a14b55dbc8bf-fba3-4117-855c-1e0dc1d3bb47398cee0a-efac-4643-9f4c-74c48c72a14bcheqd-issuer-logoCredentialArtworkimage/png1.0a95380f460e63ad939541a57aecbfd795fcd37c6d78ee86c885340e33a91b5592021-09-01T12:00:00Zd4829ac7-4566-478c-a408-b44767eddadcad7a8442-3531-46eb-a024-53953ec6e4ffA problem with the input fields has occurred. Additional state information plus metadata may be available in the response body.
Access token is missing or invalid
An internal error has occurred. Additional state information plus metadata may be available in the response body.
DID identifier to resolve.
did:cheqd:mainnet:7bf81a20-633c-4cc7-bc4a-5a45801005e0Return only metadata of DID Document instead of actual DID Document.
Unique UUID version identifier of DID Document. Allows for fetching a specific version of the DID Document. See cheqd DID Method Specification for more details.
3ccde6ba-6ba5-56f2-9f4f-8825561a9860Returns the closest version of the DID Document at or before specified time. See DID Resolution handling for did:cheqd for more details.
1970-01-01T00:00:00ZThis directive transforms the Verification Method key format from the version in the DID Document to the specified format chosen below.
Query DID Document for a specific Service Endpoint by Service ID (e.g., service-1 in did:cheqd:mainnet:7bf81a20-633c-4cc7-bc4a-5a45801005e0#service-1). This will typically redirect to the Service Endpoint based on DID Resolution specification algorithm.
service-1Relative reference is a query fragment appended to the Service Endpoint URL. Must be used along with the service query property above. See DID Resolution specification algorithm for more details.
/path/to/fileThe request was successful.
https://w3id.org/did-resolution/v1A problem with the input fields has occurred. Additional state information plus metadata may be available in the response body.
Access token is missing or invalid
An internal error has occurred. Additional state information plus metadata may be available in the response body.
DID identifier to be updated.
did:cheqd:testnet:7bf81a20-633c-4cc7-bc4a-5a45801005e0Authentication section of the DID Document.
List of key references (publicKeys) which will be used for signing the message. The should be in hexadecimal format and placed in the wallet of current user.
The type of Status List.
The purpose of the status list.
Once this is set, it cannot be changed. A new status list must be created to change the purpose.
{"summary":"Single purpose (StatusList2021)","value":"revocation"}The type of Status List.
The purpose of the status list.
Once this is set, it cannot be changed. A new status list must be created to change the purpose.
{"summary":"Single purpose (StatusList2021)","value":"revocation"}Input fields for the creating a Verifiable Credential.
DID of the Verifiable Credential issuer. This needs to be a did:cheqd DID.
did:cheqd:testnet:7bf81a20-633c-4cc7-bc4a-5a45801005e0DID of the Verifiable Credential holder/subject. This needs to be a did:key DID.
did:key:z6MkhaXgBZDvotDkL5257faiztiGiC2QtKLGpbnnEGta2doKJSON object containing the attributes to be included in the credential.
{"name":"Bob","gender":"male"}Optional properties to be included in the @context property of the credential.
["https://schema.org/schema.jsonld","https://veramo.io/contexts/profile/v1"]Optional properties to be included in the type property of the credential.
["Person"]Optional expiration date according to the <a href=https://www.w3.org/TR/vc-data-model/#expiration> VC Data Model specification.
2023-06-08T13:49:28.000ZFormat of the Verifiable Credential. Defaults to VC-JWT.
jwtPossible values: Terms of use can be utilized by an issuer or a holder to communicate the terms under which a verifiable credential was issued.
{"type":"IssuerPolicy","id":"http://example.com/policies/credential/4","profile":"http://example.com/profiles/credential","prohibition":[{"assigner":"https://example.edu/issuers/14","assignee":"AllVerifiers","target":"http://example.edu/credentials/3732","action":["Archival"]}]}RefreshService property MUST be one or more refresh services that provides enough information to the recipient's software such that the recipient can refresh the verifiable credential.
{"type":"ManualRefreshService2018","id":"https://example.edu/refresh/3732"}Evidence property MUST be one or more evidence schemes providing enough information for a verifier to determine whether the evidence gathered by the issuer meets its confidence requirements for relying on the credential.
{"type":["DocumentVerification"],"id":"https://example.edu/evidence/f2aeec97-fc0d-42bf-8ca7-0548192d4231","verifier":"https://example.edu/issuers/14","evidenceDocument":"DriversLicense","subjectPresence":"Physical","documentPresence":"Physical","licenseNumber":"123AB4567"}The type of Status List.
The purpose of the status list. Can be either revocation or suspension.
DID of the StatusList2021 publisher.
The name of the StatusList2021 DID-Linked Resource to be checked.
Credential status index to be checked for revocation or suspension.
List of credential status indices to be checked for revocation or suspension.
Start of the credential status index range to be checked for revocation or suspension.
End of the credential status index range to be checked for revocation or suspension.
Optional Resolvable DID URL of the BitstringStatusList credential to be checked.
Optional size of the BitstringStatusList.
2Array of status messages for each bit in the BitstringStatusList.
Automatically make fee payment (if required) based on payment conditions to unlock encrypted StatusList2021 or BitstringStatusList DID-Linked Resource.
trueThe type of Status List.
The purpose of the status list. Can be either revocation or suspension.
DID of the StatusList2021 publisher.
The name of the StatusList2021 DID-Linked Resource to be checked.
Credential status index to be checked for revocation or suspension.
List of credential status indices to be checked for revocation or suspension.
Start of the credential status index range to be checked for revocation or suspension.
End of the credential status index range to be checked for revocation or suspension.
Optional Resolvable DID URL of the BitstringStatusList credential to be checked.
Optional size of the BitstringStatusList.
2Array of status messages for each bit in the BitstringStatusList.
Automatically make fee payment (if required) based on payment conditions to unlock encrypted StatusList2021 or BitstringStatusList DID-Linked Resource.
trueThe type of Status List.
The purpose of the status list. Can be either revocation or suspension.
DID of the StatusList2021 publisher.
The name of the StatusList2021 DID-Linked Resource to be checked.
Credential status index to be checked for revocation or suspension.
List of credential status indices to be checked for revocation or suspension.
Start of the credential status index range to be checked for revocation or suspension.
End of the credential status index range to be checked for revocation or suspension.
Optional Resolvable DID URL of the BitstringStatusList credential to be checked.
Optional size of the BitstringStatusList.
2Array of status messages for each bit in the BitstringStatusList.
Automatically make fee payment (if required) based on payment conditions to unlock encrypted StatusList2021 or BitstringStatusList DID-Linked Resource.
trueInput fields for the creating a Verifiable Credential.
DID of the Verifiable Credential issuer. This needs to be a did:cheqd DID.
did:cheqd:testnet:7bf81a20-633c-4cc7-bc4a-5a45801005e0DID of the Verifiable Credential holder/subject. This needs to be a did:key DID.
did:key:z6MkhaXgBZDvotDkL5257faiztiGiC2QtKLGpbnnEGta2doKJSON object containing the attributes to be included in the credential.
{"name":"Bob","gender":"male"}Optional properties to be included in the @context property of the credential.
["https://schema.org/schema.jsonld","https://veramo.io/contexts/profile/v1"]Optional properties to be included in the type property of the credential.
["Person"]Optional expiration date according to the <a href=https://www.w3.org/TR/vc-data-model/#expiration> VC Data Model specification.
2023-06-08T13:49:28.000ZFormat of the Verifiable Credential. Defaults to VC-JWT.
jwtPossible values: Terms of use can be utilized by an issuer or a holder to communicate the terms under which a verifiable credential was issued.
{"type":"IssuerPolicy","id":"http://example.com/policies/credential/4","profile":"http://example.com/profiles/credential","prohibition":[{"assigner":"https://example.edu/issuers/14","assignee":"AllVerifiers","target":"http://example.edu/credentials/3732","action":["Archival"]}]}RefreshService property MUST be one or more refresh services that provides enough information to the recipient's software such that the recipient can refresh the verifiable credential.
{"type":"ManualRefreshService2018","id":"https://example.edu/refresh/3732"}Evidence property MUST be one or more evidence schemes providing enough information for a verifier to determine whether the evidence gathered by the issuer meets its confidence requirements for relying on the credential.
{"type":["DocumentVerification"],"id":"https://example.edu/evidence/f2aeec97-fc0d-42bf-8ca7-0548192d4231","verifier":"https://example.edu/issuers/14","evidenceDocument":"DriversLicense","subjectPresence":"Physical","documentPresence":"Physical","licenseNumber":"123AB4567"}The request was successful.
Input fields for revoking/suspending a Verifiable Credential.
["https://www.w3.org/2018/credentials/v1","https://schema.org","https://veramo.io/contexts/profile/v1"]["VerifiableCredential","Person"]2023-06-08T13:49:28.000Z2023-06-08T13:49:28.000ZA problem with the input fields has occurred. Additional state information plus metadata may be available in the response body.
Access token is missing or invalid
An internal error has occurred. Additional state information plus metadata may be available in the response body.
Input fields for the creating a Verifiable Credential.
DID of the Verifiable Credential issuer. This needs to be a did:cheqd DID.
did:cheqd:testnet:7bf81a20-633c-4cc7-bc4a-5a45801005e0DID of the Verifiable Credential holder/subject. This needs to be a did:key DID.
did:key:z6MkhaXgBZDvotDkL5257faiztiGiC2QtKLGpbnnEGta2doKJSON object containing the attributes to be included in the credential.
{"name":"Bob","gender":"male"}Optional properties to be included in the @context property of the credential.
["https://schema.org/schema.jsonld","https://veramo.io/contexts/profile/v1"]Optional properties to be included in the type property of the credential.
["Person"]Optional expiration date according to the <a href=https://www.w3.org/TR/vc-data-model/#expiration> VC Data Model specification.
2023-06-08T13:49:28.000ZFormat of the Verifiable Credential. Defaults to VC-JWT.
jwtPossible values: Terms of use can be utilized by an issuer or a holder to communicate the terms under which a verifiable credential was issued.
{"type":"IssuerPolicy","id":"http://example.com/policies/credential/4","profile":"http://example.com/profiles/credential","prohibition":[{"assigner":"https://example.edu/issuers/14","assignee":"AllVerifiers","target":"http://example.edu/credentials/3732","action":["Archival"]}]}RefreshService property MUST be one or more refresh services that provides enough information to the recipient's software such that the recipient can refresh the verifiable credential.
{"type":"ManualRefreshService2018","id":"https://example.edu/refresh/3732"}Evidence property MUST be one or more evidence schemes providing enough information for a verifier to determine whether the evidence gathered by the issuer meets its confidence requirements for relying on the credential.
{"type":["DocumentVerification"],"id":"https://example.edu/evidence/f2aeec97-fc0d-42bf-8ca7-0548192d4231","verifier":"https://example.edu/issuers/14","evidenceDocument":"DriversLicense","subjectPresence":"Physical","documentPresence":"Physical","licenseNumber":"123AB4567"}The request was successful.
Input fields for revoking/suspending a Verifiable Credential.
["https://www.w3.org/2018/credentials/v1","https://schema.org","https://veramo.io/contexts/profile/v1"]["VerifiableCredential","Person"]2023-06-08T13:49:28.000Z2023-06-08T13:49:28.000ZA problem with the input fields has occurred. Additional state information plus metadata may be available in the response body.
Access token is missing or invalid
An internal error has occurred. Additional state information plus metadata may be available in the response body.
The type of Status List.
The update action to be performed on the encrypted status list, can be revoke, suspend or reinstate
The request was successful.
A problem with the input fields has occurred. Additional state information plus metadata may be available in the response body.
Access token is missing or invalid
An internal error has occurred. Additional state information plus metadata may be available in the response body.
The type of Status List.
The update action to be performed on the encrypted status list, can be revoke, suspend or reinstate
The request was successful.
A problem with the input fields has occurred. Additional state information plus metadata may be available in the response body.
Access token is missing or invalid
An internal error has occurred. Additional state information plus metadata may be available in the response body.
Network to create the DID on (testnet or mainnet)
Identity Provider to create the DID
Algorithm to use for generating the method-specific ID. The two styles supported are UUIDs and Indy-style Base58. See cheqd DID method documentation for more details.
Type of verification method to use for the DID. See DID Core specification for more details. Only the types listed below are supported.
The unique identifier in hexadecimal public key format used in the verification method to create the DID.
["https://www.w3.org/ns/did/v1"]Select the type of accreditation to be issued.
Input fields for the creating a Verifiable Accreditation.
DID of the Verifiable Accreditation issuer. This needs to be a did:cheqd DID.
did:cheqd:testnet:7bf81a20-633c-4cc7-bc4a-5a45801005e0DID of the Verifiable Accreditation holder/subject. This needs to be a did:cheqd DID.
did:cheqd:testnet:z6MkhaXgBZDvotDkL5257faiztiGiC2QtKLGpbnnEGta2doKUnique name of the Verifiable Accreditation.
JSON object containing the attributes to be included in the Accreditation.
Optional properties to be included in the @context property of the Accreditation.
["https://schema.org/schema.jsonld","https://veramo.io/contexts/profile/v1"]DID URL of the parent Verifiable Accreditation, required for accredit/attest operation.
DID URL of the root Verifiable Accreditation, required for accredit/attest operation.
Name or Type of the Trust Framework, required for authorize operation.
Url of the Trust Framework, required for authorize operation.
Optional properties to be included in the type property of the Accreditation.
["Person"]Optional expiration date according to the <a href=https://www.w3.org/TR/vc-data-model/#expiration> VC Data Model specification.
2023-06-08T13:49:28.000ZFormat of the Verifiable Accreditation. Defaults to VC-JWT.
jwtPossible values: Terms of use can be utilized by an issuer or a holder to communicate the terms under which a verifiable credential was issued.
{"type":"IssuerPolicy","id":"http://example.com/policies/credential/4","profile":"http://example.com/profiles/credential","prohibition":[{"assigner":"https://example.edu/issuers/14","assignee":"AllVerifiers","target":"http://example.edu/credentials/3732","action":["Archival"]}]}RefreshService property MUST be one or more refresh services that provides enough information to the recipient's software such that the recipient can refresh the verifiable credential.
{"type":"ManualRefreshService2018","id":"https://example.edu/refresh/3732"}Evidence property MUST be one or more evidence schemes providing enough information for a verifier to determine whether the evidence gathered by the issuer meets its confidence requirements for relying on the credential.
{"type":["DocumentVerification"],"id":"https://example.edu/evidence/f2aeec97-fc0d-42bf-8ca7-0548192d4231","verifier":"https://example.edu/issuers/14","evidenceDocument":"DriversLicense","subjectPresence":"Physical","documentPresence":"Physical","licenseNumber":"123AB4567"}Select the type of accreditation to be issued.
Input fields for the creating a Verifiable Accreditation.
DID of the Verifiable Accreditation issuer. This needs to be a did:cheqd DID.
did:cheqd:testnet:7bf81a20-633c-4cc7-bc4a-5a45801005e0DID of the Verifiable Accreditation holder/subject. This needs to be a did:cheqd DID.
did:cheqd:testnet:z6MkhaXgBZDvotDkL5257faiztiGiC2QtKLGpbnnEGta2doKUnique name of the Verifiable Accreditation.
JSON object containing the attributes to be included in the Accreditation.
Optional properties to be included in the @context property of the Accreditation.
["https://schema.org/schema.jsonld","https://veramo.io/contexts/profile/v1"]DID URL of the parent Verifiable Accreditation, required for accredit/attest operation.
DID URL of the root Verifiable Accreditation, required for accredit/attest operation.
Name or Type of the Trust Framework, required for authorize operation.
Url of the Trust Framework, required for authorize operation.
Optional properties to be included in the type property of the Accreditation.
["Person"]Optional expiration date according to the <a href=https://www.w3.org/TR/vc-data-model/#expiration> VC Data Model specification.
2023-06-08T13:49:28.000ZFormat of the Verifiable Accreditation. Defaults to VC-JWT.
jwtPossible values: Terms of use can be utilized by an issuer or a holder to communicate the terms under which a verifiable credential was issued.
{"type":"IssuerPolicy","id":"http://example.com/policies/credential/4","profile":"http://example.com/profiles/credential","prohibition":[{"assigner":"https://example.edu/issuers/14","assignee":"AllVerifiers","target":"http://example.edu/credentials/3732","action":["Archival"]}]}RefreshService property MUST be one or more refresh services that provides enough information to the recipient's software such that the recipient can refresh the verifiable credential.
{"type":"ManualRefreshService2018","id":"https://example.edu/refresh/3732"}Evidence property MUST be one or more evidence schemes providing enough information for a verifier to determine whether the evidence gathered by the issuer meets its confidence requirements for relying on the credential.
{"type":["DocumentVerification"],"id":"https://example.edu/evidence/f2aeec97-fc0d-42bf-8ca7-0548192d4231","verifier":"https://example.edu/issuers/14","evidenceDocument":"DriversLicense","subjectPresence":"Physical","documentPresence":"Physical","licenseNumber":"123AB4567"}The request was successful.
Input fields for revoking/suspending a Verifiable Credential.
["https://www.w3.org/2018/credentials/v1","https://schema.org","https://veramo.io/contexts/profile/v1"]["VerifiableCredential","Person"]2023-06-08T13:49:28.000Z2023-06-08T13:49:28.000ZA problem with the input fields has occurred. Additional state information plus metadata may be available in the response body.
Access token is missing or invalid
An internal error has occurred. Additional state information plus metadata may be available in the response body.
The request was successful.
https://w3id.org/did-resolution/v1A problem with the input fields has occurred. Additional state information plus metadata may be available in the response body.
Access token is missing or invalid
An internal error has occurred. Additional state information plus metadata may be available in the response body.
The request was successful.
A problem with the input fields has occurred. Additional state information plus metadata may be available in the response body.
Access token is missing or invalid
An internal error has occurred. Additional state information plus metadata may be available in the response body.
The request was successful.
A problem with the input fields has occurred. Additional state information plus metadata may be available in the response body.
Access token is missing or invalid
An internal error has occurred. Additional state information plus metadata may be available in the response body.
The request was successful.
A problem with the input fields has occurred. Additional state information plus metadata may be available in the response body.
Access token is missing or invalid
An internal error has occurred. Additional state information plus metadata may be available in the response body.
The request was successful.
A problem with the input fields has occurred. Additional state information plus metadata may be available in the response body.
Access token is missing or invalid
An internal error has occurred. Additional state information plus metadata may be available in the response body.
The request was successful.
GET /did/search/{did} HTTP/1.1
Host: studio-api.cheqd.net
x-api-key: YOUR_API_KEY
Accept: */*
{
"@context": "https://w3id.org/did-resolution/v1",
"didDidResolutionMetadata": {
"contentType": "application/did+ld+json",
"retrieved": "2021-09-01T12:00:00Z",
"did": {
"didString": "did:cheqd:testnet:55dbc8bf-fba3-4117-855c-1e0dc1d3bb47",
"method": "cheqd",
"methodSpecificId": "55dbc8bf-fba3-4117-855c-1e0dc1d3bb47"
}
},
"didDocument": {
"@context": [
"https://www.w3.org/ns/did/v1"
],
"id": "did:cheqd:testnet:7bf81a20-633c-4cc7-bc4a-5a45801005e0",
"controller": [
"did:cheqd:testnet:7bf81a20-633c-4cc7-bc4a-5a45801005e0"
],
"verificationMethod": [
{
"id": "did:cheqd:testnet:7bf81a20-633c-4cc7-bc4a-5a45801005e0#key-1",
"type": "Ed25519VerificationKey2018",
"controller": "did:cheqd:testnet:7bf81a20-633c-4cc7-bc4a-5a45801005e0",
"publicKeyBase58": "z6MkkVbyHJLLjdjU5B62DaJ4mkdMdUkttf9UqySSkA9bVTeZ"
}
],
"authentication": [
"did:cheqd:testnet:7bf81a20-633c-4cc7-bc4a-5a45801005e0#key-1"
],
"service": [
{
"id": "did:cheqd:testnet:7bf81a20-633c-4cc7-bc4a-5a45801005e0#service-1",
"type": "LinkedDomains",
"serviceEndpoint": [
"https://example.com"
]
}
]
},
"didDocumentMetadata": {
"created": "2021-09-01T12:00:00Z",
"deactivated": false,
"updated": "2021-09-10T12:00:00Z",
"versionId": "3ccde6ba-6ba5-56f2-9f4f-8825561a9860",
"linkedResourceMetadata": [
{
"resourceURI": "did:cheqd:testnet:55dbc8bf-fba3-4117-855c-1e0dc1d3bb47/resources/398cee0a-efac-4643-9f4c-74c48c72a14b",
"resourceCollectionId": "55dbc8bf-fba3-4117-855c-1e0dc1d3bb47",
"resourceId": "398cee0a-efac-4643-9f4c-74c48c72a14b",
"resourceName": "cheqd-issuer-logo",
"resourceType": "CredentialArtwork",
"mediaType": "image/png",
"resourceVersion": "1.0",
"checksum": "a95380f460e63ad939541a57aecbfd795fcd37c6d78ee86c885340e33a91b559",
"created": "2021-09-01T12:00:00Z",
"nextVersionId": "d4829ac7-4566-478c-a408-b44767eddadc",
"previousVersionId": "ad7a8442-3531-46eb-a024-53953ec6e4ff"
}
]
}
}GET /resource/search/{did} HTTP/1.1
Host: studio-api.cheqd.net
x-api-key: YOUR_API_KEY
Accept: */*
{}{
"kid": "text",
"type": "Ed25519",
"publicKeyHex": "text"
}POST /key/create HTTP/1.1
Host: studio-api.cheqd.net
x-api-key: YOUR_API_KEY
Accept: */*
{
"found": true,
"resource": {
"StatusList2021": {
"encodedList": "H4sIAAAAAAAAA-3BAQ0AAADCoPdPbQ8HFAAAAAAAAAAAAAAAAAAAAADwaDhDr_xcRAAA",
"type": "StatusList2021Revocation",
"validFrom": "2023-06-26T11:45:19.349Z"
},
"metadata": {
"type": "StatusList2021Revocation",
"encoding": "base64url",
"encrypted": false
}
},
"resourceMetadata": {
"resourceURI": "did:cheqd:testnet:7c2b990c-3d05-4ebf-91af-f4f4d0091d2e/resources/5945233a-a4b5-422b-b893-eaed5cedd2dc",
"resourceCollectionId": "7c2b990c-3d05-4ebf-91af-f4f4d0091d2e",
"resourceId": "5945233a-a4b5-422b-b893-eaed5cedd2dc",
"resourceName": "cheqd-employee-credentials",
"resourceType": "StatusList2021Revocation",
"mediaType": "application/json",
"resourceVersion": "1.0.0",
"created": "2023-06-26T11:45:20Z",
"checksum": "909e22e371a41afbb96c330a97752cf7c8856088f1f937f87decbef06cbe9ca2",
"previousVersionId": null,
"nextVersionId": null
}
}GET /credential-status/search?did=text&listType=StatusList2021&statusPurpose=revocation&statusListName=text HTTP/1.1
Host: studio-api.cheqd.net
x-api-key: YOUR_API_KEY
Accept: */*
POST /key/create HTTP/1.1
Host: studio-api.cheqd.net
x-api-key: YOUR_API_KEY
Accept: */*
{
"kid": "text",
"type": "Ed25519",
"publicKeyHex": "text"
}{
"checked": true,
"revoked": false
}{
"checked": true,
"revoked": false
}{
"checked": true,
"revoked": false
}POST /credential-status/check?listType=StatusList2021&statusPurpose=revocation HTTP/1.1
Host: studio-api.cheqd.net
x-api-key: YOUR_API_KEY
Content-Type: application/x-www-form-urlencoded
Accept: */*
Content-Length: 201
"did='https://example.com'&statusListName='text'&index=1&indices=[1]&indexRangeStart=1&indexRangeEnd=1&statusListCredential='text'&statusSize=2&statusMessage=[]&makeFeePayment=true"POST /credential-status/check?listType=StatusList2021&statusPurpose=revocation HTTP/1.1
Host: studio-api.cheqd.net
x-api-key: YOUR_API_KEY
Content-Type: application/x-www-form-urlencoded
Accept: */*
Content-Length: 201
"did='https://example.com'&statusListName='text'&index=1&indices=[1]&indexRangeStart=1&indexRangeEnd=1&statusListCredential='text'&statusSize=2&statusMessage=[]&makeFeePayment=true"POST /credential-status/check?listType=StatusList2021&statusPurpose=revocation HTTP/1.1
Host: studio-api.cheqd.net
x-api-key: YOUR_API_KEY
Content-Type: application/x-www-form-urlencoded
Accept: */*
Content-Length: 201
"did='https://example.com'&statusListName='text'&index=1&indices=[1]&indexRangeStart=1&indexRangeEnd=1&statusListCredential='text'&statusSize=2&statusMessage=[]&makeFeePayment=true"{
"updated": true,
"revoked": true,
"resource": {
"StatusList2021": {
"encodedList": "496fdfbeb745b4db03fcdb40566f9c4c4a1c0f184b31255e641b6e7bdfb9b6946c12be87ca3763be0393c00b67ac1e8737c106b32f46ef59c765754415b5e8cc7c65fccaa3374620430ea476301a5e0dd63340e7a27a68bc627518471f22e4a2",
"type": "StatusList2021Revocation",
"validFrom": "2023-06-26T11:45:19.349Z"
},
"metadata": {
"type": "StatusList2021Revocation",
"encoding": "base64url",
"encrypted": true,
"encryptedSymmetricKey": "b11182dc524b8181f9a6aef4c4ad0a1c14e40033b9112dffd8d1bcf6cc3b85abc07ded2205ee94068a99f4202502cb0855f322583fa6ce1534d3a05bf36891766ea2c5f90a982b3040680762977d404d758a2370224a239c8279aa7d21e980931c42055b17ca4c7dbffa4782480a8b6279cf989b2f166d5fdb4b2c1b5a63927200000000000000203018dcaba26df45a415bb599218b27ca853a70289d7a3ed3ed0e3730452e8f8d9af91b6e71312565d2c069341f6660ab",
"paymentConditions": [
{
"feePaymentAddress": "cheqd1qs0nhyk868c246defezhz5eymlt0dmajna2csg",
"feePaymentAmount": "20000000000ncheq",
"intervalInSeconds": 600,
"type": "timelockPayment"
}
]
},
"resourceMetadata": {
"resourceURI": "did:cheqd:testnet:7c2b990c-3d05-4ebf-91af-f4f4d0091d2e/resources/5945233a-a4b5-422b-b893-eaed5cedd2dc",
"resourceCollectionId": "7c2b990c-3d05-4ebf-91af-f4f4d0091d2e",
"resourceId": "5945233a-a4b5-422b-b893-eaed5cedd2dc",
"resourceName": "cheqd-revocation-encrypted-1",
"resourceType": "StatusList2021Revocation",
"mediaType": "application/json",
"resourceVersion": "2023-06-26T11:45:19.349Z",
"created": "2023-06-26T11:45:20Z",
"checksum": "909e22e371a41afbb96c330a97752cf7c8856088f1f937f87decbef06cbe9ca2",
"previousVersionId": null,
"nextVersionId": null
},
"symmetricKey": "dfe204ee95ae74ea5d74b94c3d8ff782273905b07fbc9f8c3d961c3b43849f18"
}
}{
"updated": true,
"revoked": true,
"resource": {
"StatusList2021": {
"encodedList": "496fdfbeb745b4db03fcdb40566f9c4c4a1c0f184b31255e641b6e7bdfb9b6946c12be87ca3763be0393c00b67ac1e8737c106b32f46ef59c765754415b5e8cc7c65fccaa3374620430ea476301a5e0dd63340e7a27a68bc627518471f22e4a2",
"type": "StatusList2021Revocation",
"validFrom": "2023-06-26T11:45:19.349Z"
},
"metadata": {
"type": "StatusList2021Revocation",
"encoding": "base64url",
"encrypted": true,
"encryptedSymmetricKey": "b11182dc524b8181f9a6aef4c4ad0a1c14e40033b9112dffd8d1bcf6cc3b85abc07ded2205ee94068a99f4202502cb0855f322583fa6ce1534d3a05bf36891766ea2c5f90a982b3040680762977d404d758a2370224a239c8279aa7d21e980931c42055b17ca4c7dbffa4782480a8b6279cf989b2f166d5fdb4b2c1b5a63927200000000000000203018dcaba26df45a415bb599218b27ca853a70289d7a3ed3ed0e3730452e8f8d9af91b6e71312565d2c069341f6660ab",
"paymentConditions": [
{
"feePaymentAddress": "cheqd1qs0nhyk868c246defezhz5eymlt0dmajna2csg",
"feePaymentAmount": "20000000000ncheq",
"intervalInSeconds": 600,
"type": "timelockPayment"
}
]
},
"resourceMetadata": {
"resourceURI": "did:cheqd:testnet:7c2b990c-3d05-4ebf-91af-f4f4d0091d2e/resources/5945233a-a4b5-422b-b893-eaed5cedd2dc",
"resourceCollectionId": "7c2b990c-3d05-4ebf-91af-f4f4d0091d2e",
"resourceId": "5945233a-a4b5-422b-b893-eaed5cedd2dc",
"resourceName": "cheqd-revocation-encrypted-1",
"resourceType": "StatusList2021Revocation",
"mediaType": "application/json",
"resourceVersion": "2023-06-26T11:45:19.349Z",
"created": "2023-06-26T11:45:20Z",
"checksum": "909e22e371a41afbb96c330a97752cf7c8856088f1f937f87decbef06cbe9ca2",
"previousVersionId": null,
"nextVersionId": null
},
"symmetricKey": "dfe204ee95ae74ea5d74b94c3d8ff782273905b07fbc9f8c3d961c3b43849f18"
}
}POST /credential-status/update/encrypted?listType=StatusList2021&statusAction=text HTTP/1.1
Host: studio-api.cheqd.net
x-api-key: YOUR_API_KEY
Content-Type: application/x-www-form-urlencoded
Accept: */*
Content-Length: 227
"did='https://example.com'&statusListName='text'&indices=[1]&statusListVersion='text'&symmetricKey='text'&feePaymentAddress='cheqd1qs0nhyk868c246defezhz5eymlt0dmajna2csg'&feePaymentAmount=20&feePaymentWindow=10"POST /credential-status/update/encrypted?listType=StatusList2021&statusAction=text HTTP/1.1
Host: studio-api.cheqd.net
x-api-key: YOUR_API_KEY
Content-Type: application/x-www-form-urlencoded
Accept: */*
Content-Length: 227
"did='https://example.com'&statusListName='text'&indices=[1]&statusListVersion='text'&symmetricKey='text'&feePaymentAddress='cheqd1qs0nhyk868c246defezhz5eymlt0dmajna2csg'&feePaymentAmount=20&feePaymentWindow=10"{
"@context": [
"https://www.w3.org/2018/credentials/v1",
"https://schema.org",
"https://veramo.io/contexts/profile/v1"
],
"credentialSubject": {
"gender": "male",
"id": "did:key:z6MkhaXgBZDvotDkL5257faiztiGiC2QtKLGpbnnEGta2doK",
"name": "Bob"
},
"credentialStatus": {
"id": "https://resolver.cheqd.net/1.0/identifiers/did:cheqd:testnet:7c2b990c-3d05-4ebf-91af-f4f4d0091d2e?resourceName=cheqd-suspension-1&resourceType=StatusList2021Suspension#20",
"statusIndex": 20,
"statusPurpose": "suspension",
"type": "StatusList2021Entry"
},
"issuanceDate": "2023-06-08T13:49:28.000Z",
"issuer": {
"id": "did:cheqd:testnet:7bf81a20-633c-4cc7-bc4a-5a45801005e0"
},
"proof": {
"jwt": "eyJhbGciOiJFZERTQSIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJkaWQ6Y2hlcWQ6dGVzdG5ldDo3YmY4MWEyMC02MzNjLTRjYzctYmM0YS01YTQ1ODAxMDA1ZTAiLCJuYmYiOjE2ODYyMzIxNjgsInN1YiI6ImRpZDprZXk6ejZNa2hhWGdCWkR2b3REa0w1MjU3ZmFpenRpR2lDMlF0S0xHcGJubkVHdGEyZG9LIiwidmMiOnsiQGNvbnRleHQiOlsiaHR0cHM6Ly93d3cudzMub3JnLzIwMTgvY3JlZGVudGlhbHMvdjEiLCJodHRwczovL3NjaGVtYS5vcmciLCJodHRwczovL3ZlcmFtby5pby9jb250ZXh0cy9wcm9maWxlL3YxIl0sImNyZWRlbnRpYWxTdWJqZWN0Ijp7ImdlbmRlciI6Im1hbGUiLCJuYW1lIjoiQm9iIn0sInR5cGUiOlsiVmVyaWZpYWJsZUNyZWRlbnRpYWwiLCJQZXJzb24iXX19.wMfdR6RtyAZA4eoWya5Aw97wwER2Cm5Guk780Xw8H9fA3sfudIJeLRLboqixpTchqSbYeA7KbuCTAnLgXTD_Cg",
"type": "JwtProof2020"
},
"type": [
"VerifiableCredential",
"Person"
]
}POST /trust-registry/accreditation/issue?accreditationType=authorize HTTP/1.1
Host: studio-api.cheqd.net
x-api-key: YOUR_API_KEY
Content-Type: application/x-www-form-urlencoded
Accept: */*
Content-Length: 955
"issuerDid='did:cheqd:testnet:7bf81a20-633c-4cc7-bc4a-5a45801005e0'&subjectDid='did:cheqd:testnet:2582fe17-9b25-45e4-8104-1cfca430f0c3'&schemas=[{'type':'MuseumPassCredential','url':'https://resolver.cheqd.net/1.0/identifiers/did:cheqd:testnet:0a5b94d0-a417-48ed-a6f5-4abc9e95888d?resourceName=MuseumPassCredentialSchema&resourceType=JsonSchemaValidator2018'}]&format='jwt'&accreditationName='authorizeAccreditation'&trustFramework='https://learn.cheqd.io/governance/start'&trustFrameworkId='cheqd Governance Framework'&parentAccreditation='did:cheqd:testnet:15b74787-6e48-4fd5-8020-eab24e990578?resourceName=accreditAccreditation&resourceType=VerifiableAccreditationToAccredit'&rootAuthorization='did:cheqd:testnet:5RpEg66jhhbmASWPXJRWrA?resourceName=authorizeAccreditation&resourceType=VerifiableAuthorizationForTrustChain'&credentialStatus={'statusPurpose':'revocation','statusListName':'employee-credentials','statusListIndex':10}"POST /resource/create/{did} HTTP/1.1
Host: studio-api.cheqd.net
x-api-key: YOUR_API_KEY
Content-Type: application/x-www-form-urlencoded
Accept: */*
Content-Length: 94
"data='SGVsbG8gV29ybGQ='&encoding='base64url'&name='ResourceName'&type='TextDocument'"{
"resourceURI": "did:cheqd:testnet:55dbc8bf-fba3-4117-855c-1e0dc1d3bb47/resources/398cee0a-efac-4643-9f4c-74c48c72a14b",
"resourceCollectionId": "55dbc8bf-fba3-4117-855c-1e0dc1d3bb47",
"resourceId": "398cee0a-efac-4643-9f4c-74c48c72a14b",
"resourceName": "cheqd-issuer-logo",
"resourceType": "CredentialArtwork",
"mediaType": "image/png",
"resourceVersion": "1.0",
"checksum": "a95380f460e63ad939541a57aecbfd795fcd37c6d78ee86c885340e33a91b559",
"created": "2021-09-01T12:00:00Z",
"nextVersionId": "d4829ac7-4566-478c-a408-b44767eddadc",
"previousVersionId": "ad7a8442-3531-46eb-a024-53953ec6e4ff"
}POST /resource/create/{did} HTTP/1.1
Host: studio-api.cheqd.net
x-api-key: YOUR_API_KEY
Content-Type: application/x-www-form-urlencoded
Accept: */*
Content-Length: 94
"data='SGVsbG8gV29ybGQ='&encoding='base64url'&name='ResourceName'&type='TextDocument'"GET /did/search/{did} HTTP/1.1
Host: studio-api.cheqd.net
x-api-key: YOUR_API_KEY
Accept: */*
{
"@context": "https://w3id.org/did-resolution/v1",
"didDidResolutionMetadata": {
"contentType": "application/did+ld+json",
"retrieved": "2021-09-01T12:00:00Z",
"did": {
"didString": "did:cheqd:testnet:55dbc8bf-fba3-4117-855c-1e0dc1d3bb47",
"method": "cheqd",
"methodSpecificId": "55dbc8bf-fba3-4117-855c-1e0dc1d3bb47"
}
},
"didDocument": {
"@context": [
"https://www.w3.org/ns/did/v1"
],
"id": "did:cheqd:testnet:7bf81a20-633c-4cc7-bc4a-5a45801005e0",
"controller": [
"did:cheqd:testnet:7bf81a20-633c-4cc7-bc4a-5a45801005e0"
],
"verificationMethod": [
{
"id": "did:cheqd:testnet:7bf81a20-633c-4cc7-bc4a-5a45801005e0#key-1",
"type": "Ed25519VerificationKey2018",
"controller": "did:cheqd:testnet:7bf81a20-633c-4cc7-bc4a-5a45801005e0",
"publicKeyBase58": "z6MkkVbyHJLLjdjU5B62DaJ4mkdMdUkttf9UqySSkA9bVTeZ"
}
],
"authentication": [
"did:cheqd:testnet:7bf81a20-633c-4cc7-bc4a-5a45801005e0#key-1"
],
"service": [
{
"id": "did:cheqd:testnet:7bf81a20-633c-4cc7-bc4a-5a45801005e0#service-1",
"type": "LinkedDomains",
"serviceEndpoint": [
"https://example.com"
]
}
]
},
"didDocumentMetadata": {
"created": "2021-09-01T12:00:00Z",
"deactivated": false,
"updated": "2021-09-10T12:00:00Z",
"versionId": "3ccde6ba-6ba5-56f2-9f4f-8825561a9860",
"linkedResourceMetadata": [
{
"resourceURI": "did:cheqd:testnet:55dbc8bf-fba3-4117-855c-1e0dc1d3bb47/resources/398cee0a-efac-4643-9f4c-74c48c72a14b",
"resourceCollectionId": "55dbc8bf-fba3-4117-855c-1e0dc1d3bb47",
"resourceId": "398cee0a-efac-4643-9f4c-74c48c72a14b",
"resourceName": "cheqd-issuer-logo",
"resourceType": "CredentialArtwork",
"mediaType": "image/png",
"resourceVersion": "1.0",
"checksum": "a95380f460e63ad939541a57aecbfd795fcd37c6d78ee86c885340e33a91b559",
"created": "2021-09-01T12:00:00Z",
"nextVersionId": "d4829ac7-4566-478c-a408-b44767eddadc",
"previousVersionId": "ad7a8442-3531-46eb-a024-53953ec6e4ff"
}
]
}
}{
"resourceURI": "did:cheqd:testnet:55dbc8bf-fba3-4117-855c-1e0dc1d3bb47/resources/398cee0a-efac-4643-9f4c-74c48c72a14b",
"resourceCollectionId": "55dbc8bf-fba3-4117-855c-1e0dc1d3bb47",
"resourceId": "398cee0a-efac-4643-9f4c-74c48c72a14b",
"resourceName": "cheqd-issuer-logo",
"resourceType": "CredentialArtwork",
"mediaType": "image/png",
"resourceVersion": "1.0",
"checksum": "a95380f460e63ad939541a57aecbfd795fcd37c6d78ee86c885340e33a91b559",
"created": "2021-09-01T12:00:00Z",
"nextVersionId": "d4829ac7-4566-478c-a408-b44767eddadc",
"previousVersionId": "ad7a8442-3531-46eb-a024-53953ec6e4ff"
}POST /credential/issue HTTP/1.1
Host: studio-api.cheqd.net
x-api-key: YOUR_API_KEY
Content-Type: application/x-www-form-urlencoded
Accept: */*
Content-Length: 398
"issuerDid='did:cheqd:testnet:7bf81a20-633c-4cc7-bc4a-5a45801005e0'&subjectDid='did:key:z6MkhaXgBZDvotDkL5257faiztiGiC2QtKLGpbnnEGta2doK'&attributes={'gender':'male','name':'Bob'}&@context=['https://schema.org']&type=['Person']&format='jwt'&credentialStatus={'statusPurpose':'revocation','statusListName':'employee-credentials','statusListIndex':10,'statusListType':'StatusList2021'}"POST /credential/issue HTTP/1.1
Host: studio-api.cheqd.net
x-api-key: YOUR_API_KEY
Content-Type: application/x-www-form-urlencoded
Accept: */*
Content-Length: 398
"issuerDid='did:cheqd:testnet:7bf81a20-633c-4cc7-bc4a-5a45801005e0'&subjectDid='did:key:z6MkhaXgBZDvotDkL5257faiztiGiC2QtKLGpbnnEGta2doK'&attributes={'gender':'male','name':'Bob'}&@context=['https://schema.org']&type=['Person']&format='jwt'&credentialStatus={'statusPurpose':'revocation','statusListName':'employee-credentials','statusListIndex':10,'statusListType':'StatusList2021'}"{
"@context": [
"https://www.w3.org/2018/credentials/v1",
"https://schema.org",
"https://veramo.io/contexts/profile/v1"
],
"credentialSubject": {
"gender": "male",
"id": "did:key:z6MkhaXgBZDvotDkL5257faiztiGiC2QtKLGpbnnEGta2doK",
"name": "Bob"
},
"credentialStatus": {
"id": "https://resolver.cheqd.net/1.0/identifiers/did:cheqd:testnet:7c2b990c-3d05-4ebf-91af-f4f4d0091d2e?resourceName=cheqd-suspension-1&resourceType=StatusList2021Suspension#20",
"statusIndex": 20,
"statusPurpose": "suspension",
"type": "StatusList2021Entry"
},
"issuanceDate": "2023-06-08T13:49:28.000Z",
"issuer": {
"id": "did:cheqd:testnet:7bf81a20-633c-4cc7-bc4a-5a45801005e0"
},
"proof": {
"jwt": "eyJhbGciOiJFZERTQSIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJkaWQ6Y2hlcWQ6dGVzdG5ldDo3YmY4MWEyMC02MzNjLTRjYzctYmM0YS01YTQ1ODAxMDA1ZTAiLCJuYmYiOjE2ODYyMzIxNjgsInN1YiI6ImRpZDprZXk6ejZNa2hhWGdCWkR2b3REa0w1MjU3ZmFpenRpR2lDMlF0S0xHcGJubkVHdGEyZG9LIiwidmMiOnsiQGNvbnRleHQiOlsiaHR0cHM6Ly93d3cudzMub3JnLzIwMTgvY3JlZGVudGlhbHMvdjEiLCJodHRwczovL3NjaGVtYS5vcmciLCJodHRwczovL3ZlcmFtby5pby9jb250ZXh0cy9wcm9maWxlL3YxIl0sImNyZWRlbnRpYWxTdWJqZWN0Ijp7ImdlbmRlciI6Im1hbGUiLCJuYW1lIjoiQm9iIn0sInR5cGUiOlsiVmVyaWZpYWJsZUNyZWRlbnRpYWwiLCJQZXJzb24iXX19.wMfdR6RtyAZA4eoWya5Aw97wwER2Cm5Guk780Xw8H9fA3sfudIJeLRLboqixpTchqSbYeA7KbuCTAnLgXTD_Cg",
"type": "JwtProof2020"
},
"type": [
"VerifiableCredential",
"Person"
]
}{
"@context": [
"https://www.w3.org/2018/credentials/v1",
"https://schema.org",
"https://veramo.io/contexts/profile/v1"
],
"credentialSubject": {
"gender": "male",
"id": "did:key:z6MkhaXgBZDvotDkL5257faiztiGiC2QtKLGpbnnEGta2doK",
"name": "Bob"
},
"credentialStatus": {
"id": "https://resolver.cheqd.net/1.0/identifiers/did:cheqd:testnet:7c2b990c-3d05-4ebf-91af-f4f4d0091d2e?resourceName=cheqd-suspension-1&resourceType=StatusList2021Suspension#20",
"statusIndex": 20,
"statusPurpose": "suspension",
"type": "StatusList2021Entry"
},
"issuanceDate": "2023-06-08T13:49:28.000Z",
"issuer": {
"id": "did:cheqd:testnet:7bf81a20-633c-4cc7-bc4a-5a45801005e0"
},
"proof": {
"jwt": "eyJhbGciOiJFZERTQSIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJkaWQ6Y2hlcWQ6dGVzdG5ldDo3YmY4MWEyMC02MzNjLTRjYzctYmM0YS01YTQ1ODAxMDA1ZTAiLCJuYmYiOjE2ODYyMzIxNjgsInN1YiI6ImRpZDprZXk6ejZNa2hhWGdCWkR2b3REa0w1MjU3ZmFpenRpR2lDMlF0S0xHcGJubkVHdGEyZG9LIiwidmMiOnsiQGNvbnRleHQiOlsiaHR0cHM6Ly93d3cudzMub3JnLzIwMTgvY3JlZGVudGlhbHMvdjEiLCJodHRwczovL3NjaGVtYS5vcmciLCJodHRwczovL3ZlcmFtby5pby9jb250ZXh0cy9wcm9maWxlL3YxIl0sImNyZWRlbnRpYWxTdWJqZWN0Ijp7ImdlbmRlciI6Im1hbGUiLCJuYW1lIjoiQm9iIn0sInR5cGUiOlsiVmVyaWZpYWJsZUNyZWRlbnRpYWwiLCJQZXJzb24iXX19.wMfdR6RtyAZA4eoWya5Aw97wwER2Cm5Guk780Xw8H9fA3sfudIJeLRLboqixpTchqSbYeA7KbuCTAnLgXTD_Cg",
"type": "JwtProof2020"
},
"type": [
"VerifiableCredential",
"Person"
]
}The request was successful.
A problem with the input fields has occurred. Additional state information plus metadata may be available in the response body.
Access token is missing or invalid
An internal error has occurred. Additional state information plus metadata may be available in the response body.
Verifiable Credential to be verified as a VC-JWT string or a JSON object.
The request was successful.
A problem with the input fields has occurred. Additional state information plus metadata may be available in the response body.
Access token is missing or invalid
An internal error has occurred. Additional state information plus metadata may be available in the response body.
The request was successful.
A problem with the input fields has occurred. Additional state information plus metadata may be available in the response body.
Access token is missing or invalid
An internal error has occurred. Additional state information plus metadata may be available in the response body.
The request was successful.
trueA problem with the input fields has occurred. Additional state information plus metadata may be available in the response body.
Access token is missing or invalid
An internal error has occurred. Additional state information plus metadata may be available in the response body.
The request was successful.
trueA problem with the input fields has occurred. Additional state information plus metadata may be available in the response body.
Access token is missing or invalid
An internal error has occurred. Additional state information plus metadata may be available in the response body.
The request was successful.
https://w3id.org/did-resolution/v1A problem with the input fields has occurred. Additional state information plus metadata may be available in the response body.
Access token is missing or invalid
An internal error has occurred. Additional state information plus metadata may be available in the response body.
Verifiable Presentation to be verified as a VP-JWT string or a JSON object.
Provide an optional verifier DID (also known as 'domain' parameter), if the verifier DID in the presentation is not managed in the wallet.
Automatically make fee payment (if required) based on payment conditions to unlock encrypted StatusList2021 or BitstringStatusList DID-Linked Resource.
falseThe request was successful.
A problem with the input fields has occurred. Additional state information plus metadata may be available in the response body.
Access token is missing or invalid
An internal error has occurred. Additional state information plus metadata may be available in the response body.
The request was successful.
trueA problem with the input fields has occurred. Additional state information plus metadata may be available in the response body.
Access token is missing or invalid
An internal error has occurred. Additional state information plus metadata may be available in the response body.
The request was successful.
A problem with the input fields has occurred. Additional state information plus metadata may be available in the response body.
Access token is missing or invalid
An internal error has occurred. Additional state information plus metadata may be available in the response body.
The request was successful.
A problem with the input fields has occurred. Additional state information plus metadata may be available in the response body.
Access token is missing or invalid
An internal error has occurred. Additional state information plus metadata may be available in the response body.
The request was successful.
did:cheqd:testnet:55dbc8bf-fba3-4117-855c-1e0dc1d3bb47/resources/398cee0a-efac-4643-9f4c-74c48c72a14b55dbc8bf-fba3-4117-855c-1e0dc1d3bb47398cee0a-efac-4643-9f4c-74c48c72a14bcheqd-issuer-logoCredentialArtworkimage/png1.0a95380f460e63ad939541a57aecbfd795fcd37c6d78ee86c885340e33a91b5592021-09-01T12:00:00Zd4829ac7-4566-478c-a408-b44767eddadcad7a8442-3531-46eb-a024-53953ec6e4ffA problem with the input fields has occurred. Additional state information plus metadata may be available in the response body.
Access token is missing or invalid
An internal error has occurred. Additional state information plus metadata may be available in the response body.
The request was successful.
The default key id of which is the key associated with the first verificationMethod
The list of keys associated with the list of verificationMethod's of DIDDocument
The list of keyRefs which were used for signing the transaction
The list of all possible keys, inlcuding all controller's keys
A problem with the input fields has occurred. Additional state information plus metadata may be available in the response body.
Access token is missing or invalid
An internal error has occurred. Additional state information plus metadata may be available in the response body.
The request was successful.
A problem with the input fields has occurred. Additional state information plus metadata may be available in the response body.
Access token is missing or invalid
An internal error has occurred. Additional state information plus metadata may be available in the response body.
The request was successful.
A problem with the input fields has occurred. Additional state information plus metadata may be available in the response body.
Access token is missing or invalid
An internal error has occurred. Additional state information plus metadata may be available in the response body.
The request was successful.
Input fields for revoking/suspending a Verifiable Credential.
["https://www.w3.org/2018/credentials/v1","https://schema.org","https://veramo.io/contexts/profile/v1"]["VerifiableCredential","Person"]2023-06-08T13:49:28.000Z2023-06-08T13:49:28.000ZA problem with the input fields has occurred. Additional state information plus metadata may be available in the response body.
Access token is missing or invalid
An internal error has occurred. Additional state information plus metadata may be available in the response body.
The request was successful.
A problem with the input fields has occurred. Additional state information plus metadata may be available in the response body.
Access token is missing or invalid
An internal error has occurred. Additional state information plus metadata may be available in the response body.
The request was successful.
Input fields for revoking/suspending a Verifiable Credential.
["https://www.w3.org/2018/credentials/v1","https://schema.org","https://veramo.io/contexts/profile/v1"]["VerifiableCredential","Person"]2023-06-08T13:49:28.000Z2023-06-08T13:49:28.000ZA problem with the input fields has occurred. Additional state information plus metadata may be available in the response body.
Access token is missing or invalid
An internal error has occurred. Additional state information plus metadata may be available in the response body.
POST /credential-status/update/encrypted?listType=StatusList2021&statusAction=text HTTP/1.1
Host: studio-api.cheqd.net
x-api-key: YOUR_API_KEY
Content-Type: application/x-www-form-urlencoded
Accept: */*
Content-Length: 227
"did='https://example.com'&statusListName='text'&indices=[1]&statusListVersion='text'&symmetricKey='text'&feePaymentAddress='cheqd1qs0nhyk868c246defezhz5eymlt0dmajna2csg'&feePaymentAmount=20&feePaymentWindow=10"POST /credential/verify HTTP/1.1
Host: studio-api.cheqd.net
x-api-key: YOUR_API_KEY
Content-Type: application/x-www-form-urlencoded
Accept: */*
Content-Length: 119
"credential={}&policies={'issuanceDate':true,'expirationDate':true,'audience':false,'checkExternalProvider':false}"POST /credential-status/update/unencrypted?listType=StatusList2021&statusAction=text HTTP/1.1
Host: studio-api.cheqd.net
x-api-key: YOUR_API_KEY
Content-Type: application/x-www-form-urlencoded
Accept: */*
Content-Length: 143
"did='did:cheqd:testnet:7c2b990c-3d05-4ebf-91af-f4f4d0091d2e'&statusListName='cheqd-employee-credentials'&indices=[10,3199,12109,130999]"POST /credential/suspend?listType=StatusList2021 HTTP/1.1
Host: studio-api.cheqd.net
x-api-key: YOUR_API_KEY
Content-Type: application/x-www-form-urlencoded
Accept: */*
Content-Length: 39
"credential={}&symmetricKey='text'"POST /credential/reinstate?listType=StatusList2021 HTTP/1.1
Host: studio-api.cheqd.net
x-api-key: YOUR_API_KEY
Content-Type: application/x-www-form-urlencoded
Accept: */*
Content-Length: 39
"credential={}&symmetricKey='text'"POST /did/deactivate/{did} HTTP/1.1
Host: studio-api.cheqd.net
x-api-key: YOUR_API_KEY
Content-Type: application/x-www-form-urlencoded
Accept: */*
Content-Length: 26
"publicKeyHexs=['text']"POST /presentation/verify HTTP/1.1
Host: studio-api.cheqd.net
x-api-key: YOUR_API_KEY
Content-Type: application/x-www-form-urlencoded
Accept: */*
Content-Length: 135
"presentation={}&verifierDid='text'&makeFeePayment=false&policies={'issuanceDate':true,'expirationDate':true,'audience':false}"POST /credential/revoke?listType=StatusList2021&publish=true HTTP/1.1
Host: studio-api.cheqd.net
x-api-key: YOUR_API_KEY
Content-Type: application/x-www-form-urlencoded
Accept: */*
Content-Length: 39
"credential={}&symmetricKey='text'"POST /trust-registry/accreditation/verify HTTP/1.1
Host: studio-api.cheqd.net
x-api-key: YOUR_API_KEY
Content-Type: application/x-www-form-urlencoded
Accept: */*
Content-Length: 500
"subjectDid='did:cheqd:testnet:5efa5126-c070-420f-a9c2-d22ae6eefb92'&didUrl='did:cheqd:testnet:7c2b990c-3d05-4ebf-91af-f4f4d0091d2e?resourceName=cheqd-issuer-logo&resourceType=CredentialArtwork'&did='did:cheqd:testnet:7c2b990c-3d05-4ebf-91af-f4f4d0091d2e'&resourceId='398cee0a-efac-4643-9f4c-74c48c72a14b'&resourceName='cheqd-issuer-logo'&resourceType='CredentialArtwork'&schemas=[{'types':['text'],'url':'text'}]&policies={'issuanceDate':true,'expirationDate':true,'audience':false}"POST /credential-status/check?listType=StatusList2021&statusPurpose=revocation HTTP/1.1
Host: studio-api.cheqd.net
x-api-key: YOUR_API_KEY
Content-Type: application/x-www-form-urlencoded
Accept: */*
Content-Length: 201
"did='https://example.com'&statusListName='text'&index=1&indices=[1]&indexRangeStart=1&indexRangeEnd=1&statusListCredential='text'&statusSize=2&statusMessage=[]&makeFeePayment=true"POST /resource/create/{did} HTTP/1.1
Host: studio-api.cheqd.net
x-api-key: YOUR_API_KEY
Content-Type: application/x-www-form-urlencoded
Accept: */*
Content-Length: 94
"data='SGVsbG8gV29ybGQ='&encoding='base64url'&name='ResourceName'&type='TextDocument'"POST /did/update HTTP/1.1
Host: studio-api.cheqd.net
x-api-key: YOUR_API_KEY
Content-Type: application/x-www-form-urlencoded
Accept: */*
Content-Length: 1436
"did='did:cheqd:testnet:7bf81a20-633c-4cc7-bc4a-5a45801005e0'&service=[{'id':'did:cheqd:mainnet:7bf81a20-633c-4cc7-bc4a-5a45801005e0#service-1','type':'LinkedDomains','serviceEndpoint':['https://example.com'],'priority':0,'recipientKeys':['did:cheqd:mainnet:7bf81a20-633c-4cc7-bc4a-5a45801005e0#key-1'],'routingKeys':['did:cheqd:mainnet:7bf81a20-633c-4cc7-bc4a-5a45801005e0#key-2'],'accept':['didcomm/aip2;env=rfc587']}]&verificationMethod=[{'controller':'did:cheqd:testnet:7bf81a20-633c-4cc7-bc4a-5a45801005e0','id':'did:cheqd:testnet :7bf81a20-633c-4cc7-bc4a-5a45801005e0#key-1','publicKeyBase58':'BTJiso1S4iSiReP6wGksSneGfiKHxz9SYcm2KknpqBJt','type':'Ed25519VerificationKey2018'}]&authentication=['text']&publicKeyHexs=['text']&didDocument={'@context':['https://www.w3.org/ns/did/v1'],'id':'did:cheqd:testnet:7bf81a20-633c-4cc7-bc4a-5a45801005e0','controller':['did:cheqd:testnet:7bf81a20-633c-4cc7-bc4a-5a45801005e0'],'verificationMethod':[{'id':'did:cheqd:testnet:7bf81a20-633c-4cc7-bc4a-5a45801005e0#key-1','type':'Ed25519VerificationKey2018','controller':'did:cheqd:testnet:7bf81a20-633c-4cc7-bc4a-5a45801005e0','publicKeyBase58':'z6MkkVbyHJLLjdjU5B62DaJ4mkdMdUkttf9UqySSkA9bVTeZ'}],'authentication':['did:cheqd:testnet:7bf81a20-633c-4cc7-bc4a-5a45801005e0#key-1'],'service':[{'id':'did:cheqd:testnet:7bf81a20-633c-4cc7-bc4a-5a45801005e0#service-1','type':'LinkedDomains','serviceEndpoint':['https://example.com']}]}"POST /credential-status/create/unencrypted?listType=StatusList2021&statusPurpose=revocation HTTP/1.1
Host: studio-api.cheqd.net
x-api-key: YOUR_API_KEY
Content-Type: application/x-www-form-urlencoded
Accept: */*
Content-Length: 149
"did='did:cheqd:testnet:7c2b990c-3d05-4ebf-91af-f4f4d0091d2e'&statusListName='cheqd-employee-credentials'&length=140000&encoding='base64url'"{
"created": true,
"resource": {
"StatusList2021": {
"encodedList": "H4sIAAAAAAAAA-3BAQ0AAADCoPdPbQ8HFAAAAAAAAAAAAAAAAAAAAADwaDhDr_xcRAAA",
"type": "StatusList2021Revocation",
"validFrom": "2023-06-26T11:45:19.349Z"
},
"metadata": {
"type": "StatusList2021Revocation",
"encoding": "base64url",
"encrypted": false
}
},
"resourceMetadata": {
"resourceURI": "did:cheqd:testnet:7c2b990c-3d05-4ebf-91af-f4f4d0091d2e/resources/5945233a-a4b5-422b-b893-eaed5cedd2dc",
"resourceCollectionId": "7c2b990c-3d05-4ebf-91af-f4f4d0091d2e",
"resourceId": "5945233a-a4b5-422b-b893-eaed5cedd2dc",
"resourceName": "cheqd-employee-credentials",
"resourceType": "StatusList2021Revocation",
"mediaType": "application/json",
"resourceVersion": "1.0.0",
"created": "2023-06-26T11:45:20Z",
"checksum": "909e22e371a41afbb96c330a97752cf7c8856088f1f937f87decbef06cbe9ca2",
"previousVersionId": null,
"nextVersionId": null
}
}POST /credential-status/create/unencrypted?listType=StatusList2021&statusPurpose=revocation HTTP/1.1
Host: studio-api.cheqd.net
x-api-key: YOUR_API_KEY
Content-Type: application/x-www-form-urlencoded
Accept: */*
Content-Length: 149
"did='did:cheqd:testnet:7c2b990c-3d05-4ebf-91af-f4f4d0091d2e'&statusListName='cheqd-employee-credentials'&length=140000&encoding='base64url'"POST /credential/issue HTTP/1.1
Host: studio-api.cheqd.net
x-api-key: YOUR_API_KEY
Content-Type: application/x-www-form-urlencoded
Accept: */*
Content-Length: 398
"issuerDid='did:cheqd:testnet:7bf81a20-633c-4cc7-bc4a-5a45801005e0'&subjectDid='did:key:z6MkhaXgBZDvotDkL5257faiztiGiC2QtKLGpbnnEGta2doK'&attributes={'gender':'male','name':'Bob'}&@context=['https://schema.org']&type=['Person']&format='jwt'&credentialStatus={'statusPurpose':'revocation','statusListName':'employee-credentials','statusListIndex':10,'statusListType':'StatusList2021'}"POST /did/create HTTP/1.1
Host: studio-api.cheqd.net
x-api-key: YOUR_API_KEY
Content-Type: application/x-www-form-urlencoded
Accept: */*
Content-Length: 286
"network='testnet'&providerId='text'&identifierFormatType='uuid'&verificationMethodType='Ed25519VerificationKey2018'&service=[{'idFragment':'service-1','type':'LinkedDomains','serviceEndpoint':['https://example.com']}]&key='text'&@context=['https://www.w3.org/ns/did/v1']"POST /trust-registry/accreditation/issue?accreditationType=authorize HTTP/1.1
Host: studio-api.cheqd.net
x-api-key: YOUR_API_KEY
Content-Type: application/x-www-form-urlencoded
Accept: */*
Content-Length: 955
"issuerDid='did:cheqd:testnet:7bf81a20-633c-4cc7-bc4a-5a45801005e0'&subjectDid='did:cheqd:testnet:2582fe17-9b25-45e4-8104-1cfca430f0c3'&schemas=[{'type':'MuseumPassCredential','url':'https://resolver.cheqd.net/1.0/identifiers/did:cheqd:testnet:0a5b94d0-a417-48ed-a6f5-4abc9e95888d?resourceName=MuseumPassCredentialSchema&resourceType=JsonSchemaValidator2018'}]&format='jwt'&accreditationName='authorizeAccreditation'&trustFramework='https://learn.cheqd.io/governance/start'&trustFrameworkId='cheqd Governance Framework'&parentAccreditation='did:cheqd:testnet:15b74787-6e48-4fd5-8020-eab24e990578?resourceName=accreditAccreditation&resourceType=VerifiableAccreditationToAccredit'&rootAuthorization='did:cheqd:testnet:5RpEg66jhhbmASWPXJRWrA?resourceName=authorizeAccreditation&resourceType=VerifiableAuthorizationForTrustChain'&credentialStatus={'statusPurpose':'revocation','statusListName':'employee-credentials','statusListIndex':10}"{
"updated": true,
"revoked": true,
"resource": {
"StatusList2021": {
"encodedList": "496fdfbeb745b4db03fcdb40566f9c4c4a1c0f184b31255e641b6e7bdfb9b6946c12be87ca3763be0393c00b67ac1e8737c106b32f46ef59c765754415b5e8cc7c65fccaa3374620430ea476301a5e0dd63340e7a27a68bc627518471f22e4a2",
"type": "StatusList2021Revocation",
"validFrom": "2023-06-26T11:45:19.349Z"
},
"metadata": {
"type": "StatusList2021Revocation",
"encoding": "base64url",
"encrypted": true,
"encryptedSymmetricKey": "b11182dc524b8181f9a6aef4c4ad0a1c14e40033b9112dffd8d1bcf6cc3b85abc07ded2205ee94068a99f4202502cb0855f322583fa6ce1534d3a05bf36891766ea2c5f90a982b3040680762977d404d758a2370224a239c8279aa7d21e980931c42055b17ca4c7dbffa4782480a8b6279cf989b2f166d5fdb4b2c1b5a63927200000000000000203018dcaba26df45a415bb599218b27ca853a70289d7a3ed3ed0e3730452e8f8d9af91b6e71312565d2c069341f6660ab",
"paymentConditions": [
{
"feePaymentAddress": "cheqd1qs0nhyk868c246defezhz5eymlt0dmajna2csg",
"feePaymentAmount": "20000000000ncheq",
"intervalInSeconds": 600,
"type": "timelockPayment"
}
]
},
"resourceMetadata": {
"resourceURI": "did:cheqd:testnet:7c2b990c-3d05-4ebf-91af-f4f4d0091d2e/resources/5945233a-a4b5-422b-b893-eaed5cedd2dc",
"resourceCollectionId": "7c2b990c-3d05-4ebf-91af-f4f4d0091d2e",
"resourceId": "5945233a-a4b5-422b-b893-eaed5cedd2dc",
"resourceName": "cheqd-revocation-encrypted-1",
"resourceType": "StatusList2021Revocation",
"mediaType": "application/json",
"resourceVersion": "2023-06-26T11:45:19.349Z",
"created": "2023-06-26T11:45:20Z",
"checksum": "909e22e371a41afbb96c330a97752cf7c8856088f1f937f87decbef06cbe9ca2",
"previousVersionId": null,
"nextVersionId": null
},
"symmetricKey": "dfe204ee95ae74ea5d74b94c3d8ff782273905b07fbc9f8c3d961c3b43849f18"
}
}{
"verified": true,
"polices": {},
"issuer": "did:cheqd:testnet:7bf81a20-633c-4cc7-bc4a-5a45801005e0",
"signer": {
"controller": "did:cheqd:testnet:7bf81a20-633c-4cc7-bc4a-5a45801005e0",
"id": "did:cheqd:testnet:7bf81a20-633c-4cc7-bc4a-5a45801005e0#key-1",
"publicKeyBase58": "BTJiso1S4iSiReP6wGksSneGfiKHxz9SYcm2KknpqBJt",
"type": "Ed25519VerificationKey2018"
}
}{
"updated": true,
"revoked": true,
"resource": {
"StatusList2021": {
"encodedList": "H4sIAAAAAAAAA-3BAQ0AAADCoPdPbQ8HFAAAAAAAAAAAAAAAAAAAAADwaDhDr_xcRAAA",
"type": "StatusList2021Revocation",
"validFrom": "2023-06-26T11:45:19.349Z"
},
"metadata": {
"type": "StatusList2021Revocation",
"encoding": "base64url",
"encrypted": false
}
},
"resourceMetadata": {
"resourceURI": "did:cheqd:testnet:7c2b990c-3d05-4ebf-91af-f4f4d0091d2e/resources/5945233a-a4b5-422b-b893-eaed5cedd2dc",
"resourceCollectionId": "7c2b990c-3d05-4ebf-91af-f4f4d0091d2e",
"resourceId": "5945233a-a4b5-422b-b893-eaed5cedd2dc",
"resourceName": "cheqd-employee-credentials",
"resourceType": "StatusList2021Revocation",
"mediaType": "application/json",
"resourceVersion": "1.0.0",
"created": "2023-06-26T11:45:20Z",
"checksum": "909e22e371a41afbb96c330a97752cf7c8856088f1f937f87decbef06cbe9ca2",
"previousVersionId": null,
"nextVersionId": null
}
}{
"suspended": true
}{
"unsuspended": true
}{
"@context": "https://w3id.org/did-resolution/v1",
"didDidResolutionMetadata": {
"contentType": "application/did+ld+json",
"retrieved": "2021-09-01T12:00:00Z",
"did": {
"didString": "did:cheqd:testnet:55dbc8bf-fba3-4117-855c-1e0dc1d3bb47",
"method": "cheqd",
"methodSpecificId": "55dbc8bf-fba3-4117-855c-1e0dc1d3bb47"
}
},
"didDocument": {
"@context": [
"https://www.w3.org/ns/did/v1"
],
"id": "did:cheqd:testnet:7bf81a20-633c-4cc7-bc4a-5a45801005e0",
"controller": [
"did:cheqd:testnet:7bf81a20-633c-4cc7-bc4a-5a45801005e0"
],
"verificationMethod": [
{
"id": "did:cheqd:testnet:7bf81a20-633c-4cc7-bc4a-5a45801005e0#key-1",
"type": "Ed25519VerificationKey2018",
"controller": "did:cheqd:testnet:7bf81a20-633c-4cc7-bc4a-5a45801005e0",
"publicKeyBase58": "z6MkkVbyHJLLjdjU5B62DaJ4mkdMdUkttf9UqySSkA9bVTeZ"
}
],
"authentication": [
"did:cheqd:testnet:7bf81a20-633c-4cc7-bc4a-5a45801005e0#key-1"
],
"service": [
{
"id": "did:cheqd:testnet:7bf81a20-633c-4cc7-bc4a-5a45801005e0#service-1",
"type": "LinkedDomains",
"serviceEndpoint": [
"https://example.com"
]
}
]
},
"didDocumentMetadata": {
"created": "2021-09-01T12:00:00Z",
"deactivated": true,
"updated": "2021-09-10T12:00:00Z",
"versionId": "3ccde6ba-6ba5-56f2-9f4f-8825561a9860",
"linkedResourceMetadata": [
{
"resourceURI": "did:cheqd:testnet:55dbc8bf-fba3-4117-855c-1e0dc1d3bb47/resources/398cee0a-efac-4643-9f4c-74c48c72a14b",
"resourceCollectionId": "55dbc8bf-fba3-4117-855c-1e0dc1d3bb47",
"resourceId": "398cee0a-efac-4643-9f4c-74c48c72a14b",
"resourceName": "cheqd-issuer-logo",
"resourceType": "CredentialArtwork",
"mediaType": "image/png",
"resourceVersion": "1.0",
"checksum": "a95380f460e63ad939541a57aecbfd795fcd37c6d78ee86c885340e33a91b559",
"created": "2021-09-01T12:00:00Z",
"nextVersionId": "d4829ac7-4566-478c-a408-b44767eddadc",
"previousVersionId": "ad7a8442-3531-46eb-a024-53953ec6e4ff"
}
]
}
}{
"verified": true,
"issuer": "text",
"signer": {},
"jwt": "text",
"verifiableCredential": {}
}{
"revoked": true
}{
"verified": true,
"issuer": "text",
"signer": {},
"jwt": "text",
"verifiableCredential": {},
"accreditorDids": [
"text"
],
"rootAuthorization": {},
"termsOfUse": {
"type": "text",
"trustFrameworkId": "text",
"trustFramework": "text"
}
}{
"checked": true,
"revoked": false
}{
"resourceURI": "did:cheqd:testnet:55dbc8bf-fba3-4117-855c-1e0dc1d3bb47/resources/398cee0a-efac-4643-9f4c-74c48c72a14b",
"resourceCollectionId": "55dbc8bf-fba3-4117-855c-1e0dc1d3bb47",
"resourceId": "398cee0a-efac-4643-9f4c-74c48c72a14b",
"resourceName": "cheqd-issuer-logo",
"resourceType": "CredentialArtwork",
"mediaType": "image/png",
"resourceVersion": "1.0",
"checksum": "a95380f460e63ad939541a57aecbfd795fcd37c6d78ee86c885340e33a91b559",
"created": "2021-09-01T12:00:00Z",
"nextVersionId": "d4829ac7-4566-478c-a408-b44767eddadc",
"previousVersionId": "ad7a8442-3531-46eb-a024-53953ec6e4ff"
}{
"did": "text",
"controllerKeyId": "text",
"keys": [
{}
],
"services": [
{
"id": "did:cheqd:mainnet:7bf81a20-633c-4cc7-bc4a-5a45801005e0#service-1",
"type": "LinkedDomains",
"serviceEndpoint": [
"https://example.com"
],
"priority": 0,
"recipientKeys": [
"did:cheqd:mainnet:7bf81a20-633c-4cc7-bc4a-5a45801005e0#key-1"
],
"routingKeys": [
"did:cheqd:mainnet:7bf81a20-633c-4cc7-bc4a-5a45801005e0#key-2"
],
"accept": [
"didcomm/aip2;env=rfc587"
]
}
],
"controllerKeyRefs": [
"text"
],
"controllerKeys": [
"text"
]
}{
"created": true,
"resource": {
"StatusList2021": {
"encodedList": "H4sIAAAAAAAAA-3BAQ0AAADCoPdPbQ8HFAAAAAAAAAAAAAAAAAAAAADwaDhDr_xcRAAA",
"type": "StatusList2021Revocation",
"validFrom": "2023-06-26T11:45:19.349Z"
},
"metadata": {
"type": "StatusList2021Revocation",
"encoding": "base64url",
"encrypted": false
}
},
"resourceMetadata": {
"resourceURI": "did:cheqd:testnet:7c2b990c-3d05-4ebf-91af-f4f4d0091d2e/resources/5945233a-a4b5-422b-b893-eaed5cedd2dc",
"resourceCollectionId": "7c2b990c-3d05-4ebf-91af-f4f4d0091d2e",
"resourceId": "5945233a-a4b5-422b-b893-eaed5cedd2dc",
"resourceName": "cheqd-employee-credentials",
"resourceType": "StatusList2021Revocation",
"mediaType": "application/json",
"resourceVersion": "1.0.0",
"created": "2023-06-26T11:45:20Z",
"checksum": "909e22e371a41afbb96c330a97752cf7c8856088f1f937f87decbef06cbe9ca2",
"previousVersionId": null,
"nextVersionId": null
}
}{
"@context": [
"https://www.w3.org/2018/credentials/v1",
"https://schema.org",
"https://veramo.io/contexts/profile/v1"
],
"credentialSubject": {
"gender": "male",
"id": "did:key:z6MkhaXgBZDvotDkL5257faiztiGiC2QtKLGpbnnEGta2doK",
"name": "Bob"
},
"credentialStatus": {
"id": "https://resolver.cheqd.net/1.0/identifiers/did:cheqd:testnet:7c2b990c-3d05-4ebf-91af-f4f4d0091d2e?resourceName=cheqd-suspension-1&resourceType=StatusList2021Suspension#20",
"statusIndex": 20,
"statusPurpose": "suspension",
"type": "StatusList2021Entry"
},
"issuanceDate": "2023-06-08T13:49:28.000Z",
"issuer": {
"id": "did:cheqd:testnet:7bf81a20-633c-4cc7-bc4a-5a45801005e0"
},
"proof": {
"jwt": "eyJhbGciOiJFZERTQSIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJkaWQ6Y2hlcWQ6dGVzdG5ldDo3YmY4MWEyMC02MzNjLTRjYzctYmM0YS01YTQ1ODAxMDA1ZTAiLCJuYmYiOjE2ODYyMzIxNjgsInN1YiI6ImRpZDprZXk6ejZNa2hhWGdCWkR2b3REa0w1MjU3ZmFpenRpR2lDMlF0S0xHcGJubkVHdGEyZG9LIiwidmMiOnsiQGNvbnRleHQiOlsiaHR0cHM6Ly93d3cudzMub3JnLzIwMTgvY3JlZGVudGlhbHMvdjEiLCJodHRwczovL3NjaGVtYS5vcmciLCJodHRwczovL3ZlcmFtby5pby9jb250ZXh0cy9wcm9maWxlL3YxIl0sImNyZWRlbnRpYWxTdWJqZWN0Ijp7ImdlbmRlciI6Im1hbGUiLCJuYW1lIjoiQm9iIn0sInR5cGUiOlsiVmVyaWZpYWJsZUNyZWRlbnRpYWwiLCJQZXJzb24iXX19.wMfdR6RtyAZA4eoWya5Aw97wwER2Cm5Guk780Xw8H9fA3sfudIJeLRLboqixpTchqSbYeA7KbuCTAnLgXTD_Cg",
"type": "JwtProof2020"
},
"type": [
"VerifiableCredential",
"Person"
]
}{
"did": "text",
"controllerKeyId": "text",
"keys": [
{}
],
"services": [
{
"id": "did:cheqd:mainnet:7bf81a20-633c-4cc7-bc4a-5a45801005e0#service-1",
"type": "LinkedDomains",
"serviceEndpoint": [
"https://example.com"
],
"priority": 0,
"recipientKeys": [
"did:cheqd:mainnet:7bf81a20-633c-4cc7-bc4a-5a45801005e0#key-1"
],
"routingKeys": [
"did:cheqd:mainnet:7bf81a20-633c-4cc7-bc4a-5a45801005e0#key-2"
],
"accept": [
"didcomm/aip2;env=rfc587"
]
}
]
}{
"@context": [
"https://www.w3.org/2018/credentials/v1",
"https://schema.org",
"https://veramo.io/contexts/profile/v1"
],
"credentialSubject": {
"gender": "male",
"id": "did:key:z6MkhaXgBZDvotDkL5257faiztiGiC2QtKLGpbnnEGta2doK",
"name": "Bob"
},
"credentialStatus": {
"id": "https://resolver.cheqd.net/1.0/identifiers/did:cheqd:testnet:7c2b990c-3d05-4ebf-91af-f4f4d0091d2e?resourceName=cheqd-suspension-1&resourceType=StatusList2021Suspension#20",
"statusIndex": 20,
"statusPurpose": "suspension",
"type": "StatusList2021Entry"
},
"issuanceDate": "2023-06-08T13:49:28.000Z",
"issuer": {
"id": "did:cheqd:testnet:7bf81a20-633c-4cc7-bc4a-5a45801005e0"
},
"proof": {
"jwt": "eyJhbGciOiJFZERTQSIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJkaWQ6Y2hlcWQ6dGVzdG5ldDo3YmY4MWEyMC02MzNjLTRjYzctYmM0YS01YTQ1ODAxMDA1ZTAiLCJuYmYiOjE2ODYyMzIxNjgsInN1YiI6ImRpZDprZXk6ejZNa2hhWGdCWkR2b3REa0w1MjU3ZmFpenRpR2lDMlF0S0xHcGJubkVHdGEyZG9LIiwidmMiOnsiQGNvbnRleHQiOlsiaHR0cHM6Ly93d3cudzMub3JnLzIwMTgvY3JlZGVudGlhbHMvdjEiLCJodHRwczovL3NjaGVtYS5vcmciLCJodHRwczovL3ZlcmFtby5pby9jb250ZXh0cy9wcm9maWxlL3YxIl0sImNyZWRlbnRpYWxTdWJqZWN0Ijp7ImdlbmRlciI6Im1hbGUiLCJuYW1lIjoiQm9iIn0sInR5cGUiOlsiVmVyaWZpYWJsZUNyZWRlbnRpYWwiLCJQZXJzb24iXX19.wMfdR6RtyAZA4eoWya5Aw97wwER2Cm5Guk780Xw8H9fA3sfudIJeLRLboqixpTchqSbYeA7KbuCTAnLgXTD_Cg",
"type": "JwtProof2020"
},
"type": [
"VerifiableCredential",
"Person"
]
}Connection identifier
{"value":"3fa85f64-5717-4562-b3fc-2c963f66afa6"}Number of results to return
{"value":50}Offset for pagination
{"value":0}Role assigned in presentation exchange
Presentation exchange state
Thread identifier
{"value":"3fa85f64-5717-4562-b3fc-2c963f66afa6"}Presentation exchange identifier
{"value":"3fa85f64-5717-4562-b3fc-2c963f66afa6"}Pattern: [a-fA-F0-9]{8}-[a-fA-F0-9]{4}-4[a-fA-F0-9]{3}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}Maximum number to retrieve
{"value":"1"}Pattern: ^[1-9][0-9]*$(JSON) object mapping referents to extra WQL queries
{"value":"{\"0_drink_uuid\": {\"attr::drink::value\": \"martini\"}}"}Pattern: ^{\s*".*?"\s*:\s*{.*?}\s*(,\s*".*?"\s*:\s*{.*?}\s*)*\s*}$Proof request referents of interest, comma-separated
{"value":"1_name_uuid,2_score_uuid"}Start index
{"value":"0"}Pattern: ^[0-9]*$presentation referent
Presentation exchange identifier
{"value":"3fa85f64-5717-4562-b3fc-2c963f66afa6"}Pattern: [a-fA-F0-9]{8}-[a-fA-F0-9]{4}-4[a-fA-F0-9]{3}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}Whether to remove the presentation exchange record on completion (overrides --preserve-exchange-records configuration setting)
Record trace information, based on agent configuration
Prover choice to auto-present proof as verifier requests
Verifier choice to remove this presentation exchange record when complete
Verifier choice to auto-verify proof presentation
Connection identifier
3fa85f64-5717-4562-b3fc-2c963f66afa6Time of record creation
2021-12-31T23:59:59ZPattern: ^\d{4}-\d\d-\d\d[T ]\d\d:\d\d(?:\:(?:\d\d(?:\.\d{1,6})?))?(?:[+-]\d\d:?\d\d|Z|)$Error message
Invalid structurePresent-proof exchange initiator: self or external
selfPossible values: Presentation exchange identifier
3fa85f64-5717-4562-b3fc-2c963f66afa6Present-proof exchange role: prover or verifier
proverPossible values: Present-proof exchange state
Thread identifier
3fa85f64-5717-4562-b3fc-2c963f66afa6Record trace information, based on agent configuration
Time of last record update
2021-12-31T23:59:59ZPattern: ^\d{4}-\d\d-\d\d[T ]\d\d:\d\d(?:\:(?:\d\d(?:\.\d{1,6})?))?(?:[+-]\d\d:?\d\d|Z|)$Whether presentation is verified: 'true' or 'false'
truePossible values: Proof verification warning or error information
DID to update
did:cheqd:testnet:099be283-4302-40cc-9850-22016bcd1d86Pattern: ^(did:cheqd:(testnet|mainnet):(?:(?:[a-zA-Z0-9]{21,22}|([a-z,0-9,-]{36,36}))*:)*((?:[a-zA-Z0-9]{21,22}|([a-z,0-9,-]{36,36}))+)((;[a-zA-Z0-9_.:%-]+=[a-zA-Z0-9_.:%-]*)*)([?][^#]*)?|did:cheqd:(testnet|mainnet):(?:(?:[a-zA-Z0-9]{21,22}|([a-z,0-9,-]{36,36}))*:)*((?:[a-zA-Z0-9]{21,22}|([a-z,0-9,-]{36,36}))+)/resources/([a-z,0-9,-]{36,36})([?][^#]*)?)$Additional configuration options
{"network":"testnet"}DID that has been updated
did:cheqd:testnet:099be283-4302-40cc-9850-22016bcd1d86Pattern: ^(did:cheqd:(testnet|mainnet):(?:(?:[a-zA-Z0-9]{21,22}|([a-z,0-9,-]{36,36}))*:)*((?:[a-zA-Z0-9]{21,22}|([a-z,0-9,-]{36,36}))+)((;[a-zA-Z0-9_.:%-]+=[a-zA-Z0-9_.:%-]*)*)([?][^#]*)?|did:cheqd:(testnet|mainnet):(?:(?:[a-zA-Z0-9]{21,22}|([a-z,0-9,-]{36,36}))*:)*((?:[a-zA-Z0-9]{21,22}|([a-z,0-9,-]{36,36}))+)/resources/([a-z,0-9,-]{36,36})([?][^#]*)?)$State of the did update
{"did":"did:cheqd:testnet:099be283-4302-40cc-9850-22016bcd1d86","didDocument":{"authentication":["did:cheqd:testnet:099be283-4302-40cc-9850-22016bcd1d86#key-1"],"controller":["did:cheqd:testnet:099be283-4302-40cc-9850-22016bcd1d86"],"id":"did:cheqd:testnet:099be283-4302-40cc-9850-22016bcd1d86","verificationMethod":[{"id":"did:cheqd:testnet:099be283-4302-40cc-9850-22016bcd1d86#key-1","type":"Ed25519VerificationKey2020","controller":"did:cheqd:testnet:099be283-4302-40cc-9850-22016bcd1d86","publicKeyMultibase":"z6Mk..."}]},"secret":{"signingResponse":[{"kid":"did:cheqd:testnet:099be283-4302-40cc-9850-22016bcd1d86#key-1","signature":"SHFz..."}]},"state":"finished"}Flag to denote if the operation was successful
trueAdditional features to enable for the did.
{}Additional configuration options
{"key_type":"ed25519","method_specific_id_algo":"uuid","network":"testnet"}DID created
did:cheqd:testnet:099be283-4302-40cc-9850-22016bcd1d86The published didState
{"did":"did:cheqd:testnet:099be283-4302-40cc-9850-22016bcd1d86","didDocument":{"authentication":["did:cheqd:testnet:099be283-4302-40cc-9850-22016bcd1d86#key-1"],"controller":["did:cheqd:testnet:099be283-4302-40cc-9850-22016bcd1d86"],"id":"did:cheqd:testnet:099be283-4302-40cc-9850-22016bcd1d86","verificationMethod":[{"id":"did:cheqd:testnet:099be283-4302-40cc-9850-22016bcd1d86#key-1","type":"Ed25519VerificationKey2020","controller":"did:cheqd:testnet:099be283-4302-40cc-9850-22016bcd1d86","publicKeyMultibase":"z6Mk..."}]},"secret":{"signingResponse":[{"kid":"did:cheqd:testnet:099be283-4302-40cc-9850-22016bcd1d86#key-1","signature":"SHFz..."}]},"state":"finished"}Flag to denote if the operation was successful
trueVerification key
BnSWTUQmdYCewSGFrRUhT6LmKdcCcSzRGqWXMPnEP168DID of interest
{"value":"did:peer:WgWxqztrNooG92RXvxSTWv"}Pattern: ^(did:sov:)?[123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{21,22}$|^did:([a-zA-Z0-9_]+)(:[a-zA-Z0-9_.%-]+)?:([a-zA-Z0-9_.%-]+(:[a-zA-Z0-9_.%-]+)*)((;[a-zA-Z0-9_.:%-]+=[a-zA-Z0-9_.:%-]*)*)(\/[^#?]*)?([?][^#]*)?(\#.*)?$$Key type to query for.
{"value":"ed25519"}Possible values: DID method to query for. e.g. sov to only fetch indy/sov DIDs
{"value":"key"}Whether DID is current public DID, posted to ledger but current public DID, or local to the wallet
{"value":"wallet_only"}Possible values: Verification key of interest
{"value":"H3C2AVvLMv6gmMNam3uVAjZpfkcJCwDwnZn6z3wXmqPV"}Pattern: ^[123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]{43,44}$Auto-accept connection (defaults to configuration)
Create unique DID for this invitation (default false)
Create invitation for multiple use (default false)
List of mime type in order of preference that should be use in responding to the message
["didcomm/aip1","didcomm/aip2;env=rfc19"]Alias for connection
BarryA self-attested string that the receiver may want to display to the user about the context-specific goal of the out-of-band message
To issue a Faber College Graduate credentialA self-attested code the receiver may want to display to the user or use in automatically deciding what to do with the out-of-band message
issue-vcHandshake protocol to specify in invitation
Identifier for active mediation record to be used
3fa85f64-5717-4562-b3fc-2c963f66afa6Pattern: [a-fA-F0-9]{8}-[a-fA-F0-9]{4}-4[a-fA-F0-9]{3}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}Optional metadata to attach to the connection created with the invitation
Label for connection invitation
Invitation to BarryOOB protocol version
1.1DID to use in invitation
did:example:123DID method to use in invitation
did:peer:2Possible values: Whether to use public DID in invitation
Time of record creation
2021-12-31T23:59:59ZPattern: ^\d{4}-\d\d-\d\d[T ]\d\d:\d\d(?:\:(?:\d\d(?:\.\d{1,6})?))?(?:[+-]\d\d:?\d\d|Z|)$Invitation message identifier
3fa85f64-5717-4562-b3fc-2c963f66afa6Invitation record identifier
3fa85f64-5717-4562-b3fc-2c963f66afa6Invitation message URL
https://example.com/endpoint?c_i=eyJAdHlwZSI6ICIuLi4iLCAiLi4uIjogIi4uLiJ9XX0=Out of band record identifier
3fa85f64-5717-4562-b3fc-2c963f66afa6Out of band message exchange state
await_responseRecord trace information, based on agent configuration
Time of last record update
2021-12-31T23:59:59ZPattern: ^\d{4}-\d\d-\d\d[T ]\d\d:\d\d(?:\:(?:\d\d(?:\.\d{1,6})?))?(?:[+-]\d\d:?\d\d|Z|)$Connection identifier
{"value":"3fa85f64-5717-4562-b3fc-2c963f66afa6"}Number of results to return
{"value":50}Offset for pagination
{"value":0}Role assigned in credential exchange
Credential exchange state
Thread identifier
{"value":"3fa85f64-5717-4562-b3fc-2c963f66afa6"}Credential exchange identifier
{"value":"3fa85f64-5717-4562-b3fc-2c963f66afa6"}Pattern: [a-fA-F0-9]{8}-[a-fA-F0-9]{4}-4[a-fA-F0-9]{3}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}Whether to remove the credential exchange record on completion (overrides --preserve-exchange-records configuration setting)
Holder DID to substitute for the credentialSubject.id
did:key:ahsdkjahsdkjhaskjdhakjshdkajhsdkjahsIssuer choice to issue to request in this credential exchange
Holder choice to accept offer in this credential exchange
Issuer choice to remove this credential exchange record when complete
Connection identifier
3fa85f64-5717-4562-b3fc-2c963f66afa6Time of record creation
2021-12-31T23:59:59ZPattern: ^\d{4}-\d\d-\d\d[T ]\d\d:\d\d(?:\:(?:\d\d(?:\.\d{1,6})?))?(?:[+-]\d\d:?\d\d|Z|)$Credential exchange identifier
3fa85f64-5717-4562-b3fc-2c963f66afa6Error message
The front fell offIssue-credential exchange initiator: self or external
selfPossible values: Parent thread identifier
3fa85f64-5717-4562-b3fc-2c963f66afa6Issue-credential exchange role: holder or issuer
issuerPossible values: Issue-credential exchange state
donePossible values: Thread identifier
3fa85f64-5717-4562-b3fc-2c963f66afa6Record trace information, based on agent configuration
Time of last record update
2021-12-31T23:59:59ZPattern: ^\d{4}-\d\d-\d\d[T ]\d\d:\d\d(?:\:(?:\d\d(?:\.\d{1,6})?))?(?:[+-]\d\d:?\d\d|Z|)$Credential exchange identifier
{"value":"3fa85f64-5717-4562-b3fc-2c963f66afa6"}Pattern: [a-fA-F0-9]{8}-[a-fA-F0-9]{4}-4[a-fA-F0-9]{3}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}{
"auto_present": false,
"auto_remove": false,
"auto_verify": true,
"by_format": {
"pres": {},
"pres_proposal": {},
"pres_request": {}
},
"connection_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"created_at": "2021-12-31T23:59:59Z",
"error_msg": "Invalid structure",
"initiator": "self",
"pres": {
"@id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"@type": "https://didcomm.org/my-family/1.0/my-message-type",
"comment": "text",
"formats": [
{
"attach_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"format": "dif/presentation-exchange/[email protected]"
}
],
"presentations~attach": [
{
"@id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"byte_count": 1234,
"data": {
"base64": "ey4uLn0=",
"json": "{\"sample\": \"content\"}",
"jws": {
"header": {
"kid": "did:sov:LjgpST2rjsoxYegQDRm7EL#keys-4"
},
"protected": "ey4uLn0",
"signature": "ey4uLn0",
"signatures": [
{
"header": {
"kid": "did:sov:LjgpST2rjsoxYegQDRm7EL#keys-4"
},
"protected": "ey4uLn0",
"signature": "ey4uLn0"
}
]
},
"links": [
"https://link.to/data"
],
"sha256": "617a48c7c8afe0521efdc03e5bb0ad9e655893e6b4b51f0e794d70fba132aacb"
},
"description": "view from doorway, facing east, with lights off",
"filename": "IMG1092348.png",
"lastmod_time": "2021-12-31T23:59:59Z",
"mime-type": "image/png"
}
]
},
"pres_ex_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"pres_proposal": {
"@id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"@type": "https://didcomm.org/my-family/1.0/my-message-type",
"comment": "text",
"formats": [
{
"attach_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"format": "dif/presentation-exchange/[email protected]"
}
],
"proposals~attach": [
{
"@id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"byte_count": 1234,
"data": {
"base64": "ey4uLn0=",
"json": "{\"sample\": \"content\"}",
"jws": {
"header": {
"kid": "did:sov:LjgpST2rjsoxYegQDRm7EL#keys-4"
},
"protected": "ey4uLn0",
"signature": "ey4uLn0",
"signatures": [
{
"header": {
"kid": "did:sov:LjgpST2rjsoxYegQDRm7EL#keys-4"
},
"protected": "ey4uLn0",
"signature": "ey4uLn0"
}
]
},
"links": [
"https://link.to/data"
],
"sha256": "617a48c7c8afe0521efdc03e5bb0ad9e655893e6b4b51f0e794d70fba132aacb"
},
"description": "view from doorway, facing east, with lights off",
"filename": "IMG1092348.png",
"lastmod_time": "2021-12-31T23:59:59Z",
"mime-type": "image/png"
}
]
},
"pres_request": {
"@id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"@type": "https://didcomm.org/my-family/1.0/my-message-type",
"comment": "text",
"formats": [
{
"attach_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"format": "dif/presentation-exchange/[email protected]"
}
],
"request_presentations~attach": [
{
"@id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"byte_count": 1234,
"data": {
"base64": "ey4uLn0=",
"json": "{\"sample\": \"content\"}",
"jws": {
"header": {
"kid": "did:sov:LjgpST2rjsoxYegQDRm7EL#keys-4"
},
"protected": "ey4uLn0",
"signature": "ey4uLn0",
"signatures": [
{
"header": {
"kid": "did:sov:LjgpST2rjsoxYegQDRm7EL#keys-4"
},
"protected": "ey4uLn0",
"signature": "ey4uLn0"
}
]
},
"links": [
"https://link.to/data"
],
"sha256": "617a48c7c8afe0521efdc03e5bb0ad9e655893e6b4b51f0e794d70fba132aacb"
},
"description": "view from doorway, facing east, with lights off",
"filename": "IMG1092348.png",
"lastmod_time": "2021-12-31T23:59:59Z",
"mime-type": "image/png"
}
],
"will_confirm": true
},
"role": "prover",
"state": "proposal-sent",
"thread_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"trace": true,
"updated_at": "2021-12-31T23:59:59Z",
"verified": "true",
"verified_msgs": [
"text"
]
}GET /present-proof-2.0/records HTTP/1.1
Accept: */*
{
"results": [
{
"auto_present": false,
"auto_remove": false,
"auto_verify": true,
"by_format": {
"pres": {},
"pres_proposal": {},
"pres_request": {}
},
"connection_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"created_at": "2021-12-31T23:59:59Z",
"error_msg": "Invalid structure",
"initiator": "self",
"pres": {
"@id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"@type": "https://didcomm.org/my-family/1.0/my-message-type",
"comment": "text",
"formats": [
{
"attach_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"format": "dif/presentation-exchange/[email protected]"
}
],
"presentations~attach": [
{
"@id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"byte_count": 1234,
"data": {
"base64": "ey4uLn0=",
"json": "{\"sample\": \"content\"}",
"jws": {
"header": {
"kid": "did:sov:LjgpST2rjsoxYegQDRm7EL#keys-4"
},
"protected": "ey4uLn0",
"signature": "ey4uLn0",
"signatures": [
{
"header": {
"kid": "did:sov:LjgpST2rjsoxYegQDRm7EL#keys-4"
},
"protected": "ey4uLn0",
"signature": "ey4uLn0"
}
]
},
"links": [
"https://link.to/data"
],
"sha256": "617a48c7c8afe0521efdc03e5bb0ad9e655893e6b4b51f0e794d70fba132aacb"
},
"description": "view from doorway, facing east, with lights off",
"filename": "IMG1092348.png",
"lastmod_time": "2021-12-31T23:59:59Z",
"mime-type": "image/png"
}
]
},
"pres_ex_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"pres_proposal": {
"@id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"@type": "https://didcomm.org/my-family/1.0/my-message-type",
"comment": "text",
"formats": [
{
"attach_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"format": "dif/presentation-exchange/[email protected]"
}
],
"proposals~attach": [
{
"@id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"byte_count": 1234,
"data": {
"base64": "ey4uLn0=",
"json": "{\"sample\": \"content\"}",
"jws": {
"header": {
"kid": "did:sov:LjgpST2rjsoxYegQDRm7EL#keys-4"
},
"protected": "ey4uLn0",
"signature": "ey4uLn0",
"signatures": [
{
"header": {
"kid": "did:sov:LjgpST2rjsoxYegQDRm7EL#keys-4"
},
"protected": "ey4uLn0",
"signature": "ey4uLn0"
}
]
},
"links": [
"https://link.to/data"
],
"sha256": "617a48c7c8afe0521efdc03e5bb0ad9e655893e6b4b51f0e794d70fba132aacb"
},
"description": "view from doorway, facing east, with lights off",
"filename": "IMG1092348.png",
"lastmod_time": "2021-12-31T23:59:59Z",
"mime-type": "image/png"
}
]
},
"pres_request": {
"@id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"@type": "https://didcomm.org/my-family/1.0/my-message-type",
"comment": "text",
"formats": [
{
"attach_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"format": "dif/presentation-exchange/[email protected]"
}
],
"request_presentations~attach": [
{
"@id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"byte_count": 1234,
"data": {
"base64": "ey4uLn0=",
"json": "{\"sample\": \"content\"}",
"jws": {
"header": {
"kid": "did:sov:LjgpST2rjsoxYegQDRm7EL#keys-4"
},
"protected": "ey4uLn0",
"signature": "ey4uLn0",
"signatures": [
{
"header": {
"kid": "did:sov:LjgpST2rjsoxYegQDRm7EL#keys-4"
},
"protected": "ey4uLn0",
"signature": "ey4uLn0"
}
]
},
"links": [
"https://link.to/data"
],
"sha256": "617a48c7c8afe0521efdc03e5bb0ad9e655893e6b4b51f0e794d70fba132aacb"
},
"description": "view from doorway, facing east, with lights off",
"filename": "IMG1092348.png",
"lastmod_time": "2021-12-31T23:59:59Z",
"mime-type": "image/png"
}
],
"will_confirm": true
},
"role": "prover",
"state": "proposal-sent",
"thread_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"trace": true,
"updated_at": "2021-12-31T23:59:59Z",
"verified": "true",
"verified_msgs": [
"text"
]
}
]
}GET /present-proof-2.0/records/{pres_ex_id}/credentials HTTP/1.1
Accept: */*
[
{
"cred_info": {
"attrs": {
"ANY_ADDITIONAL_PROPERTY": "alice"
},
"cred_def_id": "WgWxqztrNooG92RXvxSTWv:3:CL:20:tag",
"cred_rev_id": "12345",
"referent": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"rev_reg_id": "WgWxqztrNooG92RXvxSTWv:4:WgWxqztrNooG92RXvxSTWv:3:CL:20:tag:CL_ACCUM:0",
"schema_id": "WgWxqztrNooG92RXvxSTWv:2:schema_name:1.0"
},
"interval": {
"from": 1640995199,
"to": 1640995199
},
"presentation_referents": [
"1_age_uuid"
]
}
]POST /present-proof-2.0/records/{pres_ex_id}/send-presentation HTTP/1.1
Content-Type: application/json
Accept: */*
Content-Length: 2418
{
"anoncreds": {
"requested_attributes": {
"ANY_ADDITIONAL_PROPERTY": {
"cred_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"revealed": true
}
},
"requested_predicates": {
"ANY_ADDITIONAL_PROPERTY": {
"cred_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"timestamp": 1640995199
}
},
"self_attested_attributes": {
"ANY_ADDITIONAL_PROPERTY": "self_attested_value"
},
"trace": false
},
"auto_remove": true,
"dif": {
"issuer_id": "text",
"presentation_definition": {
"format": {
"di_vc": {},
"jwt": {},
"jwt_vc": {},
"jwt_vp": {},
"ldp": {},
"ldp_vc": {},
"ldp_vp": {}
},
"id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"input_descriptors": [
{
"constraints": {
"fields": [
{
"filter": {
"const": null,
"enum": [],
"exclusiveMaximum": null,
"exclusiveMinimum": null,
"format": "text",
"maxLength": 1234,
"maximum": null,
"minLength": 1234,
"minimum": null,
"not": false,
"pattern": "text",
"type": "text"
},
"id": "text",
"path": [
"text"
],
"predicate": "required",
"purpose": "text"
}
],
"is_holder": [
{
"directive": "required",
"field_id": [
"3fa85f64-5717-4562-b3fc-2c963f66afa6"
]
}
],
"limit_disclosure": "text",
"status_active": "required",
"status_revoked": "required",
"status_suspended": "required",
"subject_is_issuer": "required"
},
"group": [
"text"
],
"id": "text",
"metadata": {},
"name": "text",
"purpose": "text",
"schema": {
"oneof_filter": [
[
{
"uri": "https://www.w3.org/Test1#Test1"
},
{
"uri": "https://www.w3.org/Test2#Test2"
}
],
{
"oneof_filter": [
[
{
"uri": "https://www.w3.org/Test1#Test1"
}
],
[
{
"uri": "https://www.w3.org/Test2#Test2"
}
]
]
}
]
}
}
],
"name": "text",
"purpose": "text",
"submission_requirements": [
{
"count": 1234,
"from": "text",
"from_nested": "[Circular Reference]",
"max": 1234,
"min": 1234,
"name": "text",
"purpose": "text",
"rule": "all"
}
]
},
"record_ids": {
"<input descriptor id_1>": [
"<record id_1>",
"<record id_2>"
],
"<input descriptor id_2>": [
"<record id>"
]
},
"reveal_doc": {
"@context": [
"https://www.w3.org/2018/credentials/v1",
"https://w3id.org/security/bbs/v1"
],
"@explicit": true,
"@requireAll": true,
"credentialSubject": {
"@explicit": true,
"@requireAll": true,
"Observation": [
{
"effectiveDateTime": {},
"@explicit": true,
"@requireAll": true
}
]
},
"issuanceDate": {},
"issuer": {},
"type": [
"VerifiableCredential",
"LabReport"
]
}
},
"indy": {
"requested_attributes": {
"ANY_ADDITIONAL_PROPERTY": {
"cred_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"revealed": true
}
},
"requested_predicates": {
"ANY_ADDITIONAL_PROPERTY": {
"cred_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"timestamp": 1640995199
}
},
"self_attested_attributes": {
"ANY_ADDITIONAL_PROPERTY": "self_attested_value"
},
"trace": false
},
"trace": true
}POST /did/cheqd/update HTTP/1.1
Content-Type: application/json
Accept: */*
Content-Length: 720
{
"did": "did:cheqd:testnet:099be283-4302-40cc-9850-22016bcd1d86",
"didDocument": {
"authentication": [
"did:cheqd:testnet:099be283-4302-40cc-9850-22016bcd1d86#key-1"
],
"controller": [
"did:cheqd:testnet:099be283-4302-40cc-9850-22016bcd1d86"
],
"id": "did:cheqd:testnet:099be283-4302-40cc-9850-22016bcd1d86",
"service": [
{
"id": "did:cheqd:testnet:099be283-4302-40cc-9850-22016bcd1d86#service-1",
"type": "MessagingService",
"serviceEndpoint": [
"https://example.com/service"
]
}
],
"verificationMethod": [
{
"id": "did:cheqd:testnet:099be283-4302-40cc-9850-22016bcd1d86#key-1",
"type": "Ed25519VerificationKey2018",
"controller": "did:cheqd:testnet:099be283-4302-40cc-9850-22016bcd1d86",
"publicKeyMultibase": "z6Mk..."
}
]
},
"options": {
"network": "testnet"
}
}{
"did": "did:cheqd:testnet:099be283-4302-40cc-9850-22016bcd1d86",
"didState": {
"did": "did:cheqd:testnet:099be283-4302-40cc-9850-22016bcd1d86",
"didDocument": {
"authentication": [
"did:cheqd:testnet:099be283-4302-40cc-9850-22016bcd1d86#key-1"
],
"controller": [
"did:cheqd:testnet:099be283-4302-40cc-9850-22016bcd1d86"
],
"id": "did:cheqd:testnet:099be283-4302-40cc-9850-22016bcd1d86",
"verificationMethod": [
{
"id": "did:cheqd:testnet:099be283-4302-40cc-9850-22016bcd1d86#key-1",
"type": "Ed25519VerificationKey2020",
"controller": "did:cheqd:testnet:099be283-4302-40cc-9850-22016bcd1d86",
"publicKeyMultibase": "z6Mk..."
}
]
},
"secret": {
"signingResponse": [
{
"kid": "did:cheqd:testnet:099be283-4302-40cc-9850-22016bcd1d86#key-1",
"signature": "SHFz..."
}
]
},
"state": "finished"
},
"success": true
}POST /did/cheqd/create HTTP/1.1
Content-Type: application/json
Accept: */*
Content-Length: 103
{
"features": "{}",
"options": {
"key_type": "ed25519",
"method_specific_id_algo": "uuid",
"network": "testnet"
}
}{
"did": "did:cheqd:testnet:099be283-4302-40cc-9850-22016bcd1d86",
"didState": {
"did": "did:cheqd:testnet:099be283-4302-40cc-9850-22016bcd1d86",
"didDocument": {
"authentication": [
"did:cheqd:testnet:099be283-4302-40cc-9850-22016bcd1d86#key-1"
],
"controller": [
"did:cheqd:testnet:099be283-4302-40cc-9850-22016bcd1d86"
],
"id": "did:cheqd:testnet:099be283-4302-40cc-9850-22016bcd1d86",
"verificationMethod": [
{
"id": "did:cheqd:testnet:099be283-4302-40cc-9850-22016bcd1d86#key-1",
"type": "Ed25519VerificationKey2020",
"controller": "did:cheqd:testnet:099be283-4302-40cc-9850-22016bcd1d86",
"publicKeyMultibase": "z6Mk..."
}
]
},
"secret": {
"signingResponse": [
{
"kid": "did:cheqd:testnet:099be283-4302-40cc-9850-22016bcd1d86#key-1",
"signature": "SHFz..."
}
]
},
"state": "finished"
},
"success": true,
"verkey": "BnSWTUQmdYCewSGFrRUhT6LmKdcCcSzRGqWXMPnEP168"
}GET /wallet/did HTTP/1.1
Accept: */*
{
"results": [
{
"did": "did:peer:WgWxqztrNooG92RXvxSTWv",
"key_type": "ed25519",
"metadata": {},
"method": "sov",
"posture": "wallet_only",
"verkey": "H3C2AVvLMv6gmMNam3uVAjZpfkcJCwDwnZn6z3wXmqPV"
}
]
}{
"created_at": "2021-12-31T23:59:59Z",
"invi_msg_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"invitation": {
"@id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"@type": "https://didcomm.org/my-family/1.0/my-message-type",
"accept": [
"didcomm/aip1",
"didcomm/aip2;env=rfc19"
],
"goal": "To issue a Faber College Graduate credential",
"goal_code": "issue-vc",
"handshake_protocols": [
"https://didcomm.org/didexchange/1.0"
],
"imageUrl": "http://192.168.56.101/img/logo.jpg",
"label": "Bob",
"requests~attach": [
{
"@id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"byte_count": 1234,
"data": {
"base64": "ey4uLn0=",
"json": "{\"sample\": \"content\"}",
"jws": {
"header": {
"kid": "did:sov:LjgpST2rjsoxYegQDRm7EL#keys-4"
},
"protected": "ey4uLn0",
"signature": "ey4uLn0",
"signatures": [
{
"header": {
"kid": "did:sov:LjgpST2rjsoxYegQDRm7EL#keys-4"
},
"protected": "ey4uLn0",
"signature": "ey4uLn0"
}
]
},
"links": [
"https://link.to/data"
],
"sha256": "617a48c7c8afe0521efdc03e5bb0ad9e655893e6b4b51f0e794d70fba132aacb"
},
"description": "view from doorway, facing east, with lights off",
"filename": "IMG1092348.png",
"lastmod_time": "2021-12-31T23:59:59Z",
"mime-type": "image/png"
}
],
"services": [
{
"did": "WgWxqztrNooG92RXvxSTWv",
"id": "string",
"recipientKeys": [
"did:key:z6MkpTHR8VNsBxYAAWHut2Geadd9jSwuBV8xRoAnwWsdvktH"
],
"routingKeys": [
"did:key:z6MkpTHR8VNsBxYAAWHut2Geadd9jSwuBV8xRoAnwWsdvktH"
],
"serviceEndpoint": "http://192.168.56.101:8020",
"type": "string"
},
"did:sov:WgWxqztrNooG92RXvxSTWv"
]
},
"invitation_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"invitation_url": "https://example.com/endpoint?c_i=eyJAdHlwZSI6ICIuLi4iLCAiLi4uIjogIi4uLiJ9XX0=",
"oob_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"state": "await_response",
"trace": true,
"updated_at": "2021-12-31T23:59:59Z"
}POST /out-of-band/create-invitation HTTP/1.1
Content-Type: application/json
Accept: */*
Content-Length: 475
{
"accept": [
"didcomm/aip1",
"didcomm/aip2;env=rfc19"
],
"alias": "Barry",
"attachments": [
{
"id": "attachment-0",
"type": "present-proof"
}
],
"goal": "To issue a Faber College Graduate credential",
"goal_code": "issue-vc",
"handshake_protocols": [
"https://didcomm.org/didexchange/1.0"
],
"mediation_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"metadata": {},
"my_label": "Invitation to Barry",
"protocol_version": "1.1",
"use_did": "did:example:123",
"use_did_method": "did:peer:2",
"use_public_did": false
}GET /issue-credential-2.0/records HTTP/1.1
Accept: */*
{
"results": [
{
"cred_ex_record": {
"auto_issue": false,
"auto_offer": false,
"auto_remove": false,
"by_format": {
"cred_issue": {},
"cred_offer": {},
"cred_proposal": {},
"cred_request": {}
},
"connection_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"created_at": "2021-12-31T23:59:59Z",
"cred_ex_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"cred_issue": {
"@id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"@type": "https://didcomm.org/my-family/1.0/my-message-type",
"comment": "text",
"credentials~attach": [
{
"@id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"byte_count": 1234,
"data": {
"base64": "ey4uLn0=",
"json": "{\"sample\": \"content\"}",
"jws": {
"header": {
"kid": "did:sov:LjgpST2rjsoxYegQDRm7EL#keys-4"
},
"protected": "ey4uLn0",
"signature": "ey4uLn0",
"signatures": [
{
"header": {
"kid": "did:sov:LjgpST2rjsoxYegQDRm7EL#keys-4"
},
"protected": "ey4uLn0",
"signature": "ey4uLn0"
}
]
},
"links": [
"https://link.to/data"
],
"sha256": "617a48c7c8afe0521efdc03e5bb0ad9e655893e6b4b51f0e794d70fba132aacb"
},
"description": "view from doorway, facing east, with lights off",
"filename": "IMG1092348.png",
"lastmod_time": "2021-12-31T23:59:59Z",
"mime-type": "image/png"
}
],
"formats": [
{
"attach_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"format": "aries/[email protected]"
}
],
"replacement_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6"
},
"cred_offer": {
"@id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"@type": "https://didcomm.org/my-family/1.0/my-message-type",
"comment": "text",
"credential_preview": {
"@type": "issue-credential/2.0/credential-preview",
"attributes": [
{
"mime-type": "image/jpeg",
"name": "favourite_drink",
"value": "martini"
}
]
},
"formats": [
{
"attach_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"format": "aries/[email protected]"
}
],
"offers~attach": [
{
"@id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"byte_count": 1234,
"data": {
"base64": "ey4uLn0=",
"json": "{\"sample\": \"content\"}",
"jws": {
"header": {
"kid": "did:sov:LjgpST2rjsoxYegQDRm7EL#keys-4"
},
"protected": "ey4uLn0",
"signature": "ey4uLn0",
"signatures": [
{
"header": {
"kid": "did:sov:LjgpST2rjsoxYegQDRm7EL#keys-4"
},
"protected": "ey4uLn0",
"signature": "ey4uLn0"
}
]
},
"links": [
"https://link.to/data"
],
"sha256": "617a48c7c8afe0521efdc03e5bb0ad9e655893e6b4b51f0e794d70fba132aacb"
},
"description": "view from doorway, facing east, with lights off",
"filename": "IMG1092348.png",
"lastmod_time": "2021-12-31T23:59:59Z",
"mime-type": "image/png"
}
],
"replacement_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6"
},
"cred_preview": {
"@type": "issue-credential/2.0/credential-preview",
"attributes": [
{
"mime-type": "image/jpeg",
"name": "favourite_drink",
"value": "martini"
}
]
},
"cred_proposal": {
"@id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"@type": "https://didcomm.org/my-family/1.0/my-message-type",
"comment": "text",
"credential_preview": {
"@type": "issue-credential/2.0/credential-preview",
"attributes": [
{
"mime-type": "image/jpeg",
"name": "favourite_drink",
"value": "martini"
}
]
},
"filters~attach": [
{
"@id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"byte_count": 1234,
"data": {
"base64": "ey4uLn0=",
"json": "{\"sample\": \"content\"}",
"jws": {
"header": {
"kid": "did:sov:LjgpST2rjsoxYegQDRm7EL#keys-4"
},
"protected": "ey4uLn0",
"signature": "ey4uLn0",
"signatures": [
{
"header": {
"kid": "did:sov:LjgpST2rjsoxYegQDRm7EL#keys-4"
},
"protected": "ey4uLn0",
"signature": "ey4uLn0"
}
]
},
"links": [
"https://link.to/data"
],
"sha256": "617a48c7c8afe0521efdc03e5bb0ad9e655893e6b4b51f0e794d70fba132aacb"
},
"description": "view from doorway, facing east, with lights off",
"filename": "IMG1092348.png",
"lastmod_time": "2021-12-31T23:59:59Z",
"mime-type": "image/png"
}
],
"formats": [
{
"attach_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"format": "aries/[email protected]"
}
]
},
"cred_request": {
"@id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"@type": "https://didcomm.org/my-family/1.0/my-message-type",
"comment": "text",
"formats": [
{
"attach_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"format": "aries/[email protected]"
}
],
"requests~attach": [
{
"@id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"byte_count": 1234,
"data": {
"base64": "ey4uLn0=",
"json": "{\"sample\": \"content\"}",
"jws": {
"header": {
"kid": "did:sov:LjgpST2rjsoxYegQDRm7EL#keys-4"
},
"protected": "ey4uLn0",
"signature": "ey4uLn0",
"signatures": [
{
"header": {
"kid": "did:sov:LjgpST2rjsoxYegQDRm7EL#keys-4"
},
"protected": "ey4uLn0",
"signature": "ey4uLn0"
}
]
},
"links": [
"https://link.to/data"
],
"sha256": "617a48c7c8afe0521efdc03e5bb0ad9e655893e6b4b51f0e794d70fba132aacb"
},
"description": "view from doorway, facing east, with lights off",
"filename": "IMG1092348.png",
"lastmod_time": "2021-12-31T23:59:59Z",
"mime-type": "image/png"
}
]
},
"error_msg": "The front fell off",
"initiator": "self",
"parent_thread_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"role": "issuer",
"state": "done",
"thread_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"trace": true,
"updated_at": "2021-12-31T23:59:59Z"
},
"indy": {
"created_at": "2021-12-31T23:59:59Z",
"cred_ex_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"cred_ex_indy_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"cred_id_stored": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"cred_request_metadata": {},
"cred_rev_id": "12345",
"rev_reg_id": "WgWxqztrNooG92RXvxSTWv:4:WgWxqztrNooG92RXvxSTWv:3:CL:20:tag:CL_ACCUM:0",
"state": "active",
"updated_at": "2021-12-31T23:59:59Z"
},
"ld_proof": {
"created_at": "2021-12-31T23:59:59Z",
"cred_ex_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"cred_ex_ld_proof_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"cred_id_stored": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"state": "active",
"updated_at": "2021-12-31T23:59:59Z"
},
"vc_di": {
"auto_issue": false,
"auto_offer": false,
"auto_remove": false,
"by_format": {
"cred_issue": {},
"cred_offer": {},
"cred_proposal": {},
"cred_request": {}
},
"connection_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"created_at": "2021-12-31T23:59:59Z",
"cred_ex_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"cred_issue": {
"@id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"@type": "https://didcomm.org/my-family/1.0/my-message-type",
"comment": "text",
"credentials~attach": [
{
"@id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"byte_count": 1234,
"data": {
"base64": "ey4uLn0=",
"json": "{\"sample\": \"content\"}",
"jws": {
"header": {
"kid": "did:sov:LjgpST2rjsoxYegQDRm7EL#keys-4"
},
"protected": "ey4uLn0",
"signature": "ey4uLn0",
"signatures": [
{
"header": {
"kid": "did:sov:LjgpST2rjsoxYegQDRm7EL#keys-4"
},
"protected": "ey4uLn0",
"signature": "ey4uLn0"
}
]
},
"links": [
"https://link.to/data"
],
"sha256": "617a48c7c8afe0521efdc03e5bb0ad9e655893e6b4b51f0e794d70fba132aacb"
},
"description": "view from doorway, facing east, with lights off",
"filename": "IMG1092348.png",
"lastmod_time": "2021-12-31T23:59:59Z",
"mime-type": "image/png"
}
],
"formats": [
{
"attach_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"format": "aries/[email protected]"
}
],
"replacement_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6"
},
"cred_offer": {
"@id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"@type": "https://didcomm.org/my-family/1.0/my-message-type",
"comment": "text",
"credential_preview": {
"@type": "issue-credential/2.0/credential-preview",
"attributes": [
{
"mime-type": "image/jpeg",
"name": "favourite_drink",
"value": "martini"
}
]
},
"formats": [
{
"attach_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"format": "aries/[email protected]"
}
],
"offers~attach": [
{
"@id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"byte_count": 1234,
"data": {
"base64": "ey4uLn0=",
"json": "{\"sample\": \"content\"}",
"jws": {
"header": {
"kid": "did:sov:LjgpST2rjsoxYegQDRm7EL#keys-4"
},
"protected": "ey4uLn0",
"signature": "ey4uLn0",
"signatures": [
{
"header": {
"kid": "did:sov:LjgpST2rjsoxYegQDRm7EL#keys-4"
},
"protected": "ey4uLn0",
"signature": "ey4uLn0"
}
]
},
"links": [
"https://link.to/data"
],
"sha256": "617a48c7c8afe0521efdc03e5bb0ad9e655893e6b4b51f0e794d70fba132aacb"
},
"description": "view from doorway, facing east, with lights off",
"filename": "IMG1092348.png",
"lastmod_time": "2021-12-31T23:59:59Z",
"mime-type": "image/png"
}
],
"replacement_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6"
},
"cred_preview": {
"@type": "issue-credential/2.0/credential-preview",
"attributes": [
{
"mime-type": "image/jpeg",
"name": "favourite_drink",
"value": "martini"
}
]
},
"cred_proposal": {
"@id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"@type": "https://didcomm.org/my-family/1.0/my-message-type",
"comment": "text",
"credential_preview": {
"@type": "issue-credential/2.0/credential-preview",
"attributes": [
{
"mime-type": "image/jpeg",
"name": "favourite_drink",
"value": "martini"
}
]
},
"filters~attach": [
{
"@id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"byte_count": 1234,
"data": {
"base64": "ey4uLn0=",
"json": "{\"sample\": \"content\"}",
"jws": {
"header": {
"kid": "did:sov:LjgpST2rjsoxYegQDRm7EL#keys-4"
},
"protected": "ey4uLn0",
"signature": "ey4uLn0",
"signatures": [
{
"header": {
"kid": "did:sov:LjgpST2rjsoxYegQDRm7EL#keys-4"
},
"protected": "ey4uLn0",
"signature": "ey4uLn0"
}
]
},
"links": [
"https://link.to/data"
],
"sha256": "617a48c7c8afe0521efdc03e5bb0ad9e655893e6b4b51f0e794d70fba132aacb"
},
"description": "view from doorway, facing east, with lights off",
"filename": "IMG1092348.png",
"lastmod_time": "2021-12-31T23:59:59Z",
"mime-type": "image/png"
}
],
"formats": [
{
"attach_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"format": "aries/[email protected]"
}
]
},
"cred_request": {
"@id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"@type": "https://didcomm.org/my-family/1.0/my-message-type",
"comment": "text",
"formats": [
{
"attach_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"format": "aries/[email protected]"
}
],
"requests~attach": [
{
"@id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"byte_count": 1234,
"data": {
"base64": "ey4uLn0=",
"json": "{\"sample\": \"content\"}",
"jws": {
"header": {
"kid": "did:sov:LjgpST2rjsoxYegQDRm7EL#keys-4"
},
"protected": "ey4uLn0",
"signature": "ey4uLn0",
"signatures": [
{
"header": {
"kid": "did:sov:LjgpST2rjsoxYegQDRm7EL#keys-4"
},
"protected": "ey4uLn0",
"signature": "ey4uLn0"
}
]
},
"links": [
"https://link.to/data"
],
"sha256": "617a48c7c8afe0521efdc03e5bb0ad9e655893e6b4b51f0e794d70fba132aacb"
},
"description": "view from doorway, facing east, with lights off",
"filename": "IMG1092348.png",
"lastmod_time": "2021-12-31T23:59:59Z",
"mime-type": "image/png"
}
]
},
"error_msg": "The front fell off",
"initiator": "self",
"parent_thread_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"role": "issuer",
"state": "done",
"thread_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"trace": true,
"updated_at": "2021-12-31T23:59:59Z"
}
}
]
}POST /issue-credential-2.0/records/{cred_ex_id}/send-request HTTP/1.1
Content-Type: application/json
Accept: */*
Content-Length: 80
{
"auto_remove": true,
"holder_did": "did:key:ahsdkjahsdkjhaskjdhakjshdkajhsdkjahs"
}{
"auto_issue": false,
"auto_offer": false,
"auto_remove": false,
"by_format": {
"cred_issue": {},
"cred_offer": {},
"cred_proposal": {},
"cred_request": {}
},
"connection_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"created_at": "2021-12-31T23:59:59Z",
"cred_ex_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"cred_issue": {
"@id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"@type": "https://didcomm.org/my-family/1.0/my-message-type",
"comment": "text",
"credentials~attach": [
{
"@id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"byte_count": 1234,
"data": {
"base64": "ey4uLn0=",
"json": "{\"sample\": \"content\"}",
"jws": {
"header": {
"kid": "did:sov:LjgpST2rjsoxYegQDRm7EL#keys-4"
},
"protected": "ey4uLn0",
"signature": "ey4uLn0",
"signatures": [
{
"header": {
"kid": "did:sov:LjgpST2rjsoxYegQDRm7EL#keys-4"
},
"protected": "ey4uLn0",
"signature": "ey4uLn0"
}
]
},
"links": [
"https://link.to/data"
],
"sha256": "617a48c7c8afe0521efdc03e5bb0ad9e655893e6b4b51f0e794d70fba132aacb"
},
"description": "view from doorway, facing east, with lights off",
"filename": "IMG1092348.png",
"lastmod_time": "2021-12-31T23:59:59Z",
"mime-type": "image/png"
}
],
"formats": [
{
"attach_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"format": "aries/[email protected]"
}
],
"replacement_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6"
},
"cred_offer": {
"@id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"@type": "https://didcomm.org/my-family/1.0/my-message-type",
"comment": "text",
"credential_preview": {
"@type": "issue-credential/2.0/credential-preview",
"attributes": [
{
"mime-type": "image/jpeg",
"name": "favourite_drink",
"value": "martini"
}
]
},
"formats": [
{
"attach_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"format": "aries/[email protected]"
}
],
"offers~attach": [
{
"@id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"byte_count": 1234,
"data": {
"base64": "ey4uLn0=",
"json": "{\"sample\": \"content\"}",
"jws": {
"header": {
"kid": "did:sov:LjgpST2rjsoxYegQDRm7EL#keys-4"
},
"protected": "ey4uLn0",
"signature": "ey4uLn0",
"signatures": [
{
"header": {
"kid": "did:sov:LjgpST2rjsoxYegQDRm7EL#keys-4"
},
"protected": "ey4uLn0",
"signature": "ey4uLn0"
}
]
},
"links": [
"https://link.to/data"
],
"sha256": "617a48c7c8afe0521efdc03e5bb0ad9e655893e6b4b51f0e794d70fba132aacb"
},
"description": "view from doorway, facing east, with lights off",
"filename": "IMG1092348.png",
"lastmod_time": "2021-12-31T23:59:59Z",
"mime-type": "image/png"
}
],
"replacement_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6"
},
"cred_preview": {
"@type": "issue-credential/2.0/credential-preview",
"attributes": [
{
"mime-type": "image/jpeg",
"name": "favourite_drink",
"value": "martini"
}
]
},
"cred_proposal": {
"@id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"@type": "https://didcomm.org/my-family/1.0/my-message-type",
"comment": "text",
"credential_preview": {
"@type": "issue-credential/2.0/credential-preview",
"attributes": [
{
"mime-type": "image/jpeg",
"name": "favourite_drink",
"value": "martini"
}
]
},
"filters~attach": [
{
"@id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"byte_count": 1234,
"data": {
"base64": "ey4uLn0=",
"json": "{\"sample\": \"content\"}",
"jws": {
"header": {
"kid": "did:sov:LjgpST2rjsoxYegQDRm7EL#keys-4"
},
"protected": "ey4uLn0",
"signature": "ey4uLn0",
"signatures": [
{
"header": {
"kid": "did:sov:LjgpST2rjsoxYegQDRm7EL#keys-4"
},
"protected": "ey4uLn0",
"signature": "ey4uLn0"
}
]
},
"links": [
"https://link.to/data"
],
"sha256": "617a48c7c8afe0521efdc03e5bb0ad9e655893e6b4b51f0e794d70fba132aacb"
},
"description": "view from doorway, facing east, with lights off",
"filename": "IMG1092348.png",
"lastmod_time": "2021-12-31T23:59:59Z",
"mime-type": "image/png"
}
],
"formats": [
{
"attach_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"format": "aries/[email protected]"
}
]
},
"cred_request": {
"@id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"@type": "https://didcomm.org/my-family/1.0/my-message-type",
"comment": "text",
"formats": [
{
"attach_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"format": "aries/[email protected]"
}
],
"requests~attach": [
{
"@id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"byte_count": 1234,
"data": {
"base64": "ey4uLn0=",
"json": "{\"sample\": \"content\"}",
"jws": {
"header": {
"kid": "did:sov:LjgpST2rjsoxYegQDRm7EL#keys-4"
},
"protected": "ey4uLn0",
"signature": "ey4uLn0",
"signatures": [
{
"header": {
"kid": "did:sov:LjgpST2rjsoxYegQDRm7EL#keys-4"
},
"protected": "ey4uLn0",
"signature": "ey4uLn0"
}
]
},
"links": [
"https://link.to/data"
],
"sha256": "617a48c7c8afe0521efdc03e5bb0ad9e655893e6b4b51f0e794d70fba132aacb"
},
"description": "view from doorway, facing east, with lights off",
"filename": "IMG1092348.png",
"lastmod_time": "2021-12-31T23:59:59Z",
"mime-type": "image/png"
}
]
},
"error_msg": "The front fell off",
"initiator": "self",
"parent_thread_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"role": "issuer",
"state": "done",
"thread_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"trace": true,
"updated_at": "2021-12-31T23:59:59Z"
}POST /issue-credential-2.0/records/{cred_ex_id}/store HTTP/1.1
Content-Type: application/json
Accept: */*
Content-Length: 24
{
"credential_id": "text"
}{
"cred_ex_record": {
"auto_issue": false,
"auto_offer": false,
"auto_remove": false,
"by_format": {
"cred_issue": {},
"cred_offer": {},
"cred_proposal": {},
"cred_request": {}
},
"connection_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"created_at": "2021-12-31T23:59:59Z",
"cred_ex_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"cred_issue": {
"@id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"@type": "https://didcomm.org/my-family/1.0/my-message-type",
"comment": "text",
"credentials~attach": [
{
"@id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"byte_count": 1234,
"data": {
"base64": "ey4uLn0=",
"json": "{\"sample\": \"content\"}",
"jws": {
"header": {
"kid": "did:sov:LjgpST2rjsoxYegQDRm7EL#keys-4"
},
"protected": "ey4uLn0",
"signature": "ey4uLn0",
"signatures": [
{
"header": {
"kid": "did:sov:LjgpST2rjsoxYegQDRm7EL#keys-4"
},
"protected": "ey4uLn0",
"signature": "ey4uLn0"
}
]
},
"links": [
"https://link.to/data"
],
"sha256": "617a48c7c8afe0521efdc03e5bb0ad9e655893e6b4b51f0e794d70fba132aacb"
},
"description": "view from doorway, facing east, with lights off",
"filename": "IMG1092348.png",
"lastmod_time": "2021-12-31T23:59:59Z",
"mime-type": "image/png"
}
],
"formats": [
{
"attach_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"format": "aries/[email protected]"
}
],
"replacement_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6"
},
"cred_offer": {
"@id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"@type": "https://didcomm.org/my-family/1.0/my-message-type",
"comment": "text",
"credential_preview": {
"@type": "issue-credential/2.0/credential-preview",
"attributes": [
{
"mime-type": "image/jpeg",
"name": "favourite_drink",
"value": "martini"
}
]
},
"formats": [
{
"attach_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"format": "aries/[email protected]"
}
],
"offers~attach": [
{
"@id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"byte_count": 1234,
"data": {
"base64": "ey4uLn0=",
"json": "{\"sample\": \"content\"}",
"jws": {
"header": {
"kid": "did:sov:LjgpST2rjsoxYegQDRm7EL#keys-4"
},
"protected": "ey4uLn0",
"signature": "ey4uLn0",
"signatures": [
{
"header": {
"kid": "did:sov:LjgpST2rjsoxYegQDRm7EL#keys-4"
},
"protected": "ey4uLn0",
"signature": "ey4uLn0"
}
]
},
"links": [
"https://link.to/data"
],
"sha256": "617a48c7c8afe0521efdc03e5bb0ad9e655893e6b4b51f0e794d70fba132aacb"
},
"description": "view from doorway, facing east, with lights off",
"filename": "IMG1092348.png",
"lastmod_time": "2021-12-31T23:59:59Z",
"mime-type": "image/png"
}
],
"replacement_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6"
},
"cred_preview": {
"@type": "issue-credential/2.0/credential-preview",
"attributes": [
{
"mime-type": "image/jpeg",
"name": "favourite_drink",
"value": "martini"
}
]
},
"cred_proposal": {
"@id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"@type": "https://didcomm.org/my-family/1.0/my-message-type",
"comment": "text",
"credential_preview": {
"@type": "issue-credential/2.0/credential-preview",
"attributes": [
{
"mime-type": "image/jpeg",
"name": "favourite_drink",
"value": "martini"
}
]
},
"filters~attach": [
{
"@id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"byte_count": 1234,
"data": {
"base64": "ey4uLn0=",
"json": "{\"sample\": \"content\"}",
"jws": {
"header": {
"kid": "did:sov:LjgpST2rjsoxYegQDRm7EL#keys-4"
},
"protected": "ey4uLn0",
"signature": "ey4uLn0",
"signatures": [
{
"header": {
"kid": "did:sov:LjgpST2rjsoxYegQDRm7EL#keys-4"
},
"protected": "ey4uLn0",
"signature": "ey4uLn0"
}
]
},
"links": [
"https://link.to/data"
],
"sha256": "617a48c7c8afe0521efdc03e5bb0ad9e655893e6b4b51f0e794d70fba132aacb"
},
"description": "view from doorway, facing east, with lights off",
"filename": "IMG1092348.png",
"lastmod_time": "2021-12-31T23:59:59Z",
"mime-type": "image/png"
}
],
"formats": [
{
"attach_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"format": "aries/[email protected]"
}
]
},
"cred_request": {
"@id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"@type": "https://didcomm.org/my-family/1.0/my-message-type",
"comment": "text",
"formats": [
{
"attach_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"format": "aries/[email protected]"
}
],
"requests~attach": [
{
"@id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"byte_count": 1234,
"data": {
"base64": "ey4uLn0=",
"json": "{\"sample\": \"content\"}",
"jws": {
"header": {
"kid": "did:sov:LjgpST2rjsoxYegQDRm7EL#keys-4"
},
"protected": "ey4uLn0",
"signature": "ey4uLn0",
"signatures": [
{
"header": {
"kid": "did:sov:LjgpST2rjsoxYegQDRm7EL#keys-4"
},
"protected": "ey4uLn0",
"signature": "ey4uLn0"
}
]
},
"links": [
"https://link.to/data"
],
"sha256": "617a48c7c8afe0521efdc03e5bb0ad9e655893e6b4b51f0e794d70fba132aacb"
},
"description": "view from doorway, facing east, with lights off",
"filename": "IMG1092348.png",
"lastmod_time": "2021-12-31T23:59:59Z",
"mime-type": "image/png"
}
]
},
"error_msg": "The front fell off",
"initiator": "self",
"parent_thread_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"role": "issuer",
"state": "done",
"thread_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"trace": true,
"updated_at": "2021-12-31T23:59:59Z"
},
"indy": {
"created_at": "2021-12-31T23:59:59Z",
"cred_ex_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"cred_ex_indy_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"cred_id_stored": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"cred_request_metadata": {},
"cred_rev_id": "12345",
"rev_reg_id": "WgWxqztrNooG92RXvxSTWv:4:WgWxqztrNooG92RXvxSTWv:3:CL:20:tag:CL_ACCUM:0",
"state": "active",
"updated_at": "2021-12-31T23:59:59Z"
},
"ld_proof": {
"created_at": "2021-12-31T23:59:59Z",
"cred_ex_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"cred_ex_ld_proof_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"cred_id_stored": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"state": "active",
"updated_at": "2021-12-31T23:59:59Z"
},
"vc_di": {
"auto_issue": false,
"auto_offer": false,
"auto_remove": false,
"by_format": {
"cred_issue": {},
"cred_offer": {},
"cred_proposal": {},
"cred_request": {}
},
"connection_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"created_at": "2021-12-31T23:59:59Z",
"cred_ex_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"cred_issue": {
"@id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"@type": "https://didcomm.org/my-family/1.0/my-message-type",
"comment": "text",
"credentials~attach": [
{
"@id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"byte_count": 1234,
"data": {
"base64": "ey4uLn0=",
"json": "{\"sample\": \"content\"}",
"jws": {
"header": {
"kid": "did:sov:LjgpST2rjsoxYegQDRm7EL#keys-4"
},
"protected": "ey4uLn0",
"signature": "ey4uLn0",
"signatures": [
{
"header": {
"kid": "did:sov:LjgpST2rjsoxYegQDRm7EL#keys-4"
},
"protected": "ey4uLn0",
"signature": "ey4uLn0"
}
]
},
"links": [
"https://link.to/data"
],
"sha256": "617a48c7c8afe0521efdc03e5bb0ad9e655893e6b4b51f0e794d70fba132aacb"
},
"description": "view from doorway, facing east, with lights off",
"filename": "IMG1092348.png",
"lastmod_time": "2021-12-31T23:59:59Z",
"mime-type": "image/png"
}
],
"formats": [
{
"attach_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"format": "aries/[email protected]"
}
],
"replacement_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6"
},
"cred_offer": {
"@id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"@type": "https://didcomm.org/my-family/1.0/my-message-type",
"comment": "text",
"credential_preview": {
"@type": "issue-credential/2.0/credential-preview",
"attributes": [
{
"mime-type": "image/jpeg",
"name": "favourite_drink",
"value": "martini"
}
]
},
"formats": [
{
"attach_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"format": "aries/[email protected]"
}
],
"offers~attach": [
{
"@id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"byte_count": 1234,
"data": {
"base64": "ey4uLn0=",
"json": "{\"sample\": \"content\"}",
"jws": {
"header": {
"kid": "did:sov:LjgpST2rjsoxYegQDRm7EL#keys-4"
},
"protected": "ey4uLn0",
"signature": "ey4uLn0",
"signatures": [
{
"header": {
"kid": "did:sov:LjgpST2rjsoxYegQDRm7EL#keys-4"
},
"protected": "ey4uLn0",
"signature": "ey4uLn0"
}
]
},
"links": [
"https://link.to/data"
],
"sha256": "617a48c7c8afe0521efdc03e5bb0ad9e655893e6b4b51f0e794d70fba132aacb"
},
"description": "view from doorway, facing east, with lights off",
"filename": "IMG1092348.png",
"lastmod_time": "2021-12-31T23:59:59Z",
"mime-type": "image/png"
}
],
"replacement_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6"
},
"cred_preview": {
"@type": "issue-credential/2.0/credential-preview",
"attributes": [
{
"mime-type": "image/jpeg",
"name": "favourite_drink",
"value": "martini"
}
]
},
"cred_proposal": {
"@id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"@type": "https://didcomm.org/my-family/1.0/my-message-type",
"comment": "text",
"credential_preview": {
"@type": "issue-credential/2.0/credential-preview",
"attributes": [
{
"mime-type": "image/jpeg",
"name": "favourite_drink",
"value": "martini"
}
]
},
"filters~attach": [
{
"@id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"byte_count": 1234,
"data": {
"base64": "ey4uLn0=",
"json": "{\"sample\": \"content\"}",
"jws": {
"header": {
"kid": "did:sov:LjgpST2rjsoxYegQDRm7EL#keys-4"
},
"protected": "ey4uLn0",
"signature": "ey4uLn0",
"signatures": [
{
"header": {
"kid": "did:sov:LjgpST2rjsoxYegQDRm7EL#keys-4"
},
"protected": "ey4uLn0",
"signature": "ey4uLn0"
}
]
},
"links": [
"https://link.to/data"
],
"sha256": "617a48c7c8afe0521efdc03e5bb0ad9e655893e6b4b51f0e794d70fba132aacb"
},
"description": "view from doorway, facing east, with lights off",
"filename": "IMG1092348.png",
"lastmod_time": "2021-12-31T23:59:59Z",
"mime-type": "image/png"
}
],
"formats": [
{
"attach_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"format": "aries/[email protected]"
}
]
},
"cred_request": {
"@id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"@type": "https://didcomm.org/my-family/1.0/my-message-type",
"comment": "text",
"formats": [
{
"attach_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"format": "aries/[email protected]"
}
],
"requests~attach": [
{
"@id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"byte_count": 1234,
"data": {
"base64": "ey4uLn0=",
"json": "{\"sample\": \"content\"}",
"jws": {
"header": {
"kid": "did:sov:LjgpST2rjsoxYegQDRm7EL#keys-4"
},
"protected": "ey4uLn0",
"signature": "ey4uLn0",
"signatures": [
{
"header": {
"kid": "did:sov:LjgpST2rjsoxYegQDRm7EL#keys-4"
},
"protected": "ey4uLn0",
"signature": "ey4uLn0"
}
]
},
"links": [
"https://link.to/data"
],
"sha256": "617a48c7c8afe0521efdc03e5bb0ad9e655893e6b4b51f0e794d70fba132aacb"
},
"description": "view from doorway, facing east, with lights off",
"filename": "IMG1092348.png",
"lastmod_time": "2021-12-31T23:59:59Z",
"mime-type": "image/png"
}
]
},
"error_msg": "The front fell off",
"initiator": "self",
"parent_thread_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"role": "issuer",
"state": "done",
"thread_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"trace": true,
"updated_at": "2021-12-31T23:59:59Z"
}
}