lol.dids.manage.register

ngerakines.me

Documentation

Register a domain to the calling identity — or, with space, to a space the caller is the authority of — and obtain the DNS records needed to prove ownership and route traffic.

main procedure

Register a domain to the calling identity — or, with space, to a space the caller is the authority of — and obtain the DNS records needed to prove ownership and route traffic.

Input

Encodingapplication/json
domain string Required

No description available.

maxLength: 253 bytes
space stringat-uri Optional

Register the domain to a space bard is connected to rather than to the caller's public repo. The caller must be the space's authority.

Output

Encodingapplication/json
domain string Required

No description available.

expiresAt stringdatetime Required

After this time an unverified registration is released.

records array Required

No description available.

space stringat-uri Optional

An AT Protocol URI (e.g., at://did:plc:xyz/app.bsky.feed.post/abc).

Errors

InvalidDomain Not a syntactically valid, non-reserved, public-suffix-safe domain.
DomainTaken Registered to a different DID and still active.
DomainDenied On the operator denylist.
QuotaExceeded This DID has reached its domain limit.
AlreadyRegistered Already registered to this DID; use getDomain to retrieve instructions.
SpaceNotFound Bard is not connected to that space; call connectSpace first.
NotSpaceAuthority Only the space's authority may register a domain to it.
SpaceNotSynced Registered, but bard cannot currently read the space, so the domain will not serve until it can.
Try It

Requests are sent directly from your browser. Some servers may block requests due to CORS.

Base URL for XRPC calls (e.g., https://bsky.social)
Enter valid JSON for the request body
View raw schema
{
  "type": "procedure",
  "input": {
    "schema": {
      "type": "object",
      "required": [
        "domain"
      ],
      "properties": {
        "space": {
          "type": "string",
          "format": "at-uri",
          "description": "Register the domain to a space bard is connected to rather than to the caller's public repo. The caller must be the space's authority."
        },
        "domain": {
          "type": "string",
          "maxLength": 253
        }
      }
    },
    "encoding": "application/json"
  },
  "errors": [
    {
      "name": "InvalidDomain",
      "description": "Not a syntactically valid, non-reserved, public-suffix-safe domain."
    },
    {
      "name": "DomainTaken",
      "description": "Registered to a different DID and still active."
    },
    {
      "name": "DomainDenied",
      "description": "On the operator denylist."
    },
    {
      "name": "QuotaExceeded",
      "description": "This DID has reached its domain limit."
    },
    {
      "name": "AlreadyRegistered",
      "description": "Already registered to this DID; use getDomain to retrieve instructions."
    },
    {
      "name": "SpaceNotFound",
      "description": "Bard is not connected to that space; call connectSpace first."
    },
    {
      "name": "NotSpaceAuthority",
      "description": "Only the space's authority may register a domain to it."
    },
    {
      "name": "SpaceNotSynced",
      "description": "Registered, but bard cannot currently read the space, so the domain will not serve until it can."
    }
  ],
  "output": {
    "schema": {
      "type": "object",
      "required": [
        "domain",
        "status",
        "records",
        "expiresAt"
      ],
      "properties": {
        "space": {
          "type": "string",
          "format": "at-uri"
        },
        "domain": {
          "type": "string"
        },
        "status": {
          "ref": "lol.dids.defs#domainStatus",
          "type": "ref"
        },
        "records": {
          "type": "array",
          "items": {
            "ref": "lol.dids.defs#dnsInstruction",
            "type": "ref"
          }
        },
        "expiresAt": {
          "type": "string",
          "format": "datetime",
          "description": "After this time an unverified registration is released."
        }
      }
    },
    "encoding": "application/json"
  },
  "description": "Register a domain to the calling identity — or, with space, to a space the caller is the authority of — and obtain the DNS records needed to prove ownership and route traffic."
}

Lexicon Garden

@