Bootstrap the caller’s organization explicitly. Use this when the caller wants to control the organization name, company_type, revenue_tier, or is_personal flag before any agents are registered.
Most storefront-style integrations don’t need this call — POST /api/me/agents will auto-create an org for a fresh OAuth user (corporate or personal workspace based on the email domain) and surface org_auto_created: true in the response. Reach for POST /api/organizations only when the auto-derived defaults aren’t acceptable.
Three outcomes depending on the caller’s state:
Fresh create (most common): a new WorkOS organization is created, the caller is added as owner, the corporate domain is recorded as email-verified, and ToS / privacy-policy acceptance is logged from the request context. Returns { success: true, organization: { id, name } }.
Prospect adoption: an organization with the caller’s email domain already exists as a prospect (the registry pre-recorded it from a brand crawl but no human had claimed it yet). The caller is promoted to owner of the existing record instead of forking a duplicate. Returns { id, name, adopted: true }.
Already-active conflict: the org exists and is already claimed by another paying member or a previously joined user. Returns 409 with the existing org id so the caller can switch to a join-request flow (POST /api/organizations/:orgId/join-requests) instead of trying to register a duplicate.
Tier transitions happen via the billing flow only — there is no membership_tier field on this endpoint. After org creation, send the user to POST /api/checkout-session (or the /dashboard/membership page) to start a subscription; the Stripe webhook is the sole writer of organizations.membership_tier.
Rate-limited per user: 15 failed attempts per hour; successful calls do not count against the limit so a legitimate registration is never penalized by earlier validation errors.
Bearer token in the Authorization header. Two token types are accepted:
Organization API key (sk_...) issued via the dashboard. Org-scoped, long-lived, for server-to-server use.
User JWT obtained via the OAuth 2.1 authorization code flow with PKCE. User-scoped, short-lived. Discover the authorization server at /.well-known/oauth-authorization-server and the protected-resource metadata at /.well-known/oauth-protected-resource/api.
Body
application/json
Request body for POST /api/organizations.
Bootstraps a WorkOS organization, mirrors the caller as owner, records the caller's ToS / privacy-policy acceptance, and (for non-personal orgs) inserts an email-verified record into organization_domains so subsequent registry calls can skip explicit domain-verification.
Membership tier and corporate domain are not caller-supplied: the tier is set by the Stripe webhook on subscription events, and the corporate domain is derived from the authenticated user's email.
Display name for the organization. Used both as the org row name and (when auto-bootstrapping a member profile via the first agent registration) as the profile's display_name.
Set to true to create a personal workspace instead of a corporate organization. Personal workspaces skip corporate-domain verification, are limited to one per user, and cannot host the company_* membership tiers.
Coarse classification of the organization's role in the open ad ecosystem. Drives default verification badges and the member profile's display category.
Whether the caller opted in to AAO marketing communications. Recorded once per user (not overwritten on subsequent calls). Independent of Terms-of-Service consent, which is recorded server-side from the request context.
Response
Prospect adoption — an existing prospect organization for this domain was claimed by the caller. Body is { id, name, adopted: true }.
Response from POST /api/organizations. The body shape varies by path: a fresh creation returns { success: true, organization: { id, name } }; a prospect adoption returns { id, name, adopted: true } directly. Both paths are 2xx; downstream callers should treat any 2xx as "the org now exists and you are an owner of it" and read whichever id is present.
Set on the prospect-adoption path: when an org with the user's email domain already exists in a prospect state (i.e. the registry pre-recorded it from a brand crawl but no human had claimed it yet), this call adopts that org for the caller instead of creating a new one.
true when the response is the prospect-adoption path. When true, no new WorkOS organization was created — the caller is now the owner of an existing prospect record.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/schema.json","name":"AdCP - Ad Context Protocol","colors":{"primary":"#047857","light":"#07C983","dark":"#047857"},"logo":{"light":"https://mintcdn.com/pier1inc/dWEBkzZLFnalyhDg/logo/AAo-dark.svg?fit=max\u0026auto=format\u0026n=dWEBkzZLFnalyhDg\u0026q=85\u0026s=15a56d0ea8703c63ea0c543a693d3f77","dark":"https://mintcdn.com/pier1inc/dWEBkzZLFnalyhDg/logo/AAo.svg?fit=max\u0026auto=format\u0026n=dWEBkzZLFnalyhDg\u0026q=85\u0026s=cc0c4f6ea357021ed4bff9a227604ef3","href":"https://agenticadvertising.org"},"favicon":"https://mintcdn.com/pier1inc/dWEBkzZLFnalyhDg/logo/AAo.svg?fit=max\u0026auto=format\u0026n=dWEBkzZLFnalyhDg\u0026q=85\u0026s=cc0c4f6ea357021ed4bff9a227604ef3","api":{},"navbar":{"links":[{"href":"https://adcontextprotocol.org","label":"AdCP Home"},{"href":"https://agenticadvertising.org/members","label":"Members"},{"href":"https://agenticadvertising.org/perspectives","label":"Perspectives"},{"href":"https://agenticadvertising.org","label":"Join AAO"}],"primary":{"type":"github","href":"https://github.com/adcontextprotocol/adcp"}},"footer":{"links":[{"header":"Legal","items":[{"label":"Privacy Policy","href":"https://agenticadvertising.org/api/agreement?type=privacy_policy"},{"label":"Terms of Use","href":"https://agenticadvertising.org/api/agreement?type=terms_of_service"}]}]},"seo":{},"styling":{"latex":true},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"pier1inc","hasAudioNarration":false,"actualSubdomain":"pier1inc","customDomains":["adcp-docs-ja.pier1.co.jp"],"gitSource":{"type":"github","owner":"miyaichi","repo":"adcp-docs-ja","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6a5f05e9882c6f3a67f720ec","collectionId":"ced27143-c972-41ba-848e-61d4df7e8c1b","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6a5f05e9882c6f3a67f720ec"},"entitlements":{},"buildId":"6a5f05e9882c6f3a67f720ec:success","clientVersion":"0.0.3964","searchFilterCounts":[{"language":"default","tag":"プロトコル","count":172},{"language":"default","tag":"リファレンス","count":153},{"language":"default","tag":"Registry API","count":100},{"language":"default","tag":"AdCP で構築する","count":88},{"language":"default","tag":"クリエイティブ","count":41},{"language":"default","tag":"ガバナンス","count":41},{"language":"default","tag":"メディアバイ","count":36},{"language":"default","tag":"認定","count":34},{"language":"default","tag":"コンセプト","count":33},{"language":"default","tag":"Agent Compliance","count":30}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableAskAiSearchBar":true},"hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-v7-file-tree","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"pause-universal-search-reconcile","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"per-site-search-delta","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-private-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-nav-generations","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-agent-model-picker","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"isAtlas":false,"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"docs/registry/api-reference/onboarding/create-or-adopt-my-organization","slug":"/docs/registry/api-reference/onboarding/create-or-adopt-my-organization","pageMetadata":{"title":"Create or adopt my organization","description":"Bootstrap the caller's organization explicitly. Use this when the caller wants to control the organization name, `company_type`, `revenue_tier`, or `is_personal` flag before any agents are registered.\n\n**Most storefront-style integrations don't need this call** — `POST /api/me/agents` will auto-create an org for a fresh OAuth user (corporate or personal workspace based on the email domain) and surface `org_auto_created: true` in the response. Reach for `POST /api/organizations` only when the auto-derived defaults aren't acceptable.\n\nThree outcomes depending on the caller's state:\n\n- **Fresh create** (most common): a new WorkOS organization is created, the caller is added as `owner`, the corporate domain is recorded as email-verified, and ToS / privacy-policy acceptance is logged from the request context. Returns `{ success: true, organization: { id, name } }`.\n\n- **Prospect adoption**: an organization with the caller's email domain already exists as a `prospect` (the registry pre-recorded it from a brand crawl but no human had claimed it yet). The caller is promoted to `owner` of the existing record instead of forking a duplicate. Returns `{ id, name, adopted: true }`.\n\n- **Already-active conflict**: the org exists and is already claimed by another paying member or a previously joined user. Returns `409` with the existing org id so the caller can switch to a join-request flow (`POST /api/organizations/:orgId/join-requests`) instead of trying to register a duplicate.\n\nTier transitions happen via the billing flow only — there is no `membership_tier` field on this endpoint. After org creation, send the user to `POST /api/checkout-session` (or the `/dashboard/membership` page) to start a subscription; the Stripe webhook is the sole writer of `organizations.membership_tier`.\n\nRate-limited per user: `15` failed attempts per hour; successful calls do not count against the limit so a legitimate registration is never penalized by earlier validation errors.","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml post /api/organizations","href":"/docs/registry/api-reference/onboarding/create-or-adopt-my-organization","autogeneratedByOpenApi":true},"description":{"compiledSource":"\"use strict\";\nconst {Fragment: _Fragment, jsx: _jsx, jsxs: _jsxs} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n code: \"code\",\n li: \"li\",\n p: \"p\",\n strong: \"strong\",\n ul: \"ul\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsxs(_Fragment, {\n children: [_jsxs(_components.p, {\n children: [\"Bootstrap the caller’s organization explicitly. Use this when the caller wants to control the organization name, \", _jsx(_components.code, {\n children: \"company_type\"\n }), \", \", _jsx(_components.code, {\n children: \"revenue_tier\"\n }), \", or \", _jsx(_components.code, {\n children: \"is_personal\"\n }), \" flag before any agents are registered.\"]\n }), \"\\n\", _jsxs(_components.p, {\n children: [_jsx(_components.strong, {\n children: \"Most storefront-style integrations don’t need this call\"\n }), \" — \", _jsx(_components.code, {\n children: \"POST /api/me/agents\"\n }), \" will auto-create an org for a fresh OAuth user (corporate or personal workspace based on the email domain) and surface \", _jsx(_components.code, {\n children: \"org_auto_created: true\"\n }), \" in the response. Reach for \", _jsx(_components.code, {\n children: \"POST /api/organizations\"\n }), \" only when the auto-derived defaults aren’t acceptable.\"]\n }), \"\\n\", _jsx(_components.p, {\n children: \"Three outcomes depending on the caller’s state:\"\n }), \"\\n\", _jsxs(_components.ul, {\n children: [\"\\n\", _jsxs(_components.li, {\n children: [\"\\n\", _jsxs(_components.p, {\n children: [_jsx(_components.strong, {\n children: \"Fresh create\"\n }), \" (most common): a new WorkOS organization is created, the caller is added as \", _jsx(_components.code, {\n children: \"owner\"\n }), \", the corporate domain is recorded as email-verified, and ToS / privacy-policy acceptance is logged from the request context. Returns \", _jsx(_components.code, {\n children: \"{ success: true, organization: { id, name } }\"\n }), \".\"]\n }), \"\\n\"]\n }), \"\\n\", _jsxs(_components.li, {\n children: [\"\\n\", _jsxs(_components.p, {\n children: [_jsx(_components.strong, {\n children: \"Prospect adoption\"\n }), \": an organization with the caller’s email domain already exists as a \", _jsx(_components.code, {\n children: \"prospect\"\n }), \" (the registry pre-recorded it from a brand crawl but no human had claimed it yet). The caller is promoted to \", _jsx(_components.code, {\n children: \"owner\"\n }), \" of the existing record instead of forking a duplicate. Returns \", _jsx(_components.code, {\n children: \"{ id, name, adopted: true }\"\n }), \".\"]\n }), \"\\n\"]\n }), \"\\n\", _jsxs(_components.li, {\n children: [\"\\n\", _jsxs(_components.p, {\n children: [_jsx(_components.strong, {\n children: \"Already-active conflict\"\n }), \": the org exists and is already claimed by another paying member or a previously joined user. Returns \", _jsx(_components.code, {\n children: \"409\"\n }), \" with the existing org id so the caller can switch to a join-request flow (\", _jsx(_components.code, {\n children: \"POST /api/organizations/:orgId/join-requests\"\n }), \") instead of trying to register a duplicate.\"]\n }), \"\\n\"]\n }), \"\\n\"]\n }), \"\\n\", _jsxs(_components.p, {\n children: [\"Tier transitions happen via the billing flow only — there is no \", _jsx(_components.code, {\n children: \"membership_tier\"\n }), \" field on this endpoint. After org creation, send the user to \", _jsx(_components.code, {\n children: \"POST /api/checkout-session\"\n }), \" (or the \", _jsx(_components.code, {\n children: \"/dashboard/membership\"\n }), \" page) to start a subscription; the Stripe webhook is the sole writer of \", _jsx(_components.code, {\n children: \"organizations.membership_tier\"\n }), \".\"]\n }), \"\\n\", _jsxs(_components.p, {\n children: [\"Rate-limited per user: \", _jsx(_components.code, {\n children: \"15\"\n }), \" failed attempts per hour; successful calls do not count against the limit so a legitimate registration is never penalized by earlier validation errors.\"]\n })]\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){return _jsx(_Fragment,{})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Create or adopt my organization","description":"Bootstrap the caller's organization explicitly. Use this when the caller wants to control the organization name, `company_type`, `revenue_tier`, or `is_personal` flag before any agents are registered.\n\n**Most storefront-style integrations don't need this call** — `POST /api/me/agents` will auto-create an org for a fresh OAuth user (corporate or personal workspace based on the email domain) and surface `org_auto_created: true` in the response. Reach for `POST /api/organizations` only when the auto-derived defaults aren't acceptable.\n\nThree outcomes depending on the caller's state:\n\n- **Fresh create** (most common): a new WorkOS organization is created, the caller is added as `owner`, the corporate domain is recorded as email-verified, and ToS / privacy-policy acceptance is logged from the request context. Returns `{ success: true, organization: { id, name } }`.\n\n- **Prospect adoption**: an organization with the caller's email domain already exists as a `prospect` (the registry pre-recorded it from a brand crawl but no human had claimed it yet). The caller is promoted to `owner` of the existing record instead of forking a duplicate. Returns `{ id, name, adopted: true }`.\n\n- **Already-active conflict**: the org exists and is already claimed by another paying member or a previously joined user. Returns `409` with the existing org id so the caller can switch to a join-request flow (`POST /api/organizations/:orgId/join-requests`) instead of trying to register a duplicate.\n\nTier transitions happen via the billing flow only — there is no `membership_tier` field on this endpoint. After org creation, send the user to `POST /api/checkout-session` (or the `/dashboard/membership` page) to start a subscription; the Stripe webhook is the sole writer of `organizations.membership_tier`.\n\nRate-limited per user: `15` failed attempts per hour; successful calls do not count against the limit so a legitimate registration is never penalized by earlier validation errors.","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml post /api/organizations","href":"/docs/registry/api-reference/onboarding/create-or-adopt-my-organization","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"operationId":"createOrganization","summary":"Create or adopt my organization","description":"Bootstrap the caller's organization explicitly. Use this when the caller wants to control the organization name, `company_type`, `revenue_tier`, or `is_personal` flag before any agents are registered.\n\n**Most storefront-style integrations don't need this call** — `POST /api/me/agents` will auto-create an org for a fresh OAuth user (corporate or personal workspace based on the email domain) and surface `org_auto_created: true` in the response. Reach for `POST /api/organizations` only when the auto-derived defaults aren't acceptable.\n\nThree outcomes depending on the caller's state:\n\n- **Fresh create** (most common): a new WorkOS organization is created, the caller is added as `owner`, the corporate domain is recorded as email-verified, and ToS / privacy-policy acceptance is logged from the request context. Returns `{ success: true, organization: { id, name } }`.\n\n- **Prospect adoption**: an organization with the caller's email domain already exists as a `prospect` (the registry pre-recorded it from a brand crawl but no human had claimed it yet). The caller is promoted to `owner` of the existing record instead of forking a duplicate. Returns `{ id, name, adopted: true }`.\n\n- **Already-active conflict**: the org exists and is already claimed by another paying member or a previously joined user. Returns `409` with the existing org id so the caller can switch to a join-request flow (`POST /api/organizations/:orgId/join-requests`) instead of trying to register a duplicate.\n\nTier transitions happen via the billing flow only — there is no `membership_tier` field on this endpoint. After org creation, send the user to `POST /api/checkout-session` (or the `/dashboard/membership` page) to start a subscription; the Stripe webhook is the sole writer of `organizations.membership_tier`.\n\nRate-limited per user: `15` failed attempts per hour; successful calls do not count against the limit so a legitimate registration is never penalized by earlier validation errors.","tags":["Onboarding"],"security":["6f3f11c5-0623-494b-a84e-2894289d3275","0dc66c78-fa14-4035-99fa-9f880f870c9d"],"requestBody":"15c254a0-81e5-4b93-84de-6c2bf496c4ea","responses":{"200":"9aa9ea6b-08a3-4c02-a82b-2c1688ccb546","201":"b9421f91-c451-4e97-9c68-ed5fd210ce33","400":"c8a40eaa-4902-4070-9ef9-cf091627cb3c","401":"818c3a5a-4861-4bdf-b78a-48e657d666c0","409":"c8be0e42-89ca-4e6e-8043-08c9e30cc4c2","429":"5d2700a5-d465-455e-9730-94e59795cca1"},"method":"post","type":"path","servers":["9024b5b1-04cb-48ae-90c2-a4f9d789de22"],"path":"/api/organizations","baseUrlOptions":["https://agenticadvertising.org"],"title":"Create or adopt my organization","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{},"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"organization_name":{"type":"string","minLength":1,"maxLength":200,"description":"Display name for the organization. Used both as the org row name and (when auto-bootstrapping a member profile via the first agent registration) as the profile's `display_name`.","example":"Acme Media","isRequired":true,"uniqueKey":"organization_name","typeLabel":"string"},"is_personal":{"type":"boolean","default":false,"description":"Set to `true` to create a personal workspace instead of a corporate organization. Personal workspaces skip corporate-domain verification, are limited to one per user, and cannot host the `company_*` membership tiers.","uniqueKey":"is_personal","typeLabel":"boolean"},"company_type":{"type":"string","enum":["adtech","agency","brand","publisher","data","ai","other"],"description":"Coarse classification of the organization's role in the open ad ecosystem. Drives default verification badges and the member profile's display category.","uniqueKey":"company_type","typeLabel":"enum\u003cstring>"},"revenue_tier":{"type":"string","enum":["under_1m","1m_5m","5m_50m","50m_250m","250m_1b","1b_plus"],"description":"Annual revenue band, USD. Drives membership-tier eligibility for company-tier seats.","uniqueKey":"revenue_tier","typeLabel":"enum\u003cstring>"},"marketing_opt_in":{"type":"boolean","default":false,"description":"Whether the caller opted in to AAO marketing communications. Recorded once per user (not overwritten on subsequent calls). Independent of Terms-of-Service consent, which is recorded server-side from the request context.","uniqueKey":"marketing_opt_in","typeLabel":"boolean"}},"required":["organization_name"],"description":"Request body for `POST /api/organizations`.\n\nBootstraps a WorkOS organization, mirrors the caller as `owner`, records the caller's ToS / privacy-policy acceptance, and (for non-personal orgs) inserts an email-verified record into `organization_domains` so subsequent registry calls can skip explicit domain-verification.\n\nMembership tier and corporate domain are *not* caller-supplied: the tier is set by the Stripe webhook on subscription events, and the corporate domain is derived from the authenticated user's email.","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"organization_name":"Acme Media","is_personal":false,"marketing_opt_in":false}}},"exampleType":"generated"}},"exampleType":"generated"},"responses":{"9aa9ea6b-08a3-4c02-a82b-2c1688ccb546":{"description":"Prospect adoption — an existing prospect organization for this domain was claimed by the caller. Body is `{ id, name, adopted: true }`.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","uniqueKey":"success","typeLabel":"boolean"},"organization":{"type":"object","properties":{"id":{"type":"string","example":"org_01HXZAB123","isRequired":true,"uniqueKey":"organization.id","typeLabel":"string"},"name":{"type":"string","example":"Acme Media","isRequired":true,"uniqueKey":"organization.name","typeLabel":"string"}},"required":["id","name"],"uniqueKey":"organization","typeLabel":"object"},"id":{"type":"string","description":"Set on the **prospect-adoption** path: when an org with the user's email domain already exists in a `prospect` state (i.e. the registry pre-recorded it from a brand crawl but no human had claimed it yet), this call adopts that org for the caller instead of creating a new one.","uniqueKey":"id","typeLabel":"string"},"name":{"type":"string","uniqueKey":"name","typeLabel":"string"},"adopted":{"type":"boolean","description":"`true` when the response is the prospect-adoption path. When `true`, no new WorkOS organization was created — the caller is now the owner of an existing prospect record.","uniqueKey":"adopted","typeLabel":"boolean"}},"description":"Response from `POST /api/organizations`. The body shape varies by path: a fresh creation returns `{ success: true, organization: { id, name } }`; a prospect adoption returns `{ id, name, adopted: true }` directly. Both paths are 2xx; downstream callers should treat any `2xx` as \"the org now exists and you are an owner of it\" and read whichever id is present.","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"success":true,"organization":{"id":"org_01HXZAB123","name":"Acme Media"},"id":"\u003cstring>","name":"\u003cstring>","adopted":true}}},"exampleType":"generated"}},"exampleType":"generated"},"b9421f91-c451-4e97-9c68-ed5fd210ce33":{"description":"New organization created. Body is `{ success: true, organization: { id, name } }`. The caller is the `owner`; the corporate domain is recorded as email-verified for downstream registry calls.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","uniqueKey":"success","typeLabel":"boolean"},"organization":{"type":"object","properties":{"id":{"type":"string","example":"org_01HXZAB123","isRequired":true,"uniqueKey":"organization.id","typeLabel":"string"},"name":{"type":"string","example":"Acme Media","isRequired":true,"uniqueKey":"organization.name","typeLabel":"string"}},"required":["id","name"],"uniqueKey":"organization","typeLabel":"object"},"id":{"type":"string","description":"Set on the **prospect-adoption** path: when an org with the user's email domain already exists in a `prospect` state (i.e. the registry pre-recorded it from a brand crawl but no human had claimed it yet), this call adopts that org for the caller instead of creating a new one.","uniqueKey":"id","typeLabel":"string"},"name":{"type":"string","uniqueKey":"name","typeLabel":"string"},"adopted":{"type":"boolean","description":"`true` when the response is the prospect-adoption path. When `true`, no new WorkOS organization was created — the caller is now the owner of an existing prospect record.","uniqueKey":"adopted","typeLabel":"boolean"}},"description":"Response from `POST /api/organizations`. The body shape varies by path: a fresh creation returns `{ success: true, organization: { id, name } }`; a prospect adoption returns `{ id, name, adopted: true }` directly. Both paths are 2xx; downstream callers should treat any `2xx` as \"the org now exists and you are an owner of it\" and read whichever id is present.","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"success":true,"organization":{"id":"org_01HXZAB123","name":"Acme Media"},"id":"\u003cstring>","name":"\u003cstring>","adopted":true}}},"exampleType":"generated"}},"exampleType":"generated"},"c8a40eaa-4902-4070-9ef9-cf091627cb3c":{"description":"One of:\n- `organization_name` missing or invalid\n- `company_type` / `revenue_tier` value not in the documented enum\n- caller is on a personal-email domain (gmail.com, yahoo.com, …) and is trying to register a corporate org — register `is_personal: true` instead\n- per-user organization cap reached (10 orgs per user)","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string","isRequired":true,"uniqueKey":"error","typeLabel":"string"}},"required":["error"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"818c3a5a-4861-4bdf-b78a-48e657d666c0":{"description":"Authentication required","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string","isRequired":true,"uniqueKey":"error","typeLabel":"string"}},"required":["error"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"c8be0e42-89ca-4e6e-8043-08c9e30cc4c2":{"description":"An active organization already exists for this caller's email domain. The body includes `existing_org_id` and `existing_org_name`; the caller should switch to the join-request flow rather than retrying.","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string","isRequired":true,"uniqueKey":"error","typeLabel":"string"}},"required":["error"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"5d2700a5-d465-455e-9730-94e59795cca1":{"description":"Rate limit exceeded — 15 failed attempts per hour per user. Successful calls do not count against the limit.","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string","isRequired":true,"uniqueKey":"error","typeLabel":"string"}},"required":["error"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"}},"security":{"6f3f11c5-0623-494b-a84e-2894289d3275":{"bearerAuth":{"type":"http","scheme":"bearer","description":"Bearer token in the `Authorization` header. Two token types are accepted:\n\n- **Organization API key** (`sk_...`) issued via the dashboard. Org-scoped, long-lived, for server-to-server use.\n- **User JWT** obtained via the OAuth 2.1 authorization code flow with PKCE. User-scoped, short-lived. Discover the authorization server at `/.well-known/oauth-authorization-server` and the protected-resource metadata at `/.well-known/oauth-protected-resource/api`.","scopes":[]}},"0dc66c78-fa14-4035-99fa-9f880f870c9d":{"oauth2":{"type":"oauth2","description":"OAuth 2.1 authorization code flow with PKCE. Users authenticate via AuthKit and clients receive a Bearer JWT that authorizes both the MCP endpoint and this REST API. Dynamic client registration is supported at `/register`.","flows":{"authorizationCode":{"authorizationUrl":"https://agenticadvertising.org/authorize","tokenUrl":"https://agenticadvertising.org/token","refreshUrl":"https://agenticadvertising.org/token","scopes":{"openid":"User identifier","profile":"User profile information","email":"User email address"}}},"scopes":[]}}},"servers":{"9024b5b1-04cb-48ae-90c2-a4f9d789de22":{"url":"https://agenticadvertising.org","description":"Production"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"http","scheme":"bearer","description":"Bearer token in the `Authorization` header. Two token types are accepted:\n\n- **Organization API key** (`sk_...`) issued via the dashboard. Org-scoped, long-lived, for server-to-server use.\n- **User JWT** obtained via the OAuth 2.1 authorization code flow with PKCE. User-scoped, short-lived. Discover the authorization server at `/.well-known/oauth-authorization-server` and the protected-resource metadata at `/.well-known/oauth-protected-resource/api`.","scopes":[]},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"Bearer token in the `Authorization` header. Two token types are accepted:\n\n- **Organization API key** (`sk_...`) issued via the dashboard. Org-scoped, long-lived, for server-to-server use.\n- **User JWT** obtained via the OAuth 2.1 authorization code flow with PKCE. User-scoped, short-lived. Discover the authorization server at `/.well-known/oauth-authorization-server` and the protected-resource metadata at `/.well-known/oauth-protected-resource/api`.","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"bearerAuth","name":"Authorization"}],"title":"bearerAuth"},{"schemes":[{"scheme":{"type":"oauth2","description":"OAuth 2.1 authorization code flow with PKCE. Users authenticate via AuthKit and clients receive a Bearer JWT that authorizes both the MCP endpoint and this REST API. Dynamic client registration is supported at `/register`.","flows":{"authorizationCode":{"authorizationUrl":"https://agenticadvertising.org/authorize","tokenUrl":"https://agenticadvertising.org/token","refreshUrl":"https://agenticadvertising.org/token","scopes":{"openid":"User identifier","profile":"User profile information","email":"User email address"}}},"scopes":[]},"schema":{"title":"OAuth2 Auth","type":"string","isRequired":true,"description":"OAuth 2.1 authorization code flow with PKCE. Users authenticate via AuthKit and clients receive a Bearer JWT that authorizes both the MCP endpoint and this REST API. Dynamic client registration is supported at `/register`.","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"oauth2","name":"Authorization"}],"title":"oauth2"}]},"originalFileLocation":"static/openapi/registry.yaml"},"subdomain":"pier1inc","siteName":"AdCP - Ad Context Protocol","title":"Create or adopt my organization - AdCP - Ad Context Protocol","navMaps":{"firstHrefInVersion":{"3.1":{"href":"/docs/registry/api-reference/onboarding/create-or-adopt-my-organization","matchLevel":0}},"firstHrefInLanguage":{}},"lastModified":"2026-07-21T04:35:41.046Z","originalFileLocation":"docs/registry/api-reference/onboarding/create-or-adopt-my-organization.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Bootstrap the caller\u0026#x27;s organization explicitly. Use this when the caller wants to control the organization name, company_type, revenue_tier, or is_personal flag before any agents are registered. Most storefront-style integrations don\u0026#x27;t need this call — POST /api/me/agents will auto-create an org for a fresh OAuth user (corporate or personal workspace based on the email domain) and surface org_auto_created: true in the response. Reach for POST /api/organizations only when the auto-derived defaults aren\u0026#x27;t acceptable. Three outcomes depending on the caller\u0026#x27;s state: - Fresh create (most common): a new WorkOS organization is created, the caller is added as owner, the corporate domain is recorded as email-verified, and ToS / privacy-policy acceptance is logged from the request context. Returns { success: true, organization: { id, name } }. - Prospect adoption: an organization with the caller\u0026#x27;s email domain already exists as a prospect (the registry pre-recorded it from a brand crawl but no human had claimed it yet). The caller is promoted to owner of the existing record instead of forking a duplicate. Returns { id, name, adopted: true }. - Already-active conflict: the org exists and is already claimed by another paying member or a previously joined user. Returns 409 with the existing org id so the caller can switch to a join-request flow (POST /api/organizations/:orgId/join-requests) instead of trying to register a duplicate. Tier transitions happen via the billing flow only — there is no membership_tier field on this endpoint. After org creation, send the user to POST /api/checkout-session (or the /dashboard/membership page) to start a subscription; the Stripe webhook is the sole writer of organizations.membership_tier. Rate-limited per user: 15 failed attempts per hour; successful calls do not count against the limit so a legitimate registration is never penalized by earlier validation errors.\">\u003cmeta data-mint-head name=\"application-name\" content=\"AdCP - Ad Context Protocol\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/pier1inc/XY8Lcp2XOa7uDlFO/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/pier1inc/XY8Lcp2XOa7uDlFO/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/pier1inc/XY8Lcp2XOa7uDlFO/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/pier1inc/XY8Lcp2XOa7uDlFO/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/pier1inc/XY8Lcp2XOa7uDlFO/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/pier1inc/XY8Lcp2XOa7uDlFO/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/pier1inc/XY8Lcp2XOa7uDlFO/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/pier1inc/XY8Lcp2XOa7uDlFO/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/pier1inc/XY8Lcp2XOa7uDlFO/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Create or adopt my organization - AdCP - Ad Context Protocol\">\u003cmeta data-mint-head property=\"og:description\" content=\"Bootstrap the caller\u0026#x27;s organization explicitly. Use this when the caller wants to control the organization name, company_type, revenue_tier, or is_personal flag before any agents are registered. Most storefront-style integrations don\u0026#x27;t need this call — POST /api/me/agents will auto-create an org for a fresh OAuth user (corporate or personal workspace based on the email domain) and surface org_auto_created: true in the response. Reach for POST /api/organizations only when the auto-derived defaults aren\u0026#x27;t acceptable. Three outcomes depending on the caller\u0026#x27;s state: - Fresh create (most common): a new WorkOS organization is created, the caller is added as owner, the corporate domain is recorded as email-verified, and ToS / privacy-policy acceptance is logged from the request context. Returns { success: true, organization: { id, name } }. - Prospect adoption: an organization with the caller\u0026#x27;s email domain already exists as a prospect (the registry pre-recorded it from a brand crawl but no human had claimed it yet). The caller is promoted to owner of the existing record instead of forking a duplicate. Returns { id, name, adopted: true }. - Already-active conflict: the org exists and is already claimed by another paying member or a previously joined user. Returns 409 with the existing org id so the caller can switch to a join-request flow (POST /api/organizations/:orgId/join-requests) instead of trying to register a duplicate. Tier transitions happen via the billing flow only — there is no membership_tier field on this endpoint. After org creation, send the user to POST /api/checkout-session (or the /dashboard/membership page) to start a subscription; the Stripe webhook is the sole writer of organizations.membership_tier. Rate-limited per user: 15 failed attempts per hour; successful calls do not count against the limit so a legitimate registration is never penalized by earlier validation errors.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"AdCP - Ad Context Protocol\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://adcp-docs-ja.pier1.co.jp/docs/registry/api-reference/onboarding/create-or-adopt-my-organization\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://pier1inc.mintlify.app/_mintlify/api/og/v2?division=Onboarding\u0026amp;title=Create+or+adopt+my+organization\u0026amp;description=Bootstrap+the+caller%27s+organization+explicitly.+Use+this+when+the+caller+wants+to+control+the+organization+name%2C+%60company_type%60%2C+%60revenue_tier%60%2C+or+%60is_personal\u0026amp;theme=81f6e9ee2d8d9c02a69da091\u0026amp;signature=477a5db00b5a16d8ec0d445c55bb087ec167acdf1450e7f86536281a1ab2ffa1\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Create or adopt my organization - AdCP - Ad Context Protocol\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Bootstrap the caller\u0026#x27;s organization explicitly. Use this when the caller wants to control the organization name, company_type, revenue_tier, or is_personal flag before any agents are registered. Most storefront-style integrations don\u0026#x27;t need this call — POST /api/me/agents will auto-create an org for a fresh OAuth user (corporate or personal workspace based on the email domain) and surface org_auto_created: true in the response. Reach for POST /api/organizations only when the auto-derived defaults aren\u0026#x27;t acceptable. Three outcomes depending on the caller\u0026#x27;s state: - Fresh create (most common): a new WorkOS organization is created, the caller is added as owner, the corporate domain is recorded as email-verified, and ToS / privacy-policy acceptance is logged from the request context. Returns { success: true, organization: { id, name } }. - Prospect adoption: an organization with the caller\u0026#x27;s email domain already exists as a prospect (the registry pre-recorded it from a brand crawl but no human had claimed it yet). The caller is promoted to owner of the existing record instead of forking a duplicate. Returns { id, name, adopted: true }. - Already-active conflict: the org exists and is already claimed by another paying member or a previously joined user. Returns 409 with the existing org id so the caller can switch to a join-request flow (POST /api/organizations/:orgId/join-requests) instead of trying to register a duplicate. Tier transitions happen via the billing flow only — there is no membership_tier field on this endpoint. After org creation, send the user to POST /api/checkout-session (or the /dashboard/membership page) to start a subscription; the Stripe webhook is the sole writer of organizations.membership_tier. Rate-limited per user: 15 failed attempts per hour; successful calls do not count against the limit so a legitimate registration is never penalized by earlier validation errors.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://pier1inc.mintlify.app/_mintlify/api/og/v2?division=Onboarding\u0026amp;title=Create+or+adopt+my+organization\u0026amp;description=Bootstrap+the+caller%27s+organization+explicitly.+Use+this+when+the+caller+wants+to+control+the+organization+name%2C+%60company_type%60%2C+%60revenue_tier%60%2C+or+%60is_personal\u0026amp;theme=81f6e9ee2d8d9c02a69da091\u0026amp;signature=477a5db00b5a16d8ec0d445c55bb087ec167acdf1450e7f86536281a1ab2ffa1\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/pier1inc/XY8Lcp2XOa7uDlFO/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"AdCP - Ad Context Protocol\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#047857\">\u003clink data-mint-head rel=\"canonical\" href=\"https://adcp-docs-ja.pier1.co.jp/docs/registry/api-reference/onboarding/create-or-adopt-my-organization\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/docs/registry/api-reference/onboarding/create-or-adopt-my-organization.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://adcp-docs-ja.pier1.co.jp/#organization\",\"name\":\"AdCP - Ad Context Protocol\",\"url\":\"https://adcp-docs-ja.pier1.co.jp\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/pier1inc/dWEBkzZLFnalyhDg/logo/AAo-dark.svg?fit=max\u0026auto=format\u0026n=dWEBkzZLFnalyhDg\u0026q=85\u0026s=15a56d0ea8703c63ea0c543a693d3f77\"}},{\"@type\":\"WebSite\",\"@id\":\"https://adcp-docs-ja.pier1.co.jp#website\",\"name\":\"AdCP - Ad Context Protocol\",\"url\":\"https://adcp-docs-ja.pier1.co.jp\",\"publisher\":{\"@id\":\"https://adcp-docs-ja.pier1.co.jp/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://adcp-docs-ja.pier1.co.jp/docs/registry/api-reference/onboarding/create-or-adopt-my-organization#webpage\",\"url\":\"https://adcp-docs-ja.pier1.co.jp/docs/registry/api-reference/onboarding/create-or-adopt-my-organization\",\"name\":\"Create or adopt my organization\",\"description\":\"Bootstrap the caller's organization explicitly. Use this when the caller wants to control the organization name, company_type, revenue_tier, or is_personal flag before any agents are registered. Most storefront-style integrations don't need this call — POST /api/me/agents will auto-create an org for a fresh OAuth user (corporate or personal workspace based on the email domain) and surface org_auto_created: true in the response. Reach for POST /api/organizations only when the auto-derived defaults aren't acceptable. Three outcomes depending on the caller's state: - Fresh create (most common): a new WorkOS organization is created, the caller is added as owner, the corporate domain is recorded as email-verified, and ToS / privacy-policy acceptance is logged from the request context. Returns { success: true, organization: { id, name } }. - Prospect adoption: an organization with the caller's email domain already exists as a prospect (the registry pre-recorded it from a brand crawl but no human had claimed it yet). The caller is promoted to owner of the existing record instead of forking a duplicate. Returns { id, name, adopted: true }. - Already-active conflict: the org exists and is already claimed by another paying member or a previously joined user. Returns 409 with the existing org id so the caller can switch to a join-request flow (POST /api/organizations/:orgId/join-requests) instead of trying to register a duplicate. Tier transitions happen via the billing flow only — there is no membership_tier field on this endpoint. After org creation, send the user to POST /api/checkout-session (or the /dashboard/membership page) to start a subscription; the Stripe webhook is the sole writer of organizations.membership_tier. Rate-limited per user: 15 failed attempts per hour; successful calls do not count against the limit so a legitimate registration is never penalized by earlier validation errors.\",\"dateModified\":\"2026-07-21T04:35:41.046Z\",\"isPartOf\":{\"@id\":\"https://adcp-docs-ja.pier1.co.jp#website\"},\"breadcrumb\":{\"@id\":\"https://adcp-docs-ja.pier1.co.jp/docs/registry/api-reference/onboarding/create-or-adopt-my-organization#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://adcp-docs-ja.pier1.co.jp/docs/registry/api-reference/onboarding/create-or-adopt-my-organization#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"リファレンス\",\"item\":\"https://adcp-docs-ja.pier1.co.jp/docs/registry/index\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Registry API\",\"item\":\"https://adcp-docs-ja.pier1.co.jp/docs/registry/index\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Create or adopt my organization\",\"item\":\"https://adcp-docs-ja.pier1.co.jp/docs/registry/api-reference/onboarding/create-or-adopt-my-organization\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://adcp-docs-ja.pier1.co.jp/docs/registry/api-reference/onboarding/create-or-adopt-my-organization#apireference\",\"headline\":\"Create or adopt my organization\",\"name\":\"Create or adopt my organization\",\"description\":\"Bootstrap the caller's organization explicitly. Use this when the caller wants to control the organization name, company_type, revenue_tier, or is_personal flag before any agents are registered. Most storefront-style integrations don't need this call — POST /api/me/agents will auto-create an org for a fresh OAuth user (corporate or personal workspace based on the email domain) and surface org_auto_created: true in the response. Reach for POST /api/organizations only when the auto-derived defaults aren't acceptable. Three outcomes depending on the caller's state: - Fresh create (most common): a new WorkOS organization is created, the caller is added as owner, the corporate domain is recorded as email-verified, and ToS / privacy-policy acceptance is logged from the request context. Returns { success: true, organization: { id, name } }. - Prospect adoption: an organization with the caller's email domain already exists as a prospect (the registry pre-recorded it from a brand crawl but no human had claimed it yet). The caller is promoted to owner of the existing record instead of forking a duplicate. Returns { id, name, adopted: true }. - Already-active conflict: the org exists and is already claimed by another paying member or a previously joined user. Returns 409 with the existing org id so the caller can switch to a join-request flow (POST /api/organizations/:orgId/join-requests) instead of trying to register a duplicate. Tier transitions happen via the billing flow only — there is no membership_tier field on this endpoint. After org creation, send the user to POST /api/checkout-session (or the /dashboard/membership page) to start a subscription; the Stripe webhook is the sole writer of organizations.membership_tier. Rate-limited per user: 15 failed attempts per hour; successful calls do not count against the limit so a legitimate registration is never penalized by earlier validation errors.\",\"url\":\"https://adcp-docs-ja.pier1.co.jp/docs/registry/api-reference/onboarding/create-or-adopt-my-organization\",\"mainEntityOfPage\":{\"@id\":\"https://adcp-docs-ja.pier1.co.jp/docs/registry/api-reference/onboarding/create-or-adopt-my-organization#webpage\"},\"dateModified\":\"2026-07-21T04:35:41.046Z\",\"publisher\":{\"@id\":\"https://adcp-docs-ja.pier1.co.jp/#organization\"},\"isPartOf\":{\"@id\":\"https://adcp-docs-ja.pier1.co.jp#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"AdCP - Ad Context Protocol\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"AdCP - Ad Context Protocol","nav":{"global":null,"versions":[{"version":"3.1","groups":[{"group":"はじめに","pages":[{"title":"AdCP 入門","sidebarTitle":"はじめに","href":"/docs/intro"},{"title":"クイックスタート","href":"/docs/quickstart"}]},{"group":"AdCP で構築する","expanded":false,"pages":[{"title":"概要","href":"/docs/building/index"},{"title":"スキーマ \u0026 SDK","sidebarTitle":"スキーマ \u0026 SDK","href":"/docs/building/schemas-and-sdks"},{"group":"AdCP 3.x","expanded":false,"pages":[{"title":"AdCP 3.0","href":"/docs/reference/whats-new-in-v3"},{"title":"AdCP 3.1 の新機能","href":"/docs/reference/whats-new-in-3-1"},{"title":"v3 レディネスチェックリスト","sidebarTitle":"レディネスチェックリスト","href":"/docs/reference/migration/v3-readiness"},{"title":"Migrating from v2 to v3","sidebarTitle":"Migration guide","href":"/docs/reference/migration/index"},{"title":"3.0 から 3.1 への移行","sidebarTitle":"3.0 から 3.1","href":"/docs/reference/migration/3-0-to-3-1"},{"title":"プレリリースアップグレードノート","sidebarTitle":"プレリリースアップグレード","href":"/docs/reference/migration/prerelease-upgrades"},{"title":"チャンネルの移行","href":"/docs/reference/migration/channels"},{"title":"価格の移行","href":"/docs/reference/migration/pricing"},{"title":"ジオターゲティングの移行","href":"/docs/reference/migration/geo-targeting"},{"title":"クリエイティブの移行","href":"/docs/reference/migration/creatives"},{"title":"クリエイティブトランスフォーマーへの移行(3.1)","href":"/docs/reference/migration/creative-transformers"},{"title":"カタログの移行","href":"/docs/reference/migration/catalogs"},{"title":"最適化目標の移行","href":"/docs/reference/migration/optimization-goals"},{"title":"ブランドアイデンティティの移行","href":"/docs/reference/migration/brand-identity"},{"title":"シグナルの移行","href":"/docs/reference/migration/signals"},{"title":"オーディエンスの移行","href":"/docs/reference/migration/audiences"},{"title":"アトリビューションウィンドウの移行","href":"/docs/reference/migration/attribution"},{"title":"`media_buy_status` への移行(3.1)","href":"/docs/reference/migration/media-buy-status"}]},{"title":"プロトコルアーキテクチャ","sidebarTitle":"アーキテクチャ","href":"/docs/protocol/architecture"},{"title":"AdCP の設計思想","sidebarTitle":"設計原則","href":"/docs/protocol/design-principles"},{"title":"ケイパビリティエクスプローラー","sidebarTitle":"ケイパビリティエクスプローラー","href":"/docs/protocol/capabilities-explorer"},{"title":"Specification Guidelines","href":"/docs/spec-guidelines"},{"title":"プロトコル別の必須タスク","sidebarTitle":"必須タスク","href":"/docs/protocol/required-tasks"},{"title":"AdCP エージェントの呼び出し","sidebarTitle":"エージェントの呼び出し","href":"/docs/protocol/calling-an-agent"},{"title":"フォーマット参照","href":"/docs/protocol/format-references"},{"title":"スナップショットとログ","href":"/docs/protocol/snapshot-and-log"},{"group":"コンセプト","expanded":false,"pages":[{"title":"AdCP が必要な理由","href":"/docs/building/concepts/index"},{"title":"プロトコル比較","href":"/docs/building/concepts/protocol-comparison"},{"title":"AdCP と OpenRTB","sidebarTitle":"AdCP vs OpenRTB","href":"/docs/building/concepts/adcp-vs-openrtb"},{"title":"AI エージェントが広告スペックをプラットフォーム間でやりとりする方法","sidebarTitle":"エージェントの通信方法","href":"/docs/building/concepts/how-agents-communicate"},{"title":"セキュリティモデル","sidebarTitle":"セキュリティモデル","href":"/docs/building/concepts/security-model"},{"title":"AI 広告標準のランドスケープ","sidebarTitle":"業界ランドスケープ","href":"/docs/building/concepts/industry-landscape"},{"title":"レスポンスサイズの管理","sidebarTitle":"レスポンスサイズの管理","href":"/docs/building/concepts/managing-response-size"}]},{"group":"レイヤー別構築","pages":[{"group":"L4 — ビジネスロジック","pages":[{"title":"L4 — ビジネスロジック","sidebarTitle":"L4 — ビジネスロジック","href":"/docs/building/by-layer/L4/index"},{"title":"SDK を選ぶ","sidebarTitle":"SDK を選ぶ","href":"/docs/building/by-layer/L4/choose-your-sdk"},{"title":"エージェントを構築する","sidebarTitle":"エージェントを構築する","href":"/docs/building/by-layer/L4/build-an-agent"},{"title":"呼び出し元を構築する","sidebarTitle":"呼び出し元を構築する","href":"/docs/building/by-layer/L4/build-a-caller"},{"title":"手書きエージェントから移行する","sidebarTitle":"手書きから移行","href":"/docs/building/by-layer/L4/migrate-from-hand-rolled"}]},{"group":"L3 — プロトコルセマンティクス","expanded":false,"pages":[{"title":"L3 — プロトコルセマンティクス","sidebarTitle":"L3 — プロトコルセマンティクス","href":"/docs/building/by-layer/L3/index"},{"title":"タスクライフサイクル","href":"/docs/building/by-layer/L3/task-lifecycle"},{"title":"非同期オペレーション","href":"/docs/building/by-layer/L3/async-operations"},{"title":"Push Notifications","href":"/docs/building/by-layer/L3/webhooks"},{"title":"エラーハンドリング","href":"/docs/building/by-layer/L3/error-handling"},{"title":"コンプライアンステストコントローラー","href":"/docs/building/by-layer/L3/comply-test-controller"}]},{"group":"L2 — 認証とレジストリ","expanded":false,"pages":[{"title":"L2 — 認証とレジストリ","sidebarTitle":"L2 — 認証とレジストリ","href":"/docs/building/by-layer/L2/index"},{"title":"認証","href":"/docs/building/by-layer/L2/authentication"},{"title":"アカウント状態","href":"/docs/building/by-layer/L2/account-state"},{"title":"アカウントとエージェント","href":"/docs/building/by-layer/L2/accounts-and-agents"},{"title":"コンテキストとセッション","href":"/docs/building/by-layer/L2/context-sessions"}]},{"group":"L1 — アイデンティティと署名","expanded":false,"pages":[{"title":"L1 — アイデンティティと署名","sidebarTitle":"L1 — アイデンティティと署名","href":"/docs/building/by-layer/L1/index"},{"title":"セキュリティ","href":"/docs/building/by-layer/L1/security"},{"title":"リクエスト署名ガイド","href":"/docs/building/by-layer/L1/request-signing"},{"title":"Webhook 検証者チューニングガイド","sidebarTitle":"Webhook 検証者チューニング","href":"/docs/building/by-layer/L1/webhook-verifier-tuning"}]},{"group":"L0 — ワイヤーとトランスポート","expanded":false,"pages":[{"title":"L0 — ワイヤーとトランスポート","sidebarTitle":"L0 — ワイヤーとトランスポート","href":"/docs/building/by-layer/L0/index"},{"title":"Schemas","sidebarTitle":"Schemas","href":"/docs/building/by-layer/L0/schemas"},{"title":"MCP ガイド","href":"/docs/building/by-layer/L0/mcp-guide"},{"title":"A2A ガイド","href":"/docs/building/by-layer/L0/a2a-guide"},{"title":"A2A レスポンス形式","href":"/docs/building/by-layer/L0/a2a-response-format"},{"title":"get_adcp_capabilities","href":"/docs/protocol/get_adcp_capabilities"},{"title":"MCP レスポンス抽出","href":"/docs/building/by-layer/L0/mcp-response-extraction"},{"title":"A2A レスポンス抽出","href":"/docs/building/by-layer/L0/a2a-response-extraction"}]}]},{"group":"横断的トピック","expanded":false,"pages":[{"title":"AdCP スタック","sidebarTitle":"SDK スタックリファレンス","href":"/docs/building/cross-cutting/sdk-stack"},{"title":"バージョン適応","sidebarTitle":"バージョン適応","href":"/docs/building/cross-cutting/version-adaptation"},{"title":"既知の仕様の曖昧さ","href":"/docs/building/cross-cutting/known-ambiguities"}]},{"group":"検証とトラスト","expanded":false,"pages":[{"title":"適合性仕様","sidebarTitle":"適合性仕様","href":"/docs/building/verification/conformance"},{"title":"コンプライアンスカタログ","sidebarTitle":"コンプライアンスカタログ","href":"/docs/building/verification/compliance-catalog"},{"title":"Storyboards 対 scenarios — どれがどれか","sidebarTitle":"Storyboards 対 Scenarios","href":"/docs/building/verification/storyboards-vs-scenarios"},{"title":"グレーディングの仕組み","sidebarTitle":"グレーディングの仕組み","href":"/docs/building/verification/how-grading-works"},{"title":"ストーリーボードを使ってエージェントを検証する","sidebarTitle":"エージェントを検証する","href":"/docs/building/verification/validate-your-agent"},{"title":"モックアップストリームフィクスチャでアダプターエージェントを検証する","sidebarTitle":"モックアップストリームフィクスチャ","href":"/docs/building/verification/validate-with-mock-fixtures"},{"title":"Addie とペアプログラミング(Socket Mode)","sidebarTitle":"Addie とペアリング","href":"/docs/building/verification/addie-socket-mode"},{"title":"Auth グレーダー","sidebarTitle":"Auth グレーダー","href":"/docs/building/verification/grading"},{"title":"テスト準備を整える","sidebarTitle":"テスト準備を整える","href":"/docs/building/verification/get-test-ready"},{"title":"AAO Verified","sidebarTitle":"AAO Verified","href":"/docs/building/verification/aao-verified"}]},{"group":"運用","expanded":false,"pages":[{"title":"エージェントの運用","sidebarTitle":"エージェントの運用","href":"/docs/building/operating/operating-an-agent"},{"title":"オーケストレーター設計","href":"/docs/building/operating/orchestrator-design"},{"title":"トランスポートエラーマッピング","href":"/docs/building/operating/transport-errors"},{"title":"AI エージェントへのインベントリ提供","sidebarTitle":"セラー統合","href":"/docs/building/operating/seller-integration"},{"title":"ストーリーボードトラブルシューティング","href":"/docs/building/operating/storyboard-troubleshooting"},{"title":"サポートリカバリーランブック","sidebarTitle":"サポートリカバリー","href":"/docs/building/operating/support-recovery-runbooks"}]},{"group":"アカウント","expanded":false,"pages":[{"title":"アカウントプロトコル","sidebarTitle":"概要","href":"/docs/accounts/overview"},{"title":"sync_accounts","href":"/docs/accounts/tasks/sync_accounts"},{"title":"list_accounts","href":"/docs/accounts/tasks/list_accounts"},{"title":"report_usage","href":"/docs/accounts/tasks/report_usage"},{"title":"sync_governance","href":"/docs/accounts/tasks/sync_governance"},{"title":"get_account_financials","href":"/docs/accounts/tasks/get_account_financials"}]}]},{"group":"プロトコル","expanded":false,"pages":[{"group":"メディアバイ","expanded":false,"pages":[{"title":"Media buy プロトコル","sidebarTitle":"Overview","href":"/docs/media-buy/index"},{"title":"コマースメディア","href":"/docs/media-buy/commerce-media"},{"group":"コンセプト","pages":[{"title":"概要","href":"/docs/media-buy/product-discovery/index"},{"title":"Brief Expectations","href":"/docs/media-buy/product-discovery/brief-expectations"},{"title":"キャンペーンブリーフ例","href":"/docs/media-buy/product-discovery/example-briefs"},{"title":"Media Products","href":"/docs/media-buy/product-discovery/media-products"},{"title":"コレクションとインストールメント","href":"/docs/media-buy/product-discovery/collections-and-installments"},{"title":"リファインメント","href":"/docs/media-buy/product-discovery/refinement"},{"title":"Media Buy Lifecycle","href":"/docs/media-buy/media-buys/index"},{"title":"メディアバイライフサイクルフロー","href":"/docs/media-buy/media-buys/lifecycle"},{"title":"Optimization \u0026 Reporting","href":"/docs/media-buy/media-buys/optimization-reporting"},{"title":"ポリシーコンプライアンス","href":"/docs/media-buy/media-buys/policy-compliance"},{"title":"クリエイティブのライフサイクル","href":"/docs/media-buy/creatives/index"},{"title":"コンバージョントラッキングと最適化ゴール","href":"/docs/media-buy/conversion-tracking/index"},{"title":null,"href":"/docs/media-buy/advanced-topics/pricing-models"},{"title":"Targeting","href":"/docs/media-buy/advanced-topics/targeting"},{"title":"アカウンタビリティ","sidebarTitle":"アカウンタビリティ","href":"/docs/media-buy/advanced-topics/accountability"},{"title":"課金権威","sidebarTitle":"課金権威","href":"/docs/media-buy/advanced-topics/billing-authority"}]},{"group":"構築","pages":[{"title":"概要","href":"/docs/media-buy/capability-discovery/index"},{"title":"標準フォーマット対応の実装","href":"/docs/media-buy/capability-discovery/implementing-standard-formats"},{"title":"Agentic eXecution Engine (AXE)","href":"/docs/media-buy/advanced-topics/agentic-execution-engine"},{"title":"アカウントとセキュリティ","href":"/docs/media-buy/advanced-topics/accounts-and-security"},{"title":"サンドボックスモード","href":"/docs/media-buy/advanced-topics/sandbox"},{"title":"概要","href":"/docs/media-buy/advanced-topics/index"}]},{"group":"リファレンス","expanded":false,"pages":[{"title":"メディアバイ仕様","sidebarTitle":"仕様","href":"/docs/media-buy/specification"},{"title":"タスクリファレンス","sidebarTitle":"概要","href":"/docs/media-buy/task-reference/index"},{"title":"get_products","href":"/docs/media-buy/task-reference/get_products"},{"title":"create_media_buy","href":"/docs/media-buy/task-reference/create_media_buy"},{"title":"sync_catalogs","href":"/docs/media-buy/task-reference/sync_catalogs"},{"title":"get_media_buys","href":"/docs/media-buy/task-reference/get_media_buys"},{"title":"get_media_buy_delivery","href":"/docs/media-buy/task-reference/get_media_buy_delivery"},{"title":"update_media_buy","href":"/docs/media-buy/task-reference/update_media_buy"},{"title":"provide_performance_feedback","href":"/docs/media-buy/task-reference/provide_performance_feedback"},{"title":"sync_event_sources","href":"/docs/media-buy/task-reference/sync_event_sources"},{"title":"log_event","href":"/docs/media-buy/task-reference/log_event"},{"title":"sync_audiences","href":"/docs/media-buy/task-reference/sync_audiences"}]}]},{"group":"クリエイティブ","expanded":false,"pages":[{"title":"クリエイティブプロトコル","sidebarTitle":"概要","href":"/docs/creative/index"},{"group":"コンセプト","pages":[{"title":"キーコンセプト","href":"/docs/creative/key-concepts"},{"title":"キャンペーンチーム向け AI クリエイティブ","href":"/docs/creative/ai-creative-overview"},{"title":"生成系クリエイティブ","href":"/docs/creative/generative-creative"},{"title":"クリエイティブライブラリとコンセプト","href":"/docs/creative/creative-libraries"},{"title":"カタログ","href":"/docs/creative/catalogs"},{"title":"カタログアイテムスキーマ","href":"/docs/creative/catalog-schemas"}]},{"group":"クリエイティブエージェントの構築","pages":[{"title":"クリエイティブエージェントの実装","href":"/docs/creative/implementing-creative-agents"},{"title":"セールスエージェントのクリエイティブ機能","sidebarTitle":"セールスエージェントのクリエイティブ","href":"/docs/creative/sales-agent-creative-capabilities"},{"title":"マルチエージェントクリエイティブオーケストレーション","href":"/docs/creative/multi-agent-orchestration"},{"title":"Creative Manifests","href":"/docs/creative/creative-manifests"},{"title":"プライベートアセット","href":"/docs/creative/private-assets"},{"title":"build_creative へのバイヤー添付入力","sidebarTitle":"バイヤー添付入力","href":"/docs/creative/buyer-attached-inputs"},{"title":"公開投稿参照クリエイティブ","href":"/docs/creative/published-post-reference-creatives"},{"title":"Sponsored Placement アダプターコントラクト","href":"/docs/creative/sponsored-placement-adapter-contracts"}]},{"group":"フォーマットとアセット","pages":[{"title":"Creative Formats","href":"/docs/creative/formats"},{"title":"Asset Types","href":"/docs/creative/asset-types"},{"title":"Template Format IDs","href":"/docs/creative/template-format-ids"},{"title":"Universal Macros","href":"/docs/creative/universal-macros"},{"title":"正準フォーマット","href":"/docs/creative/canonical-formats"},{"title":"正準フォーマットへの移行","href":"/docs/creative/canonical-formats-migration"}]},{"group":"チャネルガイド","pages":[{"title":"Video Ads","href":"/docs/creative/channels/video"},{"title":"CTV とコネクテッドTV","href":"/docs/creative/channels/ctv"},{"title":"放送 TV","href":"/docs/creative/channels/broadcast"},{"title":"Display Ads","href":"/docs/creative/channels/display"},{"title":"Audio Ads","href":"/docs/creative/channels/audio"},{"title":"DOOH (デジタル屋外広告)","href":"/docs/creative/channels/dooh"},{"title":"Carousel \u0026 Multi-Asset Formats","href":"/docs/creative/channels/carousels"},{"title":"ソーシャルとフィードネイティブ","href":"/docs/creative/channels/social-native"},{"title":"プリント広告","href":"/docs/creative/channels/print"}]},{"group":"コンプライアンス","pages":[{"title":"アクセシビリティ","href":"/docs/creative/accessibility"},{"title":"AI プロベナンスと開示","sidebarTitle":"プロベナンス","href":"/docs/creative/provenance"}]},{"group":"リファレンス","expanded":false,"pages":[{"title":"クリエイティブ仕様","sidebarTitle":"仕様","href":"/docs/creative/specification"},{"title":"build_creative","href":"/docs/creative/task-reference/build_creative"},{"title":"preview_creative","href":"/docs/creative/task-reference/preview_creative"},{"title":"preview_creative(高度な活用)","href":"/docs/creative/task-reference/preview_creative-advanced"},{"title":"list_creative_formats","href":"/docs/creative/task-reference/list_creative_formats"},{"title":"list_creatives","href":"/docs/creative/task-reference/list_creatives"},{"title":"sync_creatives","href":"/docs/creative/task-reference/sync_creatives"},{"title":"get_creative_delivery","href":"/docs/creative/task-reference/get_creative_delivery"},{"title":"list_transformers","href":"/docs/creative/task-reference/list_transformers"}]}]},{"group":"ガバナンス","expanded":false,"pages":[{"title":"ガバナンスプロトコル","sidebarTitle":"Overview","href":"/docs/governance/overview"},{"title":"RFC プロセス","href":"/docs/governance/rfc-process"},{"title":"組み込まれた人間の判断","sidebarTitle":"組み込まれた人間の判断","href":"/docs/governance/embedded-human-judgment"},{"title":"ポリシーレジストリ","sidebarTitle":"ポリシーレジストリ","href":"/docs/governance/policy-registry"},{"title":"ポリシーレジストリ: 同期とバージョニング","sidebarTitle":"同期とバージョニング","href":"/docs/governance/policy-registry-sync"},{"title":"ポリシー帰属","sidebarTitle":"ポリシー帰属","href":"/docs/governance/policy-attribution"},{"title":"Annex III と Article 22 の義務","sidebarTitle":"Annex III と Art 22","href":"/docs/governance/annex-iii-obligations"},{"title":"ワーキンググループ憲章","sidebarTitle":"ワーキンググループ憲章","href":"/docs/governance/working-group-charter"},{"group":"プロパティガバナンス","pages":[{"title":"Property Governance","sidebarTitle":"Overview","href":"/docs/governance/property/index"},{"title":"adagents.json 技術仕様","href":"/docs/governance/property/adagents"},{"title":"マネージドネットワークデプロイ","href":"/docs/governance/property/managed-networks"},{"title":"認可の理解","href":"/docs/governance/property/authorized-properties"},{"title":"Property Governance Specification","sidebarTitle":"Specification","href":"/docs/governance/property/specification"},{"group":"タスク","pages":[{"title":"Property Governance Tasks","sidebarTitle":"Task Reference","href":"/docs/governance/property/tasks/index"},{"title":"Property List Management","href":"/docs/governance/property/tasks/property_lists"},{"title":"validate_property_delivery","href":"/docs/governance/property/tasks/validate_property_delivery"}]}]},{"group":"コレクションガバナンス","pages":[{"title":"コレクションガバナンス","sidebarTitle":"概要","href":"/docs/governance/collection/index"},{"title":"コレクションリスト管理","href":"/docs/governance/collection/tasks/collection_lists"}]},{"group":"コンテンツ標準","pages":[{"title":"Content Standards","sidebarTitle":"Overview","href":"/docs/governance/content-standards/index"},{"title":"アーティファクト","sidebarTitle":"Artifacts","href":"/docs/governance/content-standards/artifacts"},{"title":"実装ガイド","sidebarTitle":"Implementation Guide","href":"/docs/governance/content-standards/implementation-guide"},{"group":"タスク","pages":[{"title":"list_content_standards","href":"/docs/governance/content-standards/tasks/list_content_standards"},{"title":"get_content_standards","href":"/docs/governance/content-standards/tasks/get_content_standards"},{"title":"create_content_standards","href":"/docs/governance/content-standards/tasks/create_content_standards"},{"title":"update_content_standards","href":"/docs/governance/content-standards/tasks/update_content_standards"},{"title":"calibrate_content","href":"/docs/governance/content-standards/tasks/calibrate_content"},{"title":"get_media_buy_artifacts","href":"/docs/governance/content-standards/tasks/get_media_buy_artifacts"},{"title":"validate_content_delivery","href":"/docs/governance/content-standards/tasks/validate_content_delivery"}]}]},{"group":"クリエイティブガバナンス","pages":[{"title":"クリエイティブガバナンス","sidebarTitle":"概要","href":"/docs/governance/creative/index"},{"title":"get_creative_features","href":"/docs/governance/creative/get_creative_features"},{"title":"プロベナンス検証","sidebarTitle":"プロベナンス検証","href":"/docs/governance/creative/provenance-verification"}]},{"group":"キャンペーンガバナンス","pages":[{"title":"キャンペーンガバナンス","sidebarTitle":"概要","href":"/docs/governance/campaign/index"},{"title":"安全モデル","sidebarTitle":"安全モデル","href":"/docs/governance/campaign/safety-model"},{"title":"Specification","sidebarTitle":"Specification","href":"/docs/governance/campaign/specification"},{"title":"監査証跡: 内部ビュー対共有可能ビュー","sidebarTitle":"監査証跡","href":"/docs/governance/campaign/audit-trail"},{"group":"タスク","pages":[{"title":"タスクリファレンス","sidebarTitle":"概要","href":"/docs/governance/campaign/tasks/index"},{"title":"sync_plans","href":"/docs/governance/campaign/tasks/sync_plans"},{"title":"report_plan_outcome","href":"/docs/governance/campaign/tasks/report_plan_outcome"},{"title":"check_governance","href":"/docs/governance/campaign/tasks/check_governance"},{"title":"get_plan_audit_logs","href":"/docs/governance/campaign/tasks/get_plan_audit_logs"}]},{"title":"バイヤーとセラーの責任","sidebarTitle":"責任","href":"/docs/governance/campaign/responsibilities"}]}]},{"group":"Sponsored Intelligence","expanded":false,"pages":[{"title":"Sponsored Intelligence","sidebarTitle":"Overview","href":"/docs/sponsored-intelligence/overview"},{"title":"AIサーフェスの収益化","sidebarTitle":"AIの収益化","href":"/docs/sponsored-intelligence/monetizing-ai"},{"group":"コンセプト","pages":[{"title":"プロダクトスペクトラム","sidebarTitle":"プロダクトスペクトラム","href":"/docs/sponsored-intelligence/product-spectrum"},{"title":"広告ネットワーク","sidebarTitle":"広告ネットワーク","href":"/docs/sponsored-intelligence/networks"},{"title":"エンドツーエンドのワークフロー","sidebarTitle":"ワークフロー","href":"/docs/sponsored-intelligence/workflow"},{"title":"計測","sidebarTitle":"計測","href":"/docs/sponsored-intelligence/measurement"}]},{"group":"SI Chat Protocol","pages":[{"title":"SI チャットプロトコル","sidebarTitle":"SI チャットプロトコル","href":"/docs/sponsored-intelligence/si-chat-protocol"},{"title":"SI エージェントの実装","href":"/docs/sponsored-intelligence/implementing-si-agents"},{"title":"SI ホストの実装","href":"/docs/sponsored-intelligence/implementing-si-hosts"}]},{"group":"リファレンス","expanded":false,"pages":[{"title":"仕様","href":"/docs/sponsored-intelligence/specification"},{"title":"タスクリファレンス","href":"/docs/sponsored-intelligence/tasks/index"},{"title":"si_get_offering","href":"/docs/sponsored-intelligence/tasks/si_get_offering"},{"title":"si_initiate_session","href":"/docs/sponsored-intelligence/tasks/si_initiate_session"},{"title":"si_send_message","href":"/docs/sponsored-intelligence/tasks/si_send_message"},{"title":"si_terminate_session","href":"/docs/sponsored-intelligence/tasks/si_terminate_session"}]}]},{"group":"ブランド","expanded":false,"pages":[{"title":"ブランドプロトコル","sidebarTitle":"概要","href":"/docs/brand-protocol/index"},{"title":"ブランドプロトコル","sidebarTitle":"キーコンセプト","href":"/docs/brand-protocol/key-concepts"},{"title":"権利ライセンスのウォークスルー","sidebarTitle":"権利ライセンス","href":"/docs/brand-protocol/walkthrough-rights-licensing"},{"title":"広告主向け","href":"/docs/brand-protocol/for-advertisers"},{"title":"タレントと権利保有者向け","href":"/docs/brand-protocol/for-rights-holders"},{"title":"セラーセットアップ","sidebarTitle":"セラー向け","href":"/docs/brand-protocol/seller-setup"},{"title":"brand.json Specification","href":"/docs/brand-protocol/brand-json"},{"title":"ブランドエージェントの構築","href":"/docs/brand-protocol/building-a-brand-agent"},{"title":"拒否されたクレームの UI ガイダンス","href":"/docs/brand-protocol/ui-guidance"},{"group":"タスク","pages":[{"title":"get_brand_identity","href":"/docs/brand-protocol/tasks/get_brand_identity"},{"title":"verify_brand_claim","href":"/docs/brand-protocol/tasks/verify_brand_claim"},{"title":"verify_brand_claims","href":"/docs/brand-protocol/tasks/verify_brand_claims"},{"title":"get_rights","href":"/docs/brand-protocol/tasks/get_rights"},{"title":"acquire_rights","href":"/docs/brand-protocol/tasks/acquire_rights"},{"title":"update_rights","href":"/docs/brand-protocol/tasks/update_rights"}]}]},{"group":"シグナル","expanded":false,"pages":[{"title":"Signals プロトコル","sidebarTitle":"概要","href":"/docs/signals/overview"},{"title":"キーコンセプト","href":"/docs/signals/key-concepts"},{"title":"シグナルエコシステム","href":"/docs/signals/ecosystem"},{"title":"データプロバイダーガイド","sidebarTitle":"データプロバイダー","href":"/docs/signals/data-providers"},{"group":"リファレンス","expanded":false,"pages":[{"title":"仕様","sidebarTitle":"仕様","href":"/docs/signals/specification"},{"title":"get_signals","href":"/docs/signals/tasks/get_signals"},{"title":"activate_signal","href":"/docs/signals/tasks/activate_signal"}]}]},{"group":"Trusted Match","expanded":false,"pages":[{"title":"Trusted Match Protocol","sidebarTitle":"概要","href":"/docs/trusted-match/index"},{"title":"需要はどう AI アシスタントに到達するか","sidebarTitle":"AI 仲介","href":"/docs/trusted-match/ai-mediation"},{"title":"バイヤーエージェント向け TMP","sidebarTitle":"バイヤーガイド","href":"/docs/trusted-match/buyer-guide"},{"title":"実行ギャップ","href":"/docs/trusted-match/execution-gap"},{"title":"Context Match と Identity Match","href":"/docs/trusted-match/context-and-identity"},{"title":"TMP 仕様","href":"/docs/trusted-match/specification"},{"title":"TMP ルーター","href":"/docs/trusted-match/router-architecture"},{"title":"プライバシーアーキテクチャ","href":"/docs/trusted-match/privacy-architecture"},{"title":"データ保護ロール","href":"/docs/trusted-match/data-protection-roles"},{"title":"AXE から TMP への移行","sidebarTitle":"AXE 移行","href":"/docs/trusted-match/migration-from-axe"},{"group":"サーフェスガイド","pages":[{"title":"Web パブリッシャー向け TMP","href":"/docs/trusted-match/surfaces/web"},{"title":"CTV 向け TMP","href":"/docs/trusted-match/surfaces/ctv"},{"title":"モバイルアプリ向け TMP","href":"/docs/trusted-match/surfaces/mobile"},{"title":"リテールメディア向け TMP","href":"/docs/trusted-match/surfaces/retail-media"},{"title":"AI アシスタント向け TMP","href":"/docs/trusted-match/surfaces/ai-assistants"}]},{"title":"Identity Match フリークエンシーキャップデータフロー","sidebarTitle":"フリークエンシーキャップデータフロー","href":"/docs/trusted-match/identity-match-implementation"},{"title":"インプレッショントラッカー実装リファレンス","sidebarTitle":"インプレッショントラッカーリファレンス","href":"/docs/trusted-match/impression-tracker-implementation"}]}]},{"group":"FAQ","pages":[{"title":"よくある質問","sidebarTitle":"FAQ","href":"/docs/faq"}]},{"group":"トラストとセキュリティ","expanded":false,"pages":[{"title":"トラスト \u0026 セキュリティ","sidebarTitle":"トラスト \u0026 セキュリティ","href":"/docs/trust"},{"title":"セラー検証","sidebarTitle":"セラー検証","href":"/docs/verification/overview"},{"title":"AI 開示","href":"/docs/ai-disclosure"},{"title":"プライバシー考慮事項","sidebarTitle":"プライバシー考慮事項","href":"/docs/reference/privacy-considerations"},{"title":"既知の制限","sidebarTitle":"既知の制限","href":"/docs/reference/known-limitations"}]},{"group":"リファレンス","expanded":false,"pages":[{"group":"Registry API","pages":[{"title":"Registry API","sidebarTitle":"Overview","href":"/docs/registry/index"},{"title":"エージェントの登録","sidebarTitle":"エージェントの登録","href":"/docs/registry/registering-an-agent"},{"title":"エージェントの保守","sidebarTitle":"エージェントの保守","href":"/docs/registry/maintaining-your-agent"},{"group":"Search","pages":[{"title":"API discovery","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml get /api","href":"/docs/registry/api-reference/search/api-discovery"},{"title":"Search","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml get /api/search","href":"/docs/registry/api-reference/search/search"},{"title":"Manifest reference lookup","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml get /api/manifest-refs/lookup","href":"/docs/registry/api-reference/search/manifest-reference-lookup"}]},{"group":"Brand Resolution","pages":[{"title":"Resolve brand","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml get /api/brands/resolve","href":"/docs/registry/api-reference/brand-resolution/resolve-brand"},{"title":"Bulk resolve brands","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml post /api/brands/resolve/bulk","href":"/docs/registry/api-reference/brand-resolution/bulk-resolve-brands"},{"title":"Get brand.json","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml get /api/brands/brand-json","href":"/docs/registry/api-reference/brand-resolution/get-brandjson"},{"title":"Save brand","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml post /api/brands/save","href":"/docs/registry/api-reference/brand-resolution/save-brand"},{"title":"List brands","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml get /api/brands/registry","href":"/docs/registry/api-reference/brand-resolution/list-brands"},{"title":"Brand activity history","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml get /api/brands/history","href":"/docs/registry/api-reference/brand-resolution/brand-activity-history"},{"title":"Enrich brand","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml get /api/brands/enrich","href":"/docs/registry/api-reference/brand-resolution/enrich-brand"},{"title":"Find brands by name","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml get /api/brands/find","href":"/docs/registry/api-reference/brand-resolution/find-brands-by-name"},{"title":"Set up a hosted brand.json","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml post /api/brands/setup-my-brand","href":"/docs/registry/api-reference/brand-resolution/set-up-a-hosted-brandjson"}]},{"group":"Property Resolution","pages":[{"title":"Property activity history","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml get /api/properties/history","href":"/docs/registry/api-reference/property-resolution/property-activity-history"},{"title":"Resolve property","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml get /api/properties/resolve","href":"/docs/registry/api-reference/property-resolution/resolve-property"},{"title":"Bulk resolve properties","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml post /api/properties/resolve/bulk","href":"/docs/registry/api-reference/property-resolution/bulk-resolve-properties"},{"title":"List properties","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml get /api/properties/registry","href":"/docs/registry/api-reference/property-resolution/list-properties"},{"title":"Validate adagents.json","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml get /api/properties/validate","href":"/docs/registry/api-reference/property-resolution/validate-adagentsjson"},{"title":"Save property","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml post /api/properties/save","href":"/docs/registry/api-reference/property-resolution/save-property"},{"title":"Claim a domain for bind-on-verify","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml post /api/properties/hosted/{domain}/claim","href":"/docs/registry/api-reference/property-resolution/claim-a-domain-for-bind-on-verify"},{"title":"Verify AAO-hosted publisher origin","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml post /api/properties/hosted/{domain}/verify-origin","href":"/docs/registry/api-reference/property-resolution/verify-aao-hosted-publisher-origin"},{"title":"Check property list","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml post /api/properties/check","href":"/docs/registry/api-reference/property-resolution/check-property-list"},{"title":"Get property check report","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml get /api/properties/check/{reportId}","href":"/docs/registry/api-reference/property-resolution/get-property-check-report"},{"title":"Bulk property identifier check","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml post /api/properties/check/bulk","href":"/docs/registry/api-reference/property-resolution/bulk-property-identifier-check"},{"title":"Get bulk check report","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml get /api/properties/check/bulk/{reportId}","href":"/docs/registry/api-reference/property-resolution/get-bulk-check-report"}]},{"group":"Agent Discovery","pages":[{"title":"List agents","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml get /api/registry/agents","href":"/docs/registry/api-reference/agent-discovery/list-agents"},{"title":"List publishers","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml get /api/registry/publishers","href":"/docs/registry/api-reference/agent-discovery/list-publishers"},{"title":"Registry statistics","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml get /api/registry/stats","href":"/docs/registry/api-reference/agent-discovery/registry-statistics"},{"title":"Search agent inventory profiles","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml get /api/registry/agents/search","href":"/docs/registry/api-reference/agent-discovery/search-agent-inventory-profiles"},{"title":"Request domain re-crawl","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml post /api/registry/crawl-request","href":"/docs/registry/api-reference/agent-discovery/request-domain-re-crawl"},{"title":"Request manager fan-out re-validation","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml post /api/registry/manager-revalidation-request","href":"/docs/registry/api-reference/agent-discovery/request-manager-fan-out-re-validation"}]},{"group":"Authorization Lookups","pages":[{"title":"Domain lookup (deprecated)","deprecated":true,"version":null,"openapi":"/static/openapi/registry.yaml get /api/registry/lookup/domain/{domain}","href":"/docs/registry/api-reference/authorization-lookups/domain-lookup-deprecated"},{"title":"Property identifier lookup","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml get /api/registry/lookup/property","href":"/docs/registry/api-reference/authorization-lookups/property-identifier-lookup"},{"title":"Agent domain lookup","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml get /api/registry/lookup/agent/{agentUrl}/domains","href":"/docs/registry/api-reference/authorization-lookups/agent-domain-lookup"},{"title":"AAO directory inverse-lookup","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml get /api/v1/agents/{encodedUrl}/publishers","href":"/docs/registry/api-reference/authorization-lookups/aao-directory-inverse-lookup"},{"title":"AAO directory inverse-lookup","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml get /v1/agents/{encodedUrl}/publishers","href":"/docs/registry/api-reference/authorization-lookups/aao-directory-inverse-lookup-1"},{"title":"Operator lookup","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml get /api/registry/operator","href":"/docs/registry/api-reference/authorization-lookups/operator-lookup"},{"title":"Publisher lookup","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml get /api/registry/publisher","href":"/docs/registry/api-reference/authorization-lookups/publisher-lookup"},{"title":"Revalidate publisher adagents.json","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml post /api/registry/publisher/{domain}/adagents/revalidate","href":"/docs/registry/api-reference/authorization-lookups/revalidate-publisher-adagentsjson"},{"title":"Per-agent authorization rollup","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml get /api/registry/publisher/authorization","href":"/docs/registry/api-reference/authorization-lookups/per-agent-authorization-rollup"},{"title":"Validate product authorization","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml post /api/registry/validate/product-authorization","href":"/docs/registry/api-reference/authorization-lookups/validate-product-authorization"},{"title":"Expand product identifiers","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml post /api/registry/expand/product-identifiers","href":"/docs/registry/api-reference/authorization-lookups/expand-product-identifiers"},{"title":"Property authorization check","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml get /api/registry/validate/property-authorization","href":"/docs/registry/api-reference/authorization-lookups/property-authorization-check"}]},{"group":"Validation Tools","pages":[{"title":"Validate adagents.json","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml post /api/adagents/validate","href":"/docs/registry/api-reference/validation-tools/validate-adagentsjson"},{"title":"Generate adagents.json","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml post /api/adagents/create","href":"/docs/registry/api-reference/validation-tools/generate-adagentsjson"}]},{"group":"Community Mirrors","pages":[{"title":"List community mirrors","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml get /api/registry/mirrors","href":"/docs/registry/api-reference/community-mirrors/list-community-mirrors"},{"title":"Get community mirror","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml get /api/registry/mirrors/{platform}","href":"/docs/registry/api-reference/community-mirrors/get-community-mirror"},{"title":"Publish community mirror","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml put /api/registry/mirrors/{platform}","href":"/docs/registry/api-reference/community-mirrors/publish-community-mirror"},{"title":"Delete community mirror","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml delete /api/registry/mirrors/{platform}","href":"/docs/registry/api-reference/community-mirrors/delete-community-mirror"}]},{"group":"Agent Probing","pages":[{"title":"Discover agent","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml get /api/public/discover-agent","href":"/docs/registry/api-reference/agent-probing/discover-agent"},{"title":"Get agent formats","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml get /api/public/agent-formats","href":"/docs/registry/api-reference/agent-probing/get-agent-formats"},{"title":"Get agent products","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml get /api/public/agent-products","href":"/docs/registry/api-reference/agent-probing/get-agent-products"},{"title":"Validate publisher","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml get /api/public/validate-publisher","href":"/docs/registry/api-reference/agent-probing/validate-publisher"}]},{"group":"Policy Registry","pages":[{"title":"List policies","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml get /api/policies/registry","href":"/docs/registry/api-reference/policy-registry/list-policies"},{"title":"Resolve policy","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml get /api/policies/resolve","href":"/docs/registry/api-reference/policy-registry/resolve-policy"},{"title":"Bulk resolve policies","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml post /api/policies/resolve/bulk","href":"/docs/registry/api-reference/policy-registry/bulk-resolve-policies"},{"title":"Policy revision history","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml get /api/policies/history","href":"/docs/registry/api-reference/policy-registry/policy-revision-history"},{"title":"Save policy","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml post /api/policies/save","href":"/docs/registry/api-reference/policy-registry/save-policy"}]},{"group":"Change Feed","pages":[{"title":"Registry change feed","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml get /api/registry/feed","href":"/docs/registry/api-reference/change-feed/registry-change-feed"},{"title":"Registry change feed stream","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml get /api/registry/feed/stream","href":"/docs/registry/api-reference/change-feed/registry-change-feed-stream"},{"title":"Per-agent authorization pull","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml get /api/registry/authorizations","href":"/docs/registry/api-reference/change-feed/per-agent-authorization-pull"},{"title":"Bootstrap snapshot for inline verifiers","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml get /api/registry/authorizations/snapshot","href":"/docs/registry/api-reference/change-feed/bootstrap-snapshot-for-inline-verifiers"}]},{"group":"Brand Discovery","pages":[{"title":"Request brand.json re-crawl","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml post /api/registry/brand-crawl-request","href":"/docs/registry/api-reference/brand-discovery/request-brandjson-re-crawl"}]},{"group":"Agent Compliance","pages":[{"title":"Get agent compliance detail","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml get /api/registry/agents/{encodedUrl}/compliance","href":"/docs/registry/api-reference/agent-compliance/get-agent-compliance-detail"},{"title":"AAO public key set","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml get /api/.well-known/jwks.json","href":"/docs/registry/api-reference/agent-compliance/aao-public-key-set"},{"title":"Get agent AAO Verified status","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml get /api/registry/agents/{encodedUrl}/verification","href":"/docs/registry/api-reference/agent-compliance/get-agent-aao-verified-status"},{"title":"Get agent verification badge SVG","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml get /api/registry/agents/{encodedUrl}/badge/{role}.svg","href":"/docs/registry/api-reference/agent-compliance/get-agent-verification-badge-svg"},{"title":"Get embeddable badge code","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml get /api/registry/agents/{encodedUrl}/badge/{role}/embed","href":"/docs/registry/api-reference/agent-compliance/get-embeddable-badge-code"},{"title":"Get version-pinned agent verification badge SVG","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml get /api/registry/agents/{encodedUrl}/badge/{role}/{version}.svg","href":"/docs/registry/api-reference/agent-compliance/get-version-pinned-agent-verification-badge-svg"},{"title":"Get version-pinned embeddable badge code","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml get /api/registry/agents/{encodedUrl}/badge/{role}/{version}/embed","href":"/docs/registry/api-reference/agent-compliance/get-version-pinned-embeddable-badge-code"},{"title":"Get agent storyboard status","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml get /api/registry/agents/{encodedUrl}/storyboard-status","href":"/docs/registry/api-reference/agent-compliance/get-agent-storyboard-status"},{"title":"Bulk storyboard status","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml post /api/registry/agents/storyboard-status","href":"/docs/registry/api-reference/agent-compliance/bulk-storyboard-status"},{"title":"Get agent compliance history","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml get /api/registry/agents/{encodedUrl}/compliance/history","href":"/docs/registry/api-reference/agent-compliance/get-agent-compliance-history"},{"title":"Update agent lifecycle stage","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml put /api/registry/agents/{encodedUrl}/lifecycle","href":"/docs/registry/api-reference/agent-compliance/update-agent-lifecycle-stage"},{"title":"Update compliance opt-out","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml put /api/registry/agents/{encodedUrl}/compliance/opt-out","href":"/docs/registry/api-reference/agent-compliance/update-compliance-opt-out"},{"title":"Get monitoring settings","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml get /api/registry/agents/{encodedUrl}/monitoring/settings","href":"/docs/registry/api-reference/agent-compliance/get-monitoring-settings"},{"title":"Pause or resume monitoring","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml put /api/registry/agents/{encodedUrl}/monitoring/pause","href":"/docs/registry/api-reference/agent-compliance/pause-or-resume-monitoring"},{"title":"Update monitoring interval","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml put /api/registry/agents/{encodedUrl}/monitoring/interval","href":"/docs/registry/api-reference/agent-compliance/update-monitoring-interval"},{"title":"Requeue agent for compliance heartbeat","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml post /api/registry/agents/{encodedUrl}/monitoring/requeue","href":"/docs/registry/api-reference/agent-compliance/requeue-agent-for-compliance-heartbeat"},{"title":"Get per-step diagnostics for a compliance run","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml get /api/registry/agents/{encodedUrl}/compliance/diagnostics","href":"/docs/registry/api-reference/agent-compliance/get-per-step-diagnostics-for-a-compliance-run"},{"title":"Get outbound request log","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml get /api/registry/agents/{encodedUrl}/monitoring/requests","href":"/docs/registry/api-reference/agent-compliance/get-outbound-request-log"},{"title":"Refresh agent snapshot","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml post /api/registry/agents/{encodedUrl}/refresh","href":"/docs/registry/api-reference/agent-compliance/refresh-agent-snapshot"},{"title":"Get agent auth status","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml get /api/registry/agents/{encodedUrl}/auth-status","href":"/docs/registry/api-reference/agent-compliance/get-agent-auth-status"},{"title":"Connect agent credentials","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml put /api/registry/agents/{encodedUrl}/connect","href":"/docs/registry/api-reference/agent-compliance/connect-agent-credentials"},{"title":"Save OAuth 2.0 client-credentials for an agent","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml put /api/registry/agents/{encodedUrl}/oauth-client-credentials","href":"/docs/registry/api-reference/agent-compliance/save-oauth-20-client-credentials-for-an-agent"},{"title":"Dry-run the saved OAuth 2.0 client-credentials config","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml post /api/registry/agents/{encodedUrl}/oauth-client-credentials/test","href":"/docs/registry/api-reference/agent-compliance/dry-run-the-saved-oauth-20-client-credentials-config"},{"title":"Get applicable storyboards for agent","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml get /api/registry/agents/{encodedUrl}/applicable-storyboards","href":"/docs/registry/api-reference/agent-compliance/get-applicable-storyboards-for-agent"},{"title":"List storyboards","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml get /api/storyboards","href":"/docs/registry/api-reference/agent-compliance/list-storyboards"},{"title":"Get storyboard detail","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml get /api/storyboards/{id}","href":"/docs/registry/api-reference/agent-compliance/get-storyboard-detail"},{"title":"Run a single storyboard step","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml post /api/registry/agents/{encodedUrl}/storyboard/{storyboardId}/step/{stepId}","href":"/docs/registry/api-reference/agent-compliance/run-a-single-storyboard-step"},{"title":"Get first step preview","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml get /api/storyboards/{storyboardId}/first-step","href":"/docs/registry/api-reference/agent-compliance/get-first-step-preview"},{"title":"Run full storyboard evaluation","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml post /api/registry/agents/{encodedUrl}/storyboard/{storyboardId}/run","href":"/docs/registry/api-reference/agent-compliance/run-full-storyboard-evaluation"},{"title":"Compare storyboard against reference agent","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml post /api/registry/agents/{encodedUrl}/storyboard/{storyboardId}/compare","href":"/docs/registry/api-reference/agent-compliance/compare-storyboard-against-reference-agent"}]},{"group":"Member Agents","pages":[{"title":"List my registered agents","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml get /api/me/agents","href":"/docs/registry/api-reference/member-agents/list-my-registered-agents"},{"title":"Register an agent","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml post /api/me/agents","href":"/docs/registry/api-reference/member-agents/register-an-agent"},{"title":"Remove an agent","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml delete /api/me/agents/{url}","href":"/docs/registry/api-reference/member-agents/remove-an-agent"},{"title":"Update an agent","description":"Update one registered agent identified by its `url`. The `url` field itself cannot be changed via PATCH — supplying a `url` in the body that differs from the path returns `400 url_immutable`; re-register at the new URL and DELETE the old entry to migrate. All other fields accept partial updates.","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml patch /api/me/agents/{url}","href":"/docs/registry/api-reference/member-agents/update-an-agent"}]},{"group":"Onboarding","pages":[{"title":"Create or adopt my organization","deprecated":null,"version":null,"openapi":"/static/openapi/registry.yaml post /api/organizations","href":"/docs/registry/api-reference/onboarding/create-or-adopt-my-organization"}]}]},{"title":"GMSF リファレンス","description":"AI エージェントのための Global Media Sustainability Framework の要点","href":"/docs/reference/gmsf-reference"},{"title":"Media Channel Taxonomy","href":"/docs/reference/media-channel-taxonomy"},{"title":"メジャメント分類","sidebarTitle":"メジャメント分類","href":"/docs/measurement/taxonomy"},{"title":"Roadmap","href":"/docs/reference/roadmap"},{"title":"バージョンと互換性","sidebarTitle":"バージョン","href":"/docs/reference/versions"},{"title":"バージョニングとガバナンス","href":"/docs/reference/versioning"},{"title":"仕様ライフサイクル","sidebarTitle":"仕様ライフサイクル","href":"/docs/reference/specification-lifecycle"},{"title":"URL 正準化","href":"/docs/reference/url-canonicalization"},{"title":"プロトコル tarball の検証","href":"/docs/reference/verifying-protocol-tarballs"},{"title":"リファレンステストベクター","sidebarTitle":"リファレンステストベクター","href":"/docs/reference/test-vectors/index"},{"title":"実験的ステータス","sidebarTitle":"実験的ステータス","href":"/docs/reference/experimental-status"},{"title":"スキーマ拡張","sidebarTitle":"スキーマ拡張","href":"/docs/reference/schema-extensions"},{"title":"v2 サンセット","sidebarTitle":"v2 サンセット","href":"/docs/reference/v2-sunset"},{"title":"Release Notes","href":"/docs/reference/release-notes"},{"title":"Changelog","href":"/docs/reference/changelog"},{"title":"実装者向け FAQ","href":"/docs/reference/implementor-faq"},{"title":"用語集","href":"/docs/reference/glossary"},{"title":"ワーキンググループ","href":"/docs/community/working-group"},{"title":"コミュニティ Slack への参加","href":"/docs/community/joining-slack"},{"group":"貢献","pages":[{"title":"x-entity スキーマアノテーション","href":"/docs/contributing/x-entity-annotation"},{"title":"ストーリーボードの作成","href":"/docs/contributing/storyboard-authoring"},{"title":null,"href":"/docs/contributing/testable-snippets"},{"title":null,"href":"/docs/contributing/testable-examples-demo"}]}]},{"group":"AAO","pages":[{"title":"Addie を AI クライアントに接続する","href":"/docs/aao/connect-addie"},{"title":"Addie ツールリファレンス","href":"/docs/aao/addie-tools"},{"title":"AAO ディレクトリ API — エージェント ↔ パブリッシャー逆引き","href":"/docs/aao/directory-api"},{"title":"メンバー向け AAO","href":"/docs/aao/users"},{"title":"組織管理者向け AAO","href":"/docs/aao/org-admins"},{"title":"AAO 管理者向け AAO","href":"/docs/aao/aao-admins"}]},{"group":"認定","expanded":false,"pages":[{"title":"AdCP 認定プログラム","sidebarTitle":"概要","href":"/docs/learning/overview"},{"title":"教育設計フレームワーク","sidebarTitle":"教育方法論","href":"/docs/learning/instructional-design"},{"title":"障害モード能力スコープ","sidebarTitle":"障害モード","href":"/docs/learning/failure-mode-scope"},{"title":"学習者テストペルソナ","href":"/docs/learning/test-personas"},{"group":"意思決定者向け","pages":[{"title":"Decision-Makers トラック","sidebarTitle":"Decision-makers","href":"/docs/learning/decision-makers/overview"},{"title":"エージェント型広告の説明方法","sidebarTitle":"他者への説明","href":"/docs/learning/decision-makers/explaining-agentic-advertising"},{"title":"L1: エージェント型広告と逆転したデータフロー","sidebarTitle":"L1: エージェント型広告","href":"/docs/learning/decision-makers/l1-agentic-advertising"},{"title":"L2: コントロールサーフェスとしてのデータ・ブランド・ガバナンス","sidebarTitle":"L2: データ・ブランド・ガバナンス","href":"/docs/learning/decision-makers/l2-data-brand-governance"},{"title":"L3: 意思決定とリーダーシップ","sidebarTitle":"L3: 意思決定とリーダーシップ","href":"/docs/learning/decision-makers/l3-deciding-and-leading"}]},{"group":"基礎(無料)","pages":[{"title":"A1: AdCP の理由","sidebarTitle":"A1: AdCP の理由","href":"/docs/learning/foundations/a1-agentic-advertising"},{"title":"A2: 最初のメディアバイ","sidebarTitle":"A2: 最初のメディアバイ","href":"/docs/learning/foundations/a2-protocol-architecture"},{"title":"A2B: 最初のエージェント呼び出しのテスト","sidebarTitle":"A2B: 最初のエージェント呼び出しのテスト","href":"/docs/learning/foundations/a2b-testing-your-first-agent"},{"title":"A3: AdCP のランドスケープ","sidebarTitle":"A3: AdCP のランドスケープ","href":"/docs/learning/foundations/a3-ecosystem-governance"}]},{"group":"ロールトラック","pages":[{"title":"パブリッシャー / セラートラック","sidebarTitle":"パブリッシャートラック","href":"/docs/learning/tracks/publisher"},{"title":"バイヤー / ブランドトラック","sidebarTitle":"バイヤートラック","href":"/docs/learning/tracks/buyer"},{"title":"プラットフォーム / インターメディアリートラック","sidebarTitle":"プラットフォームトラック","href":"/docs/learning/tracks/platform"}]},{"group":"スペシャリストモジュール","pages":[{"title":"S1: メディアバイマスタリー","sidebarTitle":"S1: メディアバイ","href":"/docs/learning/specialist/media-buy"},{"title":"S2: クリエイティブマスタリー","sidebarTitle":"S2: クリエイティブ","href":"/docs/learning/specialist/creative"},{"title":"S3: シグナルとオーディエンス","sidebarTitle":"S3: シグナル","href":"/docs/learning/specialist/signals"},{"title":"S4: ガバナンス","sidebarTitle":"S4: ガバナンス","href":"/docs/learning/specialist/governance"},{"title":"S5: スポンサードインテリジェンス","sidebarTitle":"S5: スポンサードインテリジェンス","href":"/docs/learning/specialist/sponsored-intelligence"},{"title":"S6: セキュリティ","sidebarTitle":"S6: セキュリティ","href":"/docs/learning/specialist/security"},{"title":"S7: ブランドアイデンティティと検証","sidebarTitle":"S7: ブランドアイデンティティ","href":"/docs/learning/specialist/brand"}]},{"group":"ポリシー","expanded":false,"pages":[{"title":"差別禁止ポリシー","sidebarTitle":"差別禁止","href":"/docs/learning/policies/nondiscrimination"},{"title":"学習者記録とプライバシー","sidebarTitle":"学習者記録","href":"/docs/learning/policies/learner-records"},{"title":"再認定とプロトコル変更更新","sidebarTitle":"再認定","href":"/docs/learning/policies/recertification"},{"title":"苦情と申し立て","sidebarTitle":"苦情","href":"/docs/learning/policies/complaints"},{"title":"利益相反","sidebarTitle":"利益相反","href":"/docs/learning/policies/conflict-of-interest"},{"title":"知的財産","sidebarTitle":"知的財産","href":"/docs/learning/policies/intellectual-property"},{"title":"要員資格","sidebarTitle":"要員資格","href":"/docs/learning/policies/personnel-qualifications"},{"title":"返金とキャンセル","sidebarTitle":"返金","href":"/docs/learning/policies/refund"}]},{"group":"補足資料","pages":[{"title":"バイヤーブリーフと get_products リクエスト形状","sidebarTitle":"バイヤーブリーフ","href":"/docs/learning/supplements/buyer-briefs-and-get-products"},{"title":"クリエイティブエージェントワークフロー","sidebarTitle":"クリエイティブワークフロー","href":"/docs/learning/supplements/creative-agent-workflows"},{"title":"ロール別ガバナンスプロトコル","sidebarTitle":"ロール別ガバナンス","href":"/docs/learning/supplements/governance-protocol-by-role"}]}]}]}]},"title":"Create or adopt my organization - AdCP - Ad Context Protocol","buildId":"dpl_HcHmUS6i3UwswnTHJUEdcTtwfdTQ","deploymentId":"dpl_HcHmUS6i3UwswnTHJUEdcTtwfdTQ","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-BRm_l__d.js","utils-f1l1Oc-G.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-BlhqDhJO.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-DHCB7rsC.js","snippetPresets-CYXLx6Hv.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","ApiExamples-B78P2dEq.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-C4YLPVAh.js","shallow-vlLnTDkQ.js","getApiPlaygroundDisplay-D_98hhvf.js","CodeSnippet-DtnZHGqq.js","CodeSnippets-CLFb8KJt.js","Page-kQh739Uz.js","getPastedJson-Cq-zlbnU.js","icon-sN3t983t.js","MethodPill-P_YQ2s09.js","DuplicateIcon-BVzyNsGJ.js","createIcon-B3jqgqC6.js","DynamicMarkdown-Crwq6WG_.js","SectionHeading-C7pGS2Bb.js","axios-vUo_bRtp.js","Markdown-BuPH8yuW.js","clsx-CCOYKgaU.js","lib--scc4DXi.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-BnkC_6oA.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-BM4S31-f.js"]}