Skip to main content

Bid Schema

Overview

A Bid is the payload a Brand Agent returns for a ContextRequest. It declares:
  • bid identity and versioning
  • where the bid applies (targeting)
  • how the agent wants to be paid (pricing)
  • how much it is willing to spend (budget)
  • what the platform may render (recommendation)
  • how relevant it believes the bid is (declared_relevance)
  • whether it can handle delegated execution (delegation)

Top-Level Fields


targeting

Defines when the bid should be considered applicable. Valid intent_types: commercial, transactional, informational, navigational, support, unsafe, unknown Valid decision_phases: awareness, research, consideration, decision, action, post_purchase, support

pricing

All pricing values use micros of the declared currency. 1 USD = 1,000,000 micros At least one of cpx_micros, cpc_micros, cpe_micros, or cpa_micros MUST be present.

budget

Budget controls declared by the Brand Agent.

recommendation

Platform render instructions for the winning recommendation.

recommendation.creative

Combined creative object containing brand information, ad assets, and destination.

supported_opportunities

Array of opportunity types this bid is intended to serve. Allowed values:
  • soft_recommendation
  • comparison_slot
  • decision_moment
  • transaction_trigger

delegation

Optional block for Brand Agents that can take over task execution after explicit user consent.

delegation.required_scopes

These scopes apply to the operator-mediated handoff payload used to start the delegated session. They do not grant unlimited access to upstream conversation history or automatically extend to new information the user provides later during the delegated session. Allowed values:
  • intent
  • constraints
  • selection_context
  • conversation_summary
In v1.0, new information collected from the user during the live delegated session is session-bound by default unless separately consented.

delegation.protocol

In v1.0, the standardized protocol type is mcp.

delegation.mcp

delegation.session_constraints

In v1.0, delegated session liveness is tracked from verified delegation_activity events sent by the Platform or Brand Agent. Each verified activity event resets the inactivity timer. If the timer elapses with no activity, the Operator marks the delegated session expired and records delegation_expired.

Example


Validation Rules

  • spec_version MUST equal "1.0"
  • At least one of cpx_micros, cpc_micros, or cpa_micros MUST be present
  • declared_relevance MUST be between 0.0 and 1.0
  • currency MUST be a valid ISO 4217 code
  • countries MUST use ISO 3166-1 alpha-2 codes
  • valid_until and timestamp MUST be RFC 3339 timestamps
  • If delegation.supported is true, the rest of the delegation fields become required