---
title: "Claim a domain for bind-on-verify"
method: POST
path: "/api/properties/hosted/{domain}/claim"
tags: ["Property Resolution"]
---

# Claim a domain for bind-on-verify

`POST /api/properties/hosted/{domain}/claim`

Issue a pending domain claim for the caller's organization and return a claim-specific `authoritative_location` URL (`…/adagents.json?adcp_claim=<token>`). The caller places that single pointer at their own origin `/.well-known/adagents.json`; a subsequent verify-origin reads the token and binds the domain to the caller's org. The token is the per-account artifact that proves WHICH account owns the domain — a plain domain-keyed pointer proves only that the origin endorses AAO hosting, not who the owner is.

The community write surface stays open; this does not gate writes — it establishes ownership on successful verification. Refused with 409 only when the domain is already verified and locked to a different owner.

## Path parameters

- `domain` string, required

## Response `200`

Claim issued

- object
  - `success` true, required
  - `domain` string, required
  - `authoritative_location` string, required
  - `instructions` string, required

## Other responses

- `400` — Invalid domain
- `401` — Authentication required
- `403` — Caller is not a member of any organization
- `409` — Domain already verified and locked to another owner

---

[API](https://skmtc.net/adcontextprotocol/apis/agenticadvertising-org-registry-api.md) · [All operations](https://skmtc.net/adcontextprotocol/apis/agenticadvertising-org-registry-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/adcontextprotocol/agenticadvertising-org-registry-api/revisions/9ea7fedf54c0/schema)
