The Universal Registrar enables the creation/update/deactivation of many different types ("methods") of Decentralized Identifiers (DIDs), using a common interface.
It offers an HTTP(S) binding to the DID Registration functions, which are defined in the DIF I&D WG's DID Registration specification.
By default, the Universal Registrar returns the cryptographic keys (including private keys) in the response body of the API calls. In addition, the keys are also stored in the Wallet Service.
In addition, the Universal Registrar supports a client-managed secret mode, where private keys stay on the client side.
In some cases, DID operations require multiple steps, for example a human interaction may be required to agree to a governance framework, or to provide funds to a cryptocurrency address, before a DID operation can be completed. In such cases, the Universal Registrar returns the state of a longer-running job, which can be used to continue DID operations that require multiple steps to complete.
See https://api.godiddy.com/#tag/Universal-Registrar
When creating DIDs, the input is a DID create request object, and the output is a DID create status object.
Supported options:
sovrin
, sovrin:builder
, sovrin:staging
, danube
, idunion
, idunion:test
, indicio
, indicio:test
, indicio:demo
)curl -H "Authorization: Bearer b082c420-df67-4b06-899c-b7c51d75fba0" \
-X POST "https://api.godiddy.com/1.0.0/universal-registrar/create?method=indy" \
-H "Content-Type: application/json" \
-d '{
"didDocument": {
"@context": ["https//www.w3.org/ns/did/v1"],
"service": [ ]
},
"options": {
"network": "danube"
},
"secret": { }
}'
Supported options:
mainnet
, testnet
)curl -H "Authorization: Bearer b082c420-df67-4b06-899c-b7c51d75fba0" \
-X POST "https://api.godiddy.com/1.0.0/universal-registrar/create?method=ion" \
-H "Content-Type: application/json" \
-d '{
"didDocument": {
"@context": ["https//www.w3.org/ns/did/v1"],
"service": [ ],
"verificationMethod": [ ]
},
"options": {
"network": "testnet"
},
"secret": { }
}'
Supported options:
mainnet
, testnet
)uuid
, indy
)curl -H "Authorization: Bearer b082c420-df67-4b06-899c-b7c51d75fba0" \
-X POST "https://api.godiddy.com/1.0.0/universal-registrar/create?method=cheqd" \
-H "Content-Type: application/json" \
-d '{
"didDocument": {
"@context": ["https//www.w3.org/ns/did/v1"],
"service": [ ]
},
"options": {
"network": "testnet"
},
"secret": { }
}'
Supported secrets:
curl -H "Authorization: Bearer b082c420-df67-4b06-899c-b7c51d75fba0" \
-X POST "https://api.godiddy.com/1.0.0/universal-registrar/create?method=ebsi" \
-H "Content-Type: application/json" \
-d '{
"didDocument": {
"@context": ["https//www.w3.org/ns/did/v1"],
"service": [ ],
"verificationMethod": [ ]
},
"options": {
},
"secret": {
"token": "eyJhbGciOiJFUzI1NksiLCJ0eXAiOiJ..."
}
}'
Supported options:
did-web.godiddy.com
)curl -H "Authorization: Bearer b082c420-df67-4b06-899c-b7c51d75fba0" \
-X POST "https://api.godiddy.com/1.0.0/universal-registrar/create?method=web" \
-H "Content-Type: application/json" \
-d '{
"didDocument": {
"@context": ["https//www.w3.org/ns/did/v1"],
"id": "did:web:did-web.godiddy.com:test:mydid2",
"verificationMethod": [{
"id": "did:web:did-web.godiddy.com:test:mydid2#key1",
"type": "Ed25519VerificationKey2018",
"controller": "did:web:did-web.godiddy.com:test:mydid2",
"publicKeyBase58": "39Kg3QRbz1ttsniqEP7BT812sJVJz8y1eNtka1y7hKS7"
}]
},
"options": { },
"secret": { }
}'
Supported options:
Ed25519
, secp256k1
, P-256
)jwk_jcs-pub
multicodec format, as required e.g. by EBSI DIDs for natural persons (possible values: true
, false
)curl -H "Authorization: Bearer b082c420-df67-4b06-899c-b7c51d75fba0" \
-X POST "https://api.godiddy.com/1.0.0/universal-registrar/create?method=key" \
-H "Content-Type: application/json" \
-d '{
"didDocument": {
"@context": ["https//www.w3.org/ns/did/v1"],
"service": [ ]
},
"options": {
"keyType": "Ed25519",
"jwkJcsPub": false
},
"secret": { }
}'
Supported options:
mainnet
, goerli
, sepolia
)curl -H "Authorization: Bearer b082c420-df67-4b06-899c-b7c51d75fba0" \
-X POST "https://api.godiddy.com/1.0.0/universal-registrar/create?method=ethr" \
-H "Content-Type: application/json" \
-d '{
"didDocument": {
"verificationMethod": [{
"id": "#controllerKey",
"type": "EcdsaSecp256k1VerificationKey2019",
"publicKeyHex": "1fd922544dc866ea9f191a0b86c41de1344f02c008a0ece86573a404e8c2a158"
}]
},
"options": {
"network": "goerli"
},
"secret": { }
}'
Supported options:
eip155
)1
, 5
, also see https://chainid.network/)curl -H "Authorization: Bearer b082c420-df67-4b06-899c-b7c51d75fba0" \
-X POST "https://api.godiddy.com/1.0.0/universal-registrar/create?method=pkh" \
-H "Content-Type: application/json" \
-d '{
"didDocument": {
"verificationMethod": [{
"id": "#blockchainAccountIdKey",
"type": "EcdsaSecp256k1VerificationKey2019",
"publicKeyHex": "1fd922544dc866ea9f191a0b86c41de1344f02c008a0ece86573a404e8c2a158"
}]
},
"options": {
"namespace": "eip155",
"chainId": "5"
},
"secret": { }
}'
curl -H "Authorization: Bearer b082c420-df67-4b06-899c-b7c51d75fba0" \
-X POST "https://api.godiddy.com/1.0.0/universal-registrar/create?method=v1" \
-H "Content-Type: application/json" \
-d '{
"didDocument": {
"@context": ["https//www.w3.org/ns/did/v1"],
"service": [ ]
},
"options": { },
"secret": { }
}'