Review-ready, not provider-endorsed · last verified 2026-08-16.
This is an Interchange compatibility review for technical feedback, not an OpenAI certification or endorsement. “Implemented” means a provider write/read path exists.
It does not mean fresh signed live evidence exists or that the selected account
is currently eligible.
Coverage and execution-package model
Claim provenance gaps
Object-mapping and reporting rows have no exported, code-owned complete denominator on current main. They remain published because they are useful, but the contract marks the missing drift oracle instead of pretending a same-test literal prevents drift.Evidence state
Static certification and live certification are different claims. Deterministic tests can prove code-owned catalog classifications and fail-closed behavior without contacting the provider. Object-mapping and reporting rows are validated for shape, presence, and uniqueness only; the provenance table above records that they are not compared with a complete code-owned denominator. Fresh live evidence must be dated, signed, bound to the exact account, product, resources, fixture revision, requested package, readback, no-spend result, and cleanup result. Live evidence is treated as stale after 30 days, and a newer failure overrides an older pass.Markets
verified_planning_snapshot. The public snapshot is planning guidance only; a listed market is not proof that the selected account is currently eligible.
Published planning snapshot: AU, BR, CA, JP, KR, MX, NZ, GB, US.
Authority: The selected account’s live /geo_lookup/search response is authoritative at create and update time.
Object mapping
Operations
Wholesale products and exact execution bases
Creative formats
The format state is deliberately narrower than the provider format catalog. Onlyexecutable formats have the ordinary provider write and readback path;
canary_only formats are restricted to governed proof, and
catalog_declared formats are present in current code without a public
ordinary-execution certification claim.
declared_not_buyer_selectable formats are not sold through the adapter.
Placements
This provider exposes no placement selector that Interchange can map without inventing inventory.Targeting
Reporting
Conversion and audience support
- Optimization: One active standard conversion event setting can drive oCPC.
- Event-source discovery: Existing settings are listed and ownership/readiness checked.
- Event ingestion: Not exposed through AdCP; one-time Conversions API secrets are never returned or persisted.
- Audiences: Existing ready custom audiences can be targeted, but governed member add/remove sync is not claimed.
Known limits
- Initial product-feed connection and full upload happen through Ads Manager and SFTP, not the Advertiser API.
- The provider exposes no placement selector, so the adapter does not invent ChatGPT placements.
- The current nine-market planning snapshot is advisory; live account-scoped geo lookup is authoritative.
- Live conformance remains unproven until the dedicated staging account runs the protected canary.
Public review endpoints
- AAO registry record
- Staging MCP/AdCP state:
unavailable_no_registered_storefront. - Route template after a storefront relationship supplies its registered platform ID:
https://api.staging.interchange.io/seller/{registered_storefront_platform_id}/mcp - No provider-ID-derived URL is published. OpenAI Ads is built into the adapter library but has no registered storefront record, so no reachable staging seller endpoint is published.
Provider references
- OpenAI Ads API quickstart
- OpenAI campaigns
- OpenAI ads
- OpenAI insights
- OpenAI campaign targeting
- OpenAI product feeds
Review questions
- Are the campaign, ad-group, ad, file, and product-feed object mappings accurate?
- Is the nine-market planning snapshot and its live account lookup boundary accurate?
- Which additional public proof would be useful before a jointly approved paused canary?