curl --request DELETE \
--url "https://directory.example.com/dids/did%3Aopenpayload%3A1111111111111111111111/aliases/river.stone" \
--header "Content-Type: application/json" \
--data '{
"did": "did:openpayload:1111111111111111111111",
"action": "remove_alias",
"alias": "river.stone",
"nonce": "<nonce>",
"valid_until": "<future-epoch-milliseconds>",
"signer_key_id": "root",
"canonical_payload": "<payload>",
"signature": "<signature>"
}'
{
"status": "accepted",
"did": "did:openpayload:1111111111111111111111",
"action": "remove_alias",
"alias": "river.stone",
"tx_hash": "<transaction-hash>",
"message": "Alias update submitted"
}
Aliases
Remove an alias
Remove a public alias from a DID.
curl --request DELETE \
--url "https://directory.example.com/dids/did%3Aopenpayload%3A1111111111111111111111/aliases/river.stone" \
--header "Content-Type: application/json" \
--data '{
"did": "did:openpayload:1111111111111111111111",
"action": "remove_alias",
"alias": "river.stone",
"nonce": "<nonce>",
"valid_until": "<future-epoch-milliseconds>",
"signer_key_id": "root",
"canonical_payload": "<payload>",
"signature": "<signature>"
}'
{
"status": "accepted",
"did": "did:openpayload:1111111111111111111111",
"action": "remove_alias",
"alias": "river.stone",
"tx_hash": "<transaction-hash>",
"message": "Alias update submitted"
}
Remove a public alias from a DID.
Removing an alias does not deactivate the DID or remove its document. Valid aliases never contain
@ or #; those characters are reserved for delivery-target and DID-document syntax.
Path parameters
string
required
The DID that owns the alias.
string
required
The alias to remove.
Request body
string
required
The DID that owns the alias. It must match the path.
string
required
The operation name. Use
remove_alias.string
required
The alias to remove. It must match the path.
string
required
The request nonce.
string
required
The authorization expiration as an ISO-8601 timestamp or unsigned Unix-millisecond string. The canonical payload encodes it as
u64 milliseconds.string
The public signing-key identifier. Defaults to
root.string
required
The canonical SCALE
AliasAuthorizationPayload, encoded as 0x-prefixed hex or Base64.string
required
The authorization signature.
curl --request DELETE \
--url "https://directory.example.com/dids/did%3Aopenpayload%3A1111111111111111111111/aliases/river.stone" \
--header "Content-Type: application/json" \
--data '{
"did": "did:openpayload:1111111111111111111111",
"action": "remove_alias",
"alias": "river.stone",
"nonce": "<nonce>",
"valid_until": "<future-epoch-milliseconds>",
"signer_key_id": "root",
"canonical_payload": "<payload>",
"signature": "<signature>"
}'
Response
string
required
The submission status.
string
required
The affected DID.
string
required
The alias operation.
string
required
The transaction hash.
string
required
A human-readable submission result.
{
"status": "accepted",
"did": "did:openpayload:1111111111111111111111",
"action": "remove_alias",
"alias": "river.stone",
"tx_hash": "<transaction-hash>",
"message": "Alias update submitted"
}
202 Accepted means the Directory accepted the request for processing. It does not confirm final settlement.Straight to the point
- Method:
DELETE - Action:
remove_alias - Path alias and signed body alias must match
- Signed payload: canonical SCALE alias authorization bytes

