Events
The data field of the envelope always includes the affected resource plus any extras named below. Every payload is snake_case.
content.created
Section titled “content.created”Fired when a new content object appears (via API, dashboard, or campaign generation).
{ "content": { "object": "content", "id": "cnt_...", "status": "draft", "..." : "..." }}content.updated
Section titled “content.updated”Fired on any successful PATCH /content/{id}.
{ "content": { "object": "content", "id": "cnt_...", "..." : "..." }}content.approved
Section titled “content.approved”Fires only when status transitions to approved. Not fired if the content is created directly in approved.
{ "content": { "object": "content", "id": "cnt_...", "status": "approved", "..." : "..." }}content.published
Section titled “content.published”Fires once per content item after at least one platform accepts the post. The platforms array contains one entry per targeted destination with the outcome for that leg.
{ "content": { "id": "cnt_9f2c8e7b1a3d4f60", "object": "content" }, "published_at": "2026-07-19T13:00:03Z", "platforms": [ { "platform": "instagram", "success": true, "platform_post_id": "17987654...", "error": null }, { "platform": "tiktok", "success": true, "platform_post_id": "7391812390000000000", "error": null } ]}content.publish_failed
Section titled “content.publish_failed”Fires when every targeted platform rejected the post. Payload mirrors content.published without platform_post_id fields; each leg has error populated.
content.deleted
Section titled “content.deleted”Fires on hard or soft delete.
{ "content": { "id": "cnt_9f2c8e7b1a3d4f60", "object": "content" }}campaign.launched
Section titled “campaign.launched”Fires when a campaign transitions to active.
{ "campaign": { "object": "campaign", "id": "cmp_4b7f2a91c3d80e56", "status": "active", "..." : "..." }, "scheduled_posts": 10, "skipped_posts": 0}social_account.connected
Section titled “social_account.connected”Fires on completed OAuth or a resolved WhatsApp Business callback.
{ "platform": "instagram", "account": { "platform_user_id": "17841400000000000", "platform_username": "acme.studio", "account_type": "business" }}social_account.disconnected
Section titled “social_account.disconnected”Fires when the user removes the app, when Meta calls the data-deletion callback, or when DELETE /social_accounts/{id} is called. The reason field tells you which.
{ "platform": "instagram", "account": { "platform_user_id": "17841400000000000", "platform_username": "acme.studio" }, "reason": "deauthorized"}Possible reason values: deauthorized, data_deletion, api.