Skip to main content
GET /api/v2/storefront/discover-agents Queries the agenticadvertising.org registry (with an adagents.json fallback) for the operator and publisher agents authorized for a domain. Use it to see what the AAO registry knows about an operator domain before you connect or list. Results are server-side cached for 2 minutes; pass refresh=true to bypass the cache.

Request

curl
curl "https://api.interchange.io/api/v2/storefront/discover-agents?domain=acme-media.example.com" \
  -H "Authorization: Bearer $SCOPE3_API_KEY"

Parameters

ParamInTypeRequiredNotes
domainquerystringYesOperator domain to discover agents for. Must be a valid domain (e.g. example.com)
refreshquery"true" | "false"NoSet to "true" to bypass the 2-minute server-side cache and refetch
x-aao-api-keyheaderstringNoAAO session token for the calling user. When provided, the registry response is scoped to their account and includes private/draft agents. Falls back to the platform key when omitted

Response

{
  "domain": "acme-media.example.com",
  "operator": {
    "domain": "acme-media.example.com",
    "member": {
      "slug": "acme-media",
      "display_name": "Acme Media"
    },
    "agents": [
      {
        "url": "https://agent.acme-media.example.com/mcp",
        "name": "Acme Media Sales Agent",
        "type": "sales",
        "compliance": {},
        "storyboards": [],
        "authorized_by": []
      }
    ]
  },
  "publisher": {
    "domain": "acme-media.example.com",
    "member": {
      "slug": "acme-media",
      "display_name": "Acme Media"
    },
    "adagents_valid": true,
    "properties": [],
    "authorized_agents": []
  }
}
FieldTypeDescription
domainstringThe domain that was queried
operatorobjectAgents registered to this operator domain
operator.domainstringOperator domain
operator.memberobject | nullRegistry member: { slug, display_name, is_founding_member?, membership_tier?, membership_tier_label? }, or null when the domain is not a member
operator.agents[]arrayEach agent: { url, name, type } plus optional compliance, storyboards[], authorized_by[]
publisherobjectPublisher record from the AAO registry or the adagents.json fallback
publisher.domainstringPublisher domain
publisher.memberobject | nullRegistry member { slug, display_name }, or null
publisher.adagents_validboolean | nullWhether the adagents.json fallback validated, or null when not checked
publisher.properties[]arrayPublisher property records
publisher.authorized_agents[]arrayAgents authorized to sell this publisher’s inventory

Errors

  • 400 VALIDATION_ERRORdomain missing or empty.
  • 401 UNAUTHORIZED — missing or invalid bearer token.
See Errors for the full error contract.

Storefront tasks

All core storefront operations.

Resolve brand

Look up a brand profile by domain.

Storefront overview

Marketplace review and AAO gating.