@getlatedev/node 0.2.1365 → 0.2.1366

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.
@@ -11147,6 +11147,65 @@ export type MoneyAmount = {
11147
11147
  currencyCode: string;
11148
11148
  };
11149
11149
 
11150
+ export type OAuthApp = {
11151
+ /**
11152
+ * Pass it as `oauthAppId` on GET /v1/connect/{platform} to connect through this app.
11153
+ */
11154
+ id: string;
11155
+ /**
11156
+ * The platform the app belongs to, as in GET /v1/connect/{platform}.
11157
+ */
11158
+ platform: string;
11159
+ label: string;
11160
+ /**
11161
+ * The client ID (or app ID) of your app on the platform. The secret is never returned.
11162
+ */
11163
+ clientId: string;
11164
+ /**
11165
+ * The permission areas every connect through this app requests. Pick only what your app is approved for on the platform.
11166
+ */
11167
+ scopeAreas: Array<('posting' | 'analytics' | 'comments' | 'messaging' | 'ads')>;
11168
+ /**
11169
+ * `ok`: the platform accepted the keys at the last check. `unchecked`: the check could not reach a verdict (see lastError). `invalid`: the platform rejected the keys; connects and token refreshes through this app will fail until the secret is rotated.
11170
+ */
11171
+ status: 'ok' | 'unchecked' | 'invalid';
11172
+ lastCheckedAt?: (string) | null;
11173
+ lastError?: (string) | null;
11174
+ /**
11175
+ * Connected accounts currently running on this app.
11176
+ */
11177
+ accountCount: number;
11178
+ /**
11179
+ * The OAuth redirect URI to allow in your app's settings on the platform.
11180
+ */
11181
+ redirectUri: string;
11182
+ createdAt: string;
11183
+ };
11184
+
11185
+ /**
11186
+ * `ok`: the platform accepted the keys at the last check. `unchecked`: the check could not reach a verdict (see lastError). `invalid`: the platform rejected the keys; connects and token refreshes through this app will fail until the secret is rotated.
11187
+ */
11188
+ export type status30 = 'ok' | 'unchecked' | 'invalid';
11189
+
11190
+ export type OAuthAppSetup = {
11191
+ platform: string;
11192
+ /**
11193
+ * Allow this OAuth redirect URI in your app on the platform.
11194
+ */
11195
+ redirectUri: string;
11196
+ /**
11197
+ * Requested on every connect, whatever areas the app enables.
11198
+ */
11199
+ coreScopes: Array<(string)>;
11200
+ /**
11201
+ * The areas an app on this platform can enable, each with the scopes it requests.
11202
+ */
11203
+ scopeAreas: Array<{
11204
+ area: 'posting' | 'analytics' | 'comments' | 'messaging' | 'ads';
11205
+ scopes: Array<(string)>;
11206
+ }>;
11207
+ };
11208
+
11150
11209
  export type OpenHours = Array<{
11151
11210
  /**
11152
11211
  * 0 = Sunday.
@@ -11336,7 +11395,7 @@ export type OwnedPhoneNumber = {
11336
11395
  }>;
11337
11396
  };
11338
11397
 
11339
- export type status30 = 'pending_payment' | 'pending_regulatory' | 'regulatory_declined' | 'provisioning' | 'verifying' | 'active' | 'suspended' | 'releasing' | 'released';
11398
+ export type status31 = 'pending_payment' | 'pending_regulatory' | 'regulatory_declined' | 'provisioning' | 'verifying' | 'active' | 'suspended' | 'releasing' | 'released';
11340
11399
 
11341
11400
  export type metaVerificationStatus = 'pending' | 'code_requested' | 'verified' | 'expired';
11342
11401
 
@@ -11508,7 +11567,7 @@ export type PlatformAnalytics = {
11508
11567
  isOwner?: (boolean) | null;
11509
11568
  };
11510
11569
 
11511
- export type status31 = 'published' | 'failed';
11570
+ export type status32 = 'published' | 'failed';
11512
11571
 
11513
11572
  /**
11514
11573
  * Sync state of analytics for this platform
@@ -11711,7 +11770,7 @@ export type Post = {
11711
11770
  /**
11712
11771
  * `cancelled` is set by POST /v1/posts/{postId}/unpublish once every platform entry has been removed from its platform (a post with published entries left becomes `partial`); cancelled posts can be edited and rescheduled like drafts. `pending_approval` (set by `requiresApproval: true`) never publishes until POST /v1/posts/{postId}/review approves it.
11713
11772
  */
11714
- export type status32 = 'draft' | 'pending_approval' | 'scheduled' | 'publishing' | 'published' | 'partial' | 'failed' | 'cancelled';
11773
+ export type status33 = 'draft' | 'pending_approval' | 'scheduled' | 'publishing' | 'published' | 'partial' | 'failed' | 'cancelled';
11715
11774
 
11716
11775
  export type visibility3 = 'public' | 'private' | 'unlisted';
11717
11776
 
@@ -11948,7 +12007,7 @@ export type Product = {
11948
12007
  publishedAt?: (string) | null;
11949
12008
  };
11950
12009
 
11951
- export type status33 = 'active' | 'draft' | 'archived';
12010
+ export type status34 = 'active' | 'draft' | 'archived';
11952
12011
 
11953
12012
  export type ProductImage = {
11954
12013
  url?: string;
@@ -12167,7 +12226,7 @@ export type RcsAgent = {
12167
12226
  createdAt?: string;
12168
12227
  };
12169
12228
 
12170
- export type status34 = 'requested' | 'changes_requested' | 'brand_vetting' | 'agent_review' | 'testing' | 'launch_review' | 'launching' | 'live' | 'rejected' | 'deactivated';
12229
+ export type status35 = 'requested' | 'changes_requested' | 'brand_vetting' | 'agent_review' | 'testing' | 'launch_review' | 'launching' | 'live' | 'rejected' | 'deactivated';
12171
12230
 
12172
12231
  export type useCase = 'MULTI_USE' | 'PROMOTIONAL' | 'TRANSACTIONAL' | 'OTP';
12173
12232
 
@@ -12219,7 +12278,7 @@ export type RcsBrand = RcsBrandInput & {
12219
12278
  /**
12220
12279
  * draft = not filed yet (still editable).
12221
12280
  */
12222
- export type status35 = 'draft' | 'vetting' | 'verified' | 'rejected';
12281
+ export type status36 = 'draft' | 'vetting' | 'verified' | 'rejected';
12223
12282
 
12224
12283
  export type RcsBrandInput = {
12225
12284
  displayName: string;
@@ -12306,7 +12365,7 @@ export type RcsCarrierApproval = {
12306
12365
 
12307
12366
  export type scope3 = 'carrier' | 'hub' | 'bot';
12308
12367
 
12309
- export type status36 = 'PENDING' | 'SUBMITTED' | 'APPROVED' | 'REJECTED';
12368
+ export type status37 = 'PENDING' | 'SUBMITTED' | 'APPROVED' | 'REJECTED';
12310
12369
 
12311
12370
  /**
12312
12371
  * Message content. `suggestions` (max 11) render as chips under the message.
@@ -12950,6 +13009,14 @@ export type SocialAccount = {
12950
13009
  * The account's id on its platform as the platform reports it to Zernio; stable across reconnects, so it is the key to match an account against your own records. Instagram: the app-scoped user id on Instagram Login accounts (the professional account id is in `metadata.instagramScopedId`), the professional account id (`17841...`) on Facebook Login accounts. TikTok: the open_id of Zernio's TikTok app, which differs from the open_id any other app sees for the same user. Either value can be passed back as `expectedPlatformUserId` on GET /v1/connect/{platform}.
12951
13010
  */
12952
13011
  platformUserId?: string;
13012
+ /**
13013
+ * Accounts connected through your own OAuth app: the permission areas the connect requested. Null on accounts connected through Zernio's app.
13014
+ */
13015
+ scopeAreas?: Array<(string)> | null;
13016
+ /**
13017
+ * The id of your own OAuth app this account connected through (see /v1/connect/oauth-apps); null when it uses Zernio's app.
13018
+ */
13019
+ oauthAppId?: (string) | null;
12953
13020
  /**
12954
13021
  * TikTok accounts only. The account type TikTok reported when the account was connected. `personal` accounts cannot use TikTok direct messages through the API (TikTok limits Business Messaging to Business Accounts): skip the inbox for them and tell the user to switch to a Business Account in the TikTok app, then reconnect. `business` is the prerequisite, not a guarantee; messaging also needs the messaging scopes granted and TikTok's regional availability. `unknown` on accounts connected before this was captured or whose grant left out the account-type scope.
12955
13022
  */
@@ -13194,7 +13261,7 @@ export type SupportRun = {
13194
13261
  /**
13195
13262
  * queued and running are in progress. needs_human means the assistant handed the question to a person instead of answering; when `supportTicket` is set, a Zernio teammate has been notified and will follow up by email.
13196
13263
  */
13197
- export type status37 = 'queued' | 'running' | 'completed' | 'needs_human' | 'failed';
13264
+ export type status38 = 'queued' | 'running' | 'completed' | 'needs_human' | 'failed';
13198
13265
 
13199
13266
  /**
13200
13267
  * Why the run stopped. Null while it is in progress.
@@ -14161,7 +14228,7 @@ export type UploadTokenResponse = {
14161
14228
  status?: 'pending' | 'completed' | 'expired';
14162
14229
  };
14163
14230
 
14164
- export type status38 = 'pending' | 'completed' | 'expired';
14231
+ export type status39 = 'pending' | 'completed' | 'expired';
14165
14232
 
14166
14233
  export type UploadTokenStatusResponse = {
14167
14234
  token?: string;
@@ -14672,7 +14739,7 @@ export type Verification = {
14672
14739
  resend?: boolean;
14673
14740
  };
14674
14741
 
14675
- export type status39 = 'pending' | 'approved' | 'expired' | 'max_attempts_reached' | 'canceled' | 'delivery_failed';
14742
+ export type status40 = 'pending' | 'approved' | 'expired' | 'max_attempts_reached' | 'canceled' | 'delivery_failed';
14676
14743
 
14677
14744
  export type channel5 = 'sms' | 'whatsapp';
14678
14745
 
@@ -14704,7 +14771,7 @@ export type Webhook = {
14704
14771
  /**
14705
14772
  * Events subscribed to
14706
14773
  */
14707
- 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.ads.initial_sync_completed' | 'account.ads.sync_failed' | 'account.ads.sync_recovered' | 'analytics.synced' | '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' | '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' | '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' | 'account.rate_limited' | 'calendar.event.created' | 'calendar.event.updated' | 'calendar.event.deleted' | 'file.created' | 'file.updated' | 'file.deleted' | 'file.picked' | 'contact.updated' | 'contact.deleted')>;
14774
+ 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' | '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' | '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' | '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' | 'account.rate_limited' | 'calendar.event.created' | 'calendar.event.updated' | 'calendar.event.deleted' | 'file.created' | 'file.updated' | 'file.deleted' | 'file.picked' | 'contact.updated' | 'contact.deleted')>;
14708
14775
  /**
14709
14776
  * Whether webhook delivery is enabled
14710
14777
  */
@@ -14850,7 +14917,7 @@ export type WebhookLog = {
14850
14917
  /**
14851
14918
  * Delivery outcome
14852
14919
  */
14853
- export type status40 = 'success' | 'failed';
14920
+ export type status41 = 'success' | 'failed';
14854
14921
 
14855
14922
  /**
14856
14923
  * Webhook payload for `account.ads.initial_sync_completed` events.
@@ -14967,7 +15034,7 @@ export type event = 'account.ads.initial_sync_completed';
14967
15034
  /**
14968
15035
  * Overall outcome of the initial sync.
14969
15036
  */
14970
- export type status41 = 'success' | 'failure';
15037
+ export type status42 = 'success' | 'failure';
14971
15038
 
14972
15039
  /**
14973
15040
  * Stable category for UX branching. New values may be added; existing ones are
@@ -15157,6 +15224,44 @@ export type event5 = 'account.disconnected';
15157
15224
  */
15158
15225
  export type disconnectionType = 'intentional' | 'unintentional';
15159
15226
 
15227
+ /**
15228
+ * Webhook payload for account.permissions_changed events: an account connected through your own OAuth app hit a missing permission and stays connected for its other areas.
15229
+ */
15230
+ export type WebhookPayloadAccountPermissionsChanged = {
15231
+ /**
15232
+ * Stable webhook event ID: the dedupe key, also sent as the X-Zernio-Event-Id header and identical on every retry and redelivery.
15233
+ */
15234
+ id: string;
15235
+ profiles?: WebhookProfiles;
15236
+ /**
15237
+ * Always true when present: only a sample sent by POST /v1/webhooks/test with an event carries it.
15238
+ */
15239
+ test?: boolean;
15240
+ event: 'account.permissions_changed';
15241
+ account: {
15242
+ accountId: string;
15243
+ profileId: string;
15244
+ platform: string;
15245
+ username: string;
15246
+ displayName?: string;
15247
+ /**
15248
+ * The OAuth app the account connected through.
15249
+ */
15250
+ oauthAppId: string;
15251
+ /**
15252
+ * Every area now missing. Enable the permission on your app (or have the user grant it), then reconnect the account.
15253
+ */
15254
+ missingScopeAreas: Array<('posting' | 'analytics' | 'comments' | 'messaging' | 'ads')>;
15255
+ /**
15256
+ * The platform error that revealed it.
15257
+ */
15258
+ reason: string;
15259
+ };
15260
+ timestamp: string;
15261
+ };
15262
+
15263
+ export type event6 = 'account.permissions_changed';
15264
+
15160
15265
  /**
15161
15266
  * Webhook payload for account.rate_limited: a mailbox entered a sending cooldown.
15162
15267
  */
@@ -15181,7 +15286,7 @@ export type WebhookPayloadAccountRateLimited = {
15181
15286
  timestamp: string;
15182
15287
  };
15183
15288
 
15184
- export type event6 = 'account.rate_limited';
15289
+ export type event7 = 'account.rate_limited';
15185
15290
 
15186
15291
  export type reason = 'recipient_burst' | 'provider_rejection' | 'bounces' | 'daily_cap';
15187
15292
 
@@ -15231,7 +15336,7 @@ export type WebhookPayloadAdAccountStatusChanged = {
15231
15336
  timestamp: string;
15232
15337
  };
15233
15338
 
15234
- export type event7 = 'ad_account.status_changed';
15339
+ export type event8 = 'ad_account.status_changed';
15235
15340
 
15236
15341
  export type previous = 'active' | 'restricted' | 'disabled' | 'closed';
15237
15342
 
@@ -15298,7 +15403,7 @@ export type WebhookPayloadAdDeliveryIssue = {
15298
15403
  timestamp: string;
15299
15404
  };
15300
15405
 
15301
- export type event8 = 'ad.delivery_issue';
15406
+ export type event9 = 'ad.delivery_issue';
15302
15407
 
15303
15408
  /**
15304
15409
  * Always `AD`.
@@ -15372,9 +15477,9 @@ export type WebhookPayloadAdReview = {
15372
15477
  timestamp: string;
15373
15478
  };
15374
15479
 
15375
- export type event9 = 'ad.review.approved' | 'ad.review.rejected';
15480
+ export type event10 = 'ad.review.approved' | 'ad.review.rejected';
15376
15481
 
15377
- export type status42 = 'approved' | 'rejected';
15482
+ export type status43 = 'approved' | 'rejected';
15378
15483
 
15379
15484
  /**
15380
15485
  * Webhook payload for the `ad_rule.triggered` event.
@@ -15506,7 +15611,7 @@ export type WebhookPayloadAdRuleTriggered = {
15506
15611
  timestamp: string;
15507
15612
  };
15508
15613
 
15509
- export type event10 = 'ad_rule.triggered';
15614
+ export type event11 = 'ad_rule.triggered';
15510
15615
 
15511
15616
  /**
15512
15617
  * Webhook payload for the `ad.status_changed` event. Currently emitted
@@ -15633,7 +15738,7 @@ export type WebhookPayloadAdStatusChanged = {
15633
15738
  timestamp: string;
15634
15739
  };
15635
15740
 
15636
- export type event11 = 'ad.status_changed';
15741
+ export type event12 = 'ad.status_changed';
15637
15742
 
15638
15743
  /**
15639
15744
  * Hierarchy level the status applies to. Mirrors Meta's `level`. Creative-level events are not forwarded.
@@ -15704,12 +15809,12 @@ export type WebhookPayloadAdVideoProcessed = {
15704
15809
  timestamp: string;
15705
15810
  };
15706
15811
 
15707
- export type event12 = 'ad.video.processed';
15812
+ export type event13 = 'ad.video.processed';
15708
15813
 
15709
15814
  /**
15710
15815
  * `ready`: usable as `video.id` on the create endpoints. `error`: Meta could not process it; upload again.
15711
15816
  */
15712
- export type status43 = 'ready' | 'error';
15817
+ export type status44 = 'ready' | 'error';
15713
15818
 
15714
15819
  /**
15715
15820
  * Webhook payload for `analytics.synced`. Fired once per connected account each
@@ -15787,7 +15892,7 @@ export type WebhookPayloadAnalyticsSynced = {
15787
15892
  timestamp: string;
15788
15893
  };
15789
15894
 
15790
- export type event13 = 'analytics.synced';
15895
+ export type event14 = 'analytics.synced';
15791
15896
 
15792
15897
  export type WebhookPayloadApiChangelogPublished = {
15793
15898
  /**
@@ -15806,7 +15911,7 @@ export type WebhookPayloadApiChangelogPublished = {
15806
15911
  timestamp: string;
15807
15912
  };
15808
15913
 
15809
- export type event14 = 'api.changelog.published';
15914
+ export type event15 = 'api.changelog.published';
15810
15915
 
15811
15916
  /**
15812
15917
  * Webhook payload for calendar.event.created, calendar.event.updated and calendar.event.deleted. Carries the provider event id and the change only; read the event with `GET /v1/calendar/events/{id}` (deleted ids answer 404).
@@ -15833,7 +15938,7 @@ export type WebhookPayloadCalendarEvent = {
15833
15938
  timestamp: string;
15834
15939
  };
15835
15940
 
15836
- export type event15 = 'calendar.event.created' | 'calendar.event.updated' | 'calendar.event.deleted';
15941
+ export type event16 = 'calendar.event.created' | 'calendar.event.updated' | 'calendar.event.deleted';
15837
15942
 
15838
15943
  export type changeType = 'created' | 'updated' | 'deleted';
15839
15944
 
@@ -15910,7 +16015,7 @@ export type WebhookPayloadCallEnded = {
15910
16015
  timestamp: string;
15911
16016
  };
15912
16017
 
15913
- export type event16 = 'call.ended';
16018
+ export type event17 = 'call.ended';
15914
16019
 
15915
16020
  /**
15916
16021
  * Webhook payload for the `call.failed` event. Fired when a call
@@ -15949,7 +16054,7 @@ export type WebhookPayloadCallFailed = {
15949
16054
  timestamp: string;
15950
16055
  };
15951
16056
 
15952
- export type event17 = 'call.failed';
16057
+ export type event18 = 'call.failed';
15953
16058
 
15954
16059
  /**
15955
16060
  * Webhook payload for the `call.permission_request` event. Fires
@@ -15991,7 +16096,7 @@ export type WebhookPayloadCallPermissionRequest = {
15991
16096
  timestamp: string;
15992
16097
  };
15993
16098
 
15994
- export type event18 = 'call.permission_request';
16099
+ export type event19 = 'call.permission_request';
15995
16100
 
15996
16101
  export type response = 'accept' | 'reject';
15997
16102
 
@@ -16050,7 +16155,7 @@ export type WebhookPayloadCallReceived = {
16050
16155
  timestamp: string;
16051
16156
  };
16052
16157
 
16053
- export type event19 = 'call.received';
16158
+ export type event20 = 'call.received';
16054
16159
 
16055
16160
  /**
16056
16161
  * Webhook payload for the `campaign.budget.depleted` event. Fires when a campaign
@@ -16101,7 +16206,7 @@ export type WebhookPayloadCampaignBudgetDepleted = {
16101
16206
  timestamp: string;
16102
16207
  };
16103
16208
 
16104
- export type event20 = 'campaign.budget.depleted';
16209
+ export type event21 = 'campaign.budget.depleted';
16105
16210
 
16106
16211
  /**
16107
16212
  * Always `CAMPAIGN`.
@@ -16283,7 +16388,7 @@ export type WebhookPayloadComment = {
16283
16388
  timestamp: string;
16284
16389
  };
16285
16390
 
16286
- export type event21 = 'comment.received';
16391
+ export type event22 = 'comment.received';
16287
16392
 
16288
16393
  export type platform15 = 'instagram' | 'facebook' | 'threads' | 'youtube' | 'linkedin' | 'bluesky' | 'reddit' | 'tiktok';
16289
16394
 
@@ -16329,7 +16434,7 @@ export type WebhookPayloadCommerceOrder = {
16329
16434
  };
16330
16435
  };
16331
16436
 
16332
- export type event22 = 'commerce.order.created' | 'commerce.order.updated' | 'commerce.order.refunded';
16437
+ export type event23 = 'commerce.order.created' | 'commerce.order.updated' | 'commerce.order.refunded';
16333
16438
 
16334
16439
  export type type19 = 'order';
16335
16440
 
@@ -16372,7 +16477,7 @@ export type WebhookPayloadCommerceProduct = {
16372
16477
  };
16373
16478
  };
16374
16479
 
16375
- export type event23 = 'commerce.product.created' | 'commerce.product.updated' | 'commerce.product.deleted';
16480
+ export type event24 = 'commerce.product.created' | 'commerce.product.updated' | 'commerce.product.deleted';
16376
16481
 
16377
16482
  export type type20 = 'product';
16378
16483
 
@@ -16401,7 +16506,7 @@ export type WebhookPayloadContact = {
16401
16506
  timestamp: string;
16402
16507
  };
16403
16508
 
16404
- export type event24 = 'contact.updated' | 'contact.deleted';
16509
+ export type event25 = 'contact.updated' | 'contact.deleted';
16405
16510
 
16406
16511
  export type changeType2 = 'updated' | 'deleted';
16407
16512
 
@@ -16441,7 +16546,7 @@ export type WebhookPayloadContactFieldChanged = {
16441
16546
  source: 'api' | 'workflow' | 'automation';
16442
16547
  };
16443
16548
 
16444
- export type event25 = 'contact.field_changed';
16549
+ export type event26 = 'contact.field_changed';
16445
16550
 
16446
16551
  /**
16447
16552
  * Who wrote the field: the API or dashboard, a workflow set_field node, or an automation.
@@ -16473,7 +16578,7 @@ export type WebhookPayloadContactTag = {
16473
16578
  source: 'api' | 'workflow' | 'automation';
16474
16579
  };
16475
16580
 
16476
- export type event26 = 'contact.tag_added' | 'contact.tag_removed';
16581
+ export type event27 = 'contact.tag_added' | 'contact.tag_removed';
16477
16582
 
16478
16583
  /**
16479
16584
  * Who answers a conversation changed under Meta's handover protocol. WhatsApp: Meta
@@ -16519,7 +16624,7 @@ export type WebhookPayloadConversationControlChanged = {
16519
16624
  timestamp: string;
16520
16625
  };
16521
16626
 
16522
- export type event27 = 'conversation.control_changed';
16627
+ export type event28 = 'conversation.control_changed';
16523
16628
 
16524
16629
  /**
16525
16630
  * 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).
@@ -16578,7 +16683,7 @@ export type WebhookPayloadConversationStarted = {
16578
16683
  timestamp: string;
16579
16684
  };
16580
16685
 
16581
- export type event28 = 'conversation.started';
16686
+ export type event29 = 'conversation.started';
16582
16687
 
16583
16688
  /**
16584
16689
  * Webhook payload for post.external.created / post.external.updated /
@@ -16615,7 +16720,7 @@ export type WebhookPayloadExternalPost = {
16615
16720
  timestamp: string;
16616
16721
  };
16617
16722
 
16618
- export type event29 = 'post.external.created' | 'post.external.updated' | 'post.external.deleted';
16723
+ export type event30 = 'post.external.created' | 'post.external.updated' | 'post.external.deleted';
16619
16724
 
16620
16725
  /**
16621
16726
  * 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}`.
@@ -16642,7 +16747,7 @@ export type WebhookPayloadFile = {
16642
16747
  timestamp: string;
16643
16748
  };
16644
16749
 
16645
- export type event30 = 'file.created' | 'file.updated' | 'file.deleted';
16750
+ export type event31 = 'file.created' | 'file.updated' | 'file.deleted';
16646
16751
 
16647
16752
  /**
16648
16753
  * 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.
@@ -16677,7 +16782,7 @@ export type WebhookPayloadFilePicked = {
16677
16782
  timestamp: string;
16678
16783
  };
16679
16784
 
16680
- export type event31 = 'file.picked';
16785
+ export type event32 = 'file.picked';
16681
16786
 
16682
16787
  /**
16683
16788
  * Webhook payload for lead.received events (Meta Lead Gen / Instant Forms).
@@ -16757,7 +16862,7 @@ export type WebhookPayloadLead = {
16757
16862
  timestamp: string;
16758
16863
  };
16759
16864
 
16760
- export type event32 = 'lead.received';
16865
+ export type event33 = 'lead.received';
16761
16866
 
16762
16867
  export type platform16 = 'facebook';
16763
16868
 
@@ -17360,7 +17465,7 @@ export type WebhookPayloadMessage = {
17360
17465
  timestamp: string;
17361
17466
  };
17362
17467
 
17363
- export type event33 = 'message.received';
17468
+ export type event34 = 'message.received';
17364
17469
 
17365
17470
  /**
17366
17471
  * Which Zernio surface produced the message. Always present and
@@ -17426,7 +17531,7 @@ export type WebhookPayloadMessageDeleted = {
17426
17531
  timestamp: string;
17427
17532
  };
17428
17533
 
17429
- export type event34 = 'message.deleted';
17534
+ export type event35 = 'message.deleted';
17430
17535
 
17431
17536
  /**
17432
17537
  * Shared payload for message.delivered, message.read, message.played and
@@ -17494,7 +17599,7 @@ export type WebhookPayloadMessageDeliveryStatus = {
17494
17599
  timestamp: string;
17495
17600
  };
17496
17601
 
17497
- export type event35 = 'message.delivered' | 'message.read' | 'message.played' | 'message.failed';
17602
+ export type event36 = 'message.delivered' | 'message.read' | 'message.played' | 'message.failed';
17498
17603
 
17499
17604
  /**
17500
17605
  * Webhook payload for message.edited events. Fires when the sender
@@ -17537,7 +17642,7 @@ export type WebhookPayloadMessageEdited = {
17537
17642
  timestamp: string;
17538
17643
  };
17539
17644
 
17540
- export type event36 = 'message.edited';
17645
+ export type event37 = 'message.edited';
17541
17646
 
17542
17647
  /**
17543
17648
  * Webhook payload for message sent events (fired when a message is sent via the API, or from the WhatsApp Business app on Coexistence numbers)
@@ -17783,7 +17888,7 @@ export type WebhookPayloadMessageSent = {
17783
17888
  timestamp: string;
17784
17889
  };
17785
17890
 
17786
- export type event37 = 'message.sent';
17891
+ export type event38 = 'message.sent';
17787
17892
 
17788
17893
  /**
17789
17894
  * Every platform whose outgoing messages Zernio observes. sms is absent on purpose: its carrier receipts update delivery status and never raise message.sent.
@@ -17841,7 +17946,7 @@ export type WebhookPayloadPhoneNumberStockAvailable = {
17841
17946
  timestamp: string;
17842
17947
  };
17843
17948
 
17844
- export type event38 = 'phone_number.stock_available';
17949
+ export type event39 = 'phone_number.stock_available';
17845
17950
 
17846
17951
  /**
17847
17952
  * Webhook payload for post events
@@ -17896,7 +18001,7 @@ export type WebhookPayloadPost = {
17896
18001
  timestamp: string;
17897
18002
  };
17898
18003
 
17899
- export type event39 = 'post.scheduled' | 'post.published' | 'post.failed' | 'post.partial' | 'post.cancelled' | 'post.recycled';
18004
+ export type event40 = 'post.scheduled' | 'post.published' | 'post.failed' | 'post.partial' | 'post.cancelled' | 'post.recycled';
17900
18005
 
17901
18006
  /**
17902
18007
  * Webhook payload for the per-platform terminal events
@@ -18020,12 +18125,12 @@ export type WebhookPayloadPostPlatform = {
18020
18125
  timestamp: string;
18021
18126
  };
18022
18127
 
18023
- export type event40 = 'post.platform.published' | 'post.platform.failed' | 'post.platform.deleted' | 'post.tiktok.url_resolved';
18128
+ export type event41 = 'post.platform.published' | 'post.platform.failed' | 'post.platform.deleted' | 'post.tiktok.url_resolved';
18024
18129
 
18025
18130
  /**
18026
18131
  * Terminal status this event fires on. Matches the event suffix.
18027
18132
  */
18028
- export type status44 = 'published' | 'failed' | 'deleted';
18133
+ export type status45 = 'published' | 'failed' | 'deleted';
18029
18134
 
18030
18135
  /**
18031
18136
  * Webhook payload for reaction received events (WhatsApp, Telegram, Slack, Instagram, Facebook Messenger, TikTok)
@@ -18085,7 +18190,7 @@ export type WebhookPayloadReaction = {
18085
18190
  timestamp: string;
18086
18191
  };
18087
18192
 
18088
- export type event41 = 'reaction.received';
18193
+ export type event42 = 'reaction.received';
18089
18194
 
18090
18195
  export type action = 'added' | 'removed';
18091
18196
 
@@ -18164,7 +18269,7 @@ export type WebhookPayloadReferral = {
18164
18269
  timestamp: string;
18165
18270
  };
18166
18271
 
18167
- export type event42 = 'referral.received';
18272
+ export type event43 = 'referral.received';
18168
18273
 
18169
18274
  /**
18170
18275
  * Webhook payload for the review.new event (new review posted on a connected account).
@@ -18196,7 +18301,7 @@ export type WebhookPayloadReviewNew = {
18196
18301
  timestamp: string;
18197
18302
  };
18198
18303
 
18199
- export type event43 = 'review.new';
18304
+ export type event44 = 'review.new';
18200
18305
 
18201
18306
  /**
18202
18307
  * Webhook payload for the review.updated event. Fired when the reviewer edits their
@@ -18234,7 +18339,7 @@ export type WebhookPayloadReviewUpdated = {
18234
18339
  timestamp: string;
18235
18340
  };
18236
18341
 
18237
- export type event44 = 'review.updated';
18342
+ export type event45 = 'review.updated';
18238
18343
 
18239
18344
  export type WebhookPayloadSequenceEnrollment = {
18240
18345
  /**
@@ -18267,7 +18372,7 @@ export type WebhookPayloadSequenceEnrollment = {
18267
18372
  exitReason?: 'completed' | 'replied' | 'manual' | 'failed' | 'unsubscribed';
18268
18373
  };
18269
18374
 
18270
- export type event45 = 'sequence.enrolled' | 'sequence.exited';
18375
+ export type event46 = 'sequence.enrolled' | 'sequence.exited';
18271
18376
 
18272
18377
  /**
18273
18378
  * 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.
@@ -18288,7 +18393,7 @@ export type WebhookPayloadSupportRun = {
18288
18393
  run: SupportRun;
18289
18394
  };
18290
18395
 
18291
- export type event46 = 'support.run.completed' | 'support.run.failed';
18396
+ export type event47 = 'support.run.completed' | 'support.run.failed';
18292
18397
 
18293
18398
  /**
18294
18399
  * Webhook payload for test deliveries
@@ -18309,7 +18414,7 @@ export type WebhookPayloadTest = {
18309
18414
  timestamp: string;
18310
18415
  };
18311
18416
 
18312
- export type event47 = 'webhook.test';
18417
+ export type event48 = 'webhook.test';
18313
18418
 
18314
18419
  /**
18315
18420
  * Webhook payload for `whatsapp.account.alert_received`, forwarded from Meta's
@@ -18361,7 +18466,7 @@ export type WebhookPayloadWhatsAppAccountAlertReceived = {
18361
18466
  timestamp: string;
18362
18467
  };
18363
18468
 
18364
- export type event48 = 'whatsapp.account.alert_received';
18469
+ export type event49 = 'whatsapp.account.alert_received';
18365
18470
 
18366
18471
  export type platform18 = 'whatsapp';
18367
18472
 
@@ -18417,12 +18522,12 @@ export type WebhookPayloadWhatsAppAccountNameStatusUpdated = {
18417
18522
  timestamp: string;
18418
18523
  };
18419
18524
 
18420
- export type event49 = 'whatsapp.account.name_status_updated';
18525
+ export type event50 = 'whatsapp.account.name_status_updated';
18421
18526
 
18422
18527
  /**
18423
18528
  * Normalized from Meta's `decision` (REJECTED -> DECLINED, DEFERRED -> PENDING_REVIEW; the review is still open on DEFERRED, not a rejection).
18424
18529
  */
18425
- export type status45 = 'APPROVED' | 'DECLINED' | 'PENDING_REVIEW';
18530
+ export type status46 = 'APPROVED' | 'DECLINED' | 'PENDING_REVIEW';
18426
18531
 
18427
18532
  /**
18428
18533
  * Webhook payload for `whatsapp.account.quality_updated`. Fired when a connected
@@ -18475,7 +18580,7 @@ export type WebhookPayloadWhatsAppAccountQualityUpdated = {
18475
18580
  timestamp: string;
18476
18581
  };
18477
18582
 
18478
- export type event50 = 'whatsapp.account.quality_updated';
18583
+ export type event51 = 'whatsapp.account.quality_updated';
18479
18584
 
18480
18585
  /**
18481
18586
  * The Meta webhook field that reported the change.
@@ -18551,12 +18656,12 @@ export type WebhookPayloadWhatsAppAccountStatusUpdated = {
18551
18656
  timestamp: string;
18552
18657
  };
18553
18658
 
18554
- export type event51 = 'whatsapp.account.status_updated';
18659
+ export type event52 = 'whatsapp.account.status_updated';
18555
18660
 
18556
18661
  /**
18557
18662
  * `active` only on a reinstatement (DISABLED_UPDATE with ban state REINSTATE).
18558
18663
  */
18559
- export type status46 = 'restricted' | 'active';
18664
+ export type status47 = 'restricted' | 'active';
18560
18665
 
18561
18666
  /**
18562
18667
  * Webhook payload for the `whatsapp.contact.identity_changed` event. Fired when
@@ -18608,7 +18713,7 @@ export type WebhookPayloadWhatsAppContactIdentityChanged = {
18608
18713
  timestamp: string;
18609
18714
  };
18610
18715
 
18611
- export type event52 = 'whatsapp.contact.identity_changed';
18716
+ export type event53 = 'whatsapp.contact.identity_changed';
18612
18717
 
18613
18718
  /**
18614
18719
  * Which Meta signal reported the change. `user_changed_number`: new phone number. `user_changed_user_id` and `user_id_update`: new BSUID.
@@ -18682,7 +18787,7 @@ export type WebhookPayloadWhatsAppTemplateCategoryUpdated = {
18682
18787
  timestamp: string;
18683
18788
  };
18684
18789
 
18685
- export type event53 = 'whatsapp.template.category_updated';
18790
+ export type event54 = 'whatsapp.template.category_updated';
18686
18791
 
18687
18792
  /**
18688
18793
  * `scheduled` is Meta's 24h advance notice of an upcoming
@@ -18764,7 +18869,7 @@ export type WebhookPayloadWhatsAppTemplateStatusUpdated = {
18764
18869
  timestamp: string;
18765
18870
  };
18766
18871
 
18767
- export type event54 = 'whatsapp.template.status_updated';
18872
+ export type event55 = 'whatsapp.template.status_updated';
18768
18873
 
18769
18874
  /**
18770
18875
  * New status. Forwarded verbatim from Meta's `event` field.
@@ -18772,7 +18877,7 @@ export type event54 = 'whatsapp.template.status_updated';
18772
18877
  * request before the template is actually removed.
18773
18878
  *
18774
18879
  */
18775
- export type status47 = 'APPROVED' | 'REJECTED' | 'PENDING' | 'PAUSED' | 'DISABLED' | 'IN_APPEAL' | 'PENDING_DELETION';
18880
+ export type status48 = 'APPROVED' | 'REJECTED' | 'PENDING' | 'PAUSED' | 'DISABLED' | 'IN_APPEAL' | 'PENDING_DELETION';
18776
18881
 
18777
18882
  export type WebhookPayloadWorkflowRun = {
18778
18883
  /**
@@ -18831,12 +18936,12 @@ export type WebhookPayloadWorkflowRun = {
18831
18936
  error?: string;
18832
18937
  };
18833
18938
 
18834
- export type event55 = 'workflow.run.started' | 'workflow.run.completed' | 'workflow.run.failed';
18939
+ export type event56 = 'workflow.run.started' | 'workflow.run.completed' | 'workflow.run.failed';
18835
18940
 
18836
18941
  /**
18837
18942
  * 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.
18838
18943
  */
18839
- export type status48 = 'running' | 'waiting' | 'completed' | 'exited' | 'failed';
18944
+ export type status49 = 'running' | 'waiting' | 'completed' | 'exited' | 'failed';
18840
18945
 
18841
18946
  /**
18842
18947
  * The profiles this event belongs to, each with the externalId you set on it (null when none is set). Present on every event tied to a profile and absent on events that belong to none. Events spanning several profiles (a post published to accounts of different profiles) list each once. Use it to route the event to your tenant without storing Zernio profile ids.
@@ -19234,7 +19339,7 @@ export type WorkflowExecutionEvent = {
19234
19339
 
19235
19340
  export type action2 = 'execution_started' | 'execution_completed' | 'execution_exited' | 'execution_paused' | 'execution_resumed' | 'node_started' | 'node_completed' | 'node_failed' | 'node_skipped';
19236
19341
 
19237
- export type status49 = 'success' | 'failed' | 'pending';
19342
+ export type status50 = 'success' | 'failed' | 'pending';
19238
19343
 
19239
19344
  /**
19240
19345
  * A node in a workflow graph. `config` shape depends on `type`.
@@ -24060,6 +24165,10 @@ export type GetConnectUrlData = {
24060
24165
  * Welcome screen only (`welcome=true`): https URL of your logo, shown in a square tile, so use a square image. Without it the tile shows the first letter of `brandName`, or the Zernio mark when there is no `brandName` either. Rejected with 400 `INVALID_FIELD_VALUE` when the welcome screen is not shown.
24061
24166
  */
24062
24167
  logoUrl?: string;
24168
+ /**
24169
+ * Connect through one of your own OAuth apps (see /v1/connect/oauth-apps), so the consent screen shows your app and the platform's limits are your app's. Without it the connect runs on Zernio's app, whatever apps the workspace has saved. Only platforms listed in `platforms` of GET /v1/connect/oauth-apps accept an app; any other, and connects that end on a destination picker (Facebook Pages, Instagram through Facebook Login), return 400. The connect requests the app's `scopeAreas`; `scopes` may narrow them but not add an area the app does not enable (400). If the user does not grant every requested area, the account still connects and the redirect carries `missing_permissions=<areas>` (the headless POST returns `missingPermissions`). If the platform refuses a permission your app is not approved for, the redirect carries `error=oauth_app_scope_not_allowed`. The account remembers the app, and token refresh, publishing and inbox run on it; reconnecting through another app, or without one, moves the account to that app.
24170
+ */
24171
+ oauthAppId?: string;
24063
24172
  /**
24064
24173
  * WhatsApp only. Ignored for every other platform. Controls which screen Meta's Embedded Signup popup shows.
24065
24174
  *
@@ -27269,6 +27378,118 @@ export type UpdateConnectWelcomeScreenResponse = (ConnectWelcomeScreen);
27269
27378
 
27270
27379
  export type UpdateConnectWelcomeScreenError = (ErrorResponse | unknown);
27271
27380
 
27381
+ export type ListOAuthAppsData = {
27382
+ query?: {
27383
+ /**
27384
+ * `pagination.nextCursor` from the previous page.
27385
+ */
27386
+ cursor?: string;
27387
+ limit?: number;
27388
+ };
27389
+ };
27390
+
27391
+ export type ListOAuthAppsResponse = ({
27392
+ apps: Array<OAuthApp>;
27393
+ pagination: {
27394
+ /**
27395
+ * Null on the last page.
27396
+ */
27397
+ nextCursor: (string) | null;
27398
+ };
27399
+ platforms: Array<OAuthAppSetup>;
27400
+ });
27401
+
27402
+ export type ListOAuthAppsError = (ErrorResponse);
27403
+
27404
+ export type CreateOAuthAppData = {
27405
+ body: {
27406
+ /**
27407
+ * One of the platforms listed in `platforms` of GET /v1/connect/oauth-apps.
27408
+ */
27409
+ platform: string;
27410
+ label: string;
27411
+ clientId: string;
27412
+ clientSecret: string;
27413
+ /**
27414
+ * Areas this app requests. Defaults to every area the platform supports; an area the platform cannot request separately is a 400.
27415
+ */
27416
+ scopeAreas?: Array<('posting' | 'analytics' | 'comments' | 'messaging' | 'ads')>;
27417
+ };
27418
+ };
27419
+
27420
+ export type CreateOAuthAppResponse = ({
27421
+ app: OAuthApp;
27422
+ });
27423
+
27424
+ export type CreateOAuthAppError = (ErrorResponse | unknown);
27425
+
27426
+ export type GetOAuthAppData = {
27427
+ path: {
27428
+ appId: string;
27429
+ };
27430
+ };
27431
+
27432
+ export type GetOAuthAppResponse = ({
27433
+ app: OAuthApp;
27434
+ });
27435
+
27436
+ export type GetOAuthAppError = (ErrorResponse | {
27437
+ error?: string;
27438
+ });
27439
+
27440
+ export type UpdateOAuthAppData = {
27441
+ body: {
27442
+ label?: string;
27443
+ clientSecret?: string;
27444
+ /**
27445
+ * Replaces the areas new connects request. Accounts already connected keep what they were granted until they reconnect.
27446
+ */
27447
+ scopeAreas?: Array<('posting' | 'analytics' | 'comments' | 'messaging' | 'ads')>;
27448
+ };
27449
+ path: {
27450
+ appId: string;
27451
+ };
27452
+ };
27453
+
27454
+ export type UpdateOAuthAppResponse = ({
27455
+ app: OAuthApp;
27456
+ });
27457
+
27458
+ export type UpdateOAuthAppError = (ErrorResponse | unknown | {
27459
+ error?: string;
27460
+ });
27461
+
27462
+ export type DeleteOAuthAppData = {
27463
+ path: {
27464
+ appId: string;
27465
+ };
27466
+ query?: {
27467
+ confirm?: boolean;
27468
+ };
27469
+ };
27470
+
27471
+ export type DeleteOAuthAppResponse = ({
27472
+ disconnectedAccounts: number;
27473
+ });
27474
+
27475
+ export type DeleteOAuthAppError = (ErrorResponse | unknown | {
27476
+ error?: string;
27477
+ });
27478
+
27479
+ export type TestOAuthAppData = {
27480
+ path: {
27481
+ appId: string;
27482
+ };
27483
+ };
27484
+
27485
+ export type TestOAuthAppResponse = ({
27486
+ app: OAuthApp;
27487
+ });
27488
+
27489
+ export type TestOAuthAppError = (ErrorResponse | {
27490
+ error?: string;
27491
+ });
27492
+
27272
27493
  export type GetPendingOAuthDataData = {
27273
27494
  query: {
27274
27495
  /**
@@ -31025,7 +31246,7 @@ export type CreateWebhookSettingsData = {
31025
31246
  /**
31026
31247
  * Events to subscribe to (at least one required)
31027
31248
  */
31028
- 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.ads.initial_sync_completed' | 'account.ads.sync_failed' | 'account.ads.sync_recovered' | 'analytics.synced' | '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' | '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' | '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')>;
31249
+ 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' | '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' | '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' | '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')>;
31029
31250
  /**
31030
31251
  * Enable or disable webhook delivery. Defaults to `true` when omitted.
31031
31252
  */
@@ -31091,7 +31312,7 @@ export type UpdateWebhookSettingsData = {
31091
31312
  /**
31092
31313
  * Events to subscribe to. Must contain at least one event if provided.
31093
31314
  */
31094
- 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.ads.initial_sync_completed' | 'account.ads.sync_failed' | 'account.ads.sync_recovered' | 'analytics.synced' | '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' | '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' | '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')>;
31315
+ 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' | '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' | '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' | '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')>;
31095
31316
  /**
31096
31317
  * Enable or disable webhook delivery
31097
31318
  */
@@ -31261,7 +31482,7 @@ export type TestWebhookData = {
31261
31482
  /**
31262
31483
  * Send a sample payload of this event instead of `webhook.test`. The sample is marked with `test: true`.
31263
31484
  */
31264
- 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.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' | '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' | 'call.received' | 'call.ended' | 'call.failed' | 'call.permission_request' | 'comment.received' | 'review.new' | 'review.updated' | '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' | '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';
31485
+ 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' | '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' | 'call.received' | 'call.ended' | 'call.failed' | 'call.permission_request' | 'comment.received' | 'review.new' | 'review.updated' | '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' | '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';
31265
31486
  };
31266
31487
  };
31267
31488