v2
latestOpenAPI 3.1.02026-08-075421692.0 MBAd status changed event
Fired when a campaign, ad set, or ad on a connected ad platform changes status. Currently emitted only for Meta (metaads).
Subscribed to two Meta ad_account webhook fields:
- in_process_ad_objects - the ad object finished processing and exited the IN_PROCESS state. status.raw carries Meta's status_name (e.g. ACTIVE, PAUSED, ARCHIVED, DELETED).
- with_issues_ad_objects - the ad object entered the WITH_ISSUES state. status.raw is set to WITH_ISSUES and the error block is populated from Meta's error_code / error_summary / error_message.
adObject.level mirrors Meta's level and is one of CAMPAIGN, AD_SET, or AD. Creative-level events are not forwarded.
Branch on status.raw to handle each transition; use error.code (when present) as the stable discriminator — error.summary and error.message are localized to the ad-account owner's Meta locale.
The error block is optional. It's present on most WITH_ISSUES events but can be absent (Meta does not always include diagnostics), and is never present on any other status. Always null-check error before reading error.code.
Fan-out: matching is keyed on adObject.platformAdAccountId. When multiple connected Zernio metaads accounts are linked to the same Meta ad account, each receives its own delivery.
Payload
Example payload
{
"account": {
"platform": "metaads"
},
"adObject": {
"platformId": "120244894077860689",
"platformAdAccountId": "act_2129800524463520"
},
"status": {
"raw": "ACTIVE"
},
"error": {
"code": "2643001",
"summary": "Ad Processing Error"
}
}Response
Webhook received successfully