@getlatedev/node 0.2.1473 → 0.2.1475

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -16961,7 +16961,7 @@ export type Webhook = {
16961
16961
  /**
16962
16962
  * Events subscribed to
16963
16963
  */
16964
- events?: Array<('post.scheduled' | 'post.published' | 'post.failed' | 'post.partial' | 'post.cancelled' | 'post.recycled' | 'post.platform.published' | 'post.platform.failed' | 'post.platform.deleted' | 'post.tiktok.url_resolved' | 'post.external.created' | 'post.external.updated' | 'post.external.deleted' | 'account.connected' | 'account.disconnected' | 'account.permissions_changed' | 'account.ads.initial_sync_completed' | 'account.ads.sync_failed' | 'account.ads.sync_recovered' | 'analytics.synced' | 'post.tracking_completed' | 'post.authenticity_changed' | 'message.received' | 'conversation.started' | 'conversation.control_changed' | 'call.received' | 'call.ended' | 'call.failed' | 'call.permission_request' | 'message.sent' | 'message.edited' | 'message.deleted' | 'message.delivered' | 'message.read' | 'message.played' | 'message.failed' | 'reaction.received' | 'referral.received' | 'comment.received' | 'review.new' | 'review.updated' | 'review.deleted' | 'review.restored' | 'lead.received' | 'ad.status_changed' | 'ad.review.approved' | 'ad.review.rejected' | 'ad.delivery_issue' | 'campaign.budget.depleted' | 'ad_account.status_changed' | 'ad.video.processed' | 'ad_rule.triggered' | 'automation.check.completed' | 'automation.action.applied' | 'automation.action.failed' | 'automation.action.unknown' | 'automation.alert.opened' | 'automation.alert.escalated' | 'automation.alert.resolved' | 'whatsapp.template.status_updated' | 'whatsapp.template.category_updated' | 'whatsapp.account.name_status_updated' | 'whatsapp.account.quality_updated' | 'whatsapp.account.status_updated' | 'whatsapp.account.alert_received' | 'whatsapp.contact.identity_changed' | 'whatsapp.automatic_event' | 'whatsapp.number.activated' | 'whatsapp.number.declined' | 'whatsapp.number.action_required' | 'whatsapp.number.verification_required' | 'whatsapp.number.suspended' | 'whatsapp.number.reactivated' | 'whatsapp.number.released' | 'whatsapp.number.kyc_submitted' | 'phone_number.stock_available' | 'verification.approved' | 'verification.failed' | 'api.changelog.published' | 'sms.registration.action_required' | 'sms.registration.status_updated' | 'branded_calling.identity.status_updated' | 'branded_calling.identity.action_required' | 'branded_calling.number.status_updated' | 'rcs.agent.status_updated' | 'commerce.product.created' | 'commerce.product.updated' | 'commerce.product.deleted' | 'commerce.order.created' | 'commerce.order.updated' | 'commerce.order.refunded' | 'contact.tag_added' | 'contact.tag_removed' | 'contact.field_changed' | 'sequence.enrolled' | 'sequence.exited' | 'workflow.run.started' | 'workflow.run.completed' | 'workflow.run.failed' | 'support.run.completed' | 'support.run.failed' | 'campaign_submission.received' | 'campaign_submission.flagged' | 'campaign_submission.pending_review' | 'campaign_submission.approved' | 'campaign_submission.rejected' | 'creator_campaign.budget_exhausted' | 'creator_campaign.closed' | 'campaign_payout.payable' | 'campaign_payout.settled' | 'campaign_payout.failed' | 'campaign_participant.joined' | 'campaign_participant.suspended' | 'campaign_participant.removed' | 'account.rate_limited' | 'calendar.event.created' | 'calendar.event.updated' | 'calendar.event.deleted' | 'file.created' | 'file.updated' | 'file.deleted' | 'file.picked' | 'contact.updated' | 'contact.deleted')>;
16964
+ events?: Array<('post.scheduled' | 'post.published' | 'post.failed' | 'post.partial' | 'post.cancelled' | 'post.recycled' | 'post.platform.published' | 'post.platform.failed' | 'post.platform.deleted' | 'post.tiktok.url_resolved' | 'post.external.created' | 'post.external.updated' | 'post.external.deleted' | 'account.connected' | 'account.disconnected' | 'account.permissions_changed' | 'account.ads.initial_sync_completed' | 'account.ads.sync_failed' | 'account.ads.sync_recovered' | 'analytics.synced' | 'post.tracking_completed' | 'post.authenticity_changed' | 'message.received' | 'conversation.started' | 'conversation.control_changed' | 'call.received' | 'call.ended' | 'call.failed' | 'call.permission_request' | 'message.sent' | 'message.edited' | 'message.deleted' | 'message.delivered' | 'message.read' | 'message.played' | 'message.failed' | 'reaction.received' | 'referral.received' | 'comment.received' | 'review.new' | 'review.updated' | 'review.deleted' | 'review.restored' | 'lead.received' | 'ad.status_changed' | 'ad.created' | 'ad.updated' | 'campaign.created' | 'campaign.updated' | 'ad.review.approved' | 'ad.review.rejected' | 'ad.delivery_issue' | 'campaign.budget.depleted' | 'ad_account.status_changed' | 'ad.video.processed' | 'ad_rule.triggered' | 'automation.check.completed' | 'automation.action.applied' | 'automation.action.failed' | 'automation.action.unknown' | 'automation.alert.opened' | 'automation.alert.escalated' | 'automation.alert.resolved' | 'whatsapp.template.status_updated' | 'whatsapp.template.category_updated' | 'whatsapp.account.name_status_updated' | 'whatsapp.account.quality_updated' | 'whatsapp.account.status_updated' | 'whatsapp.account.alert_received' | 'whatsapp.contact.identity_changed' | 'whatsapp.automatic_event' | 'whatsapp.number.activated' | 'whatsapp.number.declined' | 'whatsapp.number.action_required' | 'whatsapp.number.verification_required' | 'whatsapp.number.suspended' | 'whatsapp.number.reactivated' | 'whatsapp.number.released' | 'whatsapp.number.kyc_submitted' | 'phone_number.stock_available' | 'verification.approved' | 'verification.failed' | 'api.changelog.published' | 'sms.registration.action_required' | 'sms.registration.status_updated' | 'branded_calling.identity.status_updated' | 'branded_calling.identity.action_required' | 'branded_calling.number.status_updated' | 'rcs.agent.status_updated' | 'commerce.product.created' | 'commerce.product.updated' | 'commerce.product.deleted' | 'commerce.order.created' | 'commerce.order.updated' | 'commerce.order.refunded' | 'contact.tag_added' | 'contact.tag_removed' | 'contact.field_changed' | 'sequence.enrolled' | 'sequence.exited' | 'workflow.run.started' | 'workflow.run.completed' | 'workflow.run.failed' | 'support.run.completed' | 'support.run.failed' | 'campaign_submission.received' | 'campaign_submission.flagged' | 'campaign_submission.pending_review' | 'campaign_submission.approved' | 'campaign_submission.rejected' | 'creator_campaign.budget_exhausted' | 'creator_campaign.closed' | 'campaign_payout.payable' | 'campaign_payout.settled' | 'campaign_payout.failed' | 'campaign_participant.joined' | 'campaign_participant.suspended' | 'campaign_participant.removed' | 'account.rate_limited' | 'calendar.event.created' | 'calendar.event.updated' | 'calendar.event.deleted' | 'file.created' | 'file.updated' | 'file.deleted' | 'file.picked' | 'contact.updated' | 'contact.deleted')>;
16965
16965
  /**
16966
16966
  * Whether webhook delivery is enabled
16967
16967
  */
@@ -17553,6 +17553,81 @@ export type previous = 'active' | 'restricted' | 'disabled' | 'closed';
17553
17553
 
17554
17554
  export type current = 'active' | 'restricted' | 'disabled' | 'closed';
17555
17555
 
17556
+ /**
17557
+ * Webhook payload for the `ad.created` event. Fires when an ad is created through Zernio (API, MCP or dashboard) or detected by the sync, once per ad, after its campaign and ad set are recorded so `GET /v1/ads/{adId}` finds them.
17558
+ *
17559
+ * `source` is `zernio` for ads created through Zernio and `platform` for ads our sync detected, up to one sync interval later (Meta ads entering review usually arrive within minutes). History loaded when an account connects, and ads created more than 7 days ago, are never announced.
17560
+ *
17561
+ * An ad is announced at most once per 24 hours.
17562
+ *
17563
+ */
17564
+ export type WebhookPayloadAdCreated = {
17565
+ /**
17566
+ * Stable webhook event ID: the dedupe key, also sent as the X-Zernio-Event-Id header and identical on every retry and redelivery.
17567
+ */
17568
+ id: string;
17569
+ profiles?: WebhookProfiles;
17570
+ /**
17571
+ * Always true when present: only a sample sent by POST /v1/webhooks/test with an event carries it. Real deliveries never do.
17572
+ */
17573
+ test?: boolean;
17574
+ event: 'ad.created';
17575
+ account: WebhookAdsAccount;
17576
+ adObject: {
17577
+ /**
17578
+ * Always `AD`.
17579
+ */
17580
+ level: 'AD';
17581
+ /**
17582
+ * Platform-native ad ID.
17583
+ */
17584
+ platformId: string;
17585
+ /**
17586
+ * Platform-native ad account ID.
17587
+ */
17588
+ platformAdAccountId: string;
17589
+ /**
17590
+ * Zernio ad ID, usable with GET /v1/ads/{adId}.
17591
+ */
17592
+ adId: string;
17593
+ name: string;
17594
+ /**
17595
+ * The campaign the ad belongs to, or null when the platform has none.
17596
+ */
17597
+ campaign: {
17598
+ platformCampaignId: string;
17599
+ name: (string) | null;
17600
+ } | null;
17601
+ /**
17602
+ * The ad set the ad belongs to, or null when the platform has none.
17603
+ */
17604
+ adSet: {
17605
+ platformAdSetId: string;
17606
+ name: (string) | null;
17607
+ } | null;
17608
+ };
17609
+ /**
17610
+ * Where the ad was created. `zernio` for ads created through Zernio, `platform` for ads the sync detected.
17611
+ */
17612
+ source: 'zernio' | 'platform';
17613
+ /**
17614
+ * UTC time at which Zernio generated this event.
17615
+ */
17616
+ timestamp: string;
17617
+ };
17618
+
17619
+ export type event9 = 'ad.created';
17620
+
17621
+ /**
17622
+ * Always `AD`.
17623
+ */
17624
+ export type level4 = 'AD';
17625
+
17626
+ /**
17627
+ * Where the ad was created. `zernio` for ads created through Zernio, `platform` for ads the sync detected.
17628
+ */
17629
+ export type source4 = 'zernio' | 'platform';
17630
+
17556
17631
  /**
17557
17632
  * Webhook payload for the `ad.delivery_issue` event. Fires when an ad Zernio already tracked moves into the platform's error state:
17558
17633
  *
@@ -17614,12 +17689,7 @@ export type WebhookPayloadAdDeliveryIssue = {
17614
17689
  timestamp: string;
17615
17690
  };
17616
17691
 
17617
- export type event9 = 'ad.delivery_issue';
17618
-
17619
- /**
17620
- * Always `AD`.
17621
- */
17622
- export type level4 = 'AD';
17692
+ export type event10 = 'ad.delivery_issue';
17623
17693
 
17624
17694
  /**
17625
17695
  * Webhook payload for the `ad.review.approved` and `ad.review.rejected` events. Emitted for every ad network Zernio syncs (Meta, Google, TikTok, LinkedIn, Pinterest, X, Reddit and the rest).
@@ -17688,7 +17758,7 @@ export type WebhookPayloadAdReview = {
17688
17758
  timestamp: string;
17689
17759
  };
17690
17760
 
17691
- export type event10 = 'ad.review.approved' | 'ad.review.rejected';
17761
+ export type event11 = 'ad.review.approved' | 'ad.review.rejected';
17692
17762
 
17693
17763
  export type status52 = 'approved' | 'rejected';
17694
17764
 
@@ -17844,7 +17914,7 @@ export type WebhookPayloadAdRuleTriggered = {
17844
17914
  timestamp: string;
17845
17915
  };
17846
17916
 
17847
- export type event11 = 'ad_rule.triggered';
17917
+ export type event12 = 'ad_rule.triggered';
17848
17918
 
17849
17919
  /**
17850
17920
  * Whether the rule evaluates campaigns, ad sets or ads.
@@ -17976,13 +18046,88 @@ export type WebhookPayloadAdStatusChanged = {
17976
18046
  timestamp: string;
17977
18047
  };
17978
18048
 
17979
- export type event12 = 'ad.status_changed';
18049
+ export type event13 = 'ad.status_changed';
17980
18050
 
17981
18051
  /**
17982
18052
  * Hierarchy level the status applies to. Mirrors Meta's `level`. Creative-level events are not forwarded.
17983
18053
  */
17984
18054
  export type level6 = 'CAMPAIGN' | 'AD_SET' | 'AD';
17985
18055
 
18056
+ /**
18057
+ * Webhook payload for the `ad.updated` event. Fires when an ad is edited through Zernio (API, MCP or dashboard), after the platform and Zernio both accepted the edit, or when the sync detects an edit made outside Zernio. It is sent once, to the owner of the edited ad.
18058
+ *
18059
+ * `source` is `zernio` for edits through Zernio, `platform` for edits the sync detected outside Zernio, up to one sync interval late. From the sync, `changes` covers only `name` and `status`.
18060
+ *
18061
+ * Budget, bid, schedule and targeting edits made outside Zernio are not announced on the ad. Never for history loaded when an account connects. Tracking tag edits are not announced, and an ad rule that changes an ad arrives as `ad_rule.triggered`.
18062
+ *
18063
+ * `platformId` can change when a LinkedIn creative is replaced, while `adId` stays stable.
18064
+ *
18065
+ * `changes` names the edited fields and never their values: read the ad with `GET /v1/ads/{adId}` for the current state. Ignore values you do not know, new ones can be added.
18066
+ *
18067
+ * Events are not deduplicated: every edit is announced. Use the event `id` to drop repeats.
18068
+ *
18069
+ */
18070
+ export type WebhookPayloadAdUpdated = {
18071
+ /**
18072
+ * Stable webhook event ID: the dedupe key, also sent as the X-Zernio-Event-Id header and identical on every retry and redelivery.
18073
+ */
18074
+ id: string;
18075
+ profiles?: WebhookProfiles;
18076
+ /**
18077
+ * Always true when present: only a sample sent by POST /v1/webhooks/test with an event carries it. Real deliveries never do.
18078
+ */
18079
+ test?: boolean;
18080
+ event: 'ad.updated';
18081
+ account: WebhookAdsAccount;
18082
+ adObject: {
18083
+ /**
18084
+ * Always `AD`.
18085
+ */
18086
+ level: 'AD';
18087
+ /**
18088
+ * Platform-native ad ID.
18089
+ */
18090
+ platformId: string;
18091
+ /**
18092
+ * Platform-native ad account ID.
18093
+ */
18094
+ platformAdAccountId: string;
18095
+ /**
18096
+ * Zernio ad ID, usable with GET /v1/ads/{adId}.
18097
+ */
18098
+ adId: string;
18099
+ name: string;
18100
+ /**
18101
+ * The campaign the ad belongs to, or null when the platform has none.
18102
+ */
18103
+ campaign: {
18104
+ platformCampaignId: string;
18105
+ name: (string) | null;
18106
+ } | null;
18107
+ /**
18108
+ * The ad set the ad belongs to, or null when the platform has none.
18109
+ */
18110
+ adSet: {
18111
+ platformAdSetId: string;
18112
+ name: (string) | null;
18113
+ } | null;
18114
+ };
18115
+ /**
18116
+ * Fields edited by this request. `status` is the ad's own on/off switch. Ignore values you do not know.
18117
+ */
18118
+ changes: Array<('name' | 'status' | 'budget' | 'bid' | 'schedule' | 'targeting' | 'creative' | 'settings')>;
18119
+ /**
18120
+ * Where the edit was made. `zernio` for edits through Zernio, `platform` for edits the sync detected outside Zernio.
18121
+ */
18122
+ source: 'zernio' | 'platform';
18123
+ /**
18124
+ * UTC time at which Zernio generated this event.
18125
+ */
18126
+ timestamp: string;
18127
+ };
18128
+
18129
+ export type event14 = 'ad.updated';
18130
+
17986
18131
  /**
17987
18132
  * Webhook payload for the `ad.video.processed` event. Fires once per
17988
18133
  * `POST /v1/ads/videos` call made with `async: true`, when Meta finishes
@@ -18047,7 +18192,7 @@ export type WebhookPayloadAdVideoProcessed = {
18047
18192
  timestamp: string;
18048
18193
  };
18049
18194
 
18050
- export type event13 = 'ad.video.processed';
18195
+ export type event15 = 'ad.video.processed';
18051
18196
 
18052
18197
  /**
18053
18198
  * `ready`: usable as `video.id` on the create endpoints. `error`: Meta could not process it; upload again.
@@ -18115,7 +18260,7 @@ export type WebhookPayloadAnalyticsSynced = {
18115
18260
  timestamp: string;
18116
18261
  };
18117
18262
 
18118
- export type event14 = 'analytics.synced';
18263
+ export type event16 = 'analytics.synced';
18119
18264
 
18120
18265
  export type WebhookPayloadApiChangelogPublished = {
18121
18266
  /**
@@ -18134,7 +18279,7 @@ export type WebhookPayloadApiChangelogPublished = {
18134
18279
  timestamp: string;
18135
18280
  };
18136
18281
 
18137
- export type event15 = 'api.changelog.published';
18282
+ export type event17 = 'api.changelog.published';
18138
18283
 
18139
18284
  /**
18140
18285
  * Webhook payload for `automation.action.applied`, `automation.action.failed` and `automation.action.unknown`: one change an automation made or tried.
@@ -18191,7 +18336,7 @@ export type WebhookPayloadAutomationAction = {
18191
18336
  timestamp: string;
18192
18337
  };
18193
18338
 
18194
- export type event16 = 'automation.action.applied' | 'automation.action.failed' | 'automation.action.unknown';
18339
+ export type event18 = 'automation.action.applied' | 'automation.action.failed' | 'automation.action.unknown';
18195
18340
 
18196
18341
  export type status54 = 'applied' | 'skipped' | 'failed' | 'unknown';
18197
18342
 
@@ -18238,7 +18383,7 @@ export type WebhookPayloadAutomationAlert = {
18238
18383
  timestamp: string;
18239
18384
  };
18240
18385
 
18241
- export type event17 = 'automation.alert.opened' | 'automation.alert.escalated' | 'automation.alert.resolved';
18386
+ export type event19 = 'automation.alert.opened' | 'automation.alert.escalated' | 'automation.alert.resolved';
18242
18387
 
18243
18388
  export type severity2 = 'warning' | 'critical';
18244
18389
 
@@ -18289,7 +18434,7 @@ export type WebhookPayloadAutomationCheckCompleted = {
18289
18434
  timestamp: string;
18290
18435
  };
18291
18436
 
18292
- export type event18 = 'automation.check.completed';
18437
+ export type event20 = 'automation.check.completed';
18293
18438
 
18294
18439
  export type outcome2 = 'triggered' | 'no_match' | 'cooldown' | 'daily_limit' | 'failed';
18295
18440
 
@@ -18318,7 +18463,7 @@ export type WebhookPayloadCalendarEvent = {
18318
18463
  timestamp: string;
18319
18464
  };
18320
18465
 
18321
- export type event19 = 'calendar.event.created' | 'calendar.event.updated' | 'calendar.event.deleted';
18466
+ export type event21 = 'calendar.event.created' | 'calendar.event.updated' | 'calendar.event.deleted';
18322
18467
 
18323
18468
  export type changeType = 'created' | 'updated' | 'deleted';
18324
18469
 
@@ -18401,7 +18546,7 @@ export type WebhookPayloadCallEnded = {
18401
18546
  timestamp: string;
18402
18547
  };
18403
18548
 
18404
- export type event20 = 'call.ended';
18549
+ export type event22 = 'call.ended';
18405
18550
 
18406
18551
  /**
18407
18552
  * Webhook payload for the `call.failed` event. Fired when a call
@@ -18440,7 +18585,7 @@ export type WebhookPayloadCallFailed = {
18440
18585
  timestamp: string;
18441
18586
  };
18442
18587
 
18443
- export type event21 = 'call.failed';
18588
+ export type event23 = 'call.failed';
18444
18589
 
18445
18590
  /**
18446
18591
  * Webhook payload for the `call.permission_request` event. Fires
@@ -18482,7 +18627,7 @@ export type WebhookPayloadCallPermissionRequest = {
18482
18627
  timestamp: string;
18483
18628
  };
18484
18629
 
18485
- export type event22 = 'call.permission_request';
18630
+ export type event24 = 'call.permission_request';
18486
18631
 
18487
18632
  export type response = 'accept' | 'reject';
18488
18633
 
@@ -18541,7 +18686,7 @@ export type WebhookPayloadCallReceived = {
18541
18686
  timestamp: string;
18542
18687
  };
18543
18688
 
18544
- export type event23 = 'call.received';
18689
+ export type event25 = 'call.received';
18545
18690
 
18546
18691
  /**
18547
18692
  * Webhook payload for the `campaign.budget.depleted` event. Fires when a campaign
@@ -18592,13 +18737,60 @@ export type WebhookPayloadCampaignBudgetDepleted = {
18592
18737
  timestamp: string;
18593
18738
  };
18594
18739
 
18595
- export type event24 = 'campaign.budget.depleted';
18740
+ export type event26 = 'campaign.budget.depleted';
18596
18741
 
18597
18742
  /**
18598
18743
  * Always `CAMPAIGN`.
18599
18744
  */
18600
18745
  export type level7 = 'CAMPAIGN';
18601
18746
 
18747
+ /**
18748
+ * Webhook payload for the `campaign.created` event. Fires when a campaign is created through Zernio (API, MCP or dashboard) or detected by the sync, once per campaign, after its row is recorded so `GET /v1/ads/campaigns/{campaignId}` finds it.
18749
+ *
18750
+ * `source` is `zernio` for campaigns created through Zernio and `platform` for campaigns our sync detected, up to one sync interval later. History loaded when an account connects, and campaigns created more than 7 days ago, are never announced.
18751
+ *
18752
+ * A campaign is announced at most once per 24 hours.
18753
+ *
18754
+ */
18755
+ export type WebhookPayloadCampaignCreated = {
18756
+ /**
18757
+ * Stable webhook event ID: the dedupe key, also sent as the X-Zernio-Event-Id header and identical on every retry and redelivery.
18758
+ */
18759
+ id: string;
18760
+ profiles?: WebhookProfiles;
18761
+ /**
18762
+ * Always true when present: only a sample sent by POST /v1/webhooks/test with an event carries it. Real deliveries never do.
18763
+ */
18764
+ test?: boolean;
18765
+ event: 'campaign.created';
18766
+ account: WebhookAdsAccount;
18767
+ adObject: {
18768
+ /**
18769
+ * Always `CAMPAIGN`.
18770
+ */
18771
+ level: 'CAMPAIGN';
18772
+ /**
18773
+ * Platform-native campaign ID, usable as campaignId with /v1/ads/campaigns/{campaignId}.
18774
+ */
18775
+ platformId: string;
18776
+ /**
18777
+ * Platform-native ad account ID.
18778
+ */
18779
+ platformAdAccountId: string;
18780
+ name: (string) | null;
18781
+ };
18782
+ /**
18783
+ * Where the campaign was created. `zernio` for campaigns created through Zernio, `platform` for campaigns the sync detected.
18784
+ */
18785
+ source: 'zernio' | 'platform';
18786
+ /**
18787
+ * UTC time at which Zernio generated this event.
18788
+ */
18789
+ timestamp: string;
18790
+ };
18791
+
18792
+ export type event27 = 'campaign.created';
18793
+
18602
18794
  /**
18603
18795
  * Webhook payload for `campaign_participant.joined`, `campaign_participant.suspended` and
18604
18796
  * `campaign_participant.removed`. `participant.status` is the status after the change.
@@ -18635,7 +18827,7 @@ export type WebhookPayloadCampaignParticipant = {
18635
18827
  timestamp: string;
18636
18828
  };
18637
18829
 
18638
- export type event25 = 'campaign_participant.joined' | 'campaign_participant.suspended' | 'campaign_participant.removed';
18830
+ export type event28 = 'campaign_participant.joined' | 'campaign_participant.suspended' | 'campaign_participant.removed';
18639
18831
 
18640
18832
  /**
18641
18833
  * Webhook payload for `campaign_payout.payable` and `campaign_payout.settled`.
@@ -18724,7 +18916,7 @@ export type WebhookPayloadCampaignPayout = {
18724
18916
  timestamp: string;
18725
18917
  };
18726
18918
 
18727
- export type event26 = 'campaign_payout.payable' | 'campaign_payout.settled' | 'campaign_payout.failed';
18919
+ export type event29 = 'campaign_payout.payable' | 'campaign_payout.settled' | 'campaign_payout.failed';
18728
18920
 
18729
18921
  /**
18730
18922
  * returned: Stripe refused the transfer. stale: it could not be confirmed with Stripe within 24 hours. reversed: Stripe reversed it after it was sent; the settlement is undone.
@@ -18792,7 +18984,64 @@ export type WebhookPayloadCampaignSubmission = {
18792
18984
  timestamp: string;
18793
18985
  };
18794
18986
 
18795
- export type event27 = 'campaign_submission.received' | 'campaign_submission.flagged' | 'campaign_submission.pending_review' | 'campaign_submission.approved' | 'campaign_submission.rejected';
18987
+ export type event30 = 'campaign_submission.received' | 'campaign_submission.flagged' | 'campaign_submission.pending_review' | 'campaign_submission.approved' | 'campaign_submission.rejected';
18988
+
18989
+ /**
18990
+ * Webhook payload for the `campaign.updated` event. Fires when a campaign is edited through Zernio (API, MCP or dashboard), after the platform and Zernio both accepted the edit, once per user who can see the campaign. It also fires when the sync detects an edit made outside Zernio.
18991
+ *
18992
+ * `source` is `zernio` for edits through Zernio, `platform` for edits the sync detected outside Zernio, up to one sync interval late, sent only to the user whose sync saw it.
18993
+ *
18994
+ * From the sync, `changes` covers only `name`, `status` and `schedule` (schedule only on Google, LinkedIn, Pinterest and OpenAI Ads). Budget edits made outside Zernio are not announced. Never for history loaded when an account connects. An ad rule that changes a campaign arrives as `ad_rule.triggered`.
18995
+ *
18996
+ * Ad set edits and Google sub-resource edits (ad schedule, targeting, negative keywords, conversion goals, assets, asset groups, listing group filters) are not announced.
18997
+ *
18998
+ * `changes` names the edited fields and never their values: read the campaign with `GET /v1/ads/campaigns/{campaignId}` for the current state. Ignore values you do not know, new ones can be added.
18999
+ *
19000
+ * Events are not deduplicated: every edit is announced. Use the event `id` to drop repeats.
19001
+ *
19002
+ */
19003
+ export type WebhookPayloadCampaignUpdated = {
19004
+ /**
19005
+ * Stable webhook event ID: the dedupe key, also sent as the X-Zernio-Event-Id header and identical on every retry and redelivery.
19006
+ */
19007
+ id: string;
19008
+ profiles?: WebhookProfiles;
19009
+ /**
19010
+ * Always true when present: only a sample sent by POST /v1/webhooks/test with an event carries it. Real deliveries never do.
19011
+ */
19012
+ test?: boolean;
19013
+ event: 'campaign.updated';
19014
+ account: WebhookAdsAccount;
19015
+ adObject: {
19016
+ /**
19017
+ * Always `CAMPAIGN`.
19018
+ */
19019
+ level: 'CAMPAIGN';
19020
+ /**
19021
+ * Platform-native campaign ID, usable as campaignId with /v1/ads/campaigns/{campaignId}.
19022
+ */
19023
+ platformId: string;
19024
+ /**
19025
+ * Platform-native ad account ID.
19026
+ */
19027
+ platformAdAccountId: string;
19028
+ name: (string) | null;
19029
+ };
19030
+ /**
19031
+ * Fields edited by this request. `status` is the campaign's own on/off switch. Ignore values you do not know.
19032
+ */
19033
+ changes: Array<('name' | 'status' | 'budget' | 'bid' | 'schedule' | 'targeting' | 'creative' | 'settings')>;
19034
+ /**
19035
+ * Where the edit was made. `zernio` for edits through Zernio, `platform` for edits the sync detected outside Zernio.
19036
+ */
19037
+ source: 'zernio' | 'platform';
19038
+ /**
19039
+ * UTC time at which Zernio generated this event.
19040
+ */
19041
+ timestamp: string;
19042
+ };
19043
+
19044
+ export type event31 = 'campaign.updated';
18796
19045
 
18797
19046
  /**
18798
19047
  * Webhook payload for comment received events (Instagram, Facebook, Threads, YouTube, LinkedIn, Bluesky, Reddit, TikTok). X/Twitter does NOT fire this event. TikTok events carry only the author id: the comment.update webhook has no username, picture or owner flag.
@@ -18959,7 +19208,7 @@ export type WebhookPayloadComment = {
18959
19208
  timestamp: string;
18960
19209
  };
18961
19210
 
18962
- export type event28 = 'comment.received';
19211
+ export type event32 = 'comment.received';
18963
19212
 
18964
19213
  export type platform16 = 'instagram' | 'facebook' | 'threads' | 'youtube' | 'linkedin' | 'bluesky' | 'reddit' | 'tiktok';
18965
19214
 
@@ -19005,7 +19254,7 @@ export type WebhookPayloadCommerceOrder = {
19005
19254
  };
19006
19255
  };
19007
19256
 
19008
- export type event29 = 'commerce.order.created' | 'commerce.order.updated' | 'commerce.order.refunded';
19257
+ export type event33 = 'commerce.order.created' | 'commerce.order.updated' | 'commerce.order.refunded';
19009
19258
 
19010
19259
  export type type21 = 'order';
19011
19260
 
@@ -19048,7 +19297,7 @@ export type WebhookPayloadCommerceProduct = {
19048
19297
  };
19049
19298
  };
19050
19299
 
19051
- export type event30 = 'commerce.product.created' | 'commerce.product.updated' | 'commerce.product.deleted';
19300
+ export type event34 = 'commerce.product.created' | 'commerce.product.updated' | 'commerce.product.deleted';
19052
19301
 
19053
19302
  export type type22 = 'product';
19054
19303
 
@@ -19077,7 +19326,7 @@ export type WebhookPayloadContact = {
19077
19326
  timestamp: string;
19078
19327
  };
19079
19328
 
19080
- export type event31 = 'contact.updated' | 'contact.deleted';
19329
+ export type event35 = 'contact.updated' | 'contact.deleted';
19081
19330
 
19082
19331
  export type changeType2 = 'updated' | 'deleted';
19083
19332
 
@@ -19117,12 +19366,12 @@ export type WebhookPayloadContactFieldChanged = {
19117
19366
  source: 'api' | 'workflow' | 'automation';
19118
19367
  };
19119
19368
 
19120
- export type event32 = 'contact.field_changed';
19369
+ export type event36 = 'contact.field_changed';
19121
19370
 
19122
19371
  /**
19123
19372
  * Who wrote the field: the API or dashboard, a workflow set_field node, or an automation.
19124
19373
  */
19125
- export type source4 = 'api' | 'workflow' | 'automation';
19374
+ export type source5 = 'api' | 'workflow' | 'automation';
19126
19375
 
19127
19376
  export type WebhookPayloadContactTag = {
19128
19377
  /**
@@ -19149,7 +19398,7 @@ export type WebhookPayloadContactTag = {
19149
19398
  source: 'api' | 'workflow' | 'automation';
19150
19399
  };
19151
19400
 
19152
- export type event33 = 'contact.tag_added' | 'contact.tag_removed';
19401
+ export type event37 = 'contact.tag_added' | 'contact.tag_removed';
19153
19402
 
19154
19403
  /**
19155
19404
  * Who answers a conversation changed under Meta's handover protocol. WhatsApp: Meta
@@ -19195,7 +19444,7 @@ export type WebhookPayloadConversationControlChanged = {
19195
19444
  timestamp: string;
19196
19445
  };
19197
19446
 
19198
- export type event34 = 'conversation.control_changed';
19447
+ export type event38 = 'conversation.control_changed';
19199
19448
 
19200
19449
  /**
19201
19450
  * Who answers now. ai_agent: Meta Business Agent (WhatsApp); app: you; other: another app (a WhatsApp partner, or a Messenger / Instagram receiver such as Page Inbox).
@@ -19244,7 +19493,7 @@ export type WebhookPayloadConversationStarted = {
19244
19493
  timestamp: string;
19245
19494
  };
19246
19495
 
19247
- export type event35 = 'conversation.started';
19496
+ export type event39 = 'conversation.started';
19248
19497
 
19249
19498
  /**
19250
19499
  * Webhook payload for `creator_campaign.budget_exhausted` and `creator_campaign.closed`.
@@ -19283,7 +19532,7 @@ export type WebhookPayloadCreatorCampaign = {
19283
19532
  timestamp: string;
19284
19533
  };
19285
19534
 
19286
- export type event36 = 'creator_campaign.budget_exhausted' | 'creator_campaign.closed';
19535
+ export type event40 = 'creator_campaign.budget_exhausted' | 'creator_campaign.closed';
19287
19536
 
19288
19537
  /**
19289
19538
  * Webhook payload for post.external.created / post.external.updated /
@@ -19320,7 +19569,7 @@ export type WebhookPayloadExternalPost = {
19320
19569
  timestamp: string;
19321
19570
  };
19322
19571
 
19323
- export type event37 = 'post.external.created' | 'post.external.updated' | 'post.external.deleted';
19572
+ export type event41 = 'post.external.created' | 'post.external.updated' | 'post.external.deleted';
19324
19573
 
19325
19574
  /**
19326
19575
  * Webhook payload for file.created, file.updated and file.deleted. Carries the provider file id and the change only; read the file with `GET /v1/files/{id}`.
@@ -19347,7 +19596,7 @@ export type WebhookPayloadFile = {
19347
19596
  timestamp: string;
19348
19597
  };
19349
19598
 
19350
- export type event38 = 'file.created' | 'file.updated' | 'file.deleted';
19599
+ export type event42 = 'file.created' | 'file.updated' | 'file.deleted';
19351
19600
 
19352
19601
  /**
19353
19602
  * Webhook payload for file.picked: the user picked files on a hosted picker page (`POST /v1/files/picker-sessions`), so the app may now open them. Every id was checked against Drive before the event fired.
@@ -19382,7 +19631,7 @@ export type WebhookPayloadFilePicked = {
19382
19631
  timestamp: string;
19383
19632
  };
19384
19633
 
19385
- export type event39 = 'file.picked';
19634
+ export type event43 = 'file.picked';
19386
19635
 
19387
19636
  /**
19388
19637
  * Webhook payload for lead.received events (Meta Lead Gen / Instant Forms).
@@ -19462,7 +19711,7 @@ export type WebhookPayloadLead = {
19462
19711
  timestamp: string;
19463
19712
  };
19464
19713
 
19465
- export type event40 = 'lead.received';
19714
+ export type event44 = 'lead.received';
19466
19715
 
19467
19716
  export type platform17 = 'facebook';
19468
19717
 
@@ -20042,7 +20291,7 @@ export type WebhookPayloadMessage = {
20042
20291
  timestamp: string;
20043
20292
  };
20044
20293
 
20045
- export type event41 = 'message.received';
20294
+ export type event45 = 'message.received';
20046
20295
 
20047
20296
  /**
20048
20297
  * Which Zernio surface produced the message. Always present and
@@ -20101,7 +20350,7 @@ export type WebhookPayloadMessageDeleted = {
20101
20350
  timestamp: string;
20102
20351
  };
20103
20352
 
20104
- export type event42 = 'message.deleted';
20353
+ export type event46 = 'message.deleted';
20105
20354
 
20106
20355
  /**
20107
20356
  * Shared payload for message.delivered, message.read, message.played and message.failed events. Fires when the platform reports a new delivery state for an outgoing message.
@@ -20165,7 +20414,7 @@ export type WebhookPayloadMessageDeliveryStatus = {
20165
20414
  timestamp: string;
20166
20415
  };
20167
20416
 
20168
- export type event43 = 'message.delivered' | 'message.read' | 'message.played' | 'message.failed';
20417
+ export type event47 = 'message.delivered' | 'message.read' | 'message.played' | 'message.failed';
20169
20418
 
20170
20419
  /**
20171
20420
  * Webhook payload for message.edited events. Fires when the sender
@@ -20208,7 +20457,7 @@ export type WebhookPayloadMessageEdited = {
20208
20457
  timestamp: string;
20209
20458
  };
20210
20459
 
20211
- export type event44 = 'message.edited';
20460
+ export type event48 = 'message.edited';
20212
20461
 
20213
20462
  /**
20214
20463
  * Webhook payload for message sent events (fired when a message is sent via the API, or from the WhatsApp Business app on Coexistence numbers)
@@ -20454,7 +20703,7 @@ export type WebhookPayloadMessageSent = {
20454
20703
  timestamp: string;
20455
20704
  };
20456
20705
 
20457
- export type event45 = 'message.sent';
20706
+ export type event49 = 'message.sent';
20458
20707
 
20459
20708
  /**
20460
20709
  * Every platform whose outgoing messages Zernio observes. sms is absent on purpose: its carrier receipts update delivery status and never raise message.sent.
@@ -20471,7 +20720,7 @@ export type platform18 = 'instagram' | 'facebook' | 'telegram' | 'whatsapp' | 't
20471
20720
  * Says where WhatsApp saw the send come from, not which Zernio surface produced it: read sentVia for that.
20472
20721
  *
20473
20722
  */
20474
- export type source5 = 'whatsapp_business_app' | 'cloud_api' | 'meta_business_agent';
20723
+ export type source6 = 'whatsapp_business_app' | 'cloud_api' | 'meta_business_agent';
20475
20724
 
20476
20725
  /**
20477
20726
  * Webhook payload for phone_number.stock_available events
@@ -20519,7 +20768,7 @@ export type WebhookPayloadPhoneNumberStockAvailable = {
20519
20768
  timestamp: string;
20520
20769
  };
20521
20770
 
20522
- export type event46 = 'phone_number.stock_available';
20771
+ export type event50 = 'phone_number.stock_available';
20523
20772
 
20524
20773
  /**
20525
20774
  * Webhook payload for post events
@@ -20574,7 +20823,7 @@ export type WebhookPayloadPost = {
20574
20823
  timestamp: string;
20575
20824
  };
20576
20825
 
20577
- export type event47 = 'post.scheduled' | 'post.published' | 'post.failed' | 'post.partial' | 'post.cancelled' | 'post.recycled';
20826
+ export type event51 = 'post.scheduled' | 'post.published' | 'post.failed' | 'post.partial' | 'post.cancelled' | 'post.recycled';
20578
20827
 
20579
20828
  /**
20580
20829
  * Webhook payload for `post.authenticity_changed`. Fired when a tracked post's
@@ -20638,7 +20887,7 @@ export type WebhookPayloadPostAuthenticityChanged = {
20638
20887
  timestamp: string;
20639
20888
  };
20640
20889
 
20641
- export type event48 = 'post.authenticity_changed';
20890
+ export type event52 = 'post.authenticity_changed';
20642
20891
 
20643
20892
  /**
20644
20893
  * Webhook payload for these per-platform events:
@@ -20754,7 +21003,7 @@ export type WebhookPayloadPostPlatform = {
20754
21003
  timestamp: string;
20755
21004
  };
20756
21005
 
20757
- export type event49 = 'post.platform.published' | 'post.platform.failed' | 'post.platform.deleted' | 'post.tiktok.url_resolved';
21006
+ export type event53 = 'post.platform.published' | 'post.platform.failed' | 'post.platform.deleted' | 'post.tiktok.url_resolved';
20758
21007
 
20759
21008
  /**
20760
21009
  * Terminal status this event fires on. Matches the event suffix.
@@ -20827,7 +21076,7 @@ export type WebhookPayloadPostTrackingCompleted = {
20827
21076
  timestamp: string;
20828
21077
  };
20829
21078
 
20830
- export type event50 = 'post.tracking_completed';
21079
+ export type event54 = 'post.tracking_completed';
20831
21080
 
20832
21081
  export type completionReason2 = 'final_read' | 'unreachable' | 'post_deleted';
20833
21082
 
@@ -20889,7 +21138,7 @@ export type WebhookPayloadReaction = {
20889
21138
  timestamp: string;
20890
21139
  };
20891
21140
 
20892
- export type event51 = 'reaction.received';
21141
+ export type event55 = 'reaction.received';
20893
21142
 
20894
21143
  export type action = 'added' | 'removed';
20895
21144
 
@@ -20968,7 +21217,7 @@ export type WebhookPayloadReferral = {
20968
21217
  timestamp: string;
20969
21218
  };
20970
21219
 
20971
- export type event52 = 'referral.received';
21220
+ export type event56 = 'referral.received';
20972
21221
 
20973
21222
  /**
20974
21223
  * Webhook payload for the review.deleted event.
@@ -21026,7 +21275,7 @@ export type WebhookPayloadReviewDeleted = {
21026
21275
  timestamp: string;
21027
21276
  };
21028
21277
 
21029
- export type event53 = 'review.deleted';
21278
+ export type event57 = 'review.deleted';
21030
21279
 
21031
21280
  /**
21032
21281
  * Webhook payload for the review.new event (new review posted on a connected account).
@@ -21058,7 +21307,7 @@ export type WebhookPayloadReviewNew = {
21058
21307
  timestamp: string;
21059
21308
  };
21060
21309
 
21061
- export type event54 = 'review.new';
21310
+ export type event58 = 'review.new';
21062
21311
 
21063
21312
  /**
21064
21313
  * Webhook payload for the review.restored event. Same shape as review.new.
@@ -21093,7 +21342,7 @@ export type WebhookPayloadReviewRestored = {
21093
21342
  timestamp: string;
21094
21343
  };
21095
21344
 
21096
- export type event55 = 'review.restored';
21345
+ export type event59 = 'review.restored';
21097
21346
 
21098
21347
  /**
21099
21348
  * Webhook payload for the review.updated event. Same shape as review.new.
@@ -21141,7 +21390,7 @@ export type WebhookPayloadReviewUpdated = {
21141
21390
  timestamp: string;
21142
21391
  };
21143
21392
 
21144
- export type event56 = 'review.updated';
21393
+ export type event60 = 'review.updated';
21145
21394
 
21146
21395
  export type WebhookPayloadSequenceEnrollment = {
21147
21396
  /**
@@ -21174,7 +21423,7 @@ export type WebhookPayloadSequenceEnrollment = {
21174
21423
  exitReason?: 'completed' | 'replied' | 'manual' | 'failed' | 'unsubscribed';
21175
21424
  };
21176
21425
 
21177
- export type event57 = 'sequence.enrolled' | 'sequence.exited';
21426
+ export type event61 = 'sequence.enrolled' | 'sequence.exited';
21178
21427
 
21179
21428
  /**
21180
21429
  * sequence.exited only. completed: the last step was sent; replied: the contact replied and the sequence exits on reply; manual: unenrolled through the API; failed: the step kept failing to send; unsubscribed: the contact opted out.
@@ -21195,7 +21444,7 @@ export type WebhookPayloadSupportRun = {
21195
21444
  run: SupportRun;
21196
21445
  };
21197
21446
 
21198
- export type event58 = 'support.run.completed' | 'support.run.failed';
21447
+ export type event62 = 'support.run.completed' | 'support.run.failed';
21199
21448
 
21200
21449
  /**
21201
21450
  * Webhook payload for test deliveries
@@ -21216,7 +21465,7 @@ export type WebhookPayloadTest = {
21216
21465
  timestamp: string;
21217
21466
  };
21218
21467
 
21219
- export type event59 = 'webhook.test';
21468
+ export type event63 = 'webhook.test';
21220
21469
 
21221
21470
  /**
21222
21471
  * Webhook payload for `whatsapp.account.alert_received`, forwarded from Meta's
@@ -21268,7 +21517,7 @@ export type WebhookPayloadWhatsAppAccountAlertReceived = {
21268
21517
  timestamp: string;
21269
21518
  };
21270
21519
 
21271
- export type event60 = 'whatsapp.account.alert_received';
21520
+ export type event64 = 'whatsapp.account.alert_received';
21272
21521
 
21273
21522
  export type platform19 = 'whatsapp';
21274
21523
 
@@ -21320,7 +21569,7 @@ export type WebhookPayloadWhatsAppAccountNameStatusUpdated = {
21320
21569
  timestamp: string;
21321
21570
  };
21322
21571
 
21323
- export type event61 = 'whatsapp.account.name_status_updated';
21572
+ export type event65 = 'whatsapp.account.name_status_updated';
21324
21573
 
21325
21574
  /**
21326
21575
  * Normalized from Meta's `decision` (REJECTED -> DECLINED, DEFERRED -> PENDING_REVIEW; the review is still open on DEFERRED, not a rejection).
@@ -21378,12 +21627,12 @@ export type WebhookPayloadWhatsAppAccountQualityUpdated = {
21378
21627
  timestamp: string;
21379
21628
  };
21380
21629
 
21381
- export type event62 = 'whatsapp.account.quality_updated';
21630
+ export type event66 = 'whatsapp.account.quality_updated';
21382
21631
 
21383
21632
  /**
21384
21633
  * The Meta webhook field that reported the change.
21385
21634
  */
21386
- export type source6 = 'phone_number_quality_update' | 'business_capability_update';
21635
+ export type source7 = 'phone_number_quality_update' | 'business_capability_update';
21387
21636
 
21388
21637
  /**
21389
21638
  * Webhook payload for `whatsapp.account.status_updated`. Fired when Meta restricts,
@@ -21454,7 +21703,7 @@ export type WebhookPayloadWhatsAppAccountStatusUpdated = {
21454
21703
  timestamp: string;
21455
21704
  };
21456
21705
 
21457
- export type event63 = 'whatsapp.account.status_updated';
21706
+ export type event67 = 'whatsapp.account.status_updated';
21458
21707
 
21459
21708
  /**
21460
21709
  * `active` only on a reinstatement (DISABLED_UPDATE with ban state REINSTATE).
@@ -21511,7 +21760,7 @@ export type WebhookPayloadWhatsAppContactIdentityChanged = {
21511
21760
  timestamp: string;
21512
21761
  };
21513
21762
 
21514
- export type event64 = 'whatsapp.contact.identity_changed';
21763
+ export type event68 = 'whatsapp.contact.identity_changed';
21515
21764
 
21516
21765
  /**
21517
21766
  * Which Meta signal reported the change. `user_changed_number`: new phone number. `user_changed_user_id` and `user_id_update`: new BSUID.
@@ -21585,7 +21834,7 @@ export type WebhookPayloadWhatsAppTemplateCategoryUpdated = {
21585
21834
  timestamp: string;
21586
21835
  };
21587
21836
 
21588
- export type event65 = 'whatsapp.template.category_updated';
21837
+ export type event69 = 'whatsapp.template.category_updated';
21589
21838
 
21590
21839
  /**
21591
21840
  * `scheduled` is Meta's 24h advance notice of an upcoming
@@ -21667,7 +21916,7 @@ export type WebhookPayloadWhatsAppTemplateStatusUpdated = {
21667
21916
  timestamp: string;
21668
21917
  };
21669
21918
 
21670
- export type event66 = 'whatsapp.template.status_updated';
21919
+ export type event70 = 'whatsapp.template.status_updated';
21671
21920
 
21672
21921
  /**
21673
21922
  * New status. Forwarded verbatim from Meta's `event` field.
@@ -21734,7 +21983,7 @@ export type WebhookPayloadWorkflowRun = {
21734
21983
  error?: string;
21735
21984
  };
21736
21985
 
21737
- export type event67 = 'workflow.run.started' | 'workflow.run.completed' | 'workflow.run.failed';
21986
+ export type event71 = 'workflow.run.started' | 'workflow.run.completed' | 'workflow.run.failed';
21738
21987
 
21739
21988
  /**
21740
21989
  * running on workflow.run.started; completed or exited (ended on purpose before the last node, e.g. a handoff) on workflow.run.completed; failed on workflow.run.failed.
@@ -27479,6 +27728,10 @@ export type ListAccountsData = {
27479
27728
  * Filter accounts by platform (e.g. "instagram", "twitter").
27480
27729
  */
27481
27730
  platform?: string;
27731
+ /**
27732
+ * Comma-separated platforms (up to 50) to list together, the several-platform form of `platform`. Applied before pagination.
27733
+ */
27734
+ platforms?: string;
27482
27735
  /**
27483
27736
  * Filter accounts by profile ID. Must be a valid ObjectId.
27484
27737
  */
@@ -35868,7 +36121,7 @@ export type CreateWebhookSettingsData = {
35868
36121
  /**
35869
36122
  * Events to subscribe to (at least one required)
35870
36123
  */
35871
- events: Array<('post.scheduled' | 'post.published' | 'post.failed' | 'post.partial' | 'post.cancelled' | 'post.recycled' | 'post.platform.published' | 'post.platform.failed' | 'post.platform.deleted' | 'post.tiktok.url_resolved' | 'post.external.created' | 'post.external.updated' | 'post.external.deleted' | 'account.connected' | 'account.disconnected' | 'account.permissions_changed' | 'account.ads.initial_sync_completed' | 'account.ads.sync_failed' | 'account.ads.sync_recovered' | 'analytics.synced' | 'post.tracking_completed' | 'post.authenticity_changed' | 'message.received' | 'conversation.started' | 'conversation.control_changed' | 'call.received' | 'call.ended' | 'call.failed' | 'call.permission_request' | 'message.sent' | 'message.edited' | 'message.deleted' | 'message.delivered' | 'message.read' | 'message.played' | 'message.failed' | 'reaction.received' | 'referral.received' | 'comment.received' | 'review.new' | 'review.updated' | 'review.deleted' | 'review.restored' | 'lead.received' | 'ad.status_changed' | 'ad.review.approved' | 'ad.review.rejected' | 'ad.delivery_issue' | 'campaign.budget.depleted' | 'ad_account.status_changed' | 'ad.video.processed' | 'ad_rule.triggered' | 'automation.check.completed' | 'automation.action.applied' | 'automation.action.failed' | 'automation.action.unknown' | 'automation.alert.opened' | 'automation.alert.escalated' | 'automation.alert.resolved' | 'whatsapp.template.status_updated' | 'whatsapp.template.category_updated' | 'whatsapp.account.name_status_updated' | 'whatsapp.account.quality_updated' | 'whatsapp.account.status_updated' | 'whatsapp.account.alert_received' | 'whatsapp.contact.identity_changed' | 'whatsapp.automatic_event' | 'whatsapp.number.activated' | 'whatsapp.number.declined' | 'whatsapp.number.action_required' | 'whatsapp.number.verification_required' | 'whatsapp.number.suspended' | 'whatsapp.number.reactivated' | 'whatsapp.number.released' | 'whatsapp.number.kyc_submitted' | 'phone_number.stock_available' | 'verification.approved' | 'verification.failed' | 'api.changelog.published' | 'sms.registration.action_required' | 'sms.registration.status_updated' | 'branded_calling.identity.status_updated' | 'branded_calling.identity.action_required' | 'branded_calling.number.status_updated' | 'rcs.agent.status_updated' | 'commerce.product.created' | 'commerce.product.updated' | 'commerce.product.deleted' | 'commerce.order.created' | 'commerce.order.updated' | 'commerce.order.refunded' | 'contact.tag_added' | 'contact.tag_removed' | 'contact.field_changed' | 'sequence.enrolled' | 'sequence.exited' | 'workflow.run.started' | 'workflow.run.completed' | 'workflow.run.failed' | 'support.run.completed' | 'support.run.failed' | 'campaign_submission.received' | 'campaign_submission.flagged' | 'campaign_submission.pending_review' | 'campaign_submission.approved' | 'campaign_submission.rejected' | 'creator_campaign.budget_exhausted' | 'creator_campaign.closed' | 'campaign_payout.payable' | 'campaign_payout.settled' | 'campaign_payout.failed' | 'campaign_participant.joined' | 'campaign_participant.suspended' | 'campaign_participant.removed')>;
36124
+ events: Array<('post.scheduled' | 'post.published' | 'post.failed' | 'post.partial' | 'post.cancelled' | 'post.recycled' | 'post.platform.published' | 'post.platform.failed' | 'post.platform.deleted' | 'post.tiktok.url_resolved' | 'post.external.created' | 'post.external.updated' | 'post.external.deleted' | 'account.connected' | 'account.disconnected' | 'account.permissions_changed' | 'account.ads.initial_sync_completed' | 'account.ads.sync_failed' | 'account.ads.sync_recovered' | 'analytics.synced' | 'post.tracking_completed' | 'post.authenticity_changed' | 'message.received' | 'conversation.started' | 'conversation.control_changed' | 'call.received' | 'call.ended' | 'call.failed' | 'call.permission_request' | 'message.sent' | 'message.edited' | 'message.deleted' | 'message.delivered' | 'message.read' | 'message.played' | 'message.failed' | 'reaction.received' | 'referral.received' | 'comment.received' | 'review.new' | 'review.updated' | 'review.deleted' | 'review.restored' | 'lead.received' | 'ad.status_changed' | 'ad.created' | 'ad.updated' | 'campaign.created' | 'campaign.updated' | 'ad.review.approved' | 'ad.review.rejected' | 'ad.delivery_issue' | 'campaign.budget.depleted' | 'ad_account.status_changed' | 'ad.video.processed' | 'ad_rule.triggered' | 'automation.check.completed' | 'automation.action.applied' | 'automation.action.failed' | 'automation.action.unknown' | 'automation.alert.opened' | 'automation.alert.escalated' | 'automation.alert.resolved' | 'whatsapp.template.status_updated' | 'whatsapp.template.category_updated' | 'whatsapp.account.name_status_updated' | 'whatsapp.account.quality_updated' | 'whatsapp.account.status_updated' | 'whatsapp.account.alert_received' | 'whatsapp.contact.identity_changed' | 'whatsapp.automatic_event' | 'whatsapp.number.activated' | 'whatsapp.number.declined' | 'whatsapp.number.action_required' | 'whatsapp.number.verification_required' | 'whatsapp.number.suspended' | 'whatsapp.number.reactivated' | 'whatsapp.number.released' | 'whatsapp.number.kyc_submitted' | 'phone_number.stock_available' | 'verification.approved' | 'verification.failed' | 'api.changelog.published' | 'sms.registration.action_required' | 'sms.registration.status_updated' | 'branded_calling.identity.status_updated' | 'branded_calling.identity.action_required' | 'branded_calling.number.status_updated' | 'rcs.agent.status_updated' | 'commerce.product.created' | 'commerce.product.updated' | 'commerce.product.deleted' | 'commerce.order.created' | 'commerce.order.updated' | 'commerce.order.refunded' | 'contact.tag_added' | 'contact.tag_removed' | 'contact.field_changed' | 'sequence.enrolled' | 'sequence.exited' | 'workflow.run.started' | 'workflow.run.completed' | 'workflow.run.failed' | 'support.run.completed' | 'support.run.failed' | 'campaign_submission.received' | 'campaign_submission.flagged' | 'campaign_submission.pending_review' | 'campaign_submission.approved' | 'campaign_submission.rejected' | 'creator_campaign.budget_exhausted' | 'creator_campaign.closed' | 'campaign_payout.payable' | 'campaign_payout.settled' | 'campaign_payout.failed' | 'campaign_participant.joined' | 'campaign_participant.suspended' | 'campaign_participant.removed')>;
35872
36125
  /**
35873
36126
  * Enable or disable webhook delivery. Defaults to `true` when omitted.
35874
36127
  */
@@ -35940,7 +36193,7 @@ export type UpdateWebhookSettingsData = {
35940
36193
  /**
35941
36194
  * Events to subscribe to. Must contain at least one event if provided.
35942
36195
  */
35943
- events?: Array<('post.scheduled' | 'post.published' | 'post.failed' | 'post.partial' | 'post.cancelled' | 'post.recycled' | 'post.platform.published' | 'post.platform.failed' | 'post.platform.deleted' | 'post.tiktok.url_resolved' | 'post.external.created' | 'post.external.updated' | 'post.external.deleted' | 'account.connected' | 'account.disconnected' | 'account.permissions_changed' | 'account.ads.initial_sync_completed' | 'account.ads.sync_failed' | 'account.ads.sync_recovered' | 'analytics.synced' | 'post.tracking_completed' | 'post.authenticity_changed' | 'message.received' | 'conversation.started' | 'conversation.control_changed' | 'call.received' | 'call.ended' | 'call.failed' | 'call.permission_request' | 'message.sent' | 'message.edited' | 'message.deleted' | 'message.delivered' | 'message.read' | 'message.played' | 'message.failed' | 'reaction.received' | 'referral.received' | 'comment.received' | 'review.new' | 'review.updated' | 'review.deleted' | 'review.restored' | 'lead.received' | 'ad.status_changed' | 'ad.review.approved' | 'ad.review.rejected' | 'ad.delivery_issue' | 'campaign.budget.depleted' | 'ad_account.status_changed' | 'ad.video.processed' | 'ad_rule.triggered' | 'automation.check.completed' | 'automation.action.applied' | 'automation.action.failed' | 'automation.action.unknown' | 'automation.alert.opened' | 'automation.alert.escalated' | 'automation.alert.resolved' | 'whatsapp.template.status_updated' | 'whatsapp.template.category_updated' | 'whatsapp.account.name_status_updated' | 'whatsapp.account.quality_updated' | 'whatsapp.account.status_updated' | 'whatsapp.account.alert_received' | 'whatsapp.contact.identity_changed' | 'whatsapp.automatic_event' | 'whatsapp.number.activated' | 'whatsapp.number.declined' | 'whatsapp.number.action_required' | 'whatsapp.number.verification_required' | 'whatsapp.number.suspended' | 'whatsapp.number.reactivated' | 'whatsapp.number.released' | 'whatsapp.number.kyc_submitted' | 'phone_number.stock_available' | 'verification.approved' | 'verification.failed' | 'api.changelog.published' | 'sms.registration.action_required' | 'sms.registration.status_updated' | 'branded_calling.identity.status_updated' | 'branded_calling.identity.action_required' | 'branded_calling.number.status_updated' | 'rcs.agent.status_updated' | 'commerce.product.created' | 'commerce.product.updated' | 'commerce.product.deleted' | 'commerce.order.created' | 'commerce.order.updated' | 'commerce.order.refunded' | 'contact.tag_added' | 'contact.tag_removed' | 'contact.field_changed' | 'sequence.enrolled' | 'sequence.exited' | 'workflow.run.started' | 'workflow.run.completed' | 'workflow.run.failed' | 'support.run.completed' | 'support.run.failed' | 'campaign_submission.received' | 'campaign_submission.flagged' | 'campaign_submission.pending_review' | 'campaign_submission.approved' | 'campaign_submission.rejected' | 'creator_campaign.budget_exhausted' | 'creator_campaign.closed' | 'campaign_payout.payable' | 'campaign_payout.settled' | 'campaign_payout.failed' | 'campaign_participant.joined' | 'campaign_participant.suspended' | 'campaign_participant.removed')>;
36196
+ events?: Array<('post.scheduled' | 'post.published' | 'post.failed' | 'post.partial' | 'post.cancelled' | 'post.recycled' | 'post.platform.published' | 'post.platform.failed' | 'post.platform.deleted' | 'post.tiktok.url_resolved' | 'post.external.created' | 'post.external.updated' | 'post.external.deleted' | 'account.connected' | 'account.disconnected' | 'account.permissions_changed' | 'account.ads.initial_sync_completed' | 'account.ads.sync_failed' | 'account.ads.sync_recovered' | 'analytics.synced' | 'post.tracking_completed' | 'post.authenticity_changed' | 'message.received' | 'conversation.started' | 'conversation.control_changed' | 'call.received' | 'call.ended' | 'call.failed' | 'call.permission_request' | 'message.sent' | 'message.edited' | 'message.deleted' | 'message.delivered' | 'message.read' | 'message.played' | 'message.failed' | 'reaction.received' | 'referral.received' | 'comment.received' | 'review.new' | 'review.updated' | 'review.deleted' | 'review.restored' | 'lead.received' | 'ad.status_changed' | 'ad.created' | 'ad.updated' | 'campaign.created' | 'campaign.updated' | 'ad.review.approved' | 'ad.review.rejected' | 'ad.delivery_issue' | 'campaign.budget.depleted' | 'ad_account.status_changed' | 'ad.video.processed' | 'ad_rule.triggered' | 'automation.check.completed' | 'automation.action.applied' | 'automation.action.failed' | 'automation.action.unknown' | 'automation.alert.opened' | 'automation.alert.escalated' | 'automation.alert.resolved' | 'whatsapp.template.status_updated' | 'whatsapp.template.category_updated' | 'whatsapp.account.name_status_updated' | 'whatsapp.account.quality_updated' | 'whatsapp.account.status_updated' | 'whatsapp.account.alert_received' | 'whatsapp.contact.identity_changed' | 'whatsapp.automatic_event' | 'whatsapp.number.activated' | 'whatsapp.number.declined' | 'whatsapp.number.action_required' | 'whatsapp.number.verification_required' | 'whatsapp.number.suspended' | 'whatsapp.number.reactivated' | 'whatsapp.number.released' | 'whatsapp.number.kyc_submitted' | 'phone_number.stock_available' | 'verification.approved' | 'verification.failed' | 'api.changelog.published' | 'sms.registration.action_required' | 'sms.registration.status_updated' | 'branded_calling.identity.status_updated' | 'branded_calling.identity.action_required' | 'branded_calling.number.status_updated' | 'rcs.agent.status_updated' | 'commerce.product.created' | 'commerce.product.updated' | 'commerce.product.deleted' | 'commerce.order.created' | 'commerce.order.updated' | 'commerce.order.refunded' | 'contact.tag_added' | 'contact.tag_removed' | 'contact.field_changed' | 'sequence.enrolled' | 'sequence.exited' | 'workflow.run.started' | 'workflow.run.completed' | 'workflow.run.failed' | 'support.run.completed' | 'support.run.failed' | 'campaign_submission.received' | 'campaign_submission.flagged' | 'campaign_submission.pending_review' | 'campaign_submission.approved' | 'campaign_submission.rejected' | 'creator_campaign.budget_exhausted' | 'creator_campaign.closed' | 'campaign_payout.payable' | 'campaign_payout.settled' | 'campaign_payout.failed' | 'campaign_participant.joined' | 'campaign_participant.suspended' | 'campaign_participant.removed')>;
35944
36197
  /**
35945
36198
  * Enable or disable webhook delivery
35946
36199
  */
@@ -36129,7 +36382,7 @@ export type TestWebhookData = {
36129
36382
  /**
36130
36383
  * Send a sample payload of this event instead of `webhook.test`. The sample is marked with `test: true`.
36131
36384
  */
36132
- event?: 'post.scheduled' | 'post.published' | 'post.failed' | 'post.partial' | 'post.cancelled' | 'post.recycled' | 'post.platform.published' | 'post.platform.failed' | 'post.platform.deleted' | 'post.tiktok.url_resolved' | 'post.external.created' | 'post.external.updated' | 'post.external.deleted' | 'account.connected' | 'account.disconnected' | 'account.permissions_changed' | 'account.ads.initial_sync_completed' | 'account.ads.sync_failed' | 'account.ads.sync_recovered' | 'account.rate_limited' | 'calendar.event.created' | 'calendar.event.updated' | 'calendar.event.deleted' | 'file.created' | 'file.updated' | 'file.deleted' | 'file.picked' | 'contact.updated' | 'contact.deleted' | 'analytics.synced' | 'post.tracking_completed' | 'post.authenticity_changed' | 'message.received' | 'message.sent' | 'message.edited' | 'message.deleted' | 'message.delivered' | 'message.read' | 'message.played' | 'message.failed' | 'reaction.received' | 'referral.received' | 'conversation.started' | 'conversation.control_changed' | 'contact.tag_added' | 'contact.tag_removed' | 'contact.field_changed' | 'sequence.enrolled' | 'sequence.exited' | 'workflow.run.started' | 'workflow.run.completed' | 'workflow.run.failed' | 'support.run.completed' | 'support.run.failed' | 'campaign_submission.received' | 'campaign_submission.flagged' | 'campaign_submission.pending_review' | 'campaign_submission.approved' | 'campaign_submission.rejected' | 'creator_campaign.budget_exhausted' | 'creator_campaign.closed' | 'campaign_payout.payable' | 'campaign_payout.settled' | 'campaign_payout.failed' | 'campaign_participant.joined' | 'campaign_participant.suspended' | 'campaign_participant.removed' | 'call.received' | 'call.ended' | 'call.failed' | 'call.permission_request' | 'comment.received' | 'review.new' | 'review.updated' | 'review.deleted' | 'review.restored' | 'ad.status_changed' | 'ad.review.approved' | 'ad.review.rejected' | 'ad.delivery_issue' | 'campaign.budget.depleted' | 'ad_account.status_changed' | 'ad.video.processed' | 'ad_rule.triggered' | 'automation.check.completed' | 'automation.action.applied' | 'automation.action.failed' | 'automation.action.unknown' | 'automation.alert.opened' | 'automation.alert.escalated' | 'automation.alert.resolved' | 'lead.received' | 'whatsapp.template.status_updated' | 'whatsapp.template.category_updated' | 'whatsapp.account.name_status_updated' | 'whatsapp.account.quality_updated' | 'whatsapp.account.status_updated' | 'whatsapp.account.alert_received' | 'whatsapp.contact.identity_changed' | 'whatsapp.number.activated' | 'whatsapp.number.declined' | 'whatsapp.number.action_required' | 'whatsapp.automatic_event' | 'whatsapp.number.verification_required' | 'whatsapp.number.suspended' | 'whatsapp.number.reactivated' | 'whatsapp.number.released' | 'whatsapp.number.kyc_submitted' | 'phone_number.stock_available' | 'sms.registration.action_required' | 'sms.registration.status_updated' | 'branded_calling.identity.status_updated' | 'branded_calling.identity.action_required' | 'branded_calling.number.status_updated' | 'rcs.agent.status_updated' | 'verification.approved' | 'verification.failed' | 'commerce.product.created' | 'commerce.product.updated' | 'commerce.product.deleted' | 'commerce.order.created' | 'commerce.order.updated' | 'commerce.order.refunded' | 'api.changelog.published';
36385
+ event?: 'post.scheduled' | 'post.published' | 'post.failed' | 'post.partial' | 'post.cancelled' | 'post.recycled' | 'post.platform.published' | 'post.platform.failed' | 'post.platform.deleted' | 'post.tiktok.url_resolved' | 'post.external.created' | 'post.external.updated' | 'post.external.deleted' | 'account.connected' | 'account.disconnected' | 'account.permissions_changed' | 'account.ads.initial_sync_completed' | 'account.ads.sync_failed' | 'account.ads.sync_recovered' | 'account.rate_limited' | 'calendar.event.created' | 'calendar.event.updated' | 'calendar.event.deleted' | 'file.created' | 'file.updated' | 'file.deleted' | 'file.picked' | 'contact.updated' | 'contact.deleted' | 'analytics.synced' | 'post.tracking_completed' | 'post.authenticity_changed' | 'message.received' | 'message.sent' | 'message.edited' | 'message.deleted' | 'message.delivered' | 'message.read' | 'message.played' | 'message.failed' | 'reaction.received' | 'referral.received' | 'conversation.started' | 'conversation.control_changed' | 'contact.tag_added' | 'contact.tag_removed' | 'contact.field_changed' | 'sequence.enrolled' | 'sequence.exited' | 'workflow.run.started' | 'workflow.run.completed' | 'workflow.run.failed' | 'support.run.completed' | 'support.run.failed' | 'campaign_submission.received' | 'campaign_submission.flagged' | 'campaign_submission.pending_review' | 'campaign_submission.approved' | 'campaign_submission.rejected' | 'creator_campaign.budget_exhausted' | 'creator_campaign.closed' | 'campaign_payout.payable' | 'campaign_payout.settled' | 'campaign_payout.failed' | 'campaign_participant.joined' | 'campaign_participant.suspended' | 'campaign_participant.removed' | 'call.received' | 'call.ended' | 'call.failed' | 'call.permission_request' | 'comment.received' | 'review.new' | 'review.updated' | 'review.deleted' | 'review.restored' | 'ad.status_changed' | 'ad.created' | 'ad.updated' | 'campaign.created' | 'campaign.updated' | 'ad.review.approved' | 'ad.review.rejected' | 'ad.delivery_issue' | 'campaign.budget.depleted' | 'ad_account.status_changed' | 'ad.video.processed' | 'ad_rule.triggered' | 'automation.check.completed' | 'automation.action.applied' | 'automation.action.failed' | 'automation.action.unknown' | 'automation.alert.opened' | 'automation.alert.escalated' | 'automation.alert.resolved' | 'lead.received' | 'whatsapp.template.status_updated' | 'whatsapp.template.category_updated' | 'whatsapp.account.name_status_updated' | 'whatsapp.account.quality_updated' | 'whatsapp.account.status_updated' | 'whatsapp.account.alert_received' | 'whatsapp.contact.identity_changed' | 'whatsapp.number.activated' | 'whatsapp.number.declined' | 'whatsapp.number.action_required' | 'whatsapp.automatic_event' | 'whatsapp.number.verification_required' | 'whatsapp.number.suspended' | 'whatsapp.number.reactivated' | 'whatsapp.number.released' | 'whatsapp.number.kyc_submitted' | 'phone_number.stock_available' | 'sms.registration.action_required' | 'sms.registration.status_updated' | 'branded_calling.identity.status_updated' | 'branded_calling.identity.action_required' | 'branded_calling.number.status_updated' | 'rcs.agent.status_updated' | 'verification.approved' | 'verification.failed' | 'commerce.product.created' | 'commerce.product.updated' | 'commerce.product.deleted' | 'commerce.order.created' | 'commerce.order.updated' | 'commerce.order.refunded' | 'api.changelog.published';
36133
36386
  };
36134
36387
  };
36135
36388