> ## 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.

# List brands

> List all brands in the registry with optional search, pagination, source and house filters.



## OpenAPI

````yaml https://raw.githubusercontent.com/adcontextprotocol/adcp/v3.3.0-beta.5/static/openapi/registry.yaml get /api/brands/registry
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/brands/registry:
    get:
      tags:
        - Brand Resolution
      summary: List brands
      description: >-
        List all brands in the registry with optional search, pagination, source
        and house filters.
      operationId: listBrands
      parameters:
        - schema:
            type: string
          required: false
          name: search
          in: query
        - schema:
            type: string
            example: pg.com
            description: >-
              List the brands linked to this house by any evidence, each with a
              `house_link` saying how the link is known: `confirmed` (both
              sides, or the brand redirects to the house), `house_declared` (the
              house lists the brand in its own manifest and has shown it
              controls its domain), `brand_declared` (the brand names the house
              in its own brand.json) or `inferred` (an enrichment or community
              record). Only `confirmed` extends trust. `stats` honours the
              filter, and the response adds the house's own record as `house`.
          required: false
          description: >-
            List the brands linked to this house by any evidence, each with a
            `house_link` saying how the link is known: `confirmed` (both sides,
            or the brand redirects to the house), `house_declared` (the house
            lists the brand in its own manifest and has shown it controls its
            domain), `brand_declared` (the brand names the house in its own
            brand.json) or `inferred` (an enrichment or community record). Only
            `confirmed` extends trust. `stats` honours the filter, and the
            response adds the house's own record as `house`.
          name: house_domain
          in: query
        - schema:
            type: integer
            example: 100
          required: false
          name: limit
          in: query
        - schema:
            type: integer
            example: 0
          required: false
          name: offset
          in: query
        - schema:
            type: string
            enum:
              - hosted
              - brand_json
              - enriched
              - community
              - stub
            description: >-
              Filter by source. Values match the per-brand source field in the
              response: hosted = registered by domain owner via /api/brands;
              brand_json = crawler-discovered with a live
              /.well-known/brand.json; enriched = Brandfetch-sourced; community
              = manually contributed; stub = organization-derived placeholder
              awaiting stronger evidence.
          required: false
          description: >-
            Filter by source. Values match the per-brand source field in the
            response: hosted = registered by domain owner via /api/brands;
            brand_json = crawler-discovered with a live /.well-known/brand.json;
            enriched = Brandfetch-sourced; community = manually contributed;
            stub = organization-derived placeholder awaiting stronger evidence.
          name: source
          in: query
      responses:
        '200':
          description: Brand list with stats
          content:
            application/json:
              schema:
                type: object
                properties:
                  brands:
                    type: array
                    items:
                      $ref: '#/components/schemas/BrandRegistryItem'
                  stats:
                    type: object
                    properties:
                      total:
                        type: integer
                      hosted:
                        type: integer
                      brand_json:
                        type: integer
                      community:
                        type: integer
                      enriched:
                        type: integer
                      stub:
                        type: integer
                      houses:
                        type: integer
                      sub_brands:
                        type: integer
                      with_manifest:
                        type: integer
                    required:
                      - total
                      - hosted
                      - brand_json
                      - community
                      - enriched
                      - stub
                      - houses
                      - sub_brands
                      - with_manifest
                  house:
                    type:
                      - object
                      - 'null'
                    properties:
                      domain:
                        type: string
                        example: pg.com
                      brand_name:
                        type: string
                        example: Procter & Gamble
                      verified:
                        type: boolean
                        description: >-
                          The house has shown it controls its domain. Only a
                          verified house's manifest produces `house_declared`
                          links.
                    required:
                      - domain
                      - brand_name
                      - verified
                    description: >-
                      Present when `house_domain` is set: the house's own
                      registry record, or null when the registry has no public
                      record for it.
                required:
                  - brands
                  - stats
        '400':
          description: >-
            Invalid source filter, a house_domain that is not a domain, or a
            parameter given more than once
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
components:
  schemas:
    BrandRegistryItem:
      type: object
      properties:
        domain:
          type: string
          example: acmecorp.com
        brand_name:
          type: string
          example: Acme Corp
        source:
          type: string
          enum:
            - hosted
            - brand_json
            - community
            - enriched
            - stub
        has_manifest:
          type: boolean
        verified:
          type: boolean
        house_domain:
          type: string
        keller_type:
          type: string
          enum:
            - master
            - sub_brand
            - endorsed
            - independent
        relationship_trust:
          type: string
          enum:
            - inline
            - mutual
            - leaf_only
            - house_only
            - standalone
            - unverifiable
          description: >-
            Trust verdict for the brand-to-house relationship, cached from the
            last crawler resolution. Absent means not yet computed — absent MUST
            NOT be interpreted as `standalone`.
        relationship_verified_at:
          type: string
          format: date-time
          description: >-
            When the mutual-assertion edge was last confirmed by both sides.
            Present only when relationship_trust is `mutual`.
        claimed_house_domain:
          type: string
          description: >-
            Unilateral parent claim from the brand's own document. Not
            trust-extending. Present for `leaf_only` and `unverifiable`.
        house_link:
          type: string
          enum:
            - confirmed
            - house_declared
            - brand_declared
            - inferred
          description: >-
            Present when the list is filtered by `house_domain`: how this brand
            is known to belong to that house. `confirmed` means both sides
            publish the link or the brand redirects to the house, and is the
            only value that extends trust. `house_declared` means the house's
            own manifest lists the brand and the house has shown it controls its
            domain. `brand_declared` means the brand's own brand.json names the
            house. `inferred` means an enrichment or community record links
            them.
      required:
        - domain
        - source
        - has_manifest
        - verified
    Error:
      type: object
      properties:
        error:
          type: string
      required:
        - error

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.