add key to Digital Twin
PATCH/api/gemini/v1/digital-twin/key/add/:did
add key to the DID Document, supports only single key manipulation, so multiple updates increase the time
Request
Path Parameters
the digital identifier
- application/json
Body
required
Array [
]
keys
object[]
required
identifier of the Key, acts like an alias for the key
the key management system of the key
Key algorithm
public part of the key as a string in hex format
the private part of the key, based on the security reasons will not be returned
meta
object
a lis tof supported key algorithm
Responses
- 200
- application/json
- Schema
- Example (from schema)
Schema
- MOD1
- MOD2
Array [
]
- MOD1
- MOD2
Array [
]
Array [
]
Array [
]
Array [
]
Array [
- MOD1
- MOD2
Array [
]
Array [
]
]
Array [
- MOD1
- MOD2
Array [
]
Array [
]
]
Array [
- MOD1
- MOD2
Array [
]
Array [
]
]
Array [
- MOD1
- MOD2
Array [
]
Array [
]
]
Array [
- MOD1
- MOD2
Array [
]
Array [
]
]
@context
object
required
anyOf
string
string
controller
object
anyOf
string
string
verificationMethod
object[]
publicKeyJwk
object
service
object[]
the identifier of the service. Required for deletion operation
Default value: LinkedDomain
categorization of the provided service url, if not maintained, LinkedDomain will be used.
Only chars a-z or A-Z are allowed
the endpoint url providing additional services / information for the digital twin
Endpoint is providing additional material information like Certificates and hazardous information
publicKey
object[]
publicKeyJwk
object
authentication
object[]
anyOf
publicKeyJwk
object
string
assertionMethod
object[]
anyOf
publicKeyJwk
object
string
keyAgreement
object[]
anyOf
publicKeyJwk
object
string
capabilityInvocation
object[]
anyOf
publicKeyJwk
object
string
capabilityDelegation
object[]
anyOf
publicKeyJwk
object
string
{
"@context": "string",
"id": "string",
"alsoKnownAs": [
"string"
],
"controller": "string",
"verificationMethod": [
{
"id": "string",
"type": "string",
"controller": "string",
"publicKeyBase58": "string",
"publicKeyBase64": "string",
"publicKeyJwk": {
"alg": "string",
"crv": "string",
"e": "string",
"ext": true,
"key_ops": [
"string"
],
"kid": "string",
"kty": "string",
"n": "string",
"use": "string",
"x": "string",
"y": "string"
},
"publicKeyHex": "string",
"publicKeyMultibase": "string",
"blockchainAccountId": "string",
"ethereumAddress": "string"
}
],
"service": [
{
"id": "did:example:123456789#service-1",
"type": "LinkedDomain",
"serviceEndpoint": "https://foo.bar",
"description": "The purpose and/or additional information to the service endpoint"
}
],
"publicKey": [
{
"id": "string",
"type": "string",
"controller": "string",
"publicKeyBase58": "string",
"publicKeyBase64": "string",
"publicKeyJwk": {
"alg": "string",
"crv": "string",
"e": "string",
"ext": true,
"key_ops": [
"string"
],
"kid": "string",
"kty": "string",
"n": "string",
"use": "string",
"x": "string",
"y": "string"
},
"publicKeyHex": "string",
"publicKeyMultibase": "string",
"blockchainAccountId": "string",
"ethereumAddress": "string"
}
],
"authentication": [
[
null
],
[
null
]
],
"assertionMethod": [
[
null
],
[
null
]
],
"keyAgreement": [
[
null
],
[
null
]
],
"capabilityInvocation": [
[
null
],
[
null
]
],
"capabilityDelegation": [
[
null
],
[
null
]
]
}