Did management
DID management functions enable the following:
List - lists the available DIDs
Load - loads a DID by the specified id
Delete - deletes a DID by the specified url
Create - creates a new DID
Resolve - resolves a DID to a document
Import - import a DID
For more info on DIDs, go here.
List DID
The /did
endpoint lists the available DIDs.
curl -X 'GET' \
'https://custodian.ssikit.walt.id/did' \
-H 'accept: application/json'
E.g. List the available DIDs
curl -X 'GET' \
'https://custodian.ssikit.walt.id/did' \
-H 'accept: application/json'
Load DID
The /did/{id}
endpoint loads a DID specified by:
id path parameter (required) - the DID url string
curl -X 'GET' \
'https://custodian.ssikit.walt.id/{id}' \
-H 'accept: application/json'
E.g Load the DID having the id = did:web:walt.id.
curl -X 'GET' \
'https://custodian.ssikit.walt.id/did/did%3Aweb%3Awalt.id' \
-H 'accept: application/json'
Delete DID
The /did/{id}
deletes the DID specified by:
url - path parameter (required) - the DID url string
curl -X 'DELETE' \
'https://custodian.ssikit.walt.id/did/{id}' \
-H 'accept: application/json'
E.g. Delete the DID having id = did:web:walt.id.
curl -X 'DELETE' \
'https://custodian.ssikit.walt.id/did/did%3Aweb%3Awalt.id' \
-H 'accept: application/json'
Create DID
The /did/create
endpoint creates a DID.
curl -X 'POST' \
'https://custodian.ssikit.walt.id/did/create' \
-H 'accept: application/json' \
-H 'Content-Type: application/json' \
-d '<request-body>'
The 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)
E.g. Create a DID using the web
method having the domain set to walt.id
.
curl -X 'POST' \
'https://custodian.ssikit.walt.id/did/create' \
-H 'accept: application/json' \
-H 'Content-Type: application/json' \
-d '{
"method": "web",
"didWebDomain": "walt.id"
}'
Resolve DID
The /did/resolve
endpoint resolves a DID.
curl -X 'POST' \
'https://custodian.ssikit.walt.id/did/resolve' \
-H 'accept: application/json' \
-H 'Content-Type: application/json' \
-d '<request-body>'
E.g. Reslove the DID having id = did:key:z6MkkLmAVeM3P6B2LJ2xGrK1wVojCoephK4G9VrCcct42ADX
.
curl -X 'POST' \
'https://custodian.ssikit.walt.id/did/resolve' \
-H 'accept: application/json' \
-H 'Content-Type: application/json' \
-d '{
"did": "did:key:z6MkkLmAVeM3P6B2LJ2xGrK1wVojCoephK4G9VrCcct42ADX"
}'
Import DID
The /did/import
endpoint resolves and imports the DID to the underlying data store.
curl -X 'POST' \
'https://custodian.ssikit.walt.id/did/import' \
-H 'accept: application/json' \
-H 'Content-Type: text/plain' \
-d '<request-body>'
E.g. Import DID having id = did:key:z6Mkm8NbvDnnxJ2t5zLGSkYGCWZiqq11Axr58xQ3ZG1Jss3z
.
curl -X 'POST' \
'https://custodian.ssikit.walt.id/did/import' \
-H 'accept: application/json' \
-H 'Content-Type: text/plain' \
-d 'did:key:z6Mkm8NbvDnnxJ2t5zLGSkYGCWZiqq11Axr58xQ3ZG1Jss3z'
Last updated
Was this helpful?