AdCP 3.1.13 · Negotiation layer

AdCP Governance

AdCP Governance is a schema group of the Ad Context Protocol holding 22 of the 64 operations in release 3.1.13, covering property and collection lists, content standards, campaign plans and the validation gate called before a campaign action executes.

Governance is the largest group in the registry at 22 of the 64 operations. Ten are create, update, get, list and delete cycles over property lists and collection lists. Six define, retrieve and apply content standards, including calibrate_content, which aligns buyer and seller on brand suitability through structured dialogue before execution. Two evaluate delivered material: get_media_buy_artifacts retrieves content context records from a media buy for post-delivery validation, and get_creative_features evaluates a creative manifest against a governance agent.

The remaining four are experimental: sync_plans, report_plan_outcome, get_plan_audit_logs and check_governance, the validation gate orchestrators and sellers call before executing any campaign action. Experimental means the surface can change between 3.x releases on at least six weeks' notice, and an agent implementing one declares its feature id in experimental_features on get_adcp_capabilities. Nine of the 22 ship without a bundled/ copy: the five collection-list operations and the four plan operations.

What the 22 governance operations do

Governance — 22 operations
Operation Request fields Response fields What it does
calibrate_content 7 13 calibrate_content aligns buyers and sellers on brand suitability standards through structured dialogue before AdCP campaign execution begins.
check_governance 15 16 check_governance is the universal validation gate in AdCP — orchestrators and sellers call it before executing any campaign action.
create_collection_list 11 16 Collection list tasks in AdCP create, update, get, list, and delete inclusion and exclusion lists for content programs, combining explicit program references with dynamic genre and content rating filters.
create_content_standards 9 13 create_content_standards defines a brand suitability configuration with content policies, risk thresholds, and category rules for AdCP campaigns.
create_property_list 11 16 Property list tasks in AdCP create, update, get, list, and delete inclusion and exclusion lists combining static sets with dynamic filters.
delete_collection_list 7 16 Collection list tasks in AdCP create, update, get, list, and delete inclusion and exclusion lists for content programs, combining explicit program references with dynamic genre and content rating filters.
delete_property_list 7 16 Property list tasks in AdCP create, update, get, list, and delete inclusion and exclusion lists combining static sets with dynamic filters.
get_collection_list 8 20 Collection list tasks in AdCP create, update, get, list, and delete inclusion and exclusion lists for content programs, combining explicit program references with dynamic genre and content rating filters.
get_content_standards 5 13 get_content_standards retrieves the full content safety policy configuration for a specific standards ID in AdCP.
get_creative_features 7 13 get_creative_features evaluates a creative manifest against a governance agent and returns feature values for brand safety and compliance in AdCP.
get_media_buy_artifacts 10 13 get_media_buy_artifacts retrieves content context records from a media buy for post-delivery brand suitability validation in AdCP.
get_plan_audit_logs 9 15 get_plan_audit_logs retrieves governance state, budget tracking, and a complete audit trail for AdCP campaign plans or portfolios.
get_property_list 8 20 Property list tasks in AdCP create, update, get, list, and delete inclusion and exclusion lists combining static sets with dynamic filters.
list_collection_lists 7 16 Collection list tasks in AdCP create, update, get, list, and delete inclusion and exclusion lists for content programs, combining explicit program references with dynamic genre and content rating filters.
list_content_standards 8 13 list_content_standards returns available content safety configurations with optional filtering and pagination in AdCP.
list_property_lists 7 16 Property list tasks in AdCP create, update, get, list, and delete inclusion and exclusion lists combining static sets with dynamic filters.
report_plan_outcome 13 10 report_plan_outcome sends action results to the AdCP governance agent so it can update budget tracking, state, and compliance records.
sync_plans 6 15 sync_plans pushes campaign plans with budget limits, channels, flight dates, and compliance policies to an AdCP governance agent.
update_collection_list 13 15 Collection list tasks in AdCP create, update, get, list, and delete inclusion and exclusion lists for content programs, combining explicit program references with dynamic genre and content rating filters.
update_content_standards 10 13 update_content_standards modifies an existing content standards configuration in AdCP, creating a new version for audit purposes.
update_property_list 13 15 Property list tasks in AdCP create, update, get, list, and delete inclusion and exclusion lists combining static sets with dynamic filters.
validate_content_delivery 8 13 validate_content_delivery batch-evaluates delivery records against content safety policies asynchronously in AdCP.

calibrate_content

calibrate_content aligns buyers and sellers on brand suitability standards through structured dialogue before AdCP campaign execution begins.

calibrate_content request — 7 fields, 3 required
FieldTypeRequiredDescription
adcp_versionstringRelease-precision AdCP version (VERSION.RELEASE, e.g.
adcp_major_versionintegerDEPRECATED in favor of adcp_version (release-precision string).
standards_idstringrequiredStandards configuration to calibrate against
artifactartifactrequiredArtifact to evaluate
idempotency_keystringrequiredClient-generated unique key for at-most-once execution.
contextcontextOpaque correlation data that is echoed unchanged in responses.
extextExtension object for platform-specific, vendor-namespaced parameters.
calibrate_content response — 13 fields, 1 required
FieldTypeRequiredDescription
adcp_versionstringRelease-precision AdCP version (VERSION.RELEASE, e.g.
adcp_major_versionintegerDEPRECATED in favor of adcp_version (release-precision string).
context_idstringSession/conversation identifier for tracking related operations across multiple task invocations.
contextcontextPer-request opaque caller-supplied correlation object echoed unchanged in the response.
task_idstringUnique identifier for tracking asynchronous operations.
statustask-statusrequiredCurrent task execution state. One of: submitted, working, input-required, completed, canceled, failed, rejected, auth-required, unknown.
messagestringHuman-readable summary of the task result.
timestampstringISO 8601 timestamp when the response was generated.
replayedbooleanSet to true when this response was returned from the idempotency cache rather than from a fresh execution.
adcp_errorerrorTransport-envelope error signal for fatal task failures.
push_notification_configpush-notification-configPush notification configuration for async task updates (A2A and REST protocols).
governance_contextstringGovernance context token issued by the account's governance agent during check_governance.
payloadobjectConceptual grouping for the task-specific response data defined by individual task response schemas (e.g., get-products-response.json, create-media-buy-response.json).
calibrate_content — Example (json) — source
{
  "$schema": "/schemas/content-standards/artifact.json",
  "property_rid": "01916f3a-a1d3-7000-8000-000000000040",
  "artifact_id": "r_fitness_abc123",
  "assets": [
    {"type": "text", "role": "title", "content": "Best protein sources for muscle building", "language": "en"},
    {"type": "text", "role": "paragraph", "content": "Looking for recommendations on high-quality protein sources for recovery", "language": "en"},
    {"type": "text", "role": "paragraph", "content": "I've been lifting for 6 months and want to optimize my diet.", "language": "en"},
    {"type": "image", "url": "https://cdn.reddit.com/fitness-image.jpg", "alt_text": "Person lifting weights"}
  ]
}

check_governance

check_governance is the universal validation gate in AdCP — orchestrators and sellers call it before executing any campaign action.

check_governance request — 15 fields, 2 required
FieldTypeRequiredDescription
adcp_versionstringRelease-precision AdCP version (VERSION.RELEASE, e.g.
adcp_major_versionintegerDEPRECATED in favor of adcp_version (release-precision string).
plan_idstringrequiredCampaign governance plan identifier.
callerstringrequiredURL of the agent making the request.
purchase_typepurchase-typeThe type of financial commitment being checked. One of: media_buy, rights_license, signal_activation, creative_services.
toolstringThe AdCP tool being checked (e.g., 'create_media_buy', 'acquire_rights', 'activate_signal').
payloadobjectThe full tool arguments as they would be sent to the seller.
governance_contextstringGovernance context token from a prior check_governance response.
phasegovernance-phaseThe phase of the governed action's lifecycle. One of: purchase, modification, delivery.
planned_deliveryplanned-deliveryWhat the seller will actually deliver.
delivery_metricsobjectActual delivery performance data.
modification_summarystringHuman-readable summary of what changed.
invoice_recipientbusiness-entityInvoice recipient from the purchase request.
contextcontextOpaque correlation data that is echoed unchanged in responses.
extextExtension object for platform-specific, vendor-namespaced parameters.
check_governance response — 16 fields, 4 required
FieldTypeRequiredDescription
adcp_versionstringRelease-precision AdCP version (VERSION.RELEASE, e.g.
adcp_major_versionintegerDEPRECATED in favor of adcp_version (release-precision string).
check_idstringrequiredUnique identifier for this governance check record.
verdictgovernance-decisionrequiredGovernance verdict: approved | denied | conditions. One of: approved, denied, conditions.
plan_idstringrequiredEchoed from request.
explanationstringrequiredHuman-readable explanation of the governance decision.
findingsobject[]Specific issues found during the governance check.
conditionsobject[]Present when verdict is 'conditions'.
expires_atstringWhen this approval expires.
next_checkstringWhen the seller should next call check_governance with delivery metrics.
categories_evaluatedstring[]Governance categories evaluated during this check.
policies_evaluatedstring[]Policy IDs evaluated during this check.
modegovernance-modeGovernance enforcement mode active when this check was evaluated. One of: audit, advisory, enforce.
governance_contextstringGovernance context token for this governed action.
contextcontextOpaque correlation data that is echoed unchanged in responses.
extextExtension object for platform-specific, vendor-namespaced parameters.
check_governance — Example (json) — source
{
  "plan_id": "plan_nova_signal_launch",
  "caller": "https://buying.pinnacle-agency.example",
  "target_agent": "https://signals.meridian.example/adcp",
  "purchase_type": "signal_activation",
  "proposed_commitment": {
    "amount": 0,
    "currency": "USD"
  },
  "tool": "activate_signal",
  "payload": {
    "idempotency_key": "67da3ce4-f2aa-4b63-93a1-215106690f73",
    "signal_agent_segment_id": "segment_urban_commuters",
    "destinations": [
      {
        "type": "agent",
        "agent_url": "https://sales.streamhaus.example"
      }
    ]
  },
  "runtime_attestations": [
    {
      "issuer": {
        "type": "origin",
        "origin": "https://credentials.example"
      },
      "claim_type": "https://claims.example/audience/population-stability",
      "subject": {
        "type": "resource",
        "resource_type": "https://adcontextprotocol.org/claims/subjects/signal",
        "namespace": "https://signals.meridian.example/adcp",
        "id": "segment_urban_commuters"
      },
      "locator": {
        "type": "issuer_credential_id",
        "credential_id": "cred_population_2026_08",
        "resolver_id": "primary"
      },
      "content_digest": "sha256:cee39fac0bff75b76b0dd193c19e259d7bfed089dd9ae4a528a132d32ec7449a"
    }
  ]
}

create_collection_list

Collection list tasks in AdCP create, update, get, list, and delete inclusion and exclusion lists for content programs, combining explicit program references with dynamic genre and content rating filters.

create_collection_list request — 11 fields, 2 required
FieldTypeRequiredDescription
adcp_versionstringRelease-precision AdCP version (VERSION.RELEASE, e.g.
adcp_major_versionintegerDEPRECATED in favor of adcp_version (release-precision string).
accountaccount-refAccount that will own the list.
namestringrequiredHuman-readable name for the list
descriptionstringDescription of the list's purpose
base_collectionsbase-collection-source[]Array of collection sources to evaluate.
filterscollection-list-filtersDynamic filters to apply when resolving the list
brandbrand-refBrand reference.
idempotency_keystringrequiredClient-generated unique key for this request.
contextcontextOpaque correlation data that is echoed unchanged in responses.
extextExtension object for platform-specific, vendor-namespaced parameters.
create_collection_list response — 16 fields, 3 required
FieldTypeRequiredDescription
adcp_versionstringRelease-precision AdCP version (VERSION.RELEASE, e.g.
adcp_major_versionintegerDEPRECATED in favor of adcp_version (release-precision string).
context_idstringSession/conversation identifier for tracking related operations across multiple task invocations.
contextcontextOpaque correlation data that is echoed unchanged in responses.
task_idstringUnique identifier for tracking asynchronous operations.
statustask-statusrequiredCurrent task execution state. One of: submitted, working, input-required, completed, canceled, failed, rejected, auth-required, unknown.
messagestringHuman-readable summary of the task result.
timestampstringISO 8601 timestamp when the response was generated.
replayedbooleanSet to true when this response was returned from the idempotency cache rather than from a fresh execution.
adcp_errorerrorTransport-envelope error signal for fatal task failures.
push_notification_configpush-notification-configPush notification configuration for async task updates (A2A and REST protocols).
governance_contextstringGovernance context token issued by the account's governance agent during check_governance.
payloadobjectConceptual grouping for the task-specific response data defined by individual task response schemas (e.g., get-products-response.json, create-media-buy-response.json).
listcollection-listrequiredThe created collection list
auth_tokenstringrequiredToken that authorizes sellers to fetch this list via get_collection_list.
extextExtension object for platform-specific, vendor-namespaced parameters.
create_collection_list — Example (json) — source
{
  "selection_type": "distribution_ids",
  "identifiers": [
    { "type": "imdb_id", "value": "tt9999901" },
    { "type": "gracenote_id", "value": "SH000001" },
    { "type": "eidr_id", "value": "10.5240/XXXX-XXXX-XXXX-XXXX-XXXX-C" }
  ]
}

create_content_standards

create_content_standards defines a brand suitability configuration with content policies, risk thresholds, and category rules for AdCP campaigns.

create_content_standards request — 9 fields, 2 required
FieldTypeRequiredDescription
adcp_versionstringRelease-precision AdCP version (VERSION.RELEASE, e.g.
adcp_major_versionintegerDEPRECATED in favor of adcp_version (release-precision string).
scopeobjectrequiredWhere this standards configuration applies
registry_policy_idsstring[]Registry policy IDs to use as the evaluation basis for this content standard.
policiespolicy-entry[]Bespoke policies for this content-standards configuration, using the same shape as registry entries.
calibration_exemplarsobjectTraining/test set to calibrate policy interpretation.
idempotency_keystringrequiredClient-generated unique key for this request.
contextcontextOpaque correlation data that is echoed unchanged in responses.
extextExtension object for platform-specific, vendor-namespaced parameters.
create_content_standards response — 13 fields, 1 required
FieldTypeRequiredDescription
adcp_versionstringRelease-precision AdCP version (VERSION.RELEASE, e.g.
adcp_major_versionintegerDEPRECATED in favor of adcp_version (release-precision string).
context_idstringSession/conversation identifier for tracking related operations across multiple task invocations.
contextcontextPer-request opaque caller-supplied correlation object echoed unchanged in the response.
task_idstringUnique identifier for tracking asynchronous operations.
statustask-statusrequiredCurrent task execution state. One of: submitted, working, input-required, completed, canceled, failed, rejected, auth-required, unknown.
messagestringHuman-readable summary of the task result.
timestampstringISO 8601 timestamp when the response was generated.
replayedbooleanSet to true when this response was returned from the idempotency cache rather than from a fresh execution.
adcp_errorerrorTransport-envelope error signal for fatal task failures.
push_notification_configpush-notification-configPush notification configuration for async task updates (A2A and REST protocols).
governance_contextstringGovernance context token issued by the account's governance agent during check_governance.
payloadobjectConceptual grouping for the task-specific response data defined by individual task response schemas (e.g., get-products-response.json, create-media-buy-response.json).
create_content_standards — Example (json) — source
{
  "$schema": "/schemas/content-standards/create-content-standards-request.json",
  "idempotency_key": "a9b0c1d2-e3f4-4567-a890-567890123456",
  "scope": {
    "countries_all": ["GB", "DE", "FR"],
    "channels_any": ["display", "olv", "ctv"],
    "languages_any": ["en", "de", "fr"],
    "description": "EMEA - all digital channels"
  },
  "policies": [
    {
      "policy_id": "no_violence",
      "policy_categories": ["brand_safety"],
      "enforcement": "must",
      "policy": "Avoid content depicting violence, weapons, or physical aggression."
    },
    {
      "policy_id": "no_controversial_politics",
      "policy_categories": ["brand_suitability"],
      "enforcement": "must",
      "policy": "Avoid controversial political content and ongoing partisan disputes."
    },
    {
      "policy_id": "no_adult_themes",
      "policy_categories": ["brand_safety"],
      "enforcement": "must",
      "policy": "Avoid adult, sexual, or mature themes."
    },
    {
      "policy_id": "no_sedentary_glorification",
      "policy_categories": ["brand_suitability"],
      "enforcement": "should",
      "policy": "Avoid content that portrays sedentary lifestyle positively; conflicts with brand positioning."
    }
  ],
  "calibration_exemplars": {
    "pass": [
      { "type": "url", "value": "https://espn.com/nba/story/_/id/12345/lakers-championship", "language": "en" },
      { "type": "url", "value": "https://healthline.com/fitness/cardio-workout", "language": "en" }
    ],
    "fail": [
      { "type": "url", "value": "https://tabloid.example.com/celebrity-scandal", "language": "en" },
      { "type": "url", "value": "https://news.example.com/controversial-politics-article", "language": "en" }
    ]
  }
}

create_property_list

Property list tasks in AdCP create, update, get, list, and delete inclusion and exclusion lists combining static sets with dynamic filters.

create_property_list request — 11 fields, 2 required
FieldTypeRequiredDescription
adcp_versionstringRelease-precision AdCP version (VERSION.RELEASE, e.g.
adcp_major_versionintegerDEPRECATED in favor of adcp_version (release-precision string).
accountaccount-refAccount that will own the list.
namestringrequiredHuman-readable name for the list
descriptionstringDescription of the list's purpose
base_propertiesbase-property-source[]Array of property sources to evaluate.
filtersproperty-list-filtersDynamic filters to apply when resolving the list
brandbrand-refBrand reference.
idempotency_keystringrequiredClient-generated unique key for this request.
contextcontextOpaque correlation data that is echoed unchanged in responses.
extextExtension object for platform-specific, vendor-namespaced parameters.
create_property_list response — 16 fields, 3 required
FieldTypeRequiredDescription
adcp_versionstringRelease-precision AdCP version (VERSION.RELEASE, e.g.
adcp_major_versionintegerDEPRECATED in favor of adcp_version (release-precision string).
context_idstringSession/conversation identifier for tracking related operations across multiple task invocations.
contextcontextOpaque correlation data that is echoed unchanged in responses.
task_idstringUnique identifier for tracking asynchronous operations.
statustask-statusrequiredCurrent task execution state. One of: submitted, working, input-required, completed, canceled, failed, rejected, auth-required, unknown.
messagestringHuman-readable summary of the task result.
timestampstringISO 8601 timestamp when the response was generated.
replayedbooleanSet to true when this response was returned from the idempotency cache rather than from a fresh execution.
adcp_errorerrorTransport-envelope error signal for fatal task failures.
push_notification_configpush-notification-configPush notification configuration for async task updates (A2A and REST protocols).
governance_contextstringGovernance context token issued by the account's governance agent during check_governance.
payloadobjectConceptual grouping for the task-specific response data defined by individual task response schemas (e.g., get-products-response.json, create-media-buy-response.json).
listproperty-listrequiredThe created property list
auth_tokenstringrequiredToken that can be shared with sellers to authorize fetching this list.
extextExtension object for platform-specific, vendor-namespaced parameters.
create_property_list — Example (json) — source
{
  "list_id": "uk_premium_news_q1",
  "name": "UK Premium News Sites Q1 2026",
  "description": "High-quality UK news sites for Q1 campaign",
  "account": { "account_id": "acc_brand_x_direct_01" },
  "base_properties": [
    {
      "selection_type": "publisher_tags",
      "publisher_domain": "raptive.com",
      "tags": ["premium_news", "uk_tier1"]
    }
  ],
  "filters": {
    "countries_all": ["UK"],
    "channels_any": ["display", "video"],
    "feature_requirements": [
      { "feature_id": "mfa_score", "min_value": 90, "max_value": 100 }
    ]
  },
  "brand": {
    "domain": "acmecorp.com"
  },
  "created_at": "2026-01-03T10:00:00Z",
  "updated_at": "2026-01-03T10:00:00Z",
  "property_count": 847
}

delete_collection_list

Collection list tasks in AdCP create, update, get, list, and delete inclusion and exclusion lists for content programs, combining explicit program references with dynamic genre and content rating filters.

delete_collection_list request — 7 fields, 2 required
FieldTypeRequiredDescription
adcp_versionstringRelease-precision AdCP version (VERSION.RELEASE, e.g.
adcp_major_versionintegerDEPRECATED in favor of adcp_version (release-precision string).
list_idstringrequiredID of the collection list to delete
accountaccount-refAccount that owns the list.
contextcontextOpaque correlation data that is echoed unchanged in responses.
extextExtension object for platform-specific, vendor-namespaced parameters.
idempotency_keystringrequiredClient-generated unique key for at-most-once execution.
delete_collection_list response — 16 fields, 3 required
FieldTypeRequiredDescription
adcp_versionstringRelease-precision AdCP version (VERSION.RELEASE, e.g.
adcp_major_versionintegerDEPRECATED in favor of adcp_version (release-precision string).
context_idstringSession/conversation identifier for tracking related operations across multiple task invocations.
contextcontextOpaque correlation data that is echoed unchanged in responses.
task_idstringUnique identifier for tracking asynchronous operations.
statustask-statusrequiredCurrent task execution state. One of: submitted, working, input-required, completed, canceled, failed, rejected, auth-required, unknown.
messagestringHuman-readable summary of the task result.
timestampstringISO 8601 timestamp when the response was generated.
replayedbooleanSet to true when this response was returned from the idempotency cache rather than from a fresh execution.
adcp_errorerrorTransport-envelope error signal for fatal task failures.
push_notification_configpush-notification-configPush notification configuration for async task updates (A2A and REST protocols).
governance_contextstringGovernance context token issued by the account's governance agent during check_governance.
payloadobjectConceptual grouping for the task-specific response data defined by individual task response schemas (e.g., get-products-response.json, create-media-buy-response.json).
deletedbooleanrequiredWhether the list was successfully deleted
list_idstringrequiredID of the deleted list
extextExtension object for platform-specific, vendor-namespaced parameters.
delete_collection_list — Example (json) — source
{
  "selection_type": "distribution_ids",
  "identifiers": [
    { "type": "imdb_id", "value": "tt9999901" },
    { "type": "gracenote_id", "value": "SH000001" },
    { "type": "eidr_id", "value": "10.5240/XXXX-XXXX-XXXX-XXXX-XXXX-C" }
  ]
}

delete_property_list

Property list tasks in AdCP create, update, get, list, and delete inclusion and exclusion lists combining static sets with dynamic filters.

delete_property_list request — 7 fields, 2 required
FieldTypeRequiredDescription
adcp_versionstringRelease-precision AdCP version (VERSION.RELEASE, e.g.
adcp_major_versionintegerDEPRECATED in favor of adcp_version (release-precision string).
list_idstringrequiredID of the property list to delete
accountaccount-refAccount that owns the list.
contextcontextOpaque correlation data that is echoed unchanged in responses.
extextExtension object for platform-specific, vendor-namespaced parameters.
idempotency_keystringrequiredClient-generated unique key for at-most-once execution.
delete_property_list response — 16 fields, 3 required
FieldTypeRequiredDescription
adcp_versionstringRelease-precision AdCP version (VERSION.RELEASE, e.g.
adcp_major_versionintegerDEPRECATED in favor of adcp_version (release-precision string).
context_idstringSession/conversation identifier for tracking related operations across multiple task invocations.
contextcontextOpaque correlation data that is echoed unchanged in responses.
task_idstringUnique identifier for tracking asynchronous operations.
statustask-statusrequiredCurrent task execution state. One of: submitted, working, input-required, completed, canceled, failed, rejected, auth-required, unknown.
messagestringHuman-readable summary of the task result.
timestampstringISO 8601 timestamp when the response was generated.
replayedbooleanSet to true when this response was returned from the idempotency cache rather than from a fresh execution.
adcp_errorerrorTransport-envelope error signal for fatal task failures.
push_notification_configpush-notification-configPush notification configuration for async task updates (A2A and REST protocols).
governance_contextstringGovernance context token issued by the account's governance agent during check_governance.
payloadobjectConceptual grouping for the task-specific response data defined by individual task response schemas (e.g., get-products-response.json, create-media-buy-response.json).
deletedbooleanrequiredWhether the list was successfully deleted
list_idstringrequiredID of the deleted list
extextExtension object for platform-specific, vendor-namespaced parameters.
delete_property_list — Example (json) — source
{
  "list_id": "uk_premium_news_q1",
  "name": "UK Premium News Sites Q1 2026",
  "description": "High-quality UK news sites for Q1 campaign",
  "account": { "account_id": "acc_brand_x_direct_01" },
  "base_properties": [
    {
      "selection_type": "publisher_tags",
      "publisher_domain": "raptive.com",
      "tags": ["premium_news", "uk_tier1"]
    }
  ],
  "filters": {
    "countries_all": ["UK"],
    "channels_any": ["display", "video"],
    "feature_requirements": [
      { "feature_id": "mfa_score", "min_value": 90, "max_value": 100 }
    ]
  },
  "brand": {
    "domain": "acmecorp.com"
  },
  "created_at": "2026-01-03T10:00:00Z",
  "updated_at": "2026-01-03T10:00:00Z",
  "property_count": 847
}

get_collection_list

Collection list tasks in AdCP create, update, get, list, and delete inclusion and exclusion lists for content programs, combining explicit program references with dynamic genre and content rating filters.

get_collection_list request — 8 fields, 1 required
FieldTypeRequiredDescription
adcp_versionstringRelease-precision AdCP version (VERSION.RELEASE, e.g.
adcp_major_versionintegerDEPRECATED in favor of adcp_version (release-precision string).
list_idstringrequiredID of the collection list to retrieve
accountaccount-refAccount that owns the list.
resolvebooleanWhether to apply filters and return resolved collections (default: true)
paginationobjectPagination parameters.
contextcontextOpaque correlation data that is echoed unchanged in responses.
extextExtension object for platform-specific, vendor-namespaced parameters.
get_collection_list response — 20 fields, 2 required
FieldTypeRequiredDescription
adcp_versionstringRelease-precision AdCP version (VERSION.RELEASE, e.g.
adcp_major_versionintegerDEPRECATED in favor of adcp_version (release-precision string).
context_idstringSession/conversation identifier for tracking related operations across multiple task invocations.
contextcontextOpaque correlation data that is echoed unchanged in responses.
task_idstringUnique identifier for tracking asynchronous operations.
statustask-statusrequiredCurrent task execution state. One of: submitted, working, input-required, completed, canceled, failed, rejected, auth-required, unknown.
messagestringHuman-readable summary of the task result.
timestampstringISO 8601 timestamp when the response was generated.
replayedbooleanSet to true when this response was returned from the idempotency cache rather than from a fresh execution.
adcp_errorerrorTransport-envelope error signal for fatal task failures.
push_notification_configpush-notification-configPush notification configuration for async task updates (A2A and REST protocols).
governance_contextstringGovernance context token issued by the account's governance agent during check_governance.
payloadobjectConceptual grouping for the task-specific response data defined by individual task response schemas (e.g., get-products-response.json, create-media-buy-response.json).
listcollection-listrequiredThe collection list metadata (always returned)
collectionsobject[]Resolved collections that passed filters (if resolve=true).
paginationpagination-responseStandard cursor-based pagination metadata for list responses
resolved_atstringWhen the list was resolved
cache_valid_untilstringCache expiration timestamp.
coverage_gapsobjectCollections included in the list despite missing metadata for a filtered dimension.
extextExtension object for platform-specific, vendor-namespaced parameters.
get_collection_list — Example (json) — source
{
  "selection_type": "distribution_ids",
  "identifiers": [
    { "type": "imdb_id", "value": "tt9999901" },
    { "type": "gracenote_id", "value": "SH000001" },
    { "type": "eidr_id", "value": "10.5240/XXXX-XXXX-XXXX-XXXX-XXXX-C" }
  ]
}

get_content_standards

get_content_standards retrieves the full content safety policy configuration for a specific standards ID in AdCP.

get_content_standards request — 5 fields, 1 required
FieldTypeRequiredDescription
adcp_versionstringRelease-precision AdCP version (VERSION.RELEASE, e.g.
adcp_major_versionintegerDEPRECATED in favor of adcp_version (release-precision string).
standards_idstringrequiredIdentifier for the standards configuration to retrieve
contextcontextOpaque correlation data that is echoed unchanged in responses.
extextExtension object for platform-specific, vendor-namespaced parameters.
get_content_standards response — 13 fields, 1 required
FieldTypeRequiredDescription
adcp_versionstringRelease-precision AdCP version (VERSION.RELEASE, e.g.
adcp_major_versionintegerDEPRECATED in favor of adcp_version (release-precision string).
context_idstringSession/conversation identifier for tracking related operations across multiple task invocations.
contextcontextPer-request opaque caller-supplied correlation object echoed unchanged in the response.
task_idstringUnique identifier for tracking asynchronous operations.
statustask-statusrequiredCurrent task execution state. One of: submitted, working, input-required, completed, canceled, failed, rejected, auth-required, unknown.
messagestringHuman-readable summary of the task result.
timestampstringISO 8601 timestamp when the response was generated.
replayedbooleanSet to true when this response was returned from the idempotency cache rather than from a fresh execution.
adcp_errorerrorTransport-envelope error signal for fatal task failures.
push_notification_configpush-notification-configPush notification configuration for async task updates (A2A and REST protocols).
governance_contextstringGovernance context token issued by the account's governance agent during check_governance.
payloadobjectConceptual grouping for the task-specific response data defined by individual task response schemas (e.g., get-products-response.json, create-media-buy-response.json).
get_content_standards — Example (json) — source
{
  "standards_id": "emea_digital_safety",
  "name": "EMEA - all digital channels",
  "countries_all": ["GB", "DE", "FR"],
  "channels_any": ["display", "olv", "ctv"],
  "languages_any": ["en", "de", "fr"],
  "policies": [
    { "policy_id": "no_violence", "policy_categories": ["brand_safety"], "enforcement": "must", "policy": "Avoid content depicting violence, weapons, or physical aggression." },
    { "policy_id": "no_controversial_politics", "policy_categories": ["brand_suitability"], "enforcement": "must", "policy": "Avoid controversial political content." },
    { "policy_id": "no_adult_themes", "policy_categories": ["brand_safety"], "enforcement": "must", "policy": "Avoid adult, sexual, or mature themes." },
    { "policy_id": "no_hate_speech", "policy_categories": ["brand_safety"], "enforcement": "must", "policy": "Block hate speech and illegal activities." },
    { "policy_id": "no_athlete_disparagement", "policy_categories": ["brand_suitability"], "enforcement": "must", "policy": "Block content disparaging athletes." },
    { "policy_id": "no_sedentary_glorification", "policy_categories": ["brand_suitability"], "enforcement": "should", "policy": "Avoid content that portrays sedentary lifestyle positively." }
  ],
  "calibration_exemplars": {
    "pass": [
      { "type": "url", "value": "https://espn.com/nba/story/_/id/12345/lakers-championship", "language": "en" },
      { "type": "url", "value": "https://healthline.com/fitness/cardio-workout", "language": "en" }
    ],
    "fail": [
      { "type": "url", "value": "https://tabloid.example.com/celebrity-scandal", "language": "en" },
      { "type": "url", "value": "https://news.example.com/controversial-politics-article", "language": "en" }
    ]
  }
}

get_creative_features

get_creative_features evaluates a creative manifest against a governance agent and returns feature values for brand safety and compliance in AdCP.

get_creative_features request — 7 fields, 1 required
FieldTypeRequiredDescription
adcp_versionstringRelease-precision AdCP version (VERSION.RELEASE, e.g.
adcp_major_versionintegerDEPRECATED in favor of adcp_version (release-precision string).
creative_manifestcreative-manifestrequiredThe creative manifest to evaluate.
feature_idsstring[]Optional filter to specific features.
accountaccount-refAccount for billing this evaluation.
contextcontextOpaque correlation data that is echoed unchanged in responses.
extextExtension object for platform-specific, vendor-namespaced parameters.
get_creative_features response — 13 fields, 1 required
FieldTypeRequiredDescription
adcp_versionstringRelease-precision AdCP version (VERSION.RELEASE, e.g.
adcp_major_versionintegerDEPRECATED in favor of adcp_version (release-precision string).
context_idstringSession/conversation identifier for tracking related operations across multiple task invocations.
contextcontextPer-request opaque caller-supplied correlation object echoed unchanged in the response.
task_idstringUnique identifier for tracking asynchronous operations.
statustask-statusrequiredCurrent task execution state. One of: submitted, working, input-required, completed, canceled, failed, rejected, auth-required, unknown.
messagestringHuman-readable summary of the task result.
timestampstringISO 8601 timestamp when the response was generated.
replayedbooleanSet to true when this response was returned from the idempotency cache rather than from a fresh execution.
adcp_errorerrorTransport-envelope error signal for fatal task failures.
push_notification_configpush-notification-configPush notification configuration for async task updates (A2A and REST protocols).
governance_contextstringGovernance context token issued by the account's governance agent during check_governance.
payloadobjectConceptual grouping for the task-specific response data defined by individual task response schemas (e.g., get-products-response.json, create-media-buy-response.json).
get_creative_features — Example (json) — source
{
  "$schema": "/schemas/creative/get-creative-features-request.json",
  "creative_manifest": {
    "format_kind": "display_tag",
    "assets": {
      "tag_url": {
        "asset_type": "url",
        "url": "https://cdn.agency.com/creative/abc123.html"
      }
    }
  },
  "feature_ids": ["auto_redirect", "credential_harvest", "cloaking"]
}

get_media_buy_artifacts

get_media_buy_artifacts retrieves content context records from a media buy for post-delivery brand suitability validation in AdCP.

get_media_buy_artifacts request — 10 fields, 1 required
FieldTypeRequiredDescription
adcp_versionstringRelease-precision AdCP version (VERSION.RELEASE, e.g.
adcp_major_versionintegerDEPRECATED in favor of adcp_version (release-precision string).
accountaccount-refFilter artifacts to a specific account.
media_buy_idstringrequiredMedia buy to get artifacts from
package_idsstring[]Filter to specific packages within the media buy
failures_onlybooleanWhen true, only return artifacts where the seller's local model returned local_verdict: 'fail'.
time_rangeobjectFilter to specific time period
paginationobjectPagination parameters.
contextcontextOpaque correlation data that is echoed unchanged in responses.
extextExtension object for platform-specific, vendor-namespaced parameters.
get_media_buy_artifacts response — 13 fields, 1 required
FieldTypeRequiredDescription
adcp_versionstringRelease-precision AdCP version (VERSION.RELEASE, e.g.
adcp_major_versionintegerDEPRECATED in favor of adcp_version (release-precision string).
context_idstringSession/conversation identifier for tracking related operations across multiple task invocations.
contextcontextPer-request opaque caller-supplied correlation object echoed unchanged in the response.
task_idstringUnique identifier for tracking asynchronous operations.
statustask-statusrequiredCurrent task execution state. One of: submitted, working, input-required, completed, canceled, failed, rejected, auth-required, unknown.
messagestringHuman-readable summary of the task result.
timestampstringISO 8601 timestamp when the response was generated.
replayedbooleanSet to true when this response was returned from the idempotency cache rather than from a fresh execution.
adcp_errorerrorTransport-envelope error signal for fatal task failures.
push_notification_configpush-notification-configPush notification configuration for async task updates (A2A and REST protocols).
governance_contextstringGovernance context token issued by the account's governance agent during check_governance.
payloadobjectConceptual grouping for the task-specific response data defined by individual task response schemas (e.g., get-products-response.json, create-media-buy-response.json).
get_media_buy_artifacts — Example (json) — source
{
  "$schema": "/schemas/content-standards/get-media-buy-artifacts-response.json",
  "status": "completed",
  "media_buy_id": "mb_nike_reddit_q1",
  "artifacts": [
    {
      "record_id": "imp_12345",
      "timestamp": "2025-01-15T10:30:00Z",
      "package_id": "pkg_feed_standard",
      "artifact": {
        "property_rid": "01916f3a-a1d3-7000-8000-000000000040",
        "artifact_id": "r_fitness_abc123",
        "assets": [
          {"type": "text", "role": "title", "content": "Best protein sources for muscle building", "language": "en"},
          {"type": "text", "role": "paragraph", "content": "Looking for recommendations on high-quality protein sources for recovery", "language": "en"},
          {"type": "image", "url": "https://cdn.reddit.com/fitness-image.jpg", "alt_text": "Person lifting weights"}
        ]
      },
      "country": "US",
      "channel": "social",
      "brand_context": {"brand_id": "nike_global", "sku_id": "air_max_2025"},
      "local_verdict": "pass"
    },
    {
      "record_id": "imp_12346",
      "timestamp": "2025-01-15T10:35:00Z",
      "package_id": "pkg_feed_standard",
      "artifact": {
        "property_rid": "01916f3a-a1d3-7000-8000-000000000040",
        "artifact_id": "r_news_politics_456",
        "assets": [
          {"type": "text", "role": "title", "content": "Election Results Analysis", "language": "en"},
          {"type": "text", "role": "paragraph", "content": "The latest polling data shows a tight race between candidates", "language": "en"}
        ]
      },
      "country": "US",
      "channel": "social",
      "brand_context": {"brand_id": "nike_global", "sku_id": "air_max_2025"},
      "local_verdict": "fail"
    }
  ],
  "collection_info": {
    "total_deliveries": 100000,
    "total_collected": 1000,
    "returned_count": 1000,
    "effective_rate": 0.01
  },
  "pagination": {
    "cursor": "eyJvZmZzZXQiOjEwMDB9",
    "has_more": true
  }
}

get_plan_audit_logs

get_plan_audit_logs retrieves governance state, budget tracking, and a complete audit trail for AdCP campaign plans or portfolios.

get_plan_audit_logs request — 9 fields, 0 required
FieldTypeRequiredDescription
adcp_versionstringRelease-precision AdCP version (VERSION.RELEASE, e.g.
adcp_major_versionintegerDEPRECATED in favor of adcp_version (release-precision string).
plan_idsstring[]Plan IDs to retrieve.
portfolio_plan_idsstring[]Portfolio plan IDs.
governance_contextsstring[]Filter audit entries by governance context.
purchase_typespurchase-type[]Filter audit entries by purchase type.
include_entriesbooleanInclude the full audit trail.
contextcontextOpaque correlation data that is echoed unchanged in responses.
extextExtension object for platform-specific, vendor-namespaced parameters.
get_plan_audit_logs response — 15 fields, 2 required
FieldTypeRequiredDescription
adcp_versionstringRelease-precision AdCP version (VERSION.RELEASE, e.g.
adcp_major_versionintegerDEPRECATED in favor of adcp_version (release-precision string).
context_idstringSession/conversation identifier for tracking related operations across multiple task invocations.
contextcontextOpaque correlation data that is echoed unchanged in responses.
task_idstringUnique identifier for tracking asynchronous operations.
statustask-statusrequiredCurrent task execution state. One of: submitted, working, input-required, completed, canceled, failed, rejected, auth-required, unknown.
messagestringHuman-readable summary of the task result.
timestampstringISO 8601 timestamp when the response was generated.
replayedbooleanSet to true when this response was returned from the idempotency cache rather than from a fresh execution.
adcp_errorerrorTransport-envelope error signal for fatal task failures.
push_notification_configpush-notification-configPush notification configuration for async task updates (A2A and REST protocols).
governance_contextstringGovernance context token issued by the account's governance agent during check_governance.
payloadobjectConceptual grouping for the task-specific response data defined by individual task response schemas (e.g., get-products-response.json, create-media-buy-response.json).
plansobject[]requiredAudit data for each requested plan.
extextExtension object for platform-specific, vendor-namespaced parameters.
get_plan_audit_logs — Example (json) — source
{
  "tool": "get_plan_audit_logs",
  "arguments": {
    "plan_ids": ["plan_q1_2026_launch"],
    "include_entries": true
  }
}

get_property_list

Property list tasks in AdCP create, update, get, list, and delete inclusion and exclusion lists combining static sets with dynamic filters.

get_property_list request — 8 fields, 1 required
FieldTypeRequiredDescription
adcp_versionstringRelease-precision AdCP version (VERSION.RELEASE, e.g.
adcp_major_versionintegerDEPRECATED in favor of adcp_version (release-precision string).
list_idstringrequiredID of the property list to retrieve
accountaccount-refAccount that owns the list.
resolvebooleanWhether to apply filters and return resolved identifiers (default: true)
paginationobjectPagination parameters.
contextcontextOpaque correlation data that is echoed unchanged in responses.
extextExtension object for platform-specific, vendor-namespaced parameters.
get_property_list response — 20 fields, 2 required
FieldTypeRequiredDescription
adcp_versionstringRelease-precision AdCP version (VERSION.RELEASE, e.g.
adcp_major_versionintegerDEPRECATED in favor of adcp_version (release-precision string).
context_idstringSession/conversation identifier for tracking related operations across multiple task invocations.
contextcontextOpaque correlation data that is echoed unchanged in responses.
task_idstringUnique identifier for tracking asynchronous operations.
statustask-statusrequiredCurrent task execution state. One of: submitted, working, input-required, completed, canceled, failed, rejected, auth-required, unknown.
messagestringHuman-readable summary of the task result.
timestampstringISO 8601 timestamp when the response was generated.
replayedbooleanSet to true when this response was returned from the idempotency cache rather than from a fresh execution.
adcp_errorerrorTransport-envelope error signal for fatal task failures.
push_notification_configpush-notification-configPush notification configuration for async task updates (A2A and REST protocols).
governance_contextstringGovernance context token issued by the account's governance agent during check_governance.
payloadobjectConceptual grouping for the task-specific response data defined by individual task response schemas (e.g., get-products-response.json, create-media-buy-response.json).
listproperty-listrequiredThe property list metadata (always returned)
identifiersidentifier[]Resolved identifiers that passed filters (if resolve=true).
paginationpagination-responseStandard cursor-based pagination metadata for list responses
resolved_atstringWhen the list was resolved
cache_valid_untilstringCache expiration timestamp.
coverage_gapsobjectProperties included in the list despite missing feature data.
extextExtension object for platform-specific, vendor-namespaced parameters.
get_property_list — Example (json) — source
{
  "list_id": "uk_premium_news_q1",
  "name": "UK Premium News Sites Q1 2026",
  "description": "High-quality UK news sites for Q1 campaign",
  "account": { "account_id": "acc_brand_x_direct_01" },
  "base_properties": [
    {
      "selection_type": "publisher_tags",
      "publisher_domain": "raptive.com",
      "tags": ["premium_news", "uk_tier1"]
    }
  ],
  "filters": {
    "countries_all": ["UK"],
    "channels_any": ["display", "video"],
    "feature_requirements": [
      { "feature_id": "mfa_score", "min_value": 90, "max_value": 100 }
    ]
  },
  "brand": {
    "domain": "acmecorp.com"
  },
  "created_at": "2026-01-03T10:00:00Z",
  "updated_at": "2026-01-03T10:00:00Z",
  "property_count": 847
}

list_collection_lists

Collection list tasks in AdCP create, update, get, list, and delete inclusion and exclusion lists for content programs, combining explicit program references with dynamic genre and content rating filters.

list_collection_lists request — 7 fields, 0 required
FieldTypeRequiredDescription
adcp_versionstringRelease-precision AdCP version (VERSION.RELEASE, e.g.
adcp_major_versionintegerDEPRECATED in favor of adcp_version (release-precision string).
accountaccount-refFilter to lists owned by this account.
name_containsstringFilter to lists whose name contains this string
paginationpagination-requestStandard cursor-based pagination parameters for list operations
contextcontextOpaque correlation data that is echoed unchanged in responses.
extextExtension object for platform-specific, vendor-namespaced parameters.
list_collection_lists response — 16 fields, 2 required
FieldTypeRequiredDescription
adcp_versionstringRelease-precision AdCP version (VERSION.RELEASE, e.g.
adcp_major_versionintegerDEPRECATED in favor of adcp_version (release-precision string).
context_idstringSession/conversation identifier for tracking related operations across multiple task invocations.
contextcontextOpaque correlation data that is echoed unchanged in responses.
task_idstringUnique identifier for tracking asynchronous operations.
statustask-statusrequiredCurrent task execution state. One of: submitted, working, input-required, completed, canceled, failed, rejected, auth-required, unknown.
messagestringHuman-readable summary of the task result.
timestampstringISO 8601 timestamp when the response was generated.
replayedbooleanSet to true when this response was returned from the idempotency cache rather than from a fresh execution.
adcp_errorerrorTransport-envelope error signal for fatal task failures.
push_notification_configpush-notification-configPush notification configuration for async task updates (A2A and REST protocols).
governance_contextstringGovernance context token issued by the account's governance agent during check_governance.
payloadobjectConceptual grouping for the task-specific response data defined by individual task response schemas (e.g., get-products-response.json, create-media-buy-response.json).
listscollection-list[]requiredArray of collection lists (metadata only, not resolved collections)
paginationpagination-responseStandard cursor-based pagination metadata for list responses
extextExtension object for platform-specific, vendor-namespaced parameters.
list_collection_lists — Example (json) — source
{
  "selection_type": "distribution_ids",
  "identifiers": [
    { "type": "imdb_id", "value": "tt9999901" },
    { "type": "gracenote_id", "value": "SH000001" },
    { "type": "eidr_id", "value": "10.5240/XXXX-XXXX-XXXX-XXXX-XXXX-C" }
  ]
}

list_content_standards

list_content_standards returns available content safety configurations with optional filtering and pagination in AdCP.

list_content_standards request — 8 fields, 0 required
FieldTypeRequiredDescription
adcp_versionstringRelease-precision AdCP version (VERSION.RELEASE, e.g.
adcp_major_versionintegerDEPRECATED in favor of adcp_version (release-precision string).
channelschannels[]Filter by channel
languagesstring[]Filter by BCP 47 language tags
countriesstring[]Filter by ISO 3166-1 alpha-2 country codes
paginationpagination-requestStandard cursor-based pagination parameters for list operations
contextcontextOpaque correlation data that is echoed unchanged in responses.
extextExtension object for platform-specific, vendor-namespaced parameters.
list_content_standards response — 13 fields, 1 required
FieldTypeRequiredDescription
adcp_versionstringRelease-precision AdCP version (VERSION.RELEASE, e.g.
adcp_major_versionintegerDEPRECATED in favor of adcp_version (release-precision string).
context_idstringSession/conversation identifier for tracking related operations across multiple task invocations.
contextcontextPer-request opaque caller-supplied correlation object echoed unchanged in the response.
task_idstringUnique identifier for tracking asynchronous operations.
statustask-statusrequiredCurrent task execution state. One of: submitted, working, input-required, completed, canceled, failed, rejected, auth-required, unknown.
messagestringHuman-readable summary of the task result.
timestampstringISO 8601 timestamp when the response was generated.
replayedbooleanSet to true when this response was returned from the idempotency cache rather than from a fresh execution.
adcp_errorerrorTransport-envelope error signal for fatal task failures.
push_notification_configpush-notification-configPush notification configuration for async task updates (A2A and REST protocols).
governance_contextstringGovernance context token issued by the account's governance agent during check_governance.
payloadobjectConceptual grouping for the task-specific response data defined by individual task response schemas (e.g., get-products-response.json, create-media-buy-response.json).
list_content_standards — Example (json) — source
{
  "$schema": "/schemas/content-standards/list-content-standards-response.json",
  "status": "completed",
  "standards": [
    {
      "standards_id": "emea_digital_safety",
      "name": "EMEA - all digital channels",
      "countries_all": ["GB", "DE", "FR"],
      "channels_any": ["display", "olv", "ctv"],
      "languages_any": ["en", "de", "fr"]
    },
    {
      "standards_id": "us_display_only",
      "name": "US - display only",
      "countries_all": ["US"],
      "channels_any": ["display"],
      "languages_any": ["en"]
    }
  ]
}

list_property_lists

Property list tasks in AdCP create, update, get, list, and delete inclusion and exclusion lists combining static sets with dynamic filters.

list_property_lists request — 7 fields, 0 required
FieldTypeRequiredDescription
adcp_versionstringRelease-precision AdCP version (VERSION.RELEASE, e.g.
adcp_major_versionintegerDEPRECATED in favor of adcp_version (release-precision string).
accountaccount-refFilter to lists owned by this account.
name_containsstringFilter to lists whose name contains this string
paginationpagination-requestStandard cursor-based pagination parameters for list operations
contextcontextOpaque correlation data that is echoed unchanged in responses.
extextExtension object for platform-specific, vendor-namespaced parameters.
list_property_lists response — 16 fields, 2 required
FieldTypeRequiredDescription
adcp_versionstringRelease-precision AdCP version (VERSION.RELEASE, e.g.
adcp_major_versionintegerDEPRECATED in favor of adcp_version (release-precision string).
context_idstringSession/conversation identifier for tracking related operations across multiple task invocations.
contextcontextOpaque correlation data that is echoed unchanged in responses.
task_idstringUnique identifier for tracking asynchronous operations.
statustask-statusrequiredCurrent task execution state. One of: submitted, working, input-required, completed, canceled, failed, rejected, auth-required, unknown.
messagestringHuman-readable summary of the task result.
timestampstringISO 8601 timestamp when the response was generated.
replayedbooleanSet to true when this response was returned from the idempotency cache rather than from a fresh execution.
adcp_errorerrorTransport-envelope error signal for fatal task failures.
push_notification_configpush-notification-configPush notification configuration for async task updates (A2A and REST protocols).
governance_contextstringGovernance context token issued by the account's governance agent during check_governance.
payloadobjectConceptual grouping for the task-specific response data defined by individual task response schemas (e.g., get-products-response.json, create-media-buy-response.json).
listsproperty-list[]requiredArray of property lists (metadata only, not resolved properties)
paginationpagination-responseStandard cursor-based pagination metadata for list responses
extextExtension object for platform-specific, vendor-namespaced parameters.
list_property_lists — Example (json) — source
{
  "list_id": "uk_premium_news_q1",
  "name": "UK Premium News Sites Q1 2026",
  "description": "High-quality UK news sites for Q1 campaign",
  "account": { "account_id": "acc_brand_x_direct_01" },
  "base_properties": [
    {
      "selection_type": "publisher_tags",
      "publisher_domain": "raptive.com",
      "tags": ["premium_news", "uk_tier1"]
    }
  ],
  "filters": {
    "countries_all": ["UK"],
    "channels_any": ["display", "video"],
    "feature_requirements": [
      { "feature_id": "mfa_score", "min_value": 90, "max_value": 100 }
    ]
  },
  "brand": {
    "domain": "acmecorp.com"
  },
  "created_at": "2026-01-03T10:00:00Z",
  "updated_at": "2026-01-03T10:00:00Z",
  "property_count": 847
}

report_plan_outcome

report_plan_outcome sends action results to the AdCP governance agent so it can update budget tracking, state, and compliance records.

report_plan_outcome request — 13 fields, 4 required
FieldTypeRequiredDescription
adcp_versionstringRelease-precision AdCP version (VERSION.RELEASE, e.g.
adcp_major_versionintegerDEPRECATED in favor of adcp_version (release-precision string).
plan_idstringrequiredThe plan this outcome is for.
check_idstringThe check_id from check_governance.
idempotency_keystringrequiredClient-generated unique key for this request.
purchase_typepurchase-typeThe type of financial commitment this outcome is for. One of: media_buy, rights_license, signal_activation, creative_services.
outcomeoutcome-typerequiredOutcome type. One of: completed, failed, delivery.
seller_responseobjectThe seller's full response.
deliveryobjectDelivery metrics.
errorobjectError details.
governance_contextstringrequiredOpaque governance context from the check_governance response that authorized this action.
contextcontextOpaque correlation data that is echoed unchanged in responses.
extextExtension object for platform-specific, vendor-namespaced parameters.
report_plan_outcome response — 10 fields, 2 required
FieldTypeRequiredDescription
adcp_versionstringRelease-precision AdCP version (VERSION.RELEASE, e.g.
adcp_major_versionintegerDEPRECATED in favor of adcp_version (release-precision string).
outcome_idstringrequiredUnique identifier for this outcome record.
outcome_statestringrequiredOutcome state. One of: accepted, findings.
committed_budgetnumberBudget committed from this outcome.
findingsobject[]Issues detected.
plan_summaryobjectUpdated plan budget state.
replayedbooleanSet to true when this response was returned from the idempotency cache rather than from a fresh execution.
contextcontextOpaque correlation data that is echoed unchanged in responses.
extextExtension object for platform-specific, vendor-namespaced parameters.
report_plan_outcome — Example (json) — source
{
  "tool": "report_plan_outcome",
  "arguments": {
    "plan_id": "plan_q1_2026_launch",
    "check_id": "chk_xyz789",
    "idempotency_key": "outcome-create-2026-001",
    "governance_context": "gc_mb_seller_456",
    "outcome": "completed",
    "seller_response": {
      "seller_reference": "mb_seller_456",
      "packages": [
        {
          "package_id": "pkg_001",
          "product_id": "premium_video_300k",
          "budget": 150000,
          "targeting_overlay": {
            "geo": { "include": [{ "type": "country", "code": "US" }] },
            "viewability": { "standard": "mrc", "threshold": 50 }
          }
        }
      ],
      "planned_delivery": {
        "geo": { "countries": ["US"] },
        "channels": ["olv"],
        "start_time": "2026-03-15T00:00:00Z",
        "end_time": "2026-06-15T00:00:00Z",
        "total_budget": 150000,
        "currency": "USD"
      },
      "creative_deadline": "2026-03-20T00:00:00Z"
    }
  }
}

sync_plans

sync_plans pushes campaign plans with budget limits, channels, flight dates, and compliance policies to an AdCP governance agent.

sync_plans request — 6 fields, 2 required
FieldTypeRequiredDescription
adcp_versionstringRelease-precision AdCP version (VERSION.RELEASE, e.g.
adcp_major_versionintegerDEPRECATED in favor of adcp_version (release-precision string).
idempotency_keystringrequiredClient-generated unique key for at-most-once execution.
plansobject[]requiredOne or more campaign plans to sync.
contextcontextOpaque correlation data that is echoed unchanged in responses.
extextExtension object for platform-specific, vendor-namespaced parameters.
sync_plans response — 15 fields, 2 required
FieldTypeRequiredDescription
adcp_versionstringRelease-precision AdCP version (VERSION.RELEASE, e.g.
adcp_major_versionintegerDEPRECATED in favor of adcp_version (release-precision string).
context_idstringSession/conversation identifier for tracking related operations across multiple task invocations.
contextcontextOpaque correlation data that is echoed unchanged in responses.
task_idstringUnique identifier for tracking asynchronous operations.
statustask-statusrequiredCurrent task execution state. One of: submitted, working, input-required, completed, canceled, failed, rejected, auth-required, unknown.
messagestringHuman-readable summary of the task result.
timestampstringISO 8601 timestamp when the response was generated.
replayedbooleanSet to true when this response was returned from the idempotency cache rather than from a fresh execution.
adcp_errorerrorTransport-envelope error signal for fatal task failures.
push_notification_configpush-notification-configPush notification configuration for async task updates (A2A and REST protocols).
governance_contextstringGovernance context token issued by the account's governance agent during check_governance.
payloadobjectConceptual grouping for the task-specific response data defined by individual task response schemas (e.g., get-products-response.json, create-media-buy-response.json).
plansobject[]requiredStatus for each synced plan.
extextExtension object for platform-specific, vendor-namespaced parameters.
sync_plans — Example (json) — source
{
  "tool": "sync_plans",
  "arguments": {
    "plans": [
      {
        "plan_id": "plan_q1_2026_launch",
        "brand": {
          "domain": "acmecorp.com"
        },
        "objectives": "Drive awareness for spring product launch among 25-54 adults in the US, focusing on premium video and high-impact display.",
        "budget": {
          "total": 500000,
          "currency": "USD",
          "reallocation_threshold": 25000,
          "per_seller_max_pct": 40,
          "allocations": {
            "media_buy": { "amount": 400000 },
            "rights_license": { "amount": 75000 },
            "signal_activation": { "amount": 25000 }
          }
        },
        "channels": {
          "required": ["olv"],
          "allowed": ["olv", "display", "ctv", "audio"],
          "mix_targets": {
            "olv": { "min_pct": 40, "max_pct": 70 },
            "display": { "min_pct": 10, "max_pct": 30 },
            "ctv": { "min_pct": 0, "max_pct": 20 },
            "audio": { "min_pct": 0, "max_pct": 10 }
          }
        },
        "flight": {
          "start": "2026-03-15T00:00:00Z",
          "end": "2026-06-15T00:00:00Z"
        },
        "countries": ["US"],
        "policy_categories": ["age_restricted"],
        "audience": {
          "include": [
            { "type": "description", "description": "Adults 25-54 interested in home improvement" }
          ],
          "exclude": [
            { "type": "description", "description": "Children under 13" }
          ]
        },
        "restricted_attributes": ["health_data"],
        "min_audience_size": 1000,
        "policy_ids": ["us_coppa", "alcohol_advertising"],
        "custom_policies": [
          {
            "policy_id": "no_competitor_adjacency",
            "enforcement": "must",
            "policy": "No advertising adjacent to competitor content."
          }
        ],
        "approved_sellers": null,
        "ext": {}
      }
    ]
  }
}

update_collection_list

Collection list tasks in AdCP create, update, get, list, and delete inclusion and exclusion lists for content programs, combining explicit program references with dynamic genre and content rating filters.

update_collection_list request — 13 fields, 2 required
FieldTypeRequiredDescription
adcp_versionstringRelease-precision AdCP version (VERSION.RELEASE, e.g.
adcp_major_versionintegerDEPRECATED in favor of adcp_version (release-precision string).
list_idstringrequiredID of the collection list to update
accountaccount-refAccount that owns the list.
namestringNew name for the list
descriptionstringNew description
base_collectionsbase-collection-source[]Complete replacement for the base collections list (not a patch).
filterscollection-list-filtersComplete replacement for the filters (not a patch)
brandbrand-refUpdate brand reference.
webhook_urlstringUpdate the webhook URL for list change notifications (set to empty string to remove).
contextcontextOpaque correlation data that is echoed unchanged in responses.
extextExtension object for platform-specific, vendor-namespaced parameters.
idempotency_keystringrequiredClient-generated unique key for at-most-once execution.
update_collection_list response — 15 fields, 2 required
FieldTypeRequiredDescription
adcp_versionstringRelease-precision AdCP version (VERSION.RELEASE, e.g.
adcp_major_versionintegerDEPRECATED in favor of adcp_version (release-precision string).
context_idstringSession/conversation identifier for tracking related operations across multiple task invocations.
contextcontextOpaque correlation data that is echoed unchanged in responses.
task_idstringUnique identifier for tracking asynchronous operations.
statustask-statusrequiredCurrent task execution state. One of: submitted, working, input-required, completed, canceled, failed, rejected, auth-required, unknown.
messagestringHuman-readable summary of the task result.
timestampstringISO 8601 timestamp when the response was generated.
replayedbooleanSet to true when this response was returned from the idempotency cache rather than from a fresh execution.
adcp_errorerrorTransport-envelope error signal for fatal task failures.
push_notification_configpush-notification-configPush notification configuration for async task updates (A2A and REST protocols).
governance_contextstringGovernance context token issued by the account's governance agent during check_governance.
payloadobjectConceptual grouping for the task-specific response data defined by individual task response schemas (e.g., get-products-response.json, create-media-buy-response.json).
listcollection-listrequiredThe updated collection list
extextExtension object for platform-specific, vendor-namespaced parameters.
update_collection_list — Example (json) — source
{
  "selection_type": "distribution_ids",
  "identifiers": [
    { "type": "imdb_id", "value": "tt9999901" },
    { "type": "gracenote_id", "value": "SH000001" },
    { "type": "eidr_id", "value": "10.5240/XXXX-XXXX-XXXX-XXXX-XXXX-C" }
  ]
}

update_content_standards

update_content_standards modifies an existing content standards configuration in AdCP, creating a new version for audit purposes.

update_content_standards request — 10 fields, 2 required
FieldTypeRequiredDescription
adcp_versionstringRelease-precision AdCP version (VERSION.RELEASE, e.g.
adcp_major_versionintegerDEPRECATED in favor of adcp_version (release-precision string).
standards_idstringrequiredID of the standards configuration to update
scopeobjectUpdated scope for where this standards configuration applies
registry_policy_idsstring[]Registry policy IDs to use as the evaluation basis.
policiespolicy-entry[]Updated bespoke policies for this content-standards configuration, using the same shape as registry entries.
calibration_exemplarsobjectUpdated training/test set to calibrate policy interpretation.
contextcontextOpaque correlation data that is echoed unchanged in responses.
extextExtension object for platform-specific, vendor-namespaced parameters.
idempotency_keystringrequiredClient-generated unique key for at-most-once execution.
update_content_standards response — 13 fields, 1 required
FieldTypeRequiredDescription
adcp_versionstringRelease-precision AdCP version (VERSION.RELEASE, e.g.
adcp_major_versionintegerDEPRECATED in favor of adcp_version (release-precision string).
context_idstringSession/conversation identifier for tracking related operations across multiple task invocations.
contextcontextPer-request opaque caller-supplied correlation object echoed unchanged in the response.
task_idstringUnique identifier for tracking asynchronous operations.
statustask-statusrequiredCurrent task execution state. One of: submitted, working, input-required, completed, canceled, failed, rejected, auth-required, unknown.
messagestringHuman-readable summary of the task result.
timestampstringISO 8601 timestamp when the response was generated.
replayedbooleanSet to true when this response was returned from the idempotency cache rather than from a fresh execution.
adcp_errorerrorTransport-envelope error signal for fatal task failures.
push_notification_configpush-notification-configPush notification configuration for async task updates (A2A and REST protocols).
governance_contextstringGovernance context token issued by the account's governance agent during check_governance.
payloadobjectConceptual grouping for the task-specific response data defined by individual task response schemas (e.g., get-products-response.json, create-media-buy-response.json).
update_content_standards — Example (json) — source
{
  "$schema": "/schemas/content-standards/update-content-standards-request.json",
  "idempotency_key": "b0c1d2e3-f4a5-4678-b901-678901234567",
  "standards_id": "nike_emea_safety",
  "policies": [
    {
      "policy_id": "no_violence",
      "policy_categories": ["brand_safety"],
      "enforcement": "must",
      "policy": "Avoid content depicting violence, weapons, or physical aggression."
    },
    {
      "policy_id": "no_controversial_politics",
      "policy_categories": ["brand_suitability"],
      "enforcement": "must",
      "policy": "Avoid controversial political content."
    },
    {
      "policy_id": "no_adult_themes",
      "policy_categories": ["brand_safety"],
      "enforcement": "must",
      "policy": "Avoid adult, sexual, or mature themes."
    },
    {
      "policy_id": "no_hate_speech",
      "policy_categories": ["brand_safety"],
      "enforcement": "must",
      "policy": "Block hate speech and illegal activities."
    }
  ],
  "calibration_exemplars": {
    "pass": [
      { "type": "url", "value": "https://espn.com/nba/story/_/id/12345/lakers-win", "language": "en" },
      { "type": "url", "value": "https://healthline.com/fitness/cardio-workout", "language": "en" },
      { "type": "url", "value": "https://runnersworld.com/training/marathon-tips", "language": "en" }
    ],
    "fail": [
      { "type": "url", "value": "https://tabloid.example.com/celebrity-scandal", "language": "en" },
      { "type": "url", "value": "https://gambling.example.com/betting-guide", "language": "en" }
    ]
  }
}

update_property_list

Property list tasks in AdCP create, update, get, list, and delete inclusion and exclusion lists combining static sets with dynamic filters.

update_property_list request — 13 fields, 2 required
FieldTypeRequiredDescription
adcp_versionstringRelease-precision AdCP version (VERSION.RELEASE, e.g.
adcp_major_versionintegerDEPRECATED in favor of adcp_version (release-precision string).
list_idstringrequiredID of the property list to update
accountaccount-refAccount that owns the list.
namestringNew name for the list
descriptionstringNew description
base_propertiesbase-property-source[]Complete replacement for the base properties list (not a patch).
filtersproperty-list-filtersComplete replacement for the filters (not a patch)
brandbrand-refUpdate brand reference.
webhook_urlstringUpdate the webhook URL for list change notifications (set to empty string to remove)
contextcontextOpaque correlation data that is echoed unchanged in responses.
extextExtension object for platform-specific, vendor-namespaced parameters.
idempotency_keystringrequiredClient-generated unique key for at-most-once execution.
update_property_list response — 15 fields, 2 required
FieldTypeRequiredDescription
adcp_versionstringRelease-precision AdCP version (VERSION.RELEASE, e.g.
adcp_major_versionintegerDEPRECATED in favor of adcp_version (release-precision string).
context_idstringSession/conversation identifier for tracking related operations across multiple task invocations.
contextcontextOpaque correlation data that is echoed unchanged in responses.
task_idstringUnique identifier for tracking asynchronous operations.
statustask-statusrequiredCurrent task execution state. One of: submitted, working, input-required, completed, canceled, failed, rejected, auth-required, unknown.
messagestringHuman-readable summary of the task result.
timestampstringISO 8601 timestamp when the response was generated.
replayedbooleanSet to true when this response was returned from the idempotency cache rather than from a fresh execution.
adcp_errorerrorTransport-envelope error signal for fatal task failures.
push_notification_configpush-notification-configPush notification configuration for async task updates (A2A and REST protocols).
governance_contextstringGovernance context token issued by the account's governance agent during check_governance.
payloadobjectConceptual grouping for the task-specific response data defined by individual task response schemas (e.g., get-products-response.json, create-media-buy-response.json).
listproperty-listrequiredThe updated property list
extextExtension object for platform-specific, vendor-namespaced parameters.
update_property_list — Example (json) — source
{
  "list_id": "uk_premium_news_q1",
  "name": "UK Premium News Sites Q1 2026",
  "description": "High-quality UK news sites for Q1 campaign",
  "account": { "account_id": "acc_brand_x_direct_01" },
  "base_properties": [
    {
      "selection_type": "publisher_tags",
      "publisher_domain": "raptive.com",
      "tags": ["premium_news", "uk_tier1"]
    }
  ],
  "filters": {
    "countries_all": ["UK"],
    "channels_any": ["display", "video"],
    "feature_requirements": [
      { "feature_id": "mfa_score", "min_value": 90, "max_value": 100 }
    ]
  },
  "brand": {
    "domain": "acmecorp.com"
  },
  "created_at": "2026-01-03T10:00:00Z",
  "updated_at": "2026-01-03T10:00:00Z",
  "property_count": 847
}

validate_content_delivery

validate_content_delivery batch-evaluates delivery records against content safety policies asynchronously in AdCP.

validate_content_delivery request — 8 fields, 2 required
FieldTypeRequiredDescription
adcp_versionstringRelease-precision AdCP version (VERSION.RELEASE, e.g.
adcp_major_versionintegerDEPRECATED in favor of adcp_version (release-precision string).
standards_idstringrequiredStandards configuration to validate against
recordsobject[]requiredDelivery records to validate (max 10,000)
feature_idsstring[]Specific features to evaluate (defaults to all)
include_passedbooleanInclude passed records in results
contextcontextOpaque correlation data that is echoed unchanged in responses.
extextExtension object for platform-specific, vendor-namespaced parameters.
validate_content_delivery response — 13 fields, 1 required
FieldTypeRequiredDescription
adcp_versionstringRelease-precision AdCP version (VERSION.RELEASE, e.g.
adcp_major_versionintegerDEPRECATED in favor of adcp_version (release-precision string).
context_idstringSession/conversation identifier for tracking related operations across multiple task invocations.
contextcontextPer-request opaque caller-supplied correlation object echoed unchanged in the response.
task_idstringUnique identifier for tracking asynchronous operations.
statustask-statusrequiredCurrent task execution state. One of: submitted, working, input-required, completed, canceled, failed, rejected, auth-required, unknown.
messagestringHuman-readable summary of the task result.
timestampstringISO 8601 timestamp when the response was generated.
replayedbooleanSet to true when this response was returned from the idempotency cache rather than from a fresh execution.
adcp_errorerrorTransport-envelope error signal for fatal task failures.
push_notification_configpush-notification-configPush notification configuration for async task updates (A2A and REST protocols).
governance_contextstringGovernance context token issued by the account's governance agent during check_governance.
payloadobjectConceptual grouping for the task-specific response data defined by individual task response schemas (e.g., get-products-response.json, create-media-buy-response.json).
validate_content_delivery — Example (json) — source
{
  "record_id": "imp_12345",
  "timestamp": "2025-01-15T10:30:00Z",
  "media_buy_id": "mb_nike_reddit_q1",
  "artifact": {
    "property_id": {"type": "domain", "value": "example.com"},
    "artifact_id": "article_12345",
    "assets": [
      {"type": "text", "role": "title", "content": "Article Title"}
    ]
  },
  "country": "US",
  "channel": "display",
  "brand_context": {
    "brand_id": "nike_global",
    "sku_id": "air_max_2025"
  }
}

The other 9 AdCP areas

Related