place.wisp.v2.domain.claim

wisp.place

Documentation

Claim a custom domain for the authenticated DID. Returns DNS setup instructions.

main procedure

Claim a custom domain for the authenticated DID. Returns DNS setup instructions.

Input

Encodingapplication/json
domain string Required

Custom domain FQDN to claim (for example, example.com).

maxLength: 253 bytesminLength: 3 bytes
siteRkey stringrecord-key Optional

Optional place.wisp.fs rkey to map immediately after claim.

Output

Encodingapplication/json
challengeId string Optional

Identifier used to construct DNS challenge targets for custom domains.

cnameTarget string Optional

Advisory CNAME target (custom domains).

domain string Required

No description available.

kind string Optional

No description available.

siteRkey stringrecord-key Optional

A valid record key for AT Protocol repositories.

status string Required

No description available.

txtName string Optional

TXT hostname to set for ownership proof (custom domains).

txtValue stringdid Optional

TXT value to set for ownership proof (custom domains).

Errors

AuthenticationRequired
InvalidDomain
AlreadyClaimed
DomainLimitReached
RateLimitExceeded
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": {
        "domain": {
          "type": "string",
          "maxLength": 253,
          "minLength": 3,
          "description": "Custom domain FQDN to claim (for example, example.com)."
        },
        "siteRkey": {
          "type": "string",
          "format": "record-key",
          "description": "Optional place.wisp.fs rkey to map immediately after claim."
        }
      }
    },
    "encoding": "application/json"
  },
  "errors": [
    {
      "name": "AuthenticationRequired"
    },
    {
      "name": "InvalidDomain"
    },
    {
      "name": "AlreadyClaimed"
    },
    {
      "name": "DomainLimitReached"
    },
    {
      "name": "RateLimitExceeded"
    }
  ],
  "output": {
    "schema": {
      "type": "object",
      "required": [
        "domain",
        "status"
      ],
      "properties": {
        "kind": {
          "enum": [
            "custom"
          ],
          "type": "string"
        },
        "domain": {
          "type": "string"
        },
        "status": {
          "enum": [
            "alreadyClaimed",
            "pendingVerification",
            "verified"
          ],
          "type": "string"
        },
        "txtName": {
          "type": "string",
          "maxLength": 253,
          "minLength": 3,
          "description": "TXT hostname to set for ownership proof (custom domains)."
        },
        "siteRkey": {
          "type": "string",
          "format": "record-key"
        },
        "txtValue": {
          "type": "string",
          "format": "did",
          "description": "TXT value to set for ownership proof (custom domains)."
        },
        "challengeId": {
          "type": "string",
          "maxLength": 64,
          "minLength": 8,
          "description": "Identifier used to construct DNS challenge targets for custom domains."
        },
        "cnameTarget": {
          "type": "string",
          "maxLength": 253,
          "minLength": 3,
          "description": "Advisory CNAME target (custom domains)."
        }
      }
    },
    "encoding": "application/json"
  },
  "description": "Claim a custom domain for the authenticated DID. Returns DNS setup instructions."
}

Lexicon Garden

@