{
"id": "space.highport.manage.enableDelegation",
"defs": {
"main": {
"type": "procedure",
"input": {
"schema": {
"type": "object",
"required": [
"domain"
],
"properties": {
"domain": {
"type": "string",
"maxLength": 253,
"description": "The base: a domain registered to the caller."
},
"maxNames": {
"type": "integer",
"minimum": 1,
"description": "The most names the base may hold in reservation. Omitted, the deployment's default applies; a value above the deployment's ceiling is refused."
}
}
},
"encoding": "application/json"
},
"errors": [
{
"name": "InvalidDomain",
"description": "Not a syntactically valid domain."
},
{
"name": "NotBaseOwner",
"description": "No verified or active registration of that domain belongs to the caller."
},
{
"name": "DelegationUnsupported",
"description": "The domain is registered to a space, and a space-registered domain cannot delegate names."
},
{
"name": "MaxNamesAboveLimit",
"description": "maxNames is above the most names this deployment lets one base hold."
},
{
"name": "CaaForbidsIssuance",
"description": "The base's CAA records do not permit this deployment's certificate issuer, account, or challenge method. The message names the record in the way."
}
],
"output": {
"schema": {
"type": "object",
"required": [
"domain",
"records",
"status"
],
"properties": {
"domain": {
"type": "string"
},
"status": {
"ref": "space.highport.defs#delegationState",
"type": "ref"
},
"records": {
"type": "array",
"items": {
"ref": "space.highport.defs#dnsInstruction",
"type": "ref"
},
"description": "The DNS records delegation asks for: the wildcard traffic record."
},
"probeHostname": {
"type": "string",
"maxLength": 253,
"description": "The random name under the base through which the wildcard is proven to route. Absent while the base has no probe."
}
}
},
"encoding": "application/json"
},
"description": "Declare a registered domain a delegation base, so its owner can reserve names directly under it for other identities, and obtain the wildcard traffic record that routes those names. The caller must be the base's registered identity, and the base must be verified or active."
}
},
"$type": "com.atproto.lexicon.schema",
"lexicon": 1
}