Well known DID configuration
Returns a list of Decentralized Identifier (DID) Configuration entries from the tenant. These are automatically created for all DIDS created on a tenant so that they can be used by any party aiming to establish and verify the domain-DID linkage by exposing cryptographic proofs. Thus, this endpoint is unprotected, public facing and can be deterministically found at the root of the tenant subdomain or alias by any party. Refer to Well Known DID Configuration on the Decentralized Identity Foundation website for more information.
List of DID Configuration entries
- curl
- Node.js
- JavaScript
- Python
- C#
- Java
- 200
{- "entries": [
- {
- "type": [
- "VerifiableCredential",
- "DomainLinkageCredential"
], - "issuer": "did:key:z6MktarAWYW9iUWN2f9oAdHhFXdD9ZKRoEiQyPhQffBho4Df",
- "issuanceDate": "2023-07-19T00:46:39.327Z",
- "credentialSubject": {
- "id": "did:key:z6MktarAWYW9iUWN2f9oAdHhFXdD9ZKRoEiQyPhQffBho4Df",
- "origin": "tenant.vii.mattr.global"
}, - "proof": {
- "type": "Ed25519Signature2018",
- "created": "2023-07-19T00:46:39Z",
- "verificationMethod": "did:key:z6MktarAWYW9iUWN2f9oAdHhFXdD9ZKRoEiQyPhQffBho4Df#z6MktarAWYW9iUWN2f9oAdHhFXdD9ZKRoEiQyPhQffBho4Df",
- "proofPurpose": "assertionMethod",
- "jws": "eyJhbGciOiJFZERTQSIsImI2NCI6ZmFsc2UsImNyaXQiOlsiYjY0Il19..jx6VQ_iB80R2GVcqy-hBGHp0A-u-i9ynye7ipb0p4z-4I2ww8tgcut3JadipHUgTS9Qs2YwY2abUsj3045ywDA"
}
}, - {
- "type": [
- "VerifiableCredential",
- "DomainLinkageCredential"
], - "issuer": "did:key:zUC745TL4zAa8D8qqHnwcmLj7QFcTbgsh41x6sbkRARPokFFvykvk6jjotsEmjpXniEQsm9r5LkSfXKXXu9F5698uDoQ9Bq8MeLtisqUoJJ1SZRa9tsU5EFfD2T2dR58RFMPW9K",
- "issuanceDate": "2023-07-19T00:46:39.328Z",
- "credentialSubject": {
- "id": "did:key:zUC745TL4zAa8D8qqHnwcmLj7QFcTbgsh41x6sbkRARPokFFvykvk6jjotsEmjpXniEQsm9r5LkSfXKXXu9F5698uDoQ9Bq8MeLtisqUoJJ1SZRa9tsU5EFfD2T2dR58RFMPW9K",
- "origin": "product-team.platform.staging.mattrlabs.io"
}, - "proof": {
- "type": "BbsSignature2022",
- "verificationMethod": "did:key:zUC745TL4zAa8D8qqHnwcmLj7QFcTbgsh41x6sbkRARPokFFvykvk6jjotsEmjpXniEQsm9r5LkSfXKXXu9F5698uDoQ9Bq8MeLtisqUoJJ1SZRa9tsU5EFfD2T2dR58RFMPW9K#zUC745TL4zAa8D8qqHnwcmLj7QFcTbgsh41x6sbkRARPokFFvykvk6jjotsEmjpXniEQsm9r5LkSfXKXXu9F5698uDoQ9Bq8MeLtisqUoJJ1SZRa9tsU5EFfD2T2dR58RFMPW9K",
- "proofPurpose": "assertionMethod",
- "proofValue": "x8AFZpr/CUbwC4qony2g8BpW7hdF+KhM363b0jQ6MI+FFsKzwug92JDdeSXaFaZyCvfhkJrIdDGMAzyLSp9kJqH4B2cqPw2AcEsoNrTqxOEw9ZK7D1LXAkvElUhfmIZLKAmGpA8RNVPUG8Q+a2p49w=="
}
}
]
}
Create a DID
Takes a supported DID method and returns a new DID with its generated keys and required information. This endpoint also registers the DID Document when applicable.
MATTR VII currently supports creating DIDs of the following methods:
- did:key: The most basic type of DID. The public key forms the DID and has no further data associated with it.
- did:web: This type of DID requires hosting the DID document on a publicly accessible domain in order to make the document and its contents available.
Analytic events
- DID_CREATE_START
- DID_CREATE_SUCCESS
- DID_CREATE_FAIL
DID document created
Bad request
- Payload
- curl
- Node.js
- JavaScript
- Python
- C#
- Java
{- "method": "web",
- "options": {
- "url": "learn.vii.au01.mattr.global"
}
}
- 201
- 400
{- "did": "did:web:learn.vii.au01.mattr.global",
- "registrationStatus": "COMPLETED",
- "localMetadata": {
- "keys": [
- {
- "didDocumentKeyId": "did:web:learn.vii.au01.mattr.global#z12KiP7r",
- "kmsKeyId": "96fa6a94-a8cf-4afd-825b-70b46bdb60ee"
}, - {
- "didDocumentKeyId": "did:web:learn.vii.au01.mattr.global#nCxqyzxHFi",
- "kmsKeyId": "378dfe87-6eba-4779-a402-34ff5b267840"
}, - {
- "didDocumentKeyId": "did:web:learn.vii.au01.mattr.global#2vcj3MjR4d",
- "kmsKeyId": "a0cba537-ffe1-486d-aedd-6ead80e75519"
}, - {
- "didDocumentKeyId": "did:web:learn.vii.au01.mattr.global#CU6dJt9p8t",
- "kmsKeyId": "250c4e1f-bae3-44ca-9f4e-4f7ff15851e2"
}
], - "registered": 1674421454614,
- "initialDidDocument": {
- "id": "did:web:learn.vii.au01.mattr.global",
- "verificationMethod": [
- {
- "id": "did:web:learn.vii.au01.mattr.global#z12KiP7r",
- "controller": "did:web:learn.vii.au01.mattr.global",
- "type": "JsonWebKey2020",
- "publicKeyJwk": {
- "kty": "EC",
- "crv": "P-256",
- "x": "PZWoBmV7vjJ55Aq5hFAPIH6uDA-V3G0ueVe22ahgL7w",
- "y": "7kzcj257Zvfpzyj2gFWrnCIbXZxQ6WyDOo2MdA6mpMI"
}
}, - {
- "id": "did:web:learn.vii.au01.mattr.global#2vcj3MjR4d",
- "controller": "did:web:learn.vii.au01.mattr.global",
- "type": "Ed25519VerificationKey2018",
- "publicKeyBase58": "2vcj3MjR4dSKq5asFQ9oor7iZsqTKTfBpjLHgaP15Y24"
}, - {
- "id": "did:web:learn.vii.au01.mattr.global#nCxqyzxHFi",
- "controller": "did:web:learn.vii.au01.mattr.global",
- "type": "Bls12381G2Key2020",
- "publicKeyBase58": "nCxqyzxHFioYCVwinAwJzTPwfs84pPaseZQFkfGXUxx5ZD93HE43aXicYsyj2s5HYFSSYw9WtRaWsKeF9qn2jBVZ2UNuQCdG1qna9jpZPTvWQY1t2Z2hxhhs8MV5P5QaozB"
}
], - "authentication": [
- "did:web:learn.vii.au01.mattr.global#2vcj3MjR4d"
], - "assertionMethod": [
- "did:web:learn.vii.au01.mattr.global#z12KiP7r",
- "did:web:learn.vii.au01.mattr.global#2vcj3MjR4d",
- "did:web:learn.vii.au01.mattr.global#nCxqyzxHFi"
], - "capabilityDelegation": [
- "did:web:learn.vii.au01.mattr.global#z12KiP7r",
- "did:web:learn.vii.au01.mattr.global#2vcj3MjR4d",
- "did:web:learn.vii.au01.mattr.global#nCxqyzxHFi"
], - "capabilityInvocation": [
- "did:web:learn.vii.au01.mattr.global#z12KiP7r",
- "did:web:learn.vii.au01.mattr.global#2vcj3MjR4d",
- "did:web:learn.vii.au01.mattr.global#nCxqyzxHFi"
], - "keyAgreement": [
- {
- "id": "did:web:learn.vii.au01.mattr.global#CU6dJt9p8t",
- "controller": "did:web:learn.vii.au01.mattr.global",
- "type": "X25519KeyAgreementKey2019",
- "publicKeyBase58": "CU6dJt9p8twE4hmyGVFbVpUMmu6G732bVgD1tNupwYY7"
}
]
}
}
}
Retrieve a list of DIDs
Returns a list of all DIDs (Decentralized Identifiers) managed by the tenant and their associated meta-data.
Analytic events
- DID_RETRIEVE_LIST_START
- DID_RETRIEVE_LIST_SUCCESS
- DID_RETRIEVE_LIST_FAIL
A list of DIDs
- curl
- Node.js
- JavaScript
- Python
- C#
- Java
- 200
{- "data": [
- {
- "did": "did:web:learn.vii.au01.mattr.global",
- "localMetadata": {
- "keys": [
- {
- "didDocumentKeyId": "did:web:learn.vii.au01.mattr.global#z12KiP7r",
- "kmsKeyId": "96fa6a94-a8cf-4afd-825b-70b46bdb60ee"
}, - {
- "didDocumentKeyId": "did:web:learn.vii.au01.mattr.global#nCxqyzxHFi",
- "kmsKeyId": "378dfe87-6eba-4779-a402-34ff5b267840"
}, - {
- "didDocumentKeyId": "did:web:learn.vii.au01.mattr.global#2vcj3MjR4d",
- "kmsKeyId": "a0cba537-ffe1-486d-aedd-6ead80e75519"
}, - {
- "didDocumentKeyId": "did:web:learn.vii.au01.mattr.global#CU6dJt9p8t",
- "kmsKeyId": "250c4e1f-bae3-44ca-9f4e-4f7ff15851e2"
}
], - "registered": 1674421454614,
- "initialDidDocument": {
- "id": "did:web:learn.vii.au01.mattr.global",
- "verificationMethod": [
- {
- "id": "did:web:learn.vii.au01.mattr.global#z12KiP7r",
- "controller": "did:web:learn.vii.au01.mattr.global",
- "type": "JsonWebKey2020",
- "publicKeyJwk": {
- "kty": "EC",
- "crv": "P-256",
- "x": "PZWoBmV7vjJ55Aq5hFAPIH6uDA-V3G0ueVe22ahgL7w",
- "y": "7kzcj257Zvfpzyj2gFWrnCIbXZxQ6WyDOo2MdA6mpMI"
}
}, - {
- "id": "did:web:learn.vii.au01.mattr.global#2vcj3MjR4d",
- "controller": "did:web:learn.vii.au01.mattr.global",
- "type": "Ed25519VerificationKey2018",
- "publicKeyBase58": "2vcj3MjR4dSKq5asFQ9oor7iZsqTKTfBpjLHgaP15Y24"
}, - {
- "id": "did:web:learn.vii.au01.mattr.global#nCxqyzxHFi",
- "controller": "did:web:learn.vii.au01.mattr.global",
- "type": "Bls12381G2Key2020",
- "publicKeyBase58": "nCxqyzxHFioYCVwinAwJzTPwfs84pPaseZQFkfGXUxx5ZD93HE43aXicYsyj2s5HYFSSYw9WtRaWsKeF9qn2jBVZ2UNuQCdG1qna9jpZPTvWQY1t2Z2hxhhs8MV5P5QaozB"
}
], - "authentication": [
- "did:web:learn.vii.au01.mattr.global#2vcj3MjR4d"
], - "assertionMethod": [
- "did:web:learn.vii.au01.mattr.global#z12KiP7r",
- "did:web:learn.vii.au01.mattr.global#2vcj3MjR4d",
- "did:web:learn.vii.au01.mattr.global#nCxqyzxHFi"
], - "capabilityDelegation": [
- "did:web:learn.vii.au01.mattr.global#z12KiP7r",
- "did:web:learn.vii.au01.mattr.global#2vcj3MjR4d",
- "did:web:learn.vii.au01.mattr.global#nCxqyzxHFi"
], - "capabilityInvocation": [
- "did:web:learn.vii.au01.mattr.global#z12KiP7r",
- "did:web:learn.vii.au01.mattr.global#2vcj3MjR4d",
- "did:web:learn.vii.au01.mattr.global#nCxqyzxHFi"
], - "keyAgreement": [
- {
- "id": "did:web:learn.vii.au01.mattr.global#CU6dJt9p8t",
- "controller": "did:web:learn.vii.au01.mattr.global",
- "type": "X25519KeyAgreementKey2019",
- "publicKeyBase58": "CU6dJt9p8twE4hmyGVFbVpUMmu6G732bVgD1tNupwYY7"
}
]
}
}
}, - {
- "did": "did:key:z6MkqHv635BxaXJpXKzbdwpKGUX1a8oqaGmgBxdi2yF1p1PZ",
- "localMetadata": {
- "keys": [
- {
- "kmsKeyId": "2462a440-ef70-413b-8e73-0b2905a73562",
- "didDocumentKeyId": "did:key:z6MkqHv635BxaXJpXKzbdwpKGUX1a8oqaGmgBxdi2yF1p1PZ#z6MkqHv635BxaXJpXKzbdwpKGUX1a8oqaGmgBxdi2yF1p1PZ"
}, - {
- "kmsKeyId": "e65e6545-1ba0-4959-8272-db22a46f2e34",
- "didDocumentKeyId": "did:key:z6MkqHv635BxaXJpXKzbdwpKGUX1a8oqaGmgBxdi2yF1p1PZ#z6LSsfqtdz5mtaGRTZrGwhzK73xDYAtack5AHKcakR1eco7K"
}
], - "registered": 1671586060525,
- "initialDidDocument": {
- "id": "did:key:z6MkqHv635BxaXJpXKzbdwpKGUX1a8oqaGmgBxdi2yF1p1PZ",
- "verificationMethod": [
- {
- "id": "did:key:z6MkqHv635BxaXJpXKzbdwpKGUX1a8oqaGmgBxdi2yF1p1PZ#z6MkqHv635BxaXJpXKzbdwpKGUX1a8oqaGmgBxdi2yF1p1PZ",
- "type": "Ed25519VerificationKey2018",
- "controller": "did:key:z6MkqHv635BxaXJpXKzbdwpKGUX1a8oqaGmgBxdi2yF1p1PZ",
- "publicKeyBase58": "Bqf3SpwXEypMQq9txNrURNy1kZXzAPXKVwinChGztncB"
}
], - "keyAgreement": [
- {
- "id": "did:key:z6MkqHv635BxaXJpXKzbdwpKGUX1a8oqaGmgBxdi2yF1p1PZ#z6LSsfqtdz5mtaGRTZrGwhzK73xDYAtack5AHKcakR1eco7K",
- "type": "X25519KeyAgreementKey2019",
- "controller": "did:key:z6MkqHv635BxaXJpXKzbdwpKGUX1a8oqaGmgBxdi2yF1p1PZ",
- "publicKeyBase58": "Gzfj7gGuo7YgNBUWR4UMnTjjh2MTv8u1QLtuFxN7uRLZ"
}
], - "authentication": [
- "did:key:z6MkqHv635BxaXJpXKzbdwpKGUX1a8oqaGmgBxdi2yF1p1PZ#z6MkqHv635BxaXJpXKzbdwpKGUX1a8oqaGmgBxdi2yF1p1PZ"
], - "assertionMethod": [
- "did:key:z6MkqHv635BxaXJpXKzbdwpKGUX1a8oqaGmgBxdi2yF1p1PZ#z6MkqHv635BxaXJpXKzbdwpKGUX1a8oqaGmgBxdi2yF1p1PZ"
], - "capabilityDelegation": [
- "did:key:z6MkqHv635BxaXJpXKzbdwpKGUX1a8oqaGmgBxdi2yF1p1PZ#z6MkqHv635BxaXJpXKzbdwpKGUX1a8oqaGmgBxdi2yF1p1PZ"
], - "capabilityInvocation": [
- "did:key:z6MkqHv635BxaXJpXKzbdwpKGUX1a8oqaGmgBxdi2yF1p1PZ#z6MkqHv635BxaXJpXKzbdwpKGUX1a8oqaGmgBxdi2yF1p1PZ"
]
}
}
}
], - "nextCursor": "Y3JlYXRlZEF0PTIwMjAtMDgtMjVUMDY6NDY6MDkuNTEwWiZpZD1hNjZmZmVhNS04NDhlLTQzOWQtODBhNC1kZGE1NWY1M2UzNmM"
}
Resolve a DID
Retrieves a DID and its metadata from the tenant by its URI. This may involve a network call depending on the method involved:
- For did:key the public key is encapsulated in the DID URI itself.
- For did:web it must be resolved by accessing the
/.well-known/did.json
path on its domain.
Analytic events
- DID_RETRIEVE_START
- DID_RETRIEVE_SUCCESS
- DID_RETRIEVE_FAIL
A DID Document and its meta-data
Not Found
- curl
- Node.js
- JavaScript
- Python
- C#
- Java
- 200
- 404
{- "did": "did:web:learn.vii.au01.mattr.global",
- "registrationStatus": "COMPLETED",
- "localMetadata": {
- "keys": [
- {
- "didDocumentKeyId": "did:web:learn.vii.au01.mattr.global#z12KiP7r",
- "kmsKeyId": "96fa6a94-a8cf-4afd-825b-70b46bdb60ee"
}, - {
- "didDocumentKeyId": "did:web:learn.vii.au01.mattr.global#nCxqyzxHFi",
- "kmsKeyId": "378dfe87-6eba-4779-a402-34ff5b267840"
}, - {
- "didDocumentKeyId": "did:web:learn.vii.au01.mattr.global#2vcj3MjR4d",
- "kmsKeyId": "a0cba537-ffe1-486d-aedd-6ead80e75519"
}, - {
- "didDocumentKeyId": "did:web:learn.vii.au01.mattr.global#CU6dJt9p8t",
- "kmsKeyId": "250c4e1f-bae3-44ca-9f4e-4f7ff15851e2"
}
], - "registered": 1674421454614,
- "initialDidDocument": {
- "id": "did:web:learn.vii.au01.mattr.global",
- "verificationMethod": [
- {
- "id": "did:web:learn.vii.au01.mattr.global#z12KiP7r",
- "controller": "did:web:learn.vii.au01.mattr.global",
- "type": "JsonWebKey2020",
- "publicKeyJwk": {
- "kty": "EC",
- "crv": "P-256",
- "x": "PZWoBmV7vjJ55Aq5hFAPIH6uDA-V3G0ueVe22ahgL7w",
- "y": "7kzcj257Zvfpzyj2gFWrnCIbXZxQ6WyDOo2MdA6mpMI"
}
}, - {
- "id": "did:web:learn.vii.au01.mattr.global#2vcj3MjR4d",
- "controller": "did:web:learn.vii.au01.mattr.global",
- "type": "Ed25519VerificationKey2018",
- "publicKeyBase58": "2vcj3MjR4dSKq5asFQ9oor7iZsqTKTfBpjLHgaP15Y24"
}, - {
- "id": "did:web:learn.vii.au01.mattr.global#nCxqyzxHFi",
- "controller": "did:web:learn.vii.au01.mattr.global",
- "type": "Bls12381G2Key2020",
- "publicKeyBase58": "nCxqyzxHFioYCVwinAwJzTPwfs84pPaseZQFkfGXUxx5ZD93HE43aXicYsyj2s5HYFSSYw9WtRaWsKeF9qn2jBVZ2UNuQCdG1qna9jpZPTvWQY1t2Z2hxhhs8MV5P5QaozB"
}
], - "authentication": [
- "did:web:learn.vii.au01.mattr.global#2vcj3MjR4d"
], - "assertionMethod": [
- "did:web:learn.vii.au01.mattr.global#z12KiP7r",
- "did:web:learn.vii.au01.mattr.global#2vcj3MjR4d",
- "did:web:learn.vii.au01.mattr.global#nCxqyzxHFi"
], - "capabilityDelegation": [
- "did:web:learn.vii.au01.mattr.global#z12KiP7r",
- "did:web:learn.vii.au01.mattr.global#2vcj3MjR4d",
- "did:web:learn.vii.au01.mattr.global#nCxqyzxHFi"
], - "capabilityInvocation": [
- "did:web:learn.vii.au01.mattr.global#z12KiP7r",
- "did:web:learn.vii.au01.mattr.global#2vcj3MjR4d",
- "did:web:learn.vii.au01.mattr.global#nCxqyzxHFi"
], - "keyAgreement": [
- {
- "id": "did:web:learn.vii.au01.mattr.global#CU6dJt9p8t",
- "controller": "did:web:learn.vii.au01.mattr.global",
- "type": "X25519KeyAgreementKey2019",
- "publicKeyBase58": "CU6dJt9p8twE4hmyGVFbVpUMmu6G732bVgD1tNupwYY7"
}
]
}
}
}
Delete a DID
Deletes a DID and all associated metadata by providing its URI. This includes all the removal of all associated private keys from the Key Management System (KMS).
For ledger-based DIDs the public DID Document will still be available. This means that for
did:web
you will need to manually remove thedid.json
from your hosted domain.
Analytic events
- DID_DELETE_START
- DID_DELETE_SUCCESS
- DID_DELETE_FAIL
DID successfully deleted
Bad request
Not Found
- curl
- Node.js
- JavaScript
- Python
- C#
- Java
- 400
- 404
{- "code": "BadRequest",
- "message": "Validation Error",
- "details": [
- {
- "value": "xxx",
- "msg": "Invalid value",
- "param": "id",
- "location": "params"
}
]
}