> ## Documentation Index
> Fetch the complete documentation index at: https://docs.adcontextprotocol.org/llms.txt
> Use this file to discover all available pages before exploring further.

# Resolve policy

> Resolve a single policy by ID. Optionally pin to an immutable published version. Registry publications include canonical_content and its RFC 8785 SHA-256 content_digest; a version that was never published returns not found.



## OpenAPI

````yaml https://raw.githubusercontent.com/adcontextprotocol/adcp/v3.2.0-beta.9/static/openapi/registry.yaml get /api/policies/resolve
openapi: 3.1.0
info:
  title: AgenticAdvertising.org Registry API
  description: >-
    REST API for the AgenticAdvertising.org registry. Resolve brands,

    discover properties, look up agents, and validate authorization in the

    AdCP ecosystem.


    Most endpoints are public and require no authentication. Endpoints marked

    with a lock icon accept either an organization API key or a user JWT

    obtained via the OAuth 2.1 flow — see
    [Authentication](https://agenticadvertising.org/docs/registry/index#authentication).


    **Base URL:** `https://agenticadvertising.org`
  version: 1.0.0
  contact:
    name: AgenticAdvertising.org
    url: https://agenticadvertising.org
servers:
  - url: https://agenticadvertising.org
    description: Production
security: []
tags:
  - name: Onboarding
    description: >-
      Explicitly bootstrap a third-party integration into the AAO registry. Most
      callers don't need this tag — `POST /api/me/agents` auto-creates the org
      (for fresh users) and the member profile (for first-time agent
      registration) without a separate round trip. Use `POST /api/organizations`
      only when you need to override the auto-derived org name / company_type /
      revenue_tier. Tier transitions happen via the billing flow only; the
      Stripe webhook is the sole writer of `organizations.membership_tier`.
  - name: Member Agents
    description: >-
      Register, list, update, and remove agents on the caller's organization
      member profile. Authenticated programmatic surface for CI / scripts that
      don't want to round-trip the full member profile.
  - name: Brand Resolution
    description: Resolve advertiser domains to canonical brand identities.
  - name: Property Resolution
    description: >-
      Resolve publisher domains to their property configurations and authorized
      agents.
  - name: Agent Discovery
    description: >-
      Browse the federated agent network, search agent inventory profiles,
      publisher index, and registry statistics.
  - name: Change Feed
    description: Poll cursor-based registry change events for local sync.
  - name: Lookups & Authorization
    description: >-
      Look up agents by domain or property, and validate ad-serving
      authorization.
  - name: Validation Tools
    description: >-
      Validate publisher adagents.json files and generate compliant
      configurations.
  - name: Community Mirrors
    description: >-
      Propose, review, publish, fetch, list, and retire catalog-only
      adagents.json mirrors for platforms that have not adopted AdCP.
  - name: Search
    description: Cross-entity search across brands, publishers, agents, and properties.
  - name: Agent Probing
    description: >-
      Connect to live agents and inspect their capabilities, formats, and
      inventory.
  - name: Brand Discovery
    description: Discover and crawl brand.json files across domains.
  - name: Agent Compliance
    description: Agent compliance status, storyboard test results, and compliance history.
  - name: Policy Registry
    description: >-
      Browse, resolve, and contribute governance policies for campaign
      compliance.
  - name: Property Catalog
    description: >-
      Contribute facts to the property fact-graph: resolve identifiers to stable
      property_rids (which also contributes them, with provenance) and dispute
      catalog claims.
paths:
  /api/policies/resolve:
    get:
      tags:
        - Policy Registry
      summary: Resolve policy
      description: >-
        Resolve a single policy by ID. Optionally pin to an immutable published
        version. Registry publications include canonical_content and its RFC
        8785 SHA-256 content_digest; a version that was never published returns
        not found.
      operationId: resolvePolicy
      parameters:
        - schema:
            type: string
            example: gdpr_consent
          required: true
          name: policy_id
          in: query
        - schema:
            type: string
            description: Return null if the current version does not match
          required: false
          description: Return null if the current version does not match
          name: version
          in: query
      responses:
        '200':
          description: Policy resolved
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Policy'
        '400':
          description: Missing policy_id
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: Policy not found
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                  policy_id:
                    type: string
                required:
                  - error
                  - policy_id
components:
  schemas:
    Policy:
      type: object
      properties:
        policy_id:
          type: string
          example: gdpr_consent
        version:
          type: string
          example: 1.0.0
        name:
          type: string
          example: GDPR Consent Requirements
        description:
          type:
            - string
            - 'null'
          example: Requirements for valid consent under GDPR
        category:
          type: string
          enum:
            - regulation
            - standard
        enforcement:
          type: string
          enum:
            - must
            - should
            - may
        jurisdictions:
          type: array
          items:
            type: string
          example:
            - EU
            - EEA
        region_aliases:
          type: object
          additionalProperties:
            type: array
            items:
              type: string
          example:
            EU:
              - DE
              - FR
              - IT
        policy_categories:
          type: array
          items:
            type: string
          example:
            - age_restricted
            - pharmaceutical_advertising
        channels:
          type:
            - array
            - 'null'
          items:
            type: string
          example:
            - display
            - video
        governance_domains:
          type: array
          items:
            type: string
          example:
            - campaign
            - creative
        effective_date:
          type:
            - string
            - 'null'
          example: '2025-05-25T00:00:00.000Z'
        sunset_date:
          type:
            - string
            - 'null'
        source_url:
          type:
            - string
            - 'null'
          example: https://eur-lex.europa.eu/eli/reg/2016/679/oj
        source_name:
          type:
            - string
            - 'null'
          example: EUR-Lex
        issuer:
          type:
            - object
            - 'null'
          properties:
            domain:
              type: string
            name:
              type: string
          required:
            - domain
          description: Machine-readable identity of the authoritative policy issuer
        acceptance_profile:
          type:
            - object
            - 'null'
          properties:
            profile_id:
              type: string
              pattern: ^[A-Za-z0-9_.:-]+$
            version:
              type: string
              minLength: 1
            content_digest:
              type: string
              pattern: ^sha256:[a-f0-9]{64}$
            policy_refs:
              type: array
              items:
                type: object
                properties:
                  policy_id:
                    type: string
                    minLength: 1
                  version:
                    type: string
                    minLength: 1
                  content_digest:
                    type: string
                    pattern: ^sha256:[a-f0-9]{64}$
                required:
                  - policy_id
                  - version
                  - content_digest
                additionalProperties: false
              minItems: 1
            coverage:
              type: string
              enum:
                - partial
                - complete
            scope:
              type: object
              properties:
                subject_categories:
                  type: array
                  items:
                    type: string
                    pattern: ^[a-z][a-z0-9_]*$
                  minItems: 1
                applies_to:
                  type: array
                  items:
                    type: string
                    enum:
                      - account
                      - media_buy
                      - creative
                      - landing_page
                      - targeting
                      - delivery
                      - format
                  minItems: 1
                jurisdictions:
                  type: array
                  items:
                    type: string
                    pattern: ^[A-Z]{2}$
                  minItems: 1
                jurisdiction_groups:
                  type: array
                  items:
                    type: string
                    pattern: ^[A-Z][A-Z0-9_-]*$
                  minItems: 1
                all_jurisdictions:
                  type: boolean
                  enum:
                    - true
              required:
                - subject_categories
                - applies_to
              additionalProperties: false
            region_aliases:
              type: object
              additionalProperties:
                type: array
                items:
                  type: string
                  pattern: ^[A-Z]{2}$
                minItems: 1
            description:
              type: string
              minLength: 1
            rules:
              type: array
              items:
                type: object
                properties:
                  rule_id:
                    type: string
                    pattern: ^[A-Za-z0-9_.:-]+$
                  subject_category:
                    type: string
                    pattern: ^[a-z][a-z0-9_]*$
                  subject_facets:
                    type: array
                    items:
                      type: string
                      pattern: ^[a-z][a-z0-9_]*$
                    minItems: 1
                  advertiser_roles:
                    type: array
                    items:
                      type: string
                      pattern: ^[a-z][a-z0-9_]*$
                    minItems: 1
                  jurisdictions:
                    type: array
                    items:
                      type: string
                      pattern: ^[A-Z]{2}$
                    minItems: 1
                  jurisdiction_groups:
                    type: array
                    items:
                      type: string
                      pattern: ^[A-Z][A-Z0-9_-]*$
                    minItems: 1
                  applies_to:
                    type: array
                    items:
                      type: string
                      enum:
                        - account
                        - media_buy
                        - creative
                        - landing_page
                        - targeting
                        - delivery
                        - format
                    minItems: 1
                  disposition:
                    type: string
                    enum:
                      - allowed
                      - conditional
                      - prohibited
                  requirements:
                    type: array
                    items:
                      oneOf:
                        - type: object
                          properties:
                            kind:
                              type: string
                              enum:
                                - category_declaration
                            declaration:
                              type: string
                              minLength: 1
                            description:
                              type: string
                              minLength: 1
                          required:
                            - kind
                          additionalProperties: false
                        - type: object
                          properties:
                            kind:
                              type: string
                              enum:
                                - advertiser_verification
                            verification_scheme:
                              type: string
                              minLength: 1
                            description:
                              type: string
                              minLength: 1
                          required:
                            - kind
                          additionalProperties: false
                        - type: object
                          properties:
                            kind:
                              type: string
                              enum:
                                - advertiser_eligibility
                            criteria:
                              type: array
                              items:
                                type: string
                                pattern: ^[a-z][a-z0-9_.:-]*$
                              minItems: 1
                            description:
                              type: string
                              minLength: 1
                          required:
                            - kind
                            - criteria
                          additionalProperties: false
                        - type: object
                          properties:
                            kind:
                              type: string
                              enum:
                                - funding_restriction
                            criteria:
                              type: array
                              items:
                                type: string
                                pattern: ^[a-z][a-z0-9_.:-]*$
                              minItems: 1
                            description:
                              type: string
                              minLength: 1
                          required:
                            - kind
                            - criteria
                          additionalProperties: false
                        - type: object
                          properties:
                            kind:
                              type: string
                              enum:
                                - certification
                            credential:
                              type: string
                              minLength: 1
                            description:
                              type: string
                              minLength: 1
                          required:
                            - kind
                          additionalProperties: false
                        - type: object
                          properties:
                            kind:
                              type: string
                              enum:
                                - license
                            credential:
                              type: string
                              minLength: 1
                            description:
                              type: string
                              minLength: 1
                          required:
                            - kind
                          additionalProperties: false
                        - type: object
                          properties:
                            kind:
                              type: string
                              enum:
                                - prior_authorization
                            description:
                              type: string
                              minLength: 1
                          required:
                            - kind
                          additionalProperties: false
                        - type: object
                          properties:
                            kind:
                              type: string
                              enum:
                                - account_setup
                            description:
                              type: string
                              minLength: 1
                          required:
                            - kind
                          additionalProperties: false
                        - type: object
                          properties:
                            kind:
                              type: string
                              enum:
                                - sales_assisted
                            description:
                              type: string
                              minLength: 1
                          required:
                            - kind
                          additionalProperties: false
                        - type: object
                          properties:
                            kind:
                              type: string
                              enum:
                                - transparency_reporting
                            description:
                              type: string
                              minLength: 1
                          required:
                            - kind
                          additionalProperties: false
                        - type: object
                          properties:
                            kind:
                              type: string
                              enum:
                                - disclosure
                            format:
                              type: string
                              minLength: 1
                            placement:
                              type: string
                              minLength: 1
                            description:
                              type: string
                              minLength: 1
                          required:
                            - kind
                          additionalProperties: false
                        - type: object
                          properties:
                            kind:
                              type: string
                              enum:
                                - targeting_restriction
                            restricted_attributes:
                              type: array
                              items:
                                type: string
                                enum:
                                  - racial_ethnic_origin
                                  - political_opinions
                                  - religious_beliefs
                                  - trade_union_membership
                                  - health_data
                                  - sex_life_sexual_orientation
                                  - genetic_data
                                  - biometric_data
                                  - age
                                  - familial_status
                              minItems: 1
                            description:
                              type: string
                              minLength: 1
                          required:
                            - kind
                          additionalProperties: false
                        - type: object
                          properties:
                            kind:
                              type: string
                              enum:
                                - creative_restriction
                            description:
                              type: string
                              minLength: 1
                          required:
                            - kind
                            - description
                          additionalProperties: false
                        - type: object
                          properties:
                            kind:
                              type: string
                              enum:
                                - destination_restriction
                            description:
                              type: string
                              minLength: 1
                          required:
                            - kind
                            - description
                          additionalProperties: false
                        - type: object
                          properties:
                            kind:
                              type: string
                              enum:
                                - format_restriction
                            format_ids:
                              type: array
                              items:
                                type: string
                                minLength: 1
                              minItems: 1
                            description:
                              type: string
                              minLength: 1
                          required:
                            - kind
                          additionalProperties: false
                        - type: object
                          properties:
                            kind:
                              type: string
                              enum:
                                - time_restriction
                            starts_at:
                              type: string
                              format: date-time
                            ends_at:
                              type: string
                              format: date-time
                            description:
                              type: string
                              minLength: 1
                          required:
                            - kind
                          additionalProperties: false
                        - type: object
                          properties:
                            kind:
                              type: string
                              enum:
                                - custom
                            id:
                              type: string
                              pattern: ^[a-z][a-z0-9_.:-]*$
                            description:
                              type: string
                              minLength: 1
                            ext:
                              type: object
                              additionalProperties: {}
                          required:
                            - kind
                            - id
                            - description
                          additionalProperties: false
                    minItems: 1
                  policy_ids:
                    type: array
                    items:
                      type: string
                      minLength: 1
                    minItems: 1
                  description:
                    type: string
                    minLength: 1
                    maxLength: 1000
                  effective_at:
                    type: string
                    format: date-time
                  expires_at:
                    type: string
                    format: date-time
                  ext:
                    type: object
                    additionalProperties: {}
                required:
                  - rule_id
                  - subject_category
                  - applies_to
                  - disposition
                additionalProperties: false
              minItems: 1
            ext:
              type: object
              additionalProperties: {}
          required:
            - profile_id
            - version
            - content_digest
            - policy_refs
            - coverage
            - rules
          additionalProperties: false
          description: >-
            Version-pinned structured acceptance profile published with an
            authoritative registry policy
        content_digest:
          type:
            - string
            - 'null'
          pattern: ^sha256:[a-f0-9]{64}$
          description: >-
            SHA-256 of the RFC 8785 (JCS) serialization of canonical_content.
            Present for immutable registry publications; null for legacy or
            community policies.
        canonical_content:
          type:
            - object
            - 'null'
          additionalProperties: {}
          description: >-
            Exact immutable registry policy document covered by content_digest.
            This excludes acceptance_profile, which has its own digest.
            Consumers MUST canonicalize this object with RFC 8785 before
            verifying content_digest.
        policy:
          type: string
          example: >-
            Data subjects must provide freely given, specific, informed and
            unambiguous consent...
        guidance:
          type:
            - string
            - 'null'
        exemplars:
          type:
            - object
            - 'null'
          properties:
            pass:
              type: array
              items:
                type: object
                properties:
                  scenario:
                    type: string
                    example: Ad for alcohol shown during children's programming
                  explanation:
                    type: string
                    example: Violates watershed timing rules for alcohol advertising
                required:
                  - scenario
                  - explanation
            fail:
              type: array
              items:
                type: object
                properties:
                  scenario:
                    type: string
                    example: Ad for alcohol shown during children's programming
                  explanation:
                    type: string
                    example: Violates watershed timing rules for alcohol advertising
                required:
                  - scenario
                  - explanation
        ext:
          type:
            - object
            - 'null'
          additionalProperties: {}
        source_type:
          type: string
          enum:
            - registry
            - community
        review_status:
          type: string
          enum:
            - pending
            - approved
        created_at:
          type: string
          example: '2026-03-01T12:00:00.000Z'
        updated_at:
          type: string
          example: '2026-03-01T12:00:00.000Z'
      required:
        - policy_id
        - version
        - name
        - description
        - category
        - enforcement
        - jurisdictions
        - region_aliases
        - policy_categories
        - channels
        - governance_domains
        - effective_date
        - sunset_date
        - source_url
        - source_name
        - issuer
        - acceptance_profile
        - content_digest
        - canonical_content
        - policy
        - guidance
        - exemplars
        - ext
        - source_type
        - review_status
        - created_at
        - updated_at
    Error:
      type: object
      properties:
        error:
          type: string
      required:
        - error

````