Decentralised-Identifiers
The following DID management functions are available:
list - list DIDs
load - load DID
delete by url - delete by DID url
create - create DID
resolve - resolve DID
import - import DID
List DIDs
The /v1/did endpoint lists the available DIDs.
curl -X 'GET' \
'https://core.ssikit.walt.id/v1/did' \
-H 'accept: application/json'No parameters[
"string"
]E.g. List the available DIDs.
curl -X 'GET' \
'https://core.ssikit.walt.id/v1/did' \
-H 'accept: application/json'[
"did:ebsi:zwdPobJGue3w86Gpqhq5Cni",
"did:key:z6Mkm8NbvDnnxJ2t5zLGSkYGCWZiqq11Axr58xQ3ZG1Jss3z",
"did:key:z6MkkLmAVeM3P6B2LJ2xGrK1wVojCoephK4G9VrCcct42ADX",
"did:web:my.domain",
"did:web:walt.id",
"did:ebsi:zYubw2L8tCZSKKpAcMmCY2Q"
]Load DID
The /v1/did/{id} endpoint loads a DID specified by:
id - path parameter (required) - the DID url string
curl -X 'GET' \
'https://core.ssikit.walt.id/v1/did/{id}' \
-H 'accept: application/json'No parametersThe DID documentE.g. Load the DID = did:key:z6Mkm8NbvDnnxJ2t5zLGSkYGCWZiqq11Axr58xQ3ZG1Jss3z.
curl -X 'GET' \
'https://core.ssikit.walt.id/v1/did/did%3Akey%3Az6Mkm8NbvDnnxJ2t5zLGSkYGCWZiqq11Axr58xQ3ZG1Jss3z' \
-H 'accept: application/json'{
"assertionMethod":
[
"did:key:z6Mkm8NbvDnnxJ2t5zLGSkYGCWZiqq11Axr58xQ3ZG1Jss3z#z6Mkm8NbvDnnxJ2t5zLGSkYGCWZiqq11Axr58xQ3ZG1Jss3z"
],
"authentication":
[
"did:key:z6Mkm8NbvDnnxJ2t5zLGSkYGCWZiqq11Axr58xQ3ZG1Jss3z#z6Mkm8NbvDnnxJ2t5zLGSkYGCWZiqq11Axr58xQ3ZG1Jss3z"
],
"capabilityDelegation":
[
"did:key:z6Mkm8NbvDnnxJ2t5zLGSkYGCWZiqq11Axr58xQ3ZG1Jss3z#z6Mkm8NbvDnnxJ2t5zLGSkYGCWZiqq11Axr58xQ3ZG1Jss3z"
],
"capabilityInvocation":
[
"did:key:z6Mkm8NbvDnnxJ2t5zLGSkYGCWZiqq11Axr58xQ3ZG1Jss3z#z6Mkm8NbvDnnxJ2t5zLGSkYGCWZiqq11Axr58xQ3ZG1Jss3z"
],
"@context":
[
"https://www.w3.org/ns/did/v1"
],
"id": "did:key:z6Mkm8NbvDnnxJ2t5zLGSkYGCWZiqq11Axr58xQ3ZG1Jss3z",
"keyAgreement":
[
"did:key:z6Mkm8NbvDnnxJ2t5zLGSkYGCWZiqq11Axr58xQ3ZG1Jss3z#z6LSrs5FudTTsAUhHUoS1kzkhskwAWaYjyU13CVgZT7fwDWk"
],
"verificationMethod":
[
{
"controller": "did:key:z6Mkm8NbvDnnxJ2t5zLGSkYGCWZiqq11Axr58xQ3ZG1Jss3z",
"id": "did:key:z6Mkm8NbvDnnxJ2t5zLGSkYGCWZiqq11Axr58xQ3ZG1Jss3z#z6Mkm8NbvDnnxJ2t5zLGSkYGCWZiqq11Axr58xQ3ZG1Jss3z",
"publicKeyBase58": "7g7ZKyYMckYQyVVZmBaRMR1j2Fj9m5biSwV7iz3HxeGc",
"type": "Ed25519VerificationKey2019"
},
{
"controller": "did:key:z6Mkm8NbvDnnxJ2t5zLGSkYGCWZiqq11Axr58xQ3ZG1Jss3z",
"id": "did:key:z6Mkm8NbvDnnxJ2t5zLGSkYGCWZiqq11Axr58xQ3ZG1Jss3z#z6LSrs5FudTTsAUhHUoS1kzkhskwAWaYjyU13CVgZT7fwDWk",
"publicKeyBase58": "GBu6PKebmhkxC6RfV7UoPHYTKN3S3NHrADn14zU9Dqjz",
"type": "X25519KeyAgreementKey2019"
}
]
}Delete DID
The /v1/did/{id} endpoint deletes the DID by:
id - path parameter (required) - the DID url string
curl -X 'DELETE' \
'https://core.ssikit.walt.id/v1/did/{id}' \
-H 'accept: application/json'No parametersCode 200E.g. Delete the DID = did:key:z6Mkm8NbvDnnxJ2t5zLGSkYGCWZiqq11Axr58xQ3ZG1Jss3z.
curl -X 'DELETE' \
'https://core.ssikit.walt.id/v1/did/did%3Akey%3Az6Mkm8NbvDnnxJ2t5zLGSkYGCWZiqq11Axr58xQ3ZG1Jss3z' \
-H 'accept: application/json'Create DID
The /v1/did/create creates a DID.
curl -X 'POST' \
'https://core.ssikit.walt.id/v1/did/create' \
-H 'accept: application/json' \
-H 'Content-Type: application/json' \
-d '<request-body>'{
"method": "string",
"keyAlias": "string",
"method-dependent-options": "..."
}The DID url stringThe method and keyAlias properties are common for all did-method requests, method being required, while keyAlias - optional (if not specified, a new key will be automatically created using the default algorithm according to the did-method). The method-dependent options have default values, if not specified otherwise. Below are the available properties by did-method.
{
"method": "key",
"keyAlias": "string",
"useJwkJcsPub": "boolean"
}useJwkJcsPub(default) - false - specifies whether to create a did:key using the jwk_jcs-pub multicodec (code: 0xeb51)
{
"method": "web",
"keyAlias": "string",
"didWebDomain": "string",
"didWebPath": "string"
}didWebDomain(default) - "walt.id"didWebPath(default) - empty-string
{
"method": "ebsi",
"keyAlias": "string",
"version": "int"
}version(default) - 1
{
"method": "cheqd",
"keyAlias": "string",
"network": "string"
}network(default) - "testnet"
{
"method": "iota",
"keyAlias": "string"
}{
"method": "jwk",
"keyAlias": "string"
}E.g. Create a DID using the key method and automatically generate a new key.
curl -X 'POST' \
'https://core.ssikit.walt.id/v1/did/create' \
-H 'accept: application/json' \
-H 'Content-Type: application/json' \
-d '{
"method": "key"
}'{
"method": "key"
}did:key:z6MkqJfAPYYDiDeNERPMufpS1gxgzqiG5fvQnqbYTwY5xJDEResolve DID
The /v1/did/resolve resolves a DID url string to a DID document.
curl -X 'POST' \
'https://core.ssikit.walt.id/v1/did/resolve' \
-H 'accept: application/json' \
-H 'Content-Type: application/json' \
-d '<request-body>'{
"did": "string"
}The DID documentE.g. Resolve the DID = did:key:z6MkqmaCT2JqdUtLeKah7tEVfNXtDXtQyj4yxEgV11Y5CqUa.
curl -X 'POST' \
'https://core.ssikit.walt.id/v1/did/resolve' \
-H 'accept: application/json' \
-H 'Content-Type: application/json' \
-d '{
"did": "did:key:z6MkqmaCT2JqdUtLeKah7tEVfNXtDXtQyj4yxEgV11Y5CqUa"
}'{
"did": "did:key:z6MkqmaCT2JqdUtLeKah7tEVfNXtDXtQyj4yxEgV11Y5CqUa"
}{
"assertionMethod":
[
"did:key:z6MkqmaCT2JqdUtLeKah7tEVfNXtDXtQyj4yxEgV11Y5CqUa#z6MkqmaCT2JqdUtLeKah7tEVfNXtDXtQyj4yxEgV11Y5CqUa"
],
"authentication":
[
"did:key:z6MkqmaCT2JqdUtLeKah7tEVfNXtDXtQyj4yxEgV11Y5CqUa#z6MkqmaCT2JqdUtLeKah7tEVfNXtDXtQyj4yxEgV11Y5CqUa"
],
"capabilityDelegation":
[
"did:key:z6MkqmaCT2JqdUtLeKah7tEVfNXtDXtQyj4yxEgV11Y5CqUa#z6MkqmaCT2JqdUtLeKah7tEVfNXtDXtQyj4yxEgV11Y5CqUa"
],
"capabilityInvocation":
[
"did:key:z6MkqmaCT2JqdUtLeKah7tEVfNXtDXtQyj4yxEgV11Y5CqUa#z6MkqmaCT2JqdUtLeKah7tEVfNXtDXtQyj4yxEgV11Y5CqUa"
],
"@context":
[
"https://www.w3.org/ns/did/v1"
],
"id": "did:key:z6MkqmaCT2JqdUtLeKah7tEVfNXtDXtQyj4yxEgV11Y5CqUa",
"keyAgreement":
[
"did:key:z6MkqmaCT2JqdUtLeKah7tEVfNXtDXtQyj4yxEgV11Y5CqUa#z6LSkSwxKk6TFYcqcRHv7ALR87CTFK6bSkQsxwqczx1YgYik"
],
"verificationMethod":
[
{
"controller": "did:key:z6MkqmaCT2JqdUtLeKah7tEVfNXtDXtQyj4yxEgV11Y5CqUa",
"id": "did:key:z6MkqmaCT2JqdUtLeKah7tEVfNXtDXtQyj4yxEgV11Y5CqUa#z6MkqmaCT2JqdUtLeKah7tEVfNXtDXtQyj4yxEgV11Y5CqUa",
"publicKeyBase58": "CKK9rn4QHwPsXpjzSKGepGytPxcZZqpdGDmZAja4HchC",
"type": "Ed25519VerificationKey2019"
},
{
"controller": "did:key:z6MkqmaCT2JqdUtLeKah7tEVfNXtDXtQyj4yxEgV11Y5CqUa",
"id": "did:key:z6MkqmaCT2JqdUtLeKah7tEVfNXtDXtQyj4yxEgV11Y5CqUa#z6LSkSwxKk6TFYcqcRHv7ALR87CTFK6bSkQsxwqczx1YgYik",
"publicKeyBase58": "9mmnoSHbA5u6X2v9aWpToWyyQAZUk9Ej5y7wWVN1yAwz",
"type": "X25519KeyAgreementKey2019"
}
]
}Import DID
The /v1/did/import endpoint resolves and imports the specified DID url to the underlying data store.
curl -X 'POST' \
'https://core.ssikit.walt.id/v1/did/import' \
-H 'accept: application/json' \
-H 'Content-Type: text/plain' \
-d '<request-body>'The DID url stringCode 201E.g. Import the DID = did:key:z6MkqmaCT2JqdUtLeKah7tEVfNXtDXtQyj4yxEgV11Y5CqUa.
curl -X 'POST' \
'https://core.ssikit.walt.id/v1/did/import' \
-H 'accept: application/json' \
-H 'Content-Type: text/plain' \
-d 'did:key:z6MkqmaCT2JqdUtLeKah7tEVfNXtDXtQyj4yxEgV11Y5CqUa'did:key:z6MkqmaCT2JqdUtLeKah7tEVfNXtDXtQyj4yxEgV11Y5CqUaLast updated
Was this helpful?
