AdCP 3.1.13
AdCP Protocol
AdCP Protocol is a schema group of the Ad Context Protocol holding 3 of the 64 operations in release 3.1.13, covering capability discovery and task tracking across every AdCP domain protocol: get_adcp_capabilities, get_task_status and list_tasks.
The protocol group holds the operations that belong to no single domain protocol. get_adcp_capabilities is the first call a buyer makes and the one operation required of every conforming agent: it returns the seller's supported protocols, auth model, version and feature capabilities, and it is the only thing that says which variant of list_creative_formats an agent implements. get_task_status and list_tasks track work that came back submitted, working or input-required rather than completed.
This group belongs to no declared protocol layer. The layer list covers negotiation and serving and omits protocol, so the required entry point to AdCP sits outside both layers. Layer membership has no effect on conformance.
What the 3 protocol operations do
| Operation | Request fields | Response fields | What it does |
|---|---|---|---|
get_adcp_capabilities | 5 | 35 | get_adcp_capabilities is the first call a buyer makes to discover an AdCP seller's supported protocols, auth model, version, and feature capabilities. |
get_task_status | 8 | 24 | Request parameters for the get_task_status AdCP tool. |
list_tasks | 9 | 17 | Request parameters for the list_tasks AdCP tool. |
get_adcp_capabilities
get_adcp_capabilities is the first call a buyer makes to discover an AdCP seller's supported protocols, auth model, version, and feature capabilities.
Every field and edge case for get_adcp_capabilities
| Field | Type | Required | Description |
|---|---|---|---|
adcp_version | string | Release-precision AdCP version (VERSION.RELEASE, e.g. | |
adcp_major_version | integer | DEPRECATED in favor of adcp_version (release-precision string). | |
protocols | string[] | Specific protocols to query capabilities for. One of: media_buy, signals, governance, sponsored_intelligence, creative. | |
context | context | Opaque correlation data that is echoed unchanged in responses. | |
ext | ext | Extension object for platform-specific, vendor-namespaced parameters. |
get_adcp_capabilities response — 35 fields, 3 required
| Field | Type | Required | Description |
|---|---|---|---|
adcp_version | string | Release-precision AdCP version (VERSION.RELEASE, e.g. | |
adcp_major_version | integer | DEPRECATED in favor of adcp_version (release-precision string). | |
context_id | string | Session/conversation identifier for tracking related operations across multiple task invocations. | |
context | context | Opaque correlation data that is echoed unchanged in responses. | |
task_id | string | Unique identifier for tracking asynchronous operations. | |
status | task-status | required | Current task execution state. One of: submitted, working, input-required, completed, canceled, failed, rejected, auth-required, unknown. |
message | string | Human-readable summary of the task result. | |
timestamp | string | ISO 8601 timestamp when the response was generated. | |
replayed | boolean | Set to true when this response was returned from the idempotency cache rather than from a fresh execution. | |
adcp_error | error | Transport-envelope error signal for fatal task failures. | |
push_notification_config | push-notification-config | Push notification configuration for async task updates (A2A and REST protocols). | |
governance_context | string | Governance context token issued by the account's governance agent during check_governance. | |
payload | object | Conceptual grouping for the task-specific response data defined by individual task response schemas (e.g., get-products-response.json, create-media-buy-response.json). | |
adcp | object | required | Core AdCP protocol information |
supported_protocols | string[] | required | AdCP protocols this agent supports. One of: media_buy, signals, governance, sponsored_intelligence, creative, brand, measurement. |
account | object | Account management capabilities. | |
media_buy | object | Media-buy protocol capabilities. | |
signals | object | Signals protocol capabilities. | |
governance | object | Governance protocol capabilities. | |
sponsored_intelligence | object | Sponsored Intelligence protocol capabilities. | |
brand | object | Brand protocol capabilities. | |
creative | object | Creative protocol capabilities. | |
request_signing | object | RFC 9421 HTTP Signatures support for incoming requests. | |
webhook_signing | object | RFC 9421 webhook-signature support for outbound webhook callbacks (top-level peer of request_signing). | |
identity | object | Operator identity posture — trust-root pointer (`brand_json_url`) plus key-scoping and compromise-response controls the agent operates. | |
measurement | object | Experimental measurement capability block. | |
compliance_testing | object | Compliance testing capabilities. | |
specialisms | specialism[] | Optional — specialized compliance claims this agent supports. | |
extensions_supported | string[] | Extension namespaces this agent supports. | |
experimental_features | string[] | Experimental AdCP surfaces this agent implements. | |
wholesale_feed_versioning | object | Conditional-fetch token capabilities for get_products and get_signals. | |
last_updated | string | ISO 8601 timestamp of when capabilities were last updated. | |
errors | error[] | Task-specific errors and warnings | |
ext | ext | Extension object for platform-specific, vendor-namespaced parameters. | |
wholesale_feed_webhooks | object | Per-agent wholesale product-feed and wholesale signals-feed webhook capabilities. |
{
"adcp": {
"major_versions": [3],
"idempotency": { "supported": true, "replay_ttl_seconds": 86400 }
}
} get_task_status
Request parameters for the get_task_status AdCP tool.
| Field | Type | Required | Description |
|---|---|---|---|
adcp_version | string | Release-precision AdCP version (VERSION.RELEASE, e.g. | |
adcp_major_version | integer | DEPRECATED in favor of adcp_version (release-precision string). | |
task_id | string | required | Unique identifier of the task to retrieve |
account | account-ref | Account scope for the task lookup. | |
include_history | boolean | Include full conversation history for this task (may increase response size) | |
include_result | boolean | Include the task's result payload when status is completed. | |
context | context | Opaque correlation data that is echoed unchanged in responses. | |
ext | ext | Extension object for platform-specific, vendor-namespaced parameters. |
get_task_status response — 24 fields, 6 required
| Field | Type | Required | Description |
|---|---|---|---|
adcp_version | string | Release-precision AdCP version (VERSION.RELEASE, e.g. | |
adcp_major_version | integer | DEPRECATED in favor of adcp_version (release-precision string). | |
context_id | string | Session/conversation identifier for tracking related operations across multiple task invocations. | |
context | context | Opaque correlation data that is echoed unchanged in responses. | |
task_id | string | required | Unique identifier for this task |
status | task-status | required | Current task status One of: submitted, working, input-required, completed, canceled, failed, rejected, auth-required, unknown. |
message | string | Human-readable summary of the task result. | |
timestamp | string | ISO 8601 timestamp when the response was generated. | |
replayed | boolean | Set to true when this response was returned from the idempotency cache rather than from a fresh execution. | |
adcp_error | error | Transport-envelope error signal for fatal task failures. | |
push_notification_config | push-notification-config | Push notification configuration for async task updates (A2A and REST protocols). | |
governance_context | string | Governance context token issued by the account's governance agent during check_governance. | |
payload | object | Conceptual grouping for the task-specific response data defined by individual task response schemas (e.g., get-products-response.json, create-media-buy-response.json). | |
task_type | task-type | required | Type of AdCP operation One of: create_media_buy, update_media_buy, media_buy_delivery, sync_creatives, build_creative, activate_signal, get_products, get_signals, create_property_list, update_property_list, get_property_list, list_property_lists, delete_property_list, sync_accounts, get_account_financials, get_creative_delivery, sync_event_sources, sync_audiences, sync_catalogs, log_event, get_brand_identity, search_brands, get_rights, acquire_rights. |
protocol | adcp-protocol | required | AdCP protocol this task belongs to One of: media-buy, signals, governance, creative, brand, sponsored-intelligence, measurement. |
created_at | string | required | When the task was initially created (ISO 8601) |
updated_at | string | required | When the task was last updated (ISO 8601) |
completed_at | string | When the task completed (ISO 8601, only for completed/failed/canceled tasks) | |
has_webhook | boolean | Whether this task has webhook configuration | |
progress | object | Progress information for long-running tasks | |
error | object | Error details for failed tasks | |
history | object[] | Complete conversation history for this task (only included if include_history was true in request) | |
result | async-response-data | Task-specific completion payload. | |
ext | ext | Extension object for platform-specific, vendor-namespaced parameters. |
list_tasks
Request parameters for the list_tasks AdCP tool.
| Field | Type | Required | Description |
|---|---|---|---|
adcp_version | string | Release-precision AdCP version (VERSION.RELEASE, e.g. | |
adcp_major_version | integer | DEPRECATED in favor of adcp_version (release-precision string). | |
account | account-ref | Account scope for task reconciliation. | |
filters | object | Filter criteria for querying tasks | |
sort | object | Sorting parameters | |
pagination | pagination-request | Standard cursor-based pagination parameters for list operations | |
include_history | boolean | Include full conversation history for each task (may significantly increase response size) | |
context | context | Opaque correlation data that is echoed unchanged in responses. | |
ext | ext | Extension object for platform-specific, vendor-namespaced parameters. |
| Field | Type | Required | Description |
|---|---|---|---|
adcp_version | string | Release-precision AdCP version (VERSION.RELEASE, e.g. | |
adcp_major_version | integer | DEPRECATED in favor of adcp_version (release-precision string). | |
context_id | string | Session/conversation identifier for tracking related operations across multiple task invocations. | |
context | context | Opaque correlation data that is echoed unchanged in responses. | |
task_id | string | Unique identifier for tracking asynchronous operations. | |
status | task-status | required | Current task execution state. One of: submitted, working, input-required, completed, canceled, failed, rejected, auth-required, unknown. |
message | string | Human-readable summary of the task result. | |
timestamp | string | ISO 8601 timestamp when the response was generated. | |
replayed | boolean | Set to true when this response was returned from the idempotency cache rather than from a fresh execution. | |
adcp_error | error | Transport-envelope error signal for fatal task failures. | |
push_notification_config | push-notification-config | Push notification configuration for async task updates (A2A and REST protocols). | |
governance_context | string | Governance context token issued by the account's governance agent during check_governance. | |
payload | object | Conceptual grouping for the task-specific response data defined by individual task response schemas (e.g., get-products-response.json, create-media-buy-response.json). | |
query_summary | object | required | Summary of the query that was executed |
tasks | object[] | required | Array of tasks matching the query criteria |
pagination | pagination-response | required | Standard cursor-based pagination metadata for list responses |
ext | ext | Extension object for platform-specific, vendor-namespaced parameters. |
The other 9 AdCP areas
- Media Buy — 11 operations
- Creative — 8 operations
- Signals — 2 operations
- Accounts — 5 operations
- Brand Protocol — 6 operations
- Governance — 22 operations
- Sponsored Intelligence — 4 operations
- Trusted Match — 2 operations
- Compliance — 1 operation