Last reviewed 2026-08-27. This is Apostra’s description of
its own adapter, based on the implementation and the linked provider
documentation. Meta Ads has not reviewed or endorsed this page.
Availability can still vary by account permissions, market, and provider access.
At a glance
How to read availability
- 🟢 Available — Offered through Apostra now, subject to your ad account’s permissions and eligibility with the provider.
- 🟡 Partial — Some of the workflow is available; the Comments column explains the boundary.
- 🔵 Testing — Apostra is validating the workflow before offering it broadly.
- ⚪ Planned — Not offered through Apostra yet. The provider may still support it directly; Comments explains why and links a roadmap reference.
Roadmap
The adapter roadmap is tracked in AI-1940 (a plain-text reference — Apostra’s internal issue tracker is not public). This roadmap tracks Meta adapter product completeness, safety, and live readiness. Every row that is not currently available shows that reference or a more specific one in its References column, so customers and partners can quote a stable identifier when asking about a capability.Connection, accounts, and identity
Meta Ads connects to Apostra through an OAuth grant. Connecting a Business Manager / Business Portfolio account gives Apostra access to each Ad account (act_…) it can reach — you then map each one to your advertisers. The mapped account decides which Meta Ads tenant a buy runs on: a media buy for an unmapped advertiser fails closed with account_mapping_required rather than silently using another account. Connection, account-discovery, and revocation behavior is the same across ad platforms — see Platform accounts and advertiser mapping for the full model and the Meta Ads section of the connecting guide for Meta Ads-specific permissions.
Campaign products
Pricing notes
pricing_options omits floor_price and price_guidance for every Meta product. Meta exposes no discovery-time bid estimate, so a static guess would be no more reliable than no guidance at all, and for a non-USD ad account it would mean silently relabeling a USD number or, as it did before, showing an outright zero. Each product is still priced (pricing_model, currency, max_bid); there is simply no platform-backed number to bid against yet.
Creative formats
These rows describe Apostra availability, not a claim that the ad platform itself prohibits an unavailable format.What the adapter can do
Placement choices
Targeting
Reporting
Apostra reports Meta Ads delivery day by day (there is no hourly delivery breakdown), aggregated nightly from adapter-reported delivery, in the advertiser’s home currency using the booked or historical exchange rate — any cross-currency rollup is always labeled an estimate and is never used for billing. See Reporting overview for the full model. Apostra does not currently publish an attribution-finality window for Meta Ads; the table below lists every metric the adapter surfaces today.Webhooks and async lifecycle
Meta Ads campaign products declaresupports_webhooks: false, so there is no product-level provider webhook contract for status, delivery, or reporting. Apostra separately accepts Meta’s native ad-account webhook events.
- Status. A native Meta ad-account webhook event can trigger a media-buy status refresh for affected campaigns. Apostra does not otherwise poll Meta Ads in the background for creative or media-buy status changes; an explicit adapter read refreshes provider campaign state.
- Delivery. Apostra fetches delivery numbers (spend, impressions, clicks) live from Meta Ads on demand, only when you call
get_media_buy_deliverydirectly. The/reporting/metricsendpoints never call the adapter either way — they read from a separately-populated store (see Reporting below), so a reporting request does not itself refresh provider delivery.
discovery.revision only), documented in Buyer webhooks.
Meta is the one adapter with a genuine provider-pushed channel: Apostra can receive Meta’s native ad-account webhook events and surface account-health signals such as disapproved ads or creative fatigue as ext.scope3_provider_signals, a Scope3 extension rather than a canonical AdCP status field. Processing an event can also refresh media-buy status for affected campaigns. The channel does not carry delivery numbers; on-demand delivery reads and the separately populated reporting store remain the sources for delivery.
Market and account availability
Apostra does not promise that every feature is enabled for every account or market. Availability is checked against your selected ad account rather than a global market list on this page.Important limitations
- Apostra implementation/testing. Messenger Inbox, Messenger Stories, and Threads Feed are not offered as selectable placements.
- Apostra implementation/testing. Promoting an existing post is still being tested and is not generally available.
- Apostra implementation/testing. Budget and bidding settings cannot be replaced atomically; create a replacement media buy instead.
- the ad platform’s API or your account’s eligibility. Account permissions, Page, Instagram, and WhatsApp ownership, and objective eligibility can narrow what is available.
- the ad platform’s API or your account’s eligibility. Sales Website Value (`meta_sales_website_value`) requires the ad account’s business to have been actively advertising for several weeks or to be verified with Meta; new or unverified businesses are rejected until then. Use Conversions (`meta_conversions`) instead in the meantime.
- the ad platform’s API. The Awareness product (`meta_awareness`) uses Meta’s REACH optimization goal. When no `targeting_overlay.frequency_cap` is provided, Meta automatically applies a platform default of 2 impressions per 7 days. To use a different cap, pass `targeting_overlay.frequency_cap` explicitly in your `save_media_buy` or `create_media_buys` call. All other Meta products use auction delivery and have no platform-applied default frequency cap.
Technical mapping
Engineering-level detail — raw provider objectives, billing enums, optimization codes, and object-field mappings. Not required reading to understand what Apostra can do with Meta Ads; see the tables above for that.Campaign product configuration
Campaign product configuration
Creative format shapes
Creative format shapes
Targeting field mapping
Targeting field mapping
Reporting field mapping
Reporting field mapping