Agent
An advertising agent: A2A (agent-to-agent protocol) card plus registry identity. Unifies the seller repo's ``AgentCard`` and ``RegisteredAgent`` (the buyer repo shipped an incompatible card schema; this model is the single replacement for both). ID minting: ``agent_id`` is issued by the AAMP registry (the IAB Tech Lab agent discovery and trust registry) when the agent registers.
Properties
| Name | Type | Description |
|---|---|---|
| agent_id | string | Registry-issued agent identifier. |
| agent_type | object | |
| audience_capabilities | object | Audience capability discovery block. Kept as an open object here; the typed model lands with the audience-plan bead. |
| authentication | object | |
| capabilities | object | |
| contact | object | |
| description | string | |
| inventory_types | array | |
| name | string | |
| organization_id | object | Registry-issued id of the operating organization. |
| provider | object | |
| skills | array | |
| supported_deal_types | array | DealType wire values the agent supports: 'PG' (Programmatic Guaranteed), 'PD' (Preferred Deal), 'PA' (Private Auction). |
| tos_url | object | Terms-of-service URL. |
| trust_status | object | Registry-verified trust status. Caps the effective AccessTier; never self-asserted by the agent. |
| url | string | A2A service endpoint. |
| version | string |
JSON Schema
{
"$defs": {
"AgentAuthentication": {
"description": "Authentication requirements for interacting with an agent.",
"properties": {
"credentials_url": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Credentials Url"
},
"schemes": {
"items": {
"type": "string"
},
"title": "Schemes",
"type": "array"
}
},
"title": "AgentAuthentication",
"type": "object"
},
"AgentCapabilities": {
"description": "Protocol and feature capabilities of an agent.",
"properties": {
"protocols": {
"items": {
"type": "string"
},
"title": "Protocols",
"type": "array"
},
"push_notifications": {
"default": false,
"title": "Push Notifications",
"type": "boolean"
},
"streaming": {
"default": false,
"title": "Streaming",
"type": "boolean"
}
},
"title": "AgentCapabilities",
"type": "object"
},
"AgentProvider": {
"description": "Organization operating the agent.",
"properties": {
"description": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Description"
},
"name": {
"title": "Name",
"type": "string"
},
"url": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Url"
}
},
"required": [
"name"
],
"title": "AgentProvider",
"type": "object"
},
"AgentSkill": {
"description": "A declared capability of an agent.",
"properties": {
"description": {
"title": "Description",
"type": "string"
},
"id": {
"title": "Id",
"type": "string"
},
"name": {
"title": "Name",
"type": "string"
},
"tags": {
"items": {
"type": "string"
},
"title": "Tags",
"type": "array"
}
},
"required": [
"id",
"name",
"description"
],
"title": "AgentSkill",
"type": "object"
},
"AgentType": {
"description": "Type of agent in the registry.",
"enum": [
"buyer",
"seller",
"tool_provider",
"data_provider",
"other"
],
"title": "AgentType",
"type": "string"
},
"TrustStatus": {
"description": "Registry-verified trust status of an agent.\n\nDetermines the maximum :class:`AccessTier` an agent can claim. Per the\nremediation plan's registry-native corollary, trust is verified against\nthe AAMP registry (the IAB Tech Lab agent discovery and trust registry),\nnever self-asserted.",
"enum": [
"unknown",
"registered",
"approved",
"preferred",
"blocked"
],
"title": "TrustStatus",
"type": "string"
}
},
"description": "An advertising agent: A2A (agent-to-agent protocol) card plus registry identity.\n\nUnifies the seller repo's ``AgentCard`` and ``RegisteredAgent`` (the\nbuyer repo shipped an incompatible card schema; this model is the single\nreplacement for both).\n\nID minting: ``agent_id`` is issued by the AAMP registry (the IAB Tech\nLab agent discovery and trust registry) when the agent registers.",
"properties": {
"agent_id": {
"description": "Registry-issued agent identifier.",
"title": "Agent Id",
"type": "string"
},
"agent_type": {
"$ref": "#/$defs/AgentType",
"default": "buyer"
},
"audience_capabilities": {
"anyOf": [
{
"additionalProperties": true,
"type": "object"
},
{
"type": "null"
}
],
"default": null,
"description": "Audience capability discovery block. Kept as an open object here; the typed model lands with the audience-plan bead.",
"title": "Audience Capabilities"
},
"authentication": {
"$ref": "#/$defs/AgentAuthentication"
},
"capabilities": {
"$ref": "#/$defs/AgentCapabilities"
},
"contact": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Contact"
},
"description": {
"title": "Description",
"type": "string"
},
"inventory_types": {
"items": {
"type": "string"
},
"title": "Inventory Types",
"type": "array"
},
"name": {
"title": "Name",
"type": "string"
},
"organization_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Registry-issued id of the operating organization.",
"title": "Organization Id"
},
"provider": {
"$ref": "#/$defs/AgentProvider"
},
"skills": {
"items": {
"$ref": "#/$defs/AgentSkill"
},
"title": "Skills",
"type": "array"
},
"supported_deal_types": {
"description": "DealType wire values the agent supports: 'PG' (Programmatic Guaranteed), 'PD' (Preferred Deal), 'PA' (Private Auction).",
"items": {
"type": "string"
},
"title": "Supported Deal Types",
"type": "array"
},
"tos_url": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Terms-of-service URL.",
"title": "Tos Url"
},
"trust_status": {
"$ref": "#/$defs/TrustStatus",
"default": "unknown",
"description": "Registry-verified trust status. Caps the effective AccessTier; never self-asserted by the agent."
},
"url": {
"description": "A2A service endpoint.",
"title": "Url",
"type": "string"
},
"version": {
"default": "1.0.0",
"title": "Version",
"type": "string"
}
},
"required": [
"agent_id",
"name",
"description",
"url",
"provider"
],
"title": "Agent",
"type": "object"
}
Work with this as data
Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
curl "https://apis.io/api/v1/json-schemas/iab-tech-lab-agentic-primitive-agent"
curl "https://apis.io/api/v1/json-schemas?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.