meta-cloud-api 3.2.0 → 3.4.0

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.
@@ -1,4 +1,4 @@
1
- import { AudioMediaTypesEnum, BusinessVerticalEnum, ButtonPositionEnum, CategoryEnum, ComponentTypesEnum, ConversationTypesEnum, CurrencyCodesEnum, DataLocalizationRegionEnum, DocumentMediaTypesEnum, HttpMethodsEnum, ImageMediaTypesEnum, InteractiveTypesEnum, LanguagesEnum, MessageTypesEnum, ParametersTypesEnum, ReferralSourceTypesEnum, RequestCodeMethodsEnum, StatusEnum, StickerMediaTypesEnum, SubTypeEnum, SystemChangeTypesEnum, TemplateStatusEnum, VideoMediaTypesEnum, WabaConfigEnum, WebhookTypesEnum } from "./enums.js";
1
+ import { AudioMediaTypesEnum, BusinessVerticalEnum, ButtonPositionEnum, CategoryEnum, ComponentTypesEnum, ConversationTypesEnum, CurrencyCodesEnum, DataLocalizationRegionEnum, DocumentMediaTypesEnum, HttpMethodsEnum, ImageMediaTypesEnum, InteractiveTypesEnum, LanguagesEnum, MessageCategoryEnum, MessageTypesEnum, ParametersTypesEnum, ReferralSourceTypesEnum, RequestCodeMethodsEnum, StatusEnum, StickerMediaTypesEnum, SubTypeEnum, SystemChangeTypesEnum, TemplateStatusEnum, VideoMediaTypesEnum, WabaConfigEnum, WebhookTypesEnum } from "./enums.js";
2
2
  import { IncomingHttpHeaders, IncomingMessage } from "node:http";
3
3
 
4
4
  //#region src/types/request.d.ts
@@ -718,6 +718,32 @@ type CallPermissionRequestInteractiveObject = {
718
718
  header?: HeaderObject;
719
719
  action: CallPermissionRequestActionObject;
720
720
  };
721
+ type VoiceCallParameters = {
722
+ /** Button label. Maximum 20 characters. Defaults to "Call on WhatsApp" when omitted. */display_text?: string; /** Active duration in minutes, 1 to 43200 (30 days). Defaults to 10080 (7 days). */
723
+ ttl_minutes?: number;
724
+ };
725
+ type VoiceCallActionObject = {
726
+ name: 'voice_call';
727
+ parameters?: VoiceCallParameters;
728
+ };
729
+ /**
730
+ * "Call on WhatsApp" voice call button, a Direct Send interactive type.
731
+ *
732
+ * Send it on its own with a top-level `category: 'utility'`; it cannot be combined
733
+ * with CTA URL or reply buttons, and footers are not allowed. Calling must be
734
+ * enabled on the business phone number first, otherwise the send fails with
735
+ * error `138000`.
736
+ *
737
+ * @see {@link https://developers.facebook.com/documentation/business-messaging/whatsapp/direct-send/supported-message-types | Direct Send supported message types}
738
+ */
739
+ type VoiceCallInteractiveObject = {
740
+ type: InteractiveTypesEnum.VoiceCall | 'voice_call';
741
+ body: SimpleTextObject; /** Text header only, maximum 60 characters. */
742
+ header?: HeaderObject & {
743
+ type: 'text';
744
+ };
745
+ action: VoiceCallActionObject;
746
+ };
721
747
  type CtaUrlParameters = {
722
748
  display_text: string;
723
749
  url: string;
@@ -846,7 +872,7 @@ type CarouselInteractiveObject = {
846
872
  body: SimpleTextObject;
847
873
  action: CarouselActionObject;
848
874
  };
849
- type InteractiveObject = ButtonInteractiveObject | ListInteractiveObject | ProductInteractiveObject | ProductListInteractiveObject | CatalogMessageInteractiveObject | CallPermissionRequestInteractiveObject | CtaUrlInteractiveObject | CarouselInteractiveObject | LocationRequestInteractiveObject | AddressMessageInteractiveObject | FlowInteractiveObject;
875
+ type InteractiveObject = ButtonInteractiveObject | ListInteractiveObject | ProductInteractiveObject | ProductListInteractiveObject | CatalogMessageInteractiveObject | CallPermissionRequestInteractiveObject | CtaUrlInteractiveObject | VoiceCallInteractiveObject | CarouselInteractiveObject | LocationRequestInteractiveObject | AddressMessageInteractiveObject | FlowInteractiveObject;
850
876
  //#endregion
851
877
  //#region src/api/messages/types/reaction.d.ts
852
878
  interface ReactionParams {
@@ -998,17 +1024,49 @@ type ConTextObject = {
998
1024
  message_id: string;
999
1025
  };
1000
1026
  type MessageRecipientType = 'individual' | 'group';
1027
+ /**
1028
+ * Category of a Direct Send message. Omitting it is equivalent to `'service'`
1029
+ * and keeps the existing free-form Cloud API send behavior.
1030
+ *
1031
+ * @see {@link https://developers.facebook.com/documentation/business-messaging/whatsapp/direct-send/send-utility-and-authentication-messages | Direct Send}
1032
+ */
1033
+ type DirectSendCategory = MessageCategoryEnum | 'authentication' | 'service' | 'utility';
1034
+ /**
1035
+ * Optional Direct Send configuration.
1036
+ *
1037
+ * Supplying `template_name` makes message-to-template attribution predictable:
1038
+ * Direct Send creates or reuses a template with that exact name instead of
1039
+ * auto-matching. Supported for `category: 'utility'` only.
1040
+ *
1041
+ * @see {@link https://developers.facebook.com/documentation/business-messaging/whatsapp/direct-send/business-named-templates | Business-named templates}
1042
+ */
1043
+ type DirectSendConfig = {
1044
+ /**
1045
+ * Unique template name within the WABA.
1046
+ * Lowercase alphanumeric characters and underscores only (`^[a-z0-9_]+$`), max 512 characters.
1047
+ */
1048
+ template_name?: string;
1049
+ };
1001
1050
  type MessageRequestBody<T extends MessageTypesEnum> = GeneralMessageBody & {
1002
1051
  recipient_type?: MessageRecipientType;
1003
1052
  to: string;
1004
1053
  context?: ConTextObject;
1005
1054
  type?: T;
1055
+ category?: DirectSendCategory;
1056
+ direct_send_config?: DirectSendConfig;
1006
1057
  };
1007
1058
  interface MessageRequestParams<T> {
1008
1059
  body: T;
1009
1060
  to: string;
1010
1061
  recipientType?: MessageRecipientType;
1011
1062
  replyMessageId?: string;
1063
+ /**
1064
+ * Direct Send category. Set to `'utility'` or `'authentication'` to send a
1065
+ * business-initiated message without a pre-approved template.
1066
+ */
1067
+ category?: DirectSendCategory;
1068
+ /** Direct Send configuration, applied only when {@link MessageRequestParams.category} is set. */
1069
+ directSendConfig?: DirectSendConfig;
1012
1070
  }
1013
1071
  interface StatusParams {
1014
1072
  status: StatusObject['status'];
@@ -1049,6 +1107,9 @@ declare class MessagesClass extends BaseClass {
1049
1107
  interactiveCtaUrl(params: MessageRequestParams<InteractiveObject & {
1050
1108
  type: InteractiveTypesEnum.CtaUrl;
1051
1109
  }>): Promise<MessagesResponse>;
1110
+ interactiveVoiceCall(params: MessageRequestParams<InteractiveObject & {
1111
+ type: InteractiveTypesEnum.VoiceCall;
1112
+ }>): Promise<MessagesResponse>;
1052
1113
  interactiveLocationRequest(params: MessageRequestParams<InteractiveObject & {
1053
1114
  type: InteractiveTypesEnum.LocationRequest;
1054
1115
  }>): Promise<MessagesResponse>;
@@ -1081,7 +1142,19 @@ declare class MessagesClass extends BaseClass {
1081
1142
  * @see https://developers.facebook.com/documentation/business-messaging/whatsapp/marketing-messages/send-marketing-messages/
1082
1143
  */
1083
1144
  type MarketingMessageRequest = {
1084
- to: string;
1145
+ /**
1146
+ * WhatsApp user phone number. Omit when addressing the user by `recipient`
1147
+ * (BSUID) instead.
1148
+ */
1149
+ to?: string;
1150
+ /**
1151
+ * Business-scoped user ID (BSUID) or parent BSUID of the recipient, used in
1152
+ * place of `to` for individual messages.
1153
+ *
1154
+ * Templates carrying `bid_spec` (max price) cannot be sent to a BSUID
1155
+ * recipient — that combination fails with error `131062`.
1156
+ */
1157
+ recipient?: string;
1085
1158
  template: MessageTemplateObject<ComponentTypesEnum>;
1086
1159
  message_activity_sharing?: boolean;
1087
1160
  product_policy?: 'CLOUD_API_FALLBACK' | 'STRICT';
@@ -1732,11 +1805,31 @@ type ProductCarouselCard = {
1732
1805
  components: TemplateHeader[];
1733
1806
  };
1734
1807
  type ComponentTypes = TemplateHeader | TemplateBody | TemplateFooter | TemplateButtons | TemplateLimitedTimeOffer | TemplateCarousel;
1808
+ /**
1809
+ * Max price ("bid") configuration for a marketing template.
1810
+ *
1811
+ * Max price is set per template, and templates carrying it must be sent through
1812
+ * the Marketing Messages API (`POST /{PHONE_NUMBER_ID}/marketing_messages`).
1813
+ * Sending one through the Cloud API `/messages` endpoint fails with error
1814
+ * `131061`; sending one to a BSUID recipient fails with error `131062`.
1815
+ * Omitting `bid_spec` leaves the template on standard rate card pricing.
1816
+ *
1817
+ * @see https://developers.facebook.com/documentation/business-messaging/whatsapp/marketing-messages/send-marketing-messages/
1818
+ */
1819
+ type TemplateBidSpec = {
1820
+ /**
1821
+ * Maximum price per 1,000 message deliveries, in the smallest unit of the
1822
+ * WABA's currency. Multiply the desired per-delivery price by 1,000 after
1823
+ * converting it to the smallest unit.
1824
+ */
1825
+ bid_amount: number;
1826
+ };
1735
1827
  type TemplateRequestBody = GeneralRequestBody & {
1736
1828
  name: string;
1737
1829
  language: LanguagesEnum;
1738
1830
  category?: CategoryEnum;
1739
- components?: ComponentTypes[];
1831
+ components?: ComponentTypes[]; /** Max price configuration. Marketing templates only, MM API sends only. */
1832
+ bid_spec?: TemplateBidSpec;
1740
1833
  };
1741
1834
  type TemplateResponse = {
1742
1835
  id: string;
@@ -3059,12 +3152,25 @@ interface OrderMessage extends BaseMessage {
3059
3152
  }>;
3060
3153
  };
3061
3154
  }
3155
+ /**
3156
+ * System message webhook (identity changes).
3157
+ *
3158
+ * - `user_changed_number` — the user's phone number changed; `wa_id` holds the new number.
3159
+ * - `user_identity_changed` — the user's identity (profile) changed.
3160
+ * - `user_changed_user_id` — the user's business-scoped user ID (BSUID) changed;
3161
+ * `user_id` / `parent_user_id` hold the new BSUID / parent BSUID.
3162
+ *
3163
+ * Note: there is no subscribable `user_id_update` webhook field. BSUID changes are
3164
+ * delivered as these `messages` field system messages.
3165
+ */
3062
3166
  interface SystemMessage extends BaseMessage {
3063
3167
  type: MessageTypesEnum.System;
3064
3168
  system: {
3065
- body: string;
3066
- wa_id: string;
3067
- type: 'user_changed_number';
3169
+ /** Human-readable description, e.g. "User A changed from <OLD_BSUID> to <NEW_BSUID>" */body: string; /** New WhatsApp ID of the user */
3170
+ wa_id: string; /** New business-scoped user ID, present for `user_changed_user_id` */
3171
+ user_id?: string; /** New parent business-scoped user ID, present for `user_changed_user_id` */
3172
+ parent_user_id?: string;
3173
+ type: 'user_changed_number' | 'user_identity_changed' | 'user_changed_user_id';
3068
3174
  };
3069
3175
  }
3070
3176
  /**
@@ -3365,6 +3471,39 @@ interface MessageEchoesWebhookValue {
3365
3471
  value: MessageEchoesValue;
3366
3472
  }
3367
3473
  //#endregion
3474
+ //#region src/core/webhook/types/status.d.ts
3475
+ interface StatusWebhook {
3476
+ id: string;
3477
+ status: 'sent' | 'delivered' | 'read' | 'failed';
3478
+ timestamp: string;
3479
+ recipient_id: string;
3480
+ recipient_type?: 'group';
3481
+ recipient_participant_id?: string;
3482
+ recipient_identity_key_hash?: string;
3483
+ biz_opaque_callback_data?: string;
3484
+ /**
3485
+ * ID of the template used to send a Direct Send message.
3486
+ * Present only on statuses for messages sent with a `category` field.
3487
+ *
3488
+ * @see {@link https://developers.facebook.com/documentation/business-messaging/whatsapp/direct-send/supported-message-types | Direct Send}
3489
+ */
3490
+ template_id?: string;
3491
+ conversation?: {
3492
+ id: string;
3493
+ expiration_timestamp?: string;
3494
+ origin: {
3495
+ type: 'authentication' | 'authentication_international' | 'marketing' | 'marketing_lite' | 'referral_conversion' | 'service' | 'utility';
3496
+ };
3497
+ };
3498
+ pricing?: {
3499
+ billable: boolean;
3500
+ pricing_model: 'CBP' | 'PMP';
3501
+ type: 'regular' | 'free_customer_service' | 'free_entry_point';
3502
+ category: 'authentication' | 'authentication_international' | 'marketing' | 'marketing_lite' | 'referral_conversion' | 'service' | 'utility';
3503
+ };
3504
+ errors?: Array<WebhookError>;
3505
+ }
3506
+ //#endregion
3368
3507
  //#region src/core/webhook/types/messaging.d.ts
3369
3508
  interface MessagingHandoverControlPassed {
3370
3509
  /** Optional metadata string passed with the handover */
@@ -3390,19 +3529,86 @@ interface MessagingHandoversWebhookValue {
3390
3529
  field: 'messaging_handovers';
3391
3530
  value: MessagingHandoversValue;
3392
3531
  }
3532
+ /**
3533
+ * Flow definition attached to a standby message echo, present only for flow
3534
+ * message echoes.
3535
+ */
3536
+ interface StandbyMessageEchoFlow {
3537
+ id: string;
3538
+ name: string;
3539
+ status: string;
3540
+ categories: string[];
3541
+ }
3542
+ /**
3543
+ * A single echoed outbound message observed while in standby. Carries the raw
3544
+ * Send Message API request body used by the active handler, not rendered content.
3545
+ */
3546
+ interface StandbyMessageEcho {
3547
+ /** WhatsApp message ID (wamid.*) of the echoed outbound message */
3548
+ id: string;
3549
+ /** Unix timestamp (seconds, as a string) of when the message was sent */
3550
+ timestamp: string;
3551
+ /**
3552
+ * The exact Send Message API request body used to send the message, e.g.
3553
+ * `{ messaging_product, to, recipient_type?, type, [type]: {...}, context? }`.
3554
+ * For template messages the send-time variable values live here under `template`.
3555
+ */
3556
+ message: {
3557
+ messaging_product: 'whatsapp';
3558
+ recipient_type?: string;
3559
+ to: string;
3560
+ type: string;
3561
+ context?: {
3562
+ message_id: string;
3563
+ };
3564
+ [key: string]: unknown;
3565
+ };
3566
+ /**
3567
+ * Full unhydrated template definition (layout with placeholders). Present only
3568
+ * for template message echoes, alongside `message`.
3569
+ */
3570
+ template?: Record<string, unknown>;
3571
+ /** Full flow definition. Present only for flow message echoes, alongside `message`. */
3572
+ flow?: StandbyMessageEchoFlow;
3573
+ }
3574
+ /**
3575
+ * The standby event payload nested under `value.standby`. Contains exactly one of
3576
+ * `messages`, `message_echoes`, or `statuses` (with `contacts` alongside `messages`).
3577
+ */
3578
+ interface StandbyEvent {
3579
+ /** Contact profiles for the users in an inbound standby message event */
3580
+ contacts?: WebhookContact[];
3581
+ /** Inbound messages received while your app is not the active handler */
3582
+ messages?: WhatsAppMessage[];
3583
+ /** Echoes of outbound messages sent by the active handler (e.g. Meta Business Agent) */
3584
+ message_echoes?: StandbyMessageEcho[];
3585
+ /** Delivery/read status updates for messages sent by the active handler */
3586
+ statuses?: StatusWebhook[];
3587
+ }
3393
3588
  interface StandbyValue {
3394
3589
  messaging_product: 'whatsapp';
3395
- [key: string]: unknown;
3590
+ metadata: WebhookMetadata;
3591
+ /** The standby event payload; carries exactly one event array */
3592
+ standby: StandbyEvent;
3396
3593
  }
3397
3594
  interface StandbyWebhookValue {
3398
3595
  field: 'standby';
3399
3596
  value: StandbyValue;
3400
3597
  }
3401
3598
  interface UserPreferenceEntry {
3402
- /** WhatsApp ID of the user */
3403
- wa_id: string;
3404
- /** Meta user ID (e.g. "US.1234567") */
3405
- user_id: string;
3599
+ /** WhatsApp ID of the user. May be absent when only BSUIDs are shared. */
3600
+ wa_id?: string;
3601
+ /**
3602
+ * Business-scoped user ID the preference applies to (e.g. "US.1234567").
3603
+ * The preference is always scoped to this ID.
3604
+ */
3605
+ user_id?: string;
3606
+ /**
3607
+ * Parent business-scoped user ID of the user, when the user is enrolled in a
3608
+ * parent BSUID. Informational only — preferences are never applied at the
3609
+ * parent BSUID level.
3610
+ */
3611
+ parent_user_id?: string;
3406
3612
  /** Human-readable description of the preference change */
3407
3613
  detail: string;
3408
3614
  /**
@@ -3412,9 +3618,9 @@ interface UserPreferenceEntry {
3412
3618
  category: 'marketing_messages' | string;
3413
3619
  /**
3414
3620
  * New preference value.
3415
- * Known value: "stop" (user opted out)
3621
+ * Known values: "stop" (user opted out), "resume" (user opted back in)
3416
3622
  */
3417
- value: 'stop' | string;
3623
+ value: 'stop' | 'resume' | string;
3418
3624
  /** Unix timestamp of when the preference was changed */
3419
3625
  timestamp: number;
3420
3626
  /** Signup ID associated with the preference, if applicable */
@@ -3425,10 +3631,12 @@ interface UserPreferencesContact {
3425
3631
  /** Display name of the user */name: string; /** WhatsApp username, if available */
3426
3632
  username?: string;
3427
3633
  };
3428
- /** WhatsApp ID of the user */
3429
- wa_id: string;
3430
- /** Meta user ID */
3634
+ /** WhatsApp ID of the user. May be absent when only BSUIDs are shared. */
3635
+ wa_id?: string;
3636
+ /** Business-scoped user ID of the user */
3431
3637
  user_id?: string;
3638
+ /** Parent business-scoped user ID of the user, when enrolled */
3639
+ parent_user_id?: string;
3432
3640
  }
3433
3641
  interface UserPreferencesValue {
3434
3642
  messaging_product: 'whatsapp';
@@ -3541,32 +3749,6 @@ interface SecurityWebhookValue {
3541
3749
  value: SecurityValue;
3542
3750
  }
3543
3751
  //#endregion
3544
- //#region src/core/webhook/types/status.d.ts
3545
- interface StatusWebhook {
3546
- id: string;
3547
- status: 'sent' | 'delivered' | 'read' | 'failed';
3548
- timestamp: string;
3549
- recipient_id: string;
3550
- recipient_type?: 'group';
3551
- recipient_participant_id?: string;
3552
- recipient_identity_key_hash?: string;
3553
- biz_opaque_callback_data?: string;
3554
- conversation?: {
3555
- id: string;
3556
- expiration_timestamp?: string;
3557
- origin: {
3558
- type: 'authentication' | 'authentication_international' | 'marketing' | 'marketing_lite' | 'referral_conversion' | 'service' | 'utility';
3559
- };
3560
- };
3561
- pricing?: {
3562
- billable: boolean;
3563
- pricing_model: 'CBP' | 'PMP';
3564
- type: 'regular' | 'free_customer_service' | 'free_entry_point';
3565
- category: 'authentication' | 'authentication_international' | 'marketing' | 'marketing_lite' | 'referral_conversion' | 'service' | 'utility';
3566
- };
3567
- errors?: Array<WebhookError>;
3568
- }
3569
- //#endregion
3570
3752
  //#region src/core/webhook/types/template.d.ts
3571
3753
  /**
3572
3754
  * Message template status events
@@ -3759,7 +3941,7 @@ type MetaErrorData = {
3759
3941
  interface MetaError extends Error {
3760
3942
  error: MetaErrorData;
3761
3943
  }
3762
- declare const WHATSAPP_ERROR_CODES: readonly [0, 1, 2, 3, 4, 10, 33, 100, 190, 200, 299, 368, 613, 80007, 130429, 130472, 130497, 131000, 131005, 131008, 131009, 131016, 131020, 131021, 131026, 131030, 131031, 131037, 131041, 131042, 131044, 131045, 131047, 131048, 131049, 131050, 131051, 131052, 131053, 131055, 131056, 131057, 131059, 131201, 131202, 131203, 131204, 131207, 131208, 131209, 131210, 131211, 131212, 131213, 131214, 131215, 132000, 132001, 132005, 132007, 132008, 132012, 132015, 132016, 132068, 132069, 133000, 133004, 133005, 133006, 133008, 133009, 133010, 133015, 133016, 134011, 134100, 134101, 134102, 135000, 137000, 138000, 138001, 138002, 138003, 138004, 138005, 138006, 138007, 138009, 138012, 138013, 138018, 139000, 139001, 139002, 139003, 139004, 139100, 139101, 139102, 139103, 147005, 200005, 200006, 200007, 1752041, 2388001, 2388012, 2388019, 2388040, 2388047, 2388072, 2388073, 2388091, 2388093, 2388103, 2388293, 2388299, 2494100, 2593079, 2593085, 2593107, 2593108];
3944
+ declare const WHATSAPP_ERROR_CODES: readonly [0, 1, 2, 3, 4, 10, 33, 100, 190, 200, 299, 368, 613, 80007, 130429, 130472, 130497, 131000, 131005, 131008, 131009, 131016, 131020, 131021, 131026, 131030, 131031, 131037, 131041, 131042, 131044, 131045, 131047, 131048, 131049, 131050, 131051, 131052, 131053, 131055, 131056, 131057, 131059, 131061, 131062, 131201, 131202, 131203, 131204, 131207, 131208, 131209, 131210, 131211, 131212, 131213, 131214, 131215, 132000, 132001, 132005, 132007, 132008, 132012, 132015, 132016, 132068, 132069, 133000, 133004, 133005, 133006, 133008, 133009, 133010, 133015, 133016, 134011, 134100, 134101, 134102, 135000, 137000, 138000, 138001, 138002, 138003, 138004, 138005, 138006, 138007, 138009, 138012, 138013, 138018, 139000, 139001, 139002, 139003, 139004, 139100, 139101, 139102, 139103, 147005, 200005, 200006, 200007, 1752041, 2388001, 2388012, 2388019, 2388040, 2388047, 2388072, 2388073, 2388091, 2388093, 2388103, 2388293, 2388299, 2494100, 2593079, 2593085, 2593107, 2593108];
3763
3945
  type ApiPermissionErrorCode = number;
3764
3946
  type WhatsAppErrorCode = (typeof WHATSAPP_ERROR_CODES)[number] | ApiPermissionErrorCode;
3765
3947
  //#endregion
@@ -4179,6 +4361,12 @@ declare const Category: {
4179
4361
  readonly Utility: "UTILITY";
4180
4362
  };
4181
4363
  type CategoryType = (typeof Category)[keyof typeof Category];
4364
+ declare const MessageCategory: {
4365
+ readonly Authentication: "authentication";
4366
+ readonly Service: "service";
4367
+ readonly Utility: "utility";
4368
+ };
4369
+ type MessageCategoryType = (typeof MessageCategory)[keyof typeof MessageCategory];
4182
4370
  declare const TemplateStatus: {
4183
4371
  readonly Approved: "APPROVED";
4184
4372
  readonly Pending: "PENDING";
@@ -4243,6 +4431,7 @@ declare const InteractiveTypes: {
4243
4431
  readonly LocationRequest: "location_request_message";
4244
4432
  readonly AddressMessage: "address_message";
4245
4433
  readonly Flow: "flow";
4434
+ readonly VoiceCall: "voice_call";
4246
4435
  };
4247
4436
  type InteractiveTypesType = (typeof InteractiveTypes)[keyof typeof InteractiveTypes];
4248
4437
  declare const ButtonPosition: {
@@ -4332,8 +4521,11 @@ declare const WebhookTypes: {
4332
4521
  };
4333
4522
  type WebhookTypesType = (typeof WebhookTypes)[keyof typeof WebhookTypes];
4334
4523
  declare const SystemChangeTypes: {
4335
- readonly CustomerChangedNumber: "customer_changed_number";
4524
+ /** @deprecated Meta renamed this to `user_changed_number`. Use `UserChangedNumber`. */readonly CustomerChangedNumber: "customer_changed_number"; /** @deprecated Meta renamed this to `user_identity_changed`. Use `UserIdentityChanged`. */
4336
4525
  readonly CustomerIdentityChanged: "customer_identity_changed";
4526
+ readonly UserChangedNumber: "user_changed_number";
4527
+ readonly UserIdentityChanged: "user_identity_changed"; /** The user's business-scoped user ID (BSUID) changed. */
4528
+ readonly UserChangedUserId: "user_changed_user_id";
4337
4529
  };
4338
4530
  type SystemChangeTypesType = (typeof SystemChangeTypes)[keyof typeof SystemChangeTypes];
4339
4531
  declare const ReferralSourceTypes: {
@@ -4464,5 +4656,5 @@ interface LoggerInterface {
4464
4656
  debug(...data: any[]): void;
4465
4657
  }
4466
4658
  //#endregion
4467
- export { type AcceptCallRequest, type AccountMode, type ApiPermissionErrorCode, type AudioMediaObject, AudioMediaTypes, AudioMediaTypesEnum, AudioMediaTypesType, type AudioMessage, type AuthenticationTemplateOptions, type BaseClass, type BlockUsersClass, type BlockUsersResponse, type BlockedUserInfo, type BodyOptions, type BusinessProfileClass, type BusinessProfileData, type BusinessProfileField, type BusinessProfileFieldsParam, type BusinessProfileResponse, BusinessVerticalEnum, type ButtonMessage, type ButtonOptions, ButtonPosition, ButtonPositionEnum, ButtonPositionType, type CallAction, type CallActionResponse, type CallHours, type CallHoursDay, type CallHoursStatus, type CallIconVisibility, type CallPermission, type CallPermissionAction, type CallPermissionLimit, type CallPermissionsResponse, type CallSdpType, type CallSession, type CallbackPermissionStatus, type CallingClass, type CallingSettings, type CallingSettingsResponse, type CallingStatus, CarouselCard, type CarouselOptions, CatalogButton, type CatalogTemplateOptions, Category, CategoryEnum, CategoryType, type CodeVerificationStatus, type CommerceClass, type CommerceSetting, type CommerceSettingsResponse, ComponentType, ComponentTypeType, ComponentTypes, ComponentTypesEnum, type ContactObject, type ContactsMessage, ConversationTypes, ConversationTypesEnum, ConversationTypesType, CopyCodeButton, type CouponTemplateOptions, type CreateFlowResponse, type CreateQrCodeRequest, CurrencyCodesEnum, type CurrencyParameter, type Cursors, DataLocalizationRegion, DataLocalizationRegionEnum, DataLocalizationRegionType, type DateTimeParameter, type DocumentMediaObject, DocumentMediaTypes, DocumentMediaTypesEnum, DocumentMediaTypesType, type DocumentMessage, type EncryptionPublicKeyResponse, type ErrorWebhookValue, type FailedUserInfo, type Flow, FlowActionEnum, type FlowAsset, type FlowAssetsResponse, FlowButton, FlowCategoryEnum, type FlowClass, type FlowDataExchangeRequest, type FlowDataExchangeResponse, type FlowDecryptedRequestResponse, type FlowEncryptedRequestPayload, type FlowEndpointRequest, type FlowEndpointResponse, type FlowErrorNotificationRequest, type FlowErrorNotificationResponse, type FlowHealthCheckRequest, type FlowHealthCheckResponse, type FlowHttpRequest, type FlowMigrationFailure, type FlowMigrationResponse, type FlowMigrationResult, type FlowPreview, type FlowPreviewResponse, FlowStatusEnum, type FlowSuccessScreenResponse, type FlowType, FlowTypeEnum, type FlowValidationError, type FlowValidationErrorPointer, type FlowsListResponse, type FooterOptions, type GeneralHeaderInterface, type GeneralMessageBody, type GeneralRequestBody, type GroupCreateRequest, type GroupCreateResponse, type GroupInfoField, type GroupInfoFieldsParam, type GroupInfoResponse, type GroupInviteLinkResponse, type GroupJoinApprovalMode, type GroupJoinRequest, type GroupJoinRequestError, type GroupJoinRequestFailure, type GroupJoinRequestsActionResponse, type GroupJoinRequestsResponse, type GroupListParams, type GroupListResponse, type GroupMessage, type GroupParticipant, type GroupSettingsResponse, type GroupsClass, type HeaderOptions, type HealthStatus, type HealthStatusEntity, type HolidaySchedule, type HostPlatform, HttpMethods, HttpMethodsEnum, HttpMethodsType, type HttpsClientClass, type HttpsClientResponseClass, type ImageMediaObject, ImageMediaTypes, ImageMediaTypesEnum, ImageMediaTypesType, type ImageMessage, type InitiateCallRequest, type InitiateCallResponse, type InteractiveButtonReplyMessage, type InteractiveListReplyMessage, type InteractiveMessage, type InteractiveObject, InteractiveTypes, InteractiveTypesEnum, InteractiveTypesType, Languages, LanguagesEnum, LanguagesType, type LimitedTimeOfferOptions, type LimitedTimeOfferTemplateOptions, type ListBlockedUsersParams, type ListBlockedUsersResponse, type LocationMessage, type LocationObject, type LocationParameter, type LoggerInterface, MPMButton, type MPMTemplateOptions, type MarketingMessageRequest, type MarketingMessagesClass, type MediaCardCarouselTemplateOptions, MediaCarouselCard, MediaClass, type MediaParameter, MediaResponse, MediasResponse, type MessageRecipientType, type MessageRequestBody, type MessageRequestParams, type MessageTemplateObject, MessageTypes, MessageTypesEnum, MessageTypesType, type MessageWebhookValue, type MessagesClass, type MessagesResponse, type MessagingLimitTier, type MetaError, type MetaErrorData, type MetaErrorDetail, OTPButton, type OTPTemplateOptions, type OrderMessage, type Pagination, type PaginationCursors, type Paging, ParametersTypes, ParametersTypesEnum, ParametersTypesType, type PaymentConfiguration, type PaymentConfigurationCode, type PaymentConfigurationCreateRequest, type PaymentConfigurationCreateResponse, type PaymentConfigurationDeleteRequest, type PaymentConfigurationOauthLinkRequest, type PaymentConfigurationOauthLinkResponse, type PaymentConfigurationProvider, type PaymentConfigurationStatus, type PaymentConfigurationUpdateRequest, type PaymentConfigurationUpdateResponse, type PaymentConfigurationsResponse, type PaymentsClass, PhoneNumberButton, type PhoneNumberClass, type PhoneNumberField, type PhoneNumberFieldsParam, type PhoneNumberFilter, type PhoneNumberResponse, type PhoneNumberSort, type PhoneNumberStatus, type PhoneNumbersListParams, type PhoneNumbersResponse, type PlatformType, type PreAcceptCallRequest, type ProductCardCarouselTemplateOptions, ProductCarouselCard, type ProductParameter, type ProductSection, type QrCodeClass, type QrCodeResponse, type QrCodesResponse, type QualityRating, type QualityScore, QuickReplyButton, type ReactionMessage, type ReactionParams, ReferralSourceTypes, ReferralSourceTypesEnum, ReferralSourceTypesType, type RegistrationClass, type RegistrationRequest, type RejectCallRequest, RequestCodeMethods, RequestCodeMethodsEnum, RequestCodeMethodsType, type RequestVerificationCodeRequest, type RequesterClass, type RequesterResponseInterface, type ResponseData, type ResponseHeaderValue, type ResponseHeaders, type ResponseJSONBody, type ResponsePagination, type ResponseSuccess, SPMButton, type SPMTemplateOptions, type SipServer, type SipSettings, type SipStatus, Status, StatusEnum, type StatusParams, type StatusResponse, StatusType, type StatusWebhook, type StatusWebhookValue, type StickerMediaObject, StickerMediaTypes, StickerMediaTypesEnum, StickerMediaTypesType, type StickerMessage, SubType, SubTypeEnum, SubTypeType, SystemChangeTypes, SystemChangeTypesEnum, SystemChangeTypesType, type SystemMessage, TemplateBody, TemplateButton, TemplateButtons, TemplateCarousel, TemplateClass, TemplateDeleteParams, TemplateFooter, TemplateFormat, TemplateGetParams, TemplateHeader, TemplateHeaderExample, TemplateLimitedTimeOffer, type TemplateOptions, type TemplateParameter, TemplateRequestBody, TemplateResponse, TemplateStatus, TemplateStatusEnum, TemplateStatusType, type TerminateCallRequest, type TextMessage, type TextMessageParams, type TextObject, type TextParameter, type Throughput, type ThroughputLevel, type TwoStepVerificationClass, type TwoStepVerificationParams, type TwoStepVerificationRequest, URLButton, type UnifiedCertStatus, type UnsupportedMessage, type UpdateBusinessProfileRequest, type UpdateCallingSettingsRequest, type UpdateCommerceSettingsRequest, type UpdateFlowResponse, type UpdateGroupSettingsRequest, type UpdateQrCodeRequest, type UpdateWabaSubscription, UploadMediaResponse, type ValidateFlowJsonResponse, type VerifyCodeRequest, type VideoMediaObject, VideoMediaTypes, VideoMediaTypesEnum, VideoMediaTypesType, type VideoMessage, type WABAClass, type WabaAccount, type WabaAccountFields, type WabaAccountFieldsParam, WabaAccountReviewStatus, WabaAccountStatus, WabaBusinessVerificationStatus, WabaConfigEnum, type WabaConfigType, type WabaHealthStatus, WabaHealthStatusCanSendMessage, type WabaHealthStatusEntity, type WabaHealthStatusError, type WabaSubscription, type WabaSubscriptions, type WebhookContact, type WebhookEvent, type WebhookMessage, type WebhookPayload, WebhookTypes, WebhookTypesEnum, WebhookTypesType, type WebhookValue, type WeeklyOperatingHours, type WhatsAppConfig, type WhatsAppErrorCode, type WhatsAppMessage };
4659
+ export { type AcceptCallRequest, type AccountMode, type ApiPermissionErrorCode, type AudioMediaObject, AudioMediaTypes, AudioMediaTypesEnum, AudioMediaTypesType, type AudioMessage, type AuthenticationTemplateOptions, type BaseClass, type BlockUsersClass, type BlockUsersResponse, type BlockedUserInfo, type BodyOptions, type BusinessProfileClass, type BusinessProfileData, type BusinessProfileField, type BusinessProfileFieldsParam, type BusinessProfileResponse, BusinessVerticalEnum, type ButtonMessage, type ButtonOptions, ButtonPosition, ButtonPositionEnum, ButtonPositionType, type CallAction, type CallActionResponse, type CallHours, type CallHoursDay, type CallHoursStatus, type CallIconVisibility, type CallPermission, type CallPermissionAction, type CallPermissionLimit, type CallPermissionsResponse, type CallSdpType, type CallSession, type CallbackPermissionStatus, type CallingClass, type CallingSettings, type CallingSettingsResponse, type CallingStatus, CarouselCard, type CarouselOptions, CatalogButton, type CatalogTemplateOptions, Category, CategoryEnum, CategoryType, type CodeVerificationStatus, type CommerceClass, type CommerceSetting, type CommerceSettingsResponse, ComponentType, ComponentTypeType, ComponentTypes, ComponentTypesEnum, type ContactObject, type ContactsMessage, ConversationTypes, ConversationTypesEnum, ConversationTypesType, CopyCodeButton, type CouponTemplateOptions, type CreateFlowResponse, type CreateQrCodeRequest, CurrencyCodesEnum, type CurrencyParameter, type Cursors, DataLocalizationRegion, DataLocalizationRegionEnum, DataLocalizationRegionType, type DateTimeParameter, type DocumentMediaObject, DocumentMediaTypes, DocumentMediaTypesEnum, DocumentMediaTypesType, type DocumentMessage, type EncryptionPublicKeyResponse, type ErrorWebhookValue, type FailedUserInfo, type Flow, FlowActionEnum, type FlowAsset, type FlowAssetsResponse, FlowButton, FlowCategoryEnum, type FlowClass, type FlowDataExchangeRequest, type FlowDataExchangeResponse, type FlowDecryptedRequestResponse, type FlowEncryptedRequestPayload, type FlowEndpointRequest, type FlowEndpointResponse, type FlowErrorNotificationRequest, type FlowErrorNotificationResponse, type FlowHealthCheckRequest, type FlowHealthCheckResponse, type FlowHttpRequest, type FlowMigrationFailure, type FlowMigrationResponse, type FlowMigrationResult, type FlowPreview, type FlowPreviewResponse, FlowStatusEnum, type FlowSuccessScreenResponse, type FlowType, FlowTypeEnum, type FlowValidationError, type FlowValidationErrorPointer, type FlowsListResponse, type FooterOptions, type GeneralHeaderInterface, type GeneralMessageBody, type GeneralRequestBody, type GroupCreateRequest, type GroupCreateResponse, type GroupInfoField, type GroupInfoFieldsParam, type GroupInfoResponse, type GroupInviteLinkResponse, type GroupJoinApprovalMode, type GroupJoinRequest, type GroupJoinRequestError, type GroupJoinRequestFailure, type GroupJoinRequestsActionResponse, type GroupJoinRequestsResponse, type GroupListParams, type GroupListResponse, type GroupMessage, type GroupParticipant, type GroupSettingsResponse, type GroupsClass, type HeaderOptions, type HealthStatus, type HealthStatusEntity, type HolidaySchedule, type HostPlatform, HttpMethods, HttpMethodsEnum, HttpMethodsType, type HttpsClientClass, type HttpsClientResponseClass, type ImageMediaObject, ImageMediaTypes, ImageMediaTypesEnum, ImageMediaTypesType, type ImageMessage, type InitiateCallRequest, type InitiateCallResponse, type InteractiveButtonReplyMessage, type InteractiveListReplyMessage, type InteractiveMessage, type InteractiveObject, InteractiveTypes, InteractiveTypesEnum, InteractiveTypesType, Languages, LanguagesEnum, LanguagesType, type LimitedTimeOfferOptions, type LimitedTimeOfferTemplateOptions, type ListBlockedUsersParams, type ListBlockedUsersResponse, type LocationMessage, type LocationObject, type LocationParameter, type LoggerInterface, MPMButton, type MPMTemplateOptions, type MarketingMessageRequest, type MarketingMessagesClass, type MediaCardCarouselTemplateOptions, MediaCarouselCard, MediaClass, type MediaParameter, MediaResponse, MediasResponse, MessageCategory, MessageCategoryEnum, MessageCategoryType, type MessageRecipientType, type MessageRequestBody, type MessageRequestParams, type MessageTemplateObject, MessageTypes, MessageTypesEnum, MessageTypesType, type MessageWebhookValue, type MessagesClass, type MessagesResponse, type MessagingLimitTier, type MetaError, type MetaErrorData, type MetaErrorDetail, OTPButton, type OTPTemplateOptions, type OrderMessage, type Pagination, type PaginationCursors, type Paging, ParametersTypes, ParametersTypesEnum, ParametersTypesType, type PaymentConfiguration, type PaymentConfigurationCode, type PaymentConfigurationCreateRequest, type PaymentConfigurationCreateResponse, type PaymentConfigurationDeleteRequest, type PaymentConfigurationOauthLinkRequest, type PaymentConfigurationOauthLinkResponse, type PaymentConfigurationProvider, type PaymentConfigurationStatus, type PaymentConfigurationUpdateRequest, type PaymentConfigurationUpdateResponse, type PaymentConfigurationsResponse, type PaymentsClass, PhoneNumberButton, type PhoneNumberClass, type PhoneNumberField, type PhoneNumberFieldsParam, type PhoneNumberFilter, type PhoneNumberResponse, type PhoneNumberSort, type PhoneNumberStatus, type PhoneNumbersListParams, type PhoneNumbersResponse, type PlatformType, type PreAcceptCallRequest, type ProductCardCarouselTemplateOptions, ProductCarouselCard, type ProductParameter, type ProductSection, type QrCodeClass, type QrCodeResponse, type QrCodesResponse, type QualityRating, type QualityScore, QuickReplyButton, type ReactionMessage, type ReactionParams, ReferralSourceTypes, ReferralSourceTypesEnum, ReferralSourceTypesType, type RegistrationClass, type RegistrationRequest, type RejectCallRequest, RequestCodeMethods, RequestCodeMethodsEnum, RequestCodeMethodsType, type RequestVerificationCodeRequest, type RequesterClass, type RequesterResponseInterface, type ResponseData, type ResponseHeaderValue, type ResponseHeaders, type ResponseJSONBody, type ResponsePagination, type ResponseSuccess, SPMButton, type SPMTemplateOptions, type SipServer, type SipSettings, type SipStatus, Status, StatusEnum, type StatusParams, type StatusResponse, StatusType, type StatusWebhook, type StatusWebhookValue, type StickerMediaObject, StickerMediaTypes, StickerMediaTypesEnum, StickerMediaTypesType, type StickerMessage, SubType, SubTypeEnum, SubTypeType, SystemChangeTypes, SystemChangeTypesEnum, SystemChangeTypesType, type SystemMessage, TemplateBidSpec, TemplateBody, TemplateButton, TemplateButtons, TemplateCarousel, TemplateClass, TemplateDeleteParams, TemplateFooter, TemplateFormat, TemplateGetParams, TemplateHeader, TemplateHeaderExample, TemplateLimitedTimeOffer, type TemplateOptions, type TemplateParameter, TemplateRequestBody, TemplateResponse, TemplateStatus, TemplateStatusEnum, TemplateStatusType, type TerminateCallRequest, type TextMessage, type TextMessageParams, type TextObject, type TextParameter, type Throughput, type ThroughputLevel, type TwoStepVerificationClass, type TwoStepVerificationParams, type TwoStepVerificationRequest, URLButton, type UnifiedCertStatus, type UnsupportedMessage, type UpdateBusinessProfileRequest, type UpdateCallingSettingsRequest, type UpdateCommerceSettingsRequest, type UpdateFlowResponse, type UpdateGroupSettingsRequest, type UpdateQrCodeRequest, type UpdateWabaSubscription, UploadMediaResponse, type ValidateFlowJsonResponse, type VerifyCodeRequest, type VideoMediaObject, VideoMediaTypes, VideoMediaTypesEnum, VideoMediaTypesType, type VideoMessage, type WABAClass, type WabaAccount, type WabaAccountFields, type WabaAccountFieldsParam, WabaAccountReviewStatus, WabaAccountStatus, WabaBusinessVerificationStatus, WabaConfigEnum, type WabaConfigType, type WabaHealthStatus, WabaHealthStatusCanSendMessage, type WabaHealthStatusEntity, type WabaHealthStatusError, type WabaSubscription, type WabaSubscriptions, type WebhookContact, type WebhookEvent, type WebhookMessage, type WebhookPayload, WebhookTypes, WebhookTypesEnum, WebhookTypesType, type WebhookValue, type WeeklyOperatingHours, type WhatsAppConfig, type WhatsAppErrorCode, type WhatsAppMessage };
4468
4660
  //# sourceMappingURL=index.d.ts.map