| Field | Value |
|---|---|
| Name | signingDelegate |
| Title | Create UCAN Delegation Token |
| Description | Create a UCAN delegation token using a stored signing key. Private key never leaves the server. Authenticated. |
Input Schema
{
"type": "object",
"required": ["publicKey",
"passphrase",
"ucan"],
"properties": {
"ucan": {
"type": "object",
"required": ["aud",
"exp"],
"description": "UCAN token fields",
"properties": {
"prf": {
"type": "array",
"description": "Parent proof tokens for sub-delegation (optional)"
},
"fct": {
"description": "Facts — arbitrary metadata (optional)"
},
"att": {
"type": "array",
"description": "Capabilities vector (optional, defaults to empty)"
},
"nbf": {
"type": "integer",
"description": "Not-before time in unix seconds (optional)"
},
"exp": {
"type": "integer",
"description": "Expiry time in unix seconds"
},
"aud": {
"type": "string",
"description": "Delegate's did:key string or hex public key"
}
}
},
"passphrase": {
"type": "string",
"description": "Passphrase to decrypt the signing key"
},
"publicKey": {
"type": "string",
"description": "Hex-encoded issuer public key (stored in signing service)"
}
}
}Output Schema
{
"type": "object",
"properties": {
"hash": {
"type": "string",
"description": "SHA3 hash — the token's content address"
},
"cad3": {
"type": "string",
"description": "CAD3 hex encoding of the full token"
},
"token": {
"type": "object",
"description": "Complete UCAN token map (header + payload + sig)"
}
}
}