@adcp/client API Reference - v4.19.0
    Preparing search index...

    Class RegistryClient

    Client for the AdCP Registry API.

    Covers brand resolution, property resolution, agent discovery, authorization lookups, validation tools, and search.

    const registry = new RegistryClient({ apiKey: 'sk_...' });
    const brand = await registry.lookupBrand('nike.com');
    const agents = await registry.listAgents({ type: 'sales' });
    const results = await registry.search('nike');
    Index

    Constructors

    Methods

    • Resolve a single domain to its canonical brand identity.

      Parameters

      • domain: string

      Returns Promise<
          | {
              canonical_id: string;
              canonical_domain: string;
              brand_name: string;
              names?: { [key: string]: string }[];
              keller_type?: "master" | "sub_brand" | "endorsed" | "independent";
              parent_brand?: string;
              house_domain?: string;
              house_name?: string;
              brand_agent_url?: string;
              brand_manifest?: { [key: string]: unknown };
              source: "brand_json" | "community" | "enriched";
          }
          | null,
      >

    • Search for companies by name or keyword, resolving colloquial names to canonical brand forms.

      Parameters

      • query: string
      • Optionaloptions: { limit?: number }

      Returns Promise<FindCompanyResult>

    • Bulk resolve domains to their canonical brand identities (max 100).

      Parameters

      • domains: string[]

      Returns Promise<
          Record<
              string,
              | {
                  canonical_id: string;
                  canonical_domain: string;
                  brand_name: string;
                  names?: { [key: string]: string }[];
                  keller_type?: "master" | "sub_brand" | "endorsed" | "independent";
                  parent_brand?: string;
                  house_domain?: string;
                  house_name?: string;
                  brand_agent_url?: string;
                  brand_manifest?: { [key: string]: unknown };
                  source: "brand_json" | "community" | "enriched";
              }
              | null,
          >,
      >

    • List brands in the registry with optional search and pagination.

      Parameters

      Returns Promise<
          {
              brands: {
                  domain: string;
                  brand_name?: string;
                  source: "brand_json"
                  | "community"
                  | "enriched"
                  | "hosted";
                  has_manifest: boolean;
                  verified: boolean;
                  house_domain?: string;
                  keller_type?: "master" | "sub_brand" | "endorsed" | "independent";
              }[];
              stats: Record<string, unknown>;
          },
      >

    • Fetch raw brand.json data for a domain.

      Parameters

      • domain: string

      Returns Promise<Record<string, unknown> | null>

    • Enrich a brand with Brandfetch data.

      Parameters

      • domain: string

      Returns Promise<Record<string, unknown>>

    • Save or update a community brand. Requires authentication.

      Parameters

      • brand: {
            domain: string;
            brand_name: string;
            brand_manifest?: { [key: string]: unknown };
        }
        • domain: string
          acmecorp.com
          
        • brand_name: string
          Acme Corp
          
        • Optionalbrand_manifest?: { [key: string]: unknown }

      Returns Promise<
          {
              success: true;
              message: string;
              domain: string;
              id: string;
              revision_number?: number;
          },
      >

    • Resolve a single domain to its property information.

      Parameters

      • domain: string

      Returns Promise<
          | {
              publisher_domain: string;
              source: "hosted"
              | "adagents_json"
              | "discovered";
              authorized_agents?: { url: string; authorized_for?: string }[];
              properties?: {
                  id?: string;
                  type?: string;
                  name?: string;
                  identifiers?: { type: string; value: string }[];
                  tags?: string[];
              }[];
              contact?: { name?: string; email?: string };
              verified: boolean;
          }
          | null,
      >

    • Bulk resolve domains to their property information (max 100).

      Parameters

      • domains: string[]

      Returns Promise<
          Record<
              string,
              | {
                  publisher_domain: string;
                  source: "hosted"
                  | "adagents_json"
                  | "discovered";
                  authorized_agents?: { url: string; authorized_for?: string }[];
                  properties?: {
                      id?: string;
                      type?: string;
                      name?: string;
                      identifiers?: { type: string; value: string }[];
                      tags?: string[];
                  }[];
                  contact?: { name?: string; email?: string };
                  verified: boolean;
              }
              | null,
          >,
      >

    • List properties in the registry with optional search and pagination.

      Parameters

      Returns Promise<
          {
              properties: {
                  domain: string;
                  source: | "community"
                  | "enriched"
                  | "hosted"
                  | "adagents_json"
                  | "discovered";
                  property_count: number;
                  agent_count: number;
                  verified: boolean;
              }[];
              stats: Record<string, unknown>;
          },
      >

    • Validate a domain's adagents.json file.

      Parameters

      • domain: string

      Returns Promise<
          {
              valid: boolean;
              domain?: string;
              url?: string;
              errors?: string[];
              warnings?: string[];
              status_code?: number;
              raw_data?: { [key: string]: unknown };
          },
      >

    • Save or update a hosted property. Requires authentication.

      Parameters

      • property: {
            publisher_domain: string;
            authorized_agents: { url: string; authorized_for?: string }[];
            properties?: { type: string; name: string }[];
            contact?: { name?: string; email?: string };
        }
        • publisher_domain: string
          examplepub.com
          
        • authorized_agents: { url: string; authorized_for?: string }[]
          [
          {
          "url": "https://agent.example.com"
          }
          ]
        • Optionalproperties?: { type: string; name: string }[]
          [
          {
          "type": "website",
          "name": "Example Publisher"
          }
          ]
        • Optionalcontact?: { name?: string; email?: string }

      Returns Promise<
          { success: true; message: string; id: string; revision_number?: number },
      >

    • List registered agents with optional filtering.

      Parameters

      Returns Promise<
          {
              agents: {
                  url: string;
                  name: string;
                  type: "unknown"
                  | "creative"
                  | "signals"
                  | "governance"
                  | "sales"
                  | "si";
                  protocol?: "mcp" | "a2a";
                  description?: string;
                  mcp_endpoint?: string;
                  contact?: { name: string; email: string; website: string };
                  added_date?: string;
                  source?: "discovered" | "registered";
                  member?: { slug?: string; display_name?: string };
                  discovered_from?: { publisher_domain?: string; authorized_for?: string };
                  health?: {
                      online: boolean;
                      checked_at: string;
                      response_time_ms?: number;
                      tools_count?: number;
                      resources_count?: number;
                      error?: string;
                  };
                  stats?: {
                      property_count?: number;
                      publisher_count?: number;
                      publishers?: string[];
                      creative_formats?: number;
                  };
                  capabilities?: {
                      tools_count: number;
                      tools?: { name: string; description: string }[];
                      standard_operations?: {
                          can_search_inventory: boolean;
                          can_get_availability: boolean;
                          can_reserve_inventory: boolean;
                          can_get_pricing: boolean;
                          can_create_order: boolean;
                          can_list_properties: boolean;
                      };
                      creative_capabilities?: {
                          formats_supported: string[];
                          can_generate: boolean;
                          can_validate: boolean;
                          can_preview: boolean;
                      };
                  };
                  publisher_domains?: string[];
                  property_summary?: {
                      total_count: number;
                      count_by_type: { [key: string]: number };
                      tags: string[];
                      publisher_count: number;
                  };
              }[];
              count: number;
              sources: Record<string, unknown>;
          },
      >

    • List publishers in the registry.

      Returns Promise<
          {
              publishers: {
                  domain: string;
                  source?: "discovered"
                  | "registered";
                  member?: { slug?: string; display_name?: string };
                  agent_count?: number;
                  last_validated?: string;
                  discovered_from?: { agent_url?: string };
                  has_valid_adagents?: boolean;
                  discovered_at?: string;
              }[];
              count: number;
              sources: Record<string, unknown>;
          },
      >

    • Get aggregate registry statistics.

      Returns Promise<Record<string, unknown>>

    • Look up agents authorized for a domain.

      Parameters

      • domain: string

      Returns Promise<
          {
              domain: string;
              authorized_agents: {
                  url: string;
                  authorized_for?: string;
                  source?: "discovered"
                  | "registered";
                  member?: { slug?: string; display_name?: string };
              }[];
              sales_agents_claiming: {
                  url: string;
                  source?: "discovered"
                  | "registered";
                  member?: { slug?: string; display_name?: string };
              }[];
          },
      >

    • Look up agents by property identifier (type + value).

      Parameters

      • type: string
      • value: string

      Returns Promise<Record<string, unknown>>

    • Get domains associated with an agent.

      Parameters

      • agentUrl: string

      Returns Promise<{ agent_url: string; domains: string[]; count: number }>

    • Check if an agent is authorized for a specific property identifier.

      Parameters

      • agentUrl: string
      • identifierType: string
      • identifierValue: string

      Returns Promise<
          {
              agent_url: string;
              identifier_type: string;
              identifier_value: string;
              authorized: boolean;
              checked_at: string;
          },
      >

    • Validate product authorization for an agent across publisher properties.

      Parameters

      • agentUrl: string
      • publisherProperties: {
            publisher_domain?: string;
            property_types?: string[];
            property_ids?: string[];
            tags?: string[];
        }[]
        • Optionalpublisher_domain?: string
          examplepub.com
          
        • Optionalproperty_types?: string[]
        • Optionalproperty_ids?: string[]
        • Optionaltags?: string[]

      Returns Promise<Record<string, unknown>>

    • Expand product identifiers for an agent across publisher properties.

      Parameters

      • agentUrl: string
      • publisherProperties: {
            publisher_domain?: string;
            property_types?: string[];
            property_ids?: string[];
            tags?: string[];
        }[]
        • Optionalpublisher_domain?: string
          examplepub.com
          
        • Optionalproperty_types?: string[]
        • Optionalproperty_ids?: string[]
        • Optionaltags?: string[]

      Returns Promise<Record<string, unknown>>

    • Check a list of publisher domains against the AAO registry.

      Normalizes domains (strips www/m prefixes), removes duplicates, flags known ad tech infrastructure, and identifies domains not yet in the registry. Returns four buckets:

      • remove: duplicates or known blocked domains (ad servers, CDNs, trackers)
      • modify: domains that were normalized (e.g. www.example.comexample.com)
      • assess: unknown domains not in registry, not blocked
      • ok: domains found in registry with no changes needed

      Results are stored for 7 days and retrievable via the report_id.

      Parameters

      • domains: string[]

      Returns Promise<
          {
              summary: {
                  total: number;
                  remove: number;
                  modify: number;
                  assess: number;
                  ok: number;
              };
              remove: {
                  input: string;
                  canonical: string;
                  reason: "duplicate"
                  | "blocked";
                  domain_type?: string;
                  blocked_reason?: string;
              }[];
              modify: { input: string; canonical: string; reason: string }[];
              assess: { domain: string }[];
              ok: { domain: string; source: string }[];
              report_id: string;
          },
      >

    • Retrieve a previously stored property check report by ID. Reports expire after 7 days.

      Note: the report endpoint only returns the summary counts, not the full per-domain buckets. Use checkPropertyList to get the full detail (stored for 7 days via report_id).

      Parameters

      • reportId: string

      Returns Promise<
          {
              summary: {
                  total: number;
                  remove: number;
                  modify: number;
                  assess: number;
                  ok: number;
              };
          },
      >

    • Validate a domain's adagents.json compliance.

      Parameters

      • domain: string

      Returns Promise<Record<string, unknown>>

    • Generate a valid adagents.json from an agent configuration.

      Parameters

      • config: {
            authorized_agents: { url: string; authorized_for?: string }[];
            include_schema?: boolean;
            include_timestamp?: boolean;
            properties?: unknown[];
        }

      Returns Promise<Record<string, unknown>>

    • Search brands, publishers, and properties.

      Parameters

      • query: string

      Returns Promise<{ brands: unknown[]; publishers: unknown[]; properties: unknown[] }>

    • Look up a manifest reference by domain.

      Parameters

      • domain: string
      • Optionaltype: string

      Returns Promise<Record<string, unknown>>

    • Probe a live agent endpoint to discover its capabilities.

      Parameters

      • url: string

      Returns Promise<Record<string, unknown>>

    • Get creative formats supported by an agent.

      Parameters

      • url: string

      Returns Promise<Record<string, unknown>>

    • Get products available from an agent.

      Parameters

      • url: string

      Returns Promise<Record<string, unknown>>

    • Validate a publisher domain's configuration.

      Parameters

      • domain: string

      Returns Promise<Record<string, unknown>>