@getlatedev/node 0.2.1468 → 0.2.1470

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.
@@ -1676,6 +1676,10 @@ export type AdRule = {
1676
1676
  */
1677
1677
  campaignIds: Array<(string)> | null;
1678
1678
  filters: AdRuleFilters;
1679
+ /**
1680
+ * Null when every matching run acts and notifies.
1681
+ */
1682
+ lifecycle: (AdRuleLifecycle | null);
1679
1683
  conditions: AdRuleConditions;
1680
1684
  actions: AdRuleActions;
1681
1685
  schedule: AdRuleSchedule;
@@ -1755,6 +1759,28 @@ export type AdRuleAction = {
1755
1759
  * At most this many objects changed in any 24 hours, across runs. Matches over the limit are skipped with `daily_limit_reached` and tried again later.
1756
1760
  */
1757
1761
  maxChangesPerDay?: number;
1762
+ } | {
1763
+ /**
1764
+ * Move the bid cap or cost cap of a Meta ad set, in the ad account currency. Ad set rules on Meta only. An ad set without a cap is skipped with `no_bid_cap`.
1765
+ */
1766
+ type: 'adjust_bid';
1767
+ /**
1768
+ * The cap to set.
1769
+ */
1770
+ amount?: number;
1771
+ direction?: 'increase' | 'decrease';
1772
+ /**
1773
+ * Step size. A decrease is at most 90.
1774
+ */
1775
+ percent?: number;
1776
+ /**
1777
+ * The cap never goes above this on an increase, or below it on a decrease.
1778
+ */
1779
+ limit?: number;
1780
+ /**
1781
+ * At most this many objects changed in any 24 hours, across runs. Matches over the limit are skipped with `daily_limit_reached` and tried again later.
1782
+ */
1783
+ maxChangesPerDay?: number;
1758
1784
  } | {
1759
1785
  /**
1760
1786
  * Tag the object by its name. Meta, Google and LinkedIn campaigns and ad sets, and TikTok campaigns, ad groups and ads. An object whose name already has the tag (or lacks it, for `remove`) is skipped with `name_unchanged`.
@@ -1814,15 +1840,15 @@ export type AdRuleAction = {
1814
1840
  */
1815
1841
  export type type2 = 'notify';
1816
1842
 
1843
+ export type direction = 'increase' | 'decrease';
1844
+
1817
1845
  /**
1818
1846
  * Where `add` goes. Defaults to `start`.
1819
1847
  */
1820
1848
  export type at = 'start' | 'end';
1821
1849
 
1822
- export type direction = 'increase' | 'decrease';
1823
-
1824
1850
  /**
1825
- * Each type at most once, and at most one of `pause`, `activate`, `adjust_budget`, `duplicate` and `edit_name`.
1851
+ * Each type at most once, and at most one of `pause`, `activate`, `adjust_budget`, `adjust_bid`, `duplicate` and `edit_name`.
1826
1852
  */
1827
1853
  export type AdRuleActions = Array<AdRuleAction>;
1828
1854
 
@@ -1852,7 +1878,7 @@ export type AdRuleActivityEntry = {
1852
1878
  * Its name when the rule acted.
1853
1879
  */
1854
1880
  objectName: (string) | null;
1855
- type: 'pause' | 'activate' | 'adjust_budget' | 'duplicate' | 'edit_name';
1881
+ type: 'pause' | 'activate' | 'adjust_budget' | 'adjust_bid' | 'duplicate' | 'edit_name';
1856
1882
  status: 'done' | 'skipped' | 'failed';
1857
1883
  /**
1858
1884
  * Why it was skipped or failed, for example `already_paused`.
@@ -1868,12 +1894,20 @@ export type AdRuleActivityEntry = {
1868
1894
  * The name an applied `edit_name` set.
1869
1895
  */
1870
1896
  newName: (string) | null;
1897
+ /**
1898
+ * The bid cap or cost cap before an `adjust_bid`.
1899
+ */
1900
+ previousBidAmount: (number) | null;
1901
+ /**
1902
+ * The cap an applied `adjust_bid` set.
1903
+ */
1904
+ newBidAmount: (number) | null;
1871
1905
  currency: (string) | null;
1872
1906
  };
1873
1907
 
1874
1908
  export type level = 'campaign' | 'adset';
1875
1909
 
1876
- export type type3 = 'pause' | 'activate' | 'adjust_budget' | 'duplicate' | 'edit_name';
1910
+ export type type3 = 'pause' | 'activate' | 'adjust_budget' | 'adjust_bid' | 'duplicate' | 'edit_name';
1877
1911
 
1878
1912
  export type status3 = 'done' | 'skipped' | 'failed';
1879
1913
 
@@ -1969,6 +2003,24 @@ export type AdRuleFilters = Array<{
1969
2003
  */
1970
2004
  export type AdRuleLevel = 'campaign' | 'adset' | 'ad';
1971
2005
 
2006
+ /**
2007
+ * Turns matches into alerts. An object acts and notifies only after `confirmChecks` matching runs in a row; its alert stays open while it matches or `hold` holds, turns critical when `critical` holds, and resolves on its own. Cooldown and caps still decide repeat actions.
2008
+ */
2009
+ export type AdRuleLifecycle = {
2010
+ /**
2011
+ * Matching runs in a row before acting. Defaults to 1.
2012
+ */
2013
+ confirmChecks?: number;
2014
+ /**
2015
+ * Keeps an open alert open after the conditions stop matching.
2016
+ */
2017
+ hold?: (AdRuleConditions);
2018
+ /**
2019
+ * Marks an open alert critical.
2020
+ */
2021
+ critical?: (AdRuleConditions);
2022
+ };
2023
+
1972
2024
  export type AdRuleObjectEvaluation = {
1973
2025
  /**
1974
2026
  * Platform ID of the campaign or ad set.
@@ -2026,7 +2078,7 @@ export type AdRuleRun = {
2026
2078
  matched?: Array<AdRuleObjectEvaluation>;
2027
2079
  actions?: Array<{
2028
2080
  objectId: string;
2029
- type: 'pause' | 'activate' | 'adjust_budget' | 'duplicate' | 'edit_name';
2081
+ type: 'pause' | 'activate' | 'adjust_budget' | 'adjust_bid' | 'duplicate' | 'edit_name';
2030
2082
  status: 'done' | 'skipped' | 'failed';
2031
2083
  /**
2032
2084
  * Why it was skipped or failed, for example `already_paused`.
@@ -2036,6 +2088,8 @@ export type AdRuleRun = {
2036
2088
  newDailyBudget?: number;
2037
2089
  previousName?: string;
2038
2090
  newName?: string;
2091
+ previousBidAmount?: number;
2092
+ newBidAmount?: number;
2039
2093
  }>;
2040
2094
  /**
2041
2095
  * Set when a run of a rule with a `notify` action matched objects and tried to send the webhook. A notify-only rule whose webhook fails ends with outcome `failed`.
@@ -16903,7 +16957,7 @@ export type Webhook = {
16903
16957
  /**
16904
16958
  * Events subscribed to
16905
16959
  */
16906
- 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' | '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')>;
16960
+ 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')>;
16907
16961
  /**
16908
16962
  * Whether webhook delivery is enabled
16909
16963
  */
@@ -17742,7 +17796,7 @@ export type WebhookPayloadAdRuleTriggered = {
17742
17796
  * What the rule did to the object. Empty on a rule that only notifies.
17743
17797
  */
17744
17798
  actions: Array<{
17745
- type: 'pause' | 'activate' | 'adjust_budget' | 'duplicate' | 'edit_name';
17799
+ type: 'pause' | 'activate' | 'adjust_budget' | 'adjust_bid' | 'duplicate' | 'edit_name';
17746
17800
  /**
17747
17801
  * Action result.
17748
17802
  *
@@ -17770,6 +17824,14 @@ export type WebhookPayloadAdRuleTriggered = {
17770
17824
  * On `edit_name`, the name after the change. Null when nothing changed.
17771
17825
  */
17772
17826
  newName: (string) | null;
17827
+ /**
17828
+ * On `adjust_bid`, the cap before the change. Null otherwise.
17829
+ */
17830
+ previousBidAmount: (number) | null;
17831
+ /**
17832
+ * On `adjust_bid`, the cap after the change. Null when nothing changed.
17833
+ */
17834
+ newBidAmount: (number) | null;
17773
17835
  }>;
17774
17836
  }>;
17775
17837
  /**
@@ -18129,6 +18191,58 @@ export type event16 = 'automation.action.applied' | 'automation.action.failed' |
18129
18191
 
18130
18192
  export type status54 = 'applied' | 'skipped' | 'failed' | 'unknown';
18131
18193
 
18194
+ /**
18195
+ * Webhook payload for `automation.alert.opened`, `automation.alert.escalated` and `automation.alert.resolved`: an alert episode of an automation with a lifecycle (an ad rule's `lifecycle`).
18196
+ *
18197
+ * Sent as soon as the check records the change; a resolve that a pause or reactivation causes is sent once it applies. A streak that never opened sends nothing.
18198
+ *
18199
+ * Alerts closed outside a check (the rule turned off, deleted or its `lifecycle` removed between checks, or the daily cleanup) are not announced.
18200
+ *
18201
+ */
18202
+ export type WebhookPayloadAutomationAlert = {
18203
+ /**
18204
+ * Stable webhook event ID: the dedupe key, also sent as the X-Zernio-Event-Id header and identical on every retry and redelivery.
18205
+ */
18206
+ id: string;
18207
+ profiles?: WebhookProfiles;
18208
+ /**
18209
+ * Always true when present: only a sample sent by POST /v1/webhooks/test with an event carries it. Real deliveries never do.
18210
+ */
18211
+ test?: boolean;
18212
+ event: 'automation.alert.opened' | 'automation.alert.escalated' | 'automation.alert.resolved';
18213
+ automation: WebhookAutomationRef;
18214
+ /**
18215
+ * The connected account the automation acts on.
18216
+ */
18217
+ accountId: string;
18218
+ /**
18219
+ * The check that moved the alert.
18220
+ */
18221
+ checkId: string;
18222
+ alert: {
18223
+ id: string;
18224
+ /**
18225
+ * The platform's id of the object: an ad, ad set or campaign for ad rules.
18226
+ */
18227
+ subjectId: string;
18228
+ severity: ('warning' | 'critical') | null;
18229
+ /**
18230
+ * Why it resolved, on `automation.alert.resolved` only.
18231
+ */
18232
+ reason: ('condition_cleared' | 'action_applied' | 'not_evaluated' | 'automation_changed' | 'automation_off') | null;
18233
+ };
18234
+ timestamp: string;
18235
+ };
18236
+
18237
+ export type event17 = 'automation.alert.opened' | 'automation.alert.escalated' | 'automation.alert.resolved';
18238
+
18239
+ export type severity2 = 'warning' | 'critical';
18240
+
18241
+ /**
18242
+ * Why it resolved, on `automation.alert.resolved` only.
18243
+ */
18244
+ export type reason2 = 'condition_cleared' | 'action_applied' | 'not_evaluated' | 'automation_changed' | 'automation_off';
18245
+
18132
18246
  /**
18133
18247
  * Webhook payload for the `automation.check.completed` event: one scheduled check of an automation finished.
18134
18248
  *
@@ -18171,7 +18285,7 @@ export type WebhookPayloadAutomationCheckCompleted = {
18171
18285
  timestamp: string;
18172
18286
  };
18173
18287
 
18174
- export type event17 = 'automation.check.completed';
18288
+ export type event18 = 'automation.check.completed';
18175
18289
 
18176
18290
  export type outcome2 = 'triggered' | 'no_match' | 'cooldown' | 'daily_limit' | 'failed';
18177
18291
 
@@ -18200,7 +18314,7 @@ export type WebhookPayloadCalendarEvent = {
18200
18314
  timestamp: string;
18201
18315
  };
18202
18316
 
18203
- export type event18 = 'calendar.event.created' | 'calendar.event.updated' | 'calendar.event.deleted';
18317
+ export type event19 = 'calendar.event.created' | 'calendar.event.updated' | 'calendar.event.deleted';
18204
18318
 
18205
18319
  export type changeType = 'created' | 'updated' | 'deleted';
18206
18320
 
@@ -18283,7 +18397,7 @@ export type WebhookPayloadCallEnded = {
18283
18397
  timestamp: string;
18284
18398
  };
18285
18399
 
18286
- export type event19 = 'call.ended';
18400
+ export type event20 = 'call.ended';
18287
18401
 
18288
18402
  /**
18289
18403
  * Webhook payload for the `call.failed` event. Fired when a call
@@ -18322,7 +18436,7 @@ export type WebhookPayloadCallFailed = {
18322
18436
  timestamp: string;
18323
18437
  };
18324
18438
 
18325
- export type event20 = 'call.failed';
18439
+ export type event21 = 'call.failed';
18326
18440
 
18327
18441
  /**
18328
18442
  * Webhook payload for the `call.permission_request` event. Fires
@@ -18364,7 +18478,7 @@ export type WebhookPayloadCallPermissionRequest = {
18364
18478
  timestamp: string;
18365
18479
  };
18366
18480
 
18367
- export type event21 = 'call.permission_request';
18481
+ export type event22 = 'call.permission_request';
18368
18482
 
18369
18483
  export type response = 'accept' | 'reject';
18370
18484
 
@@ -18423,7 +18537,7 @@ export type WebhookPayloadCallReceived = {
18423
18537
  timestamp: string;
18424
18538
  };
18425
18539
 
18426
- export type event22 = 'call.received';
18540
+ export type event23 = 'call.received';
18427
18541
 
18428
18542
  /**
18429
18543
  * Webhook payload for the `campaign.budget.depleted` event. Fires when a campaign
@@ -18474,7 +18588,7 @@ export type WebhookPayloadCampaignBudgetDepleted = {
18474
18588
  timestamp: string;
18475
18589
  };
18476
18590
 
18477
- export type event23 = 'campaign.budget.depleted';
18591
+ export type event24 = 'campaign.budget.depleted';
18478
18592
 
18479
18593
  /**
18480
18594
  * Always `CAMPAIGN`.
@@ -18517,7 +18631,7 @@ export type WebhookPayloadCampaignParticipant = {
18517
18631
  timestamp: string;
18518
18632
  };
18519
18633
 
18520
- export type event24 = 'campaign_participant.joined' | 'campaign_participant.suspended' | 'campaign_participant.removed';
18634
+ export type event25 = 'campaign_participant.joined' | 'campaign_participant.suspended' | 'campaign_participant.removed';
18521
18635
 
18522
18636
  /**
18523
18637
  * Webhook payload for `campaign_payout.payable` and `campaign_payout.settled`.
@@ -18606,12 +18720,12 @@ export type WebhookPayloadCampaignPayout = {
18606
18720
  timestamp: string;
18607
18721
  };
18608
18722
 
18609
- export type event25 = 'campaign_payout.payable' | 'campaign_payout.settled' | 'campaign_payout.failed';
18723
+ export type event26 = 'campaign_payout.payable' | 'campaign_payout.settled' | 'campaign_payout.failed';
18610
18724
 
18611
18725
  /**
18612
18726
  * 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.
18613
18727
  */
18614
- export type reason2 = 'returned' | 'stale' | 'reversed';
18728
+ export type reason3 = 'returned' | 'stale' | 'reversed';
18615
18729
 
18616
18730
  /**
18617
18731
  * Webhook payload for campaign submission events:
@@ -18674,7 +18788,7 @@ export type WebhookPayloadCampaignSubmission = {
18674
18788
  timestamp: string;
18675
18789
  };
18676
18790
 
18677
- export type event26 = 'campaign_submission.received' | 'campaign_submission.flagged' | 'campaign_submission.pending_review' | 'campaign_submission.approved' | 'campaign_submission.rejected';
18791
+ export type event27 = 'campaign_submission.received' | 'campaign_submission.flagged' | 'campaign_submission.pending_review' | 'campaign_submission.approved' | 'campaign_submission.rejected';
18678
18792
 
18679
18793
  /**
18680
18794
  * 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.
@@ -18841,7 +18955,7 @@ export type WebhookPayloadComment = {
18841
18955
  timestamp: string;
18842
18956
  };
18843
18957
 
18844
- export type event27 = 'comment.received';
18958
+ export type event28 = 'comment.received';
18845
18959
 
18846
18960
  export type platform16 = 'instagram' | 'facebook' | 'threads' | 'youtube' | 'linkedin' | 'bluesky' | 'reddit' | 'tiktok';
18847
18961
 
@@ -18887,7 +19001,7 @@ export type WebhookPayloadCommerceOrder = {
18887
19001
  };
18888
19002
  };
18889
19003
 
18890
- export type event28 = 'commerce.order.created' | 'commerce.order.updated' | 'commerce.order.refunded';
19004
+ export type event29 = 'commerce.order.created' | 'commerce.order.updated' | 'commerce.order.refunded';
18891
19005
 
18892
19006
  export type type21 = 'order';
18893
19007
 
@@ -18930,7 +19044,7 @@ export type WebhookPayloadCommerceProduct = {
18930
19044
  };
18931
19045
  };
18932
19046
 
18933
- export type event29 = 'commerce.product.created' | 'commerce.product.updated' | 'commerce.product.deleted';
19047
+ export type event30 = 'commerce.product.created' | 'commerce.product.updated' | 'commerce.product.deleted';
18934
19048
 
18935
19049
  export type type22 = 'product';
18936
19050
 
@@ -18959,7 +19073,7 @@ export type WebhookPayloadContact = {
18959
19073
  timestamp: string;
18960
19074
  };
18961
19075
 
18962
- export type event30 = 'contact.updated' | 'contact.deleted';
19076
+ export type event31 = 'contact.updated' | 'contact.deleted';
18963
19077
 
18964
19078
  export type changeType2 = 'updated' | 'deleted';
18965
19079
 
@@ -18999,7 +19113,7 @@ export type WebhookPayloadContactFieldChanged = {
18999
19113
  source: 'api' | 'workflow' | 'automation';
19000
19114
  };
19001
19115
 
19002
- export type event31 = 'contact.field_changed';
19116
+ export type event32 = 'contact.field_changed';
19003
19117
 
19004
19118
  /**
19005
19119
  * Who wrote the field: the API or dashboard, a workflow set_field node, or an automation.
@@ -19031,7 +19145,7 @@ export type WebhookPayloadContactTag = {
19031
19145
  source: 'api' | 'workflow' | 'automation';
19032
19146
  };
19033
19147
 
19034
- export type event32 = 'contact.tag_added' | 'contact.tag_removed';
19148
+ export type event33 = 'contact.tag_added' | 'contact.tag_removed';
19035
19149
 
19036
19150
  /**
19037
19151
  * Who answers a conversation changed under Meta's handover protocol. WhatsApp: Meta
@@ -19077,7 +19191,7 @@ export type WebhookPayloadConversationControlChanged = {
19077
19191
  timestamp: string;
19078
19192
  };
19079
19193
 
19080
- export type event33 = 'conversation.control_changed';
19194
+ export type event34 = 'conversation.control_changed';
19081
19195
 
19082
19196
  /**
19083
19197
  * 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).
@@ -19126,7 +19240,7 @@ export type WebhookPayloadConversationStarted = {
19126
19240
  timestamp: string;
19127
19241
  };
19128
19242
 
19129
- export type event34 = 'conversation.started';
19243
+ export type event35 = 'conversation.started';
19130
19244
 
19131
19245
  /**
19132
19246
  * Webhook payload for `creator_campaign.budget_exhausted` and `creator_campaign.closed`.
@@ -19165,7 +19279,7 @@ export type WebhookPayloadCreatorCampaign = {
19165
19279
  timestamp: string;
19166
19280
  };
19167
19281
 
19168
- export type event35 = 'creator_campaign.budget_exhausted' | 'creator_campaign.closed';
19282
+ export type event36 = 'creator_campaign.budget_exhausted' | 'creator_campaign.closed';
19169
19283
 
19170
19284
  /**
19171
19285
  * Webhook payload for post.external.created / post.external.updated /
@@ -19202,7 +19316,7 @@ export type WebhookPayloadExternalPost = {
19202
19316
  timestamp: string;
19203
19317
  };
19204
19318
 
19205
- export type event36 = 'post.external.created' | 'post.external.updated' | 'post.external.deleted';
19319
+ export type event37 = 'post.external.created' | 'post.external.updated' | 'post.external.deleted';
19206
19320
 
19207
19321
  /**
19208
19322
  * 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}`.
@@ -19229,7 +19343,7 @@ export type WebhookPayloadFile = {
19229
19343
  timestamp: string;
19230
19344
  };
19231
19345
 
19232
- export type event37 = 'file.created' | 'file.updated' | 'file.deleted';
19346
+ export type event38 = 'file.created' | 'file.updated' | 'file.deleted';
19233
19347
 
19234
19348
  /**
19235
19349
  * 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.
@@ -19264,7 +19378,7 @@ export type WebhookPayloadFilePicked = {
19264
19378
  timestamp: string;
19265
19379
  };
19266
19380
 
19267
- export type event38 = 'file.picked';
19381
+ export type event39 = 'file.picked';
19268
19382
 
19269
19383
  /**
19270
19384
  * Webhook payload for lead.received events (Meta Lead Gen / Instant Forms).
@@ -19344,7 +19458,7 @@ export type WebhookPayloadLead = {
19344
19458
  timestamp: string;
19345
19459
  };
19346
19460
 
19347
- export type event39 = 'lead.received';
19461
+ export type event40 = 'lead.received';
19348
19462
 
19349
19463
  export type platform17 = 'facebook';
19350
19464
 
@@ -19924,7 +20038,7 @@ export type WebhookPayloadMessage = {
19924
20038
  timestamp: string;
19925
20039
  };
19926
20040
 
19927
- export type event40 = 'message.received';
20041
+ export type event41 = 'message.received';
19928
20042
 
19929
20043
  /**
19930
20044
  * Which Zernio surface produced the message. Always present and
@@ -19983,7 +20097,7 @@ export type WebhookPayloadMessageDeleted = {
19983
20097
  timestamp: string;
19984
20098
  };
19985
20099
 
19986
- export type event41 = 'message.deleted';
20100
+ export type event42 = 'message.deleted';
19987
20101
 
19988
20102
  /**
19989
20103
  * 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.
@@ -20047,7 +20161,7 @@ export type WebhookPayloadMessageDeliveryStatus = {
20047
20161
  timestamp: string;
20048
20162
  };
20049
20163
 
20050
- export type event42 = 'message.delivered' | 'message.read' | 'message.played' | 'message.failed';
20164
+ export type event43 = 'message.delivered' | 'message.read' | 'message.played' | 'message.failed';
20051
20165
 
20052
20166
  /**
20053
20167
  * Webhook payload for message.edited events. Fires when the sender
@@ -20090,7 +20204,7 @@ export type WebhookPayloadMessageEdited = {
20090
20204
  timestamp: string;
20091
20205
  };
20092
20206
 
20093
- export type event43 = 'message.edited';
20207
+ export type event44 = 'message.edited';
20094
20208
 
20095
20209
  /**
20096
20210
  * Webhook payload for message sent events (fired when a message is sent via the API, or from the WhatsApp Business app on Coexistence numbers)
@@ -20336,7 +20450,7 @@ export type WebhookPayloadMessageSent = {
20336
20450
  timestamp: string;
20337
20451
  };
20338
20452
 
20339
- export type event44 = 'message.sent';
20453
+ export type event45 = 'message.sent';
20340
20454
 
20341
20455
  /**
20342
20456
  * Every platform whose outgoing messages Zernio observes. sms is absent on purpose: its carrier receipts update delivery status and never raise message.sent.
@@ -20401,7 +20515,7 @@ export type WebhookPayloadPhoneNumberStockAvailable = {
20401
20515
  timestamp: string;
20402
20516
  };
20403
20517
 
20404
- export type event45 = 'phone_number.stock_available';
20518
+ export type event46 = 'phone_number.stock_available';
20405
20519
 
20406
20520
  /**
20407
20521
  * Webhook payload for post events
@@ -20456,7 +20570,7 @@ export type WebhookPayloadPost = {
20456
20570
  timestamp: string;
20457
20571
  };
20458
20572
 
20459
- export type event46 = 'post.scheduled' | 'post.published' | 'post.failed' | 'post.partial' | 'post.cancelled' | 'post.recycled';
20573
+ export type event47 = 'post.scheduled' | 'post.published' | 'post.failed' | 'post.partial' | 'post.cancelled' | 'post.recycled';
20460
20574
 
20461
20575
  /**
20462
20576
  * Webhook payload for `post.authenticity_changed`. Fired when a tracked post's
@@ -20520,7 +20634,7 @@ export type WebhookPayloadPostAuthenticityChanged = {
20520
20634
  timestamp: string;
20521
20635
  };
20522
20636
 
20523
- export type event47 = 'post.authenticity_changed';
20637
+ export type event48 = 'post.authenticity_changed';
20524
20638
 
20525
20639
  /**
20526
20640
  * Webhook payload for these per-platform events:
@@ -20636,7 +20750,7 @@ export type WebhookPayloadPostPlatform = {
20636
20750
  timestamp: string;
20637
20751
  };
20638
20752
 
20639
- export type event48 = 'post.platform.published' | 'post.platform.failed' | 'post.platform.deleted' | 'post.tiktok.url_resolved';
20753
+ export type event49 = 'post.platform.published' | 'post.platform.failed' | 'post.platform.deleted' | 'post.tiktok.url_resolved';
20640
20754
 
20641
20755
  /**
20642
20756
  * Terminal status this event fires on. Matches the event suffix.
@@ -20709,7 +20823,7 @@ export type WebhookPayloadPostTrackingCompleted = {
20709
20823
  timestamp: string;
20710
20824
  };
20711
20825
 
20712
- export type event49 = 'post.tracking_completed';
20826
+ export type event50 = 'post.tracking_completed';
20713
20827
 
20714
20828
  export type completionReason2 = 'final_read' | 'unreachable' | 'post_deleted';
20715
20829
 
@@ -20771,7 +20885,7 @@ export type WebhookPayloadReaction = {
20771
20885
  timestamp: string;
20772
20886
  };
20773
20887
 
20774
- export type event50 = 'reaction.received';
20888
+ export type event51 = 'reaction.received';
20775
20889
 
20776
20890
  export type action = 'added' | 'removed';
20777
20891
 
@@ -20850,7 +20964,7 @@ export type WebhookPayloadReferral = {
20850
20964
  timestamp: string;
20851
20965
  };
20852
20966
 
20853
- export type event51 = 'referral.received';
20967
+ export type event52 = 'referral.received';
20854
20968
 
20855
20969
  /**
20856
20970
  * Webhook payload for the review.deleted event.
@@ -20908,7 +21022,7 @@ export type WebhookPayloadReviewDeleted = {
20908
21022
  timestamp: string;
20909
21023
  };
20910
21024
 
20911
- export type event52 = 'review.deleted';
21025
+ export type event53 = 'review.deleted';
20912
21026
 
20913
21027
  /**
20914
21028
  * Webhook payload for the review.new event (new review posted on a connected account).
@@ -20940,7 +21054,7 @@ export type WebhookPayloadReviewNew = {
20940
21054
  timestamp: string;
20941
21055
  };
20942
21056
 
20943
- export type event53 = 'review.new';
21057
+ export type event54 = 'review.new';
20944
21058
 
20945
21059
  /**
20946
21060
  * Webhook payload for the review.restored event. Same shape as review.new.
@@ -20975,7 +21089,7 @@ export type WebhookPayloadReviewRestored = {
20975
21089
  timestamp: string;
20976
21090
  };
20977
21091
 
20978
- export type event54 = 'review.restored';
21092
+ export type event55 = 'review.restored';
20979
21093
 
20980
21094
  /**
20981
21095
  * Webhook payload for the review.updated event. Same shape as review.new.
@@ -21023,7 +21137,7 @@ export type WebhookPayloadReviewUpdated = {
21023
21137
  timestamp: string;
21024
21138
  };
21025
21139
 
21026
- export type event55 = 'review.updated';
21140
+ export type event56 = 'review.updated';
21027
21141
 
21028
21142
  export type WebhookPayloadSequenceEnrollment = {
21029
21143
  /**
@@ -21056,7 +21170,7 @@ export type WebhookPayloadSequenceEnrollment = {
21056
21170
  exitReason?: 'completed' | 'replied' | 'manual' | 'failed' | 'unsubscribed';
21057
21171
  };
21058
21172
 
21059
- export type event56 = 'sequence.enrolled' | 'sequence.exited';
21173
+ export type event57 = 'sequence.enrolled' | 'sequence.exited';
21060
21174
 
21061
21175
  /**
21062
21176
  * 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.
@@ -21077,7 +21191,7 @@ export type WebhookPayloadSupportRun = {
21077
21191
  run: SupportRun;
21078
21192
  };
21079
21193
 
21080
- export type event57 = 'support.run.completed' | 'support.run.failed';
21194
+ export type event58 = 'support.run.completed' | 'support.run.failed';
21081
21195
 
21082
21196
  /**
21083
21197
  * Webhook payload for test deliveries
@@ -21098,7 +21212,7 @@ export type WebhookPayloadTest = {
21098
21212
  timestamp: string;
21099
21213
  };
21100
21214
 
21101
- export type event58 = 'webhook.test';
21215
+ export type event59 = 'webhook.test';
21102
21216
 
21103
21217
  /**
21104
21218
  * Webhook payload for `whatsapp.account.alert_received`, forwarded from Meta's
@@ -21150,7 +21264,7 @@ export type WebhookPayloadWhatsAppAccountAlertReceived = {
21150
21264
  timestamp: string;
21151
21265
  };
21152
21266
 
21153
- export type event59 = 'whatsapp.account.alert_received';
21267
+ export type event60 = 'whatsapp.account.alert_received';
21154
21268
 
21155
21269
  export type platform19 = 'whatsapp';
21156
21270
 
@@ -21202,7 +21316,7 @@ export type WebhookPayloadWhatsAppAccountNameStatusUpdated = {
21202
21316
  timestamp: string;
21203
21317
  };
21204
21318
 
21205
- export type event60 = 'whatsapp.account.name_status_updated';
21319
+ export type event61 = 'whatsapp.account.name_status_updated';
21206
21320
 
21207
21321
  /**
21208
21322
  * Normalized from Meta's `decision` (REJECTED -> DECLINED, DEFERRED -> PENDING_REVIEW; the review is still open on DEFERRED, not a rejection).
@@ -21260,7 +21374,7 @@ export type WebhookPayloadWhatsAppAccountQualityUpdated = {
21260
21374
  timestamp: string;
21261
21375
  };
21262
21376
 
21263
- export type event61 = 'whatsapp.account.quality_updated';
21377
+ export type event62 = 'whatsapp.account.quality_updated';
21264
21378
 
21265
21379
  /**
21266
21380
  * The Meta webhook field that reported the change.
@@ -21336,7 +21450,7 @@ export type WebhookPayloadWhatsAppAccountStatusUpdated = {
21336
21450
  timestamp: string;
21337
21451
  };
21338
21452
 
21339
- export type event62 = 'whatsapp.account.status_updated';
21453
+ export type event63 = 'whatsapp.account.status_updated';
21340
21454
 
21341
21455
  /**
21342
21456
  * `active` only on a reinstatement (DISABLED_UPDATE with ban state REINSTATE).
@@ -21393,12 +21507,12 @@ export type WebhookPayloadWhatsAppContactIdentityChanged = {
21393
21507
  timestamp: string;
21394
21508
  };
21395
21509
 
21396
- export type event63 = 'whatsapp.contact.identity_changed';
21510
+ export type event64 = 'whatsapp.contact.identity_changed';
21397
21511
 
21398
21512
  /**
21399
21513
  * Which Meta signal reported the change. `user_changed_number`: new phone number. `user_changed_user_id` and `user_id_update`: new BSUID.
21400
21514
  */
21401
- export type reason3 = 'user_changed_number' | 'user_changed_user_id' | 'user_identity_changed' | 'user_id_update';
21515
+ export type reason4 = 'user_changed_number' | 'user_changed_user_id' | 'user_identity_changed' | 'user_id_update';
21402
21516
 
21403
21517
  /**
21404
21518
  * Webhook payload for the `whatsapp.template.category_updated` event.
@@ -21467,7 +21581,7 @@ export type WebhookPayloadWhatsAppTemplateCategoryUpdated = {
21467
21581
  timestamp: string;
21468
21582
  };
21469
21583
 
21470
- export type event64 = 'whatsapp.template.category_updated';
21584
+ export type event65 = 'whatsapp.template.category_updated';
21471
21585
 
21472
21586
  /**
21473
21587
  * `scheduled` is Meta's 24h advance notice of an upcoming
@@ -21549,7 +21663,7 @@ export type WebhookPayloadWhatsAppTemplateStatusUpdated = {
21549
21663
  timestamp: string;
21550
21664
  };
21551
21665
 
21552
- export type event65 = 'whatsapp.template.status_updated';
21666
+ export type event66 = 'whatsapp.template.status_updated';
21553
21667
 
21554
21668
  /**
21555
21669
  * New status. Forwarded verbatim from Meta's `event` field.
@@ -21616,7 +21730,7 @@ export type WebhookPayloadWorkflowRun = {
21616
21730
  error?: string;
21617
21731
  };
21618
21732
 
21619
- export type event66 = 'workflow.run.started' | 'workflow.run.completed' | 'workflow.run.failed';
21733
+ export type event67 = 'workflow.run.started' | 'workflow.run.completed' | 'workflow.run.failed';
21620
21734
 
21621
21735
  /**
21622
21736
  * 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.
@@ -35750,7 +35864,7 @@ export type CreateWebhookSettingsData = {
35750
35864
  /**
35751
35865
  * Events to subscribe to (at least one required)
35752
35866
  */
35753
- 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' | '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')>;
35867
+ 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')>;
35754
35868
  /**
35755
35869
  * Enable or disable webhook delivery. Defaults to `true` when omitted.
35756
35870
  */
@@ -35822,7 +35936,7 @@ export type UpdateWebhookSettingsData = {
35822
35936
  /**
35823
35937
  * Events to subscribe to. Must contain at least one event if provided.
35824
35938
  */
35825
- 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' | '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')>;
35939
+ 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')>;
35826
35940
  /**
35827
35941
  * Enable or disable webhook delivery
35828
35942
  */
@@ -36011,7 +36125,7 @@ export type TestWebhookData = {
36011
36125
  /**
36012
36126
  * Send a sample payload of this event instead of `webhook.test`. The sample is marked with `test: true`.
36013
36127
  */
36014
- 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' | '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';
36128
+ 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';
36015
36129
  };
36016
36130
  };
36017
36131
 
@@ -51260,6 +51374,7 @@ export type CreateAdRuleData = {
51260
51374
  */
51261
51375
  campaignIds?: Array<(string)>;
51262
51376
  filters?: AdRuleFilters;
51377
+ lifecycle?: AdRuleLifecycle;
51263
51378
  conditions: AdRuleConditions;
51264
51379
  actions: AdRuleActions;
51265
51380
  /**
@@ -51320,7 +51435,7 @@ export type ListAdRuleActivityData = {
51320
51435
  * ISO 8601 date-time, inclusive.
51321
51436
  */
51322
51437
  to?: string;
51323
- type?: 'pause' | 'activate' | 'adjust_budget' | 'duplicate' | 'edit_name';
51438
+ type?: 'pause' | 'activate' | 'adjust_budget' | 'adjust_bid' | 'duplicate' | 'edit_name';
51324
51439
  };
51325
51440
  };
51326
51441
 
@@ -51376,6 +51491,10 @@ export type UpdateAdRuleData = {
51376
51491
  level?: AdRuleLevel;
51377
51492
  campaignIds?: Array<(string)> | null;
51378
51493
  filters?: AdRuleFilters;
51494
+ /**
51495
+ * Null removes it; every matching run then acts and notifies again.
51496
+ */
51497
+ lifecycle?: (AdRuleLifecycle | null);
51379
51498
  conditions?: AdRuleConditions;
51380
51499
  actions?: AdRuleActions;
51381
51500
  schedule?: AdRuleSchedule;
@@ -51421,6 +51540,40 @@ export type PreviewAdRuleError = (ErrorResponse | {
51421
51540
  error?: string;
51422
51541
  });
51423
51542
 
51543
+ export type ListAdRuleAlertsData = {
51544
+ path: {
51545
+ ruleId: string;
51546
+ };
51547
+ query?: {
51548
+ /**
51549
+ * `nextCursor` from the previous page.
51550
+ */
51551
+ cursor?: string;
51552
+ limit?: number;
51553
+ state?: 'pending' | 'open' | 'resolved';
51554
+ };
51555
+ };
51556
+
51557
+ export type ListAdRuleAlertsResponse = ({
51558
+ alerts: Array<{
51559
+ id: string;
51560
+ /**
51561
+ * Platform campaign, ad set or ad ID.
51562
+ */
51563
+ objectId: string;
51564
+ state: 'pending' | 'open' | 'resolved';
51565
+ severity: ('warning' | 'critical') | null;
51566
+ consecutiveMatches: number;
51567
+ openedAt: (string) | null;
51568
+ lastMatchedAt: string;
51569
+ resolvedAt: (string) | null;
51570
+ resolvedReason: ('condition_cleared' | 'action_applied' | 'not_evaluated' | 'automation_changed' | 'automation_off') | null;
51571
+ }>;
51572
+ nextCursor: (string) | null;
51573
+ });
51574
+
51575
+ export type ListAdRuleAlertsError = (ErrorResponse);
51576
+
51424
51577
  export type ListAdRuleRunsData = {
51425
51578
  path: {
51426
51579
  ruleId: string;