@zernio/node 0.2.310 → 0.2.312
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.
- package/README.md +70 -0
- package/dist/index.d.mts +2498 -463
- package/dist/index.d.ts +2498 -463
- package/dist/index.js +412 -9
- package/dist/index.mjs +412 -9
- package/package.json +1 -1
- package/src/client.ts +135 -3
- package/src/generated/sdk.gen.ts +1057 -29
- package/src/generated/types.gen.ts +2612 -488
package/src/generated/sdk.gen.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// This file is auto-generated by @hey-api/openapi-ts
|
|
2
2
|
|
|
3
3
|
import { createClient, createConfig, type OptionsLegacyParser, formDataBodySerializer } from '@hey-api/client-fetch';
|
|
4
|
-
import type { ValidatePostLengthData, ValidatePostLengthError, ValidatePostLengthResponse, ValidatePostData, ValidatePostError, ValidatePostResponse, ValidateMediaData, ValidateMediaError, ValidateMediaResponse, ValidateSubredditData, ValidateSubredditError, ValidateSubredditResponse, GetAnalyticsData, GetAnalyticsError, GetAnalyticsResponse, GetYouTubeChannelInsightsData, GetYouTubeChannelInsightsError, GetYouTubeChannelInsightsResponse, GetLinkedInOrgAggregateAnalyticsData, GetLinkedInOrgAggregateAnalyticsError, GetLinkedInOrgAggregateAnalyticsResponse, GetTikTokAccountInsightsData, GetTikTokAccountInsightsError, GetTikTokAccountInsightsResponse, GetYouTubeDailyViewsData, GetYouTubeDailyViewsError, GetYouTubeDailyViewsResponse, GetYouTubeVideoRetentionData, GetYouTubeVideoRetentionError, GetYouTubeVideoRetentionResponse, GetFacebookPageInsightsData, GetFacebookPageInsightsError, GetFacebookPageInsightsResponse, GetInstagramAccountInsightsData, GetInstagramAccountInsightsError, GetInstagramAccountInsightsResponse, GetInstagramFollowerHistoryData, GetInstagramFollowerHistoryError, GetInstagramFollowerHistoryResponse, GetInstagramDemographicsData, GetInstagramDemographicsError, GetInstagramDemographicsResponse, GetYouTubeDemographicsData, GetYouTubeDemographicsError, GetYouTubeDemographicsResponse, GetDailyMetricsData, GetDailyMetricsError, GetDailyMetricsResponse, GetBestTimeToPostData, GetBestTimeToPostError, GetBestTimeToPostResponse, GetContentDecayData, GetContentDecayError, GetContentDecayResponse, GetPostingFrequencyData, GetPostingFrequencyError, GetPostingFrequencyResponse, GetPostTimelineData, GetPostTimelineError, GetPostTimelineResponse, GetGoogleBusinessPerformanceData, GetGoogleBusinessPerformanceError, GetGoogleBusinessPerformanceResponse, GetGoogleBusinessSearchKeywordsData, GetGoogleBusinessSearchKeywordsError, GetGoogleBusinessSearchKeywordsResponse, GetInboxVolumeData, GetInboxVolumeError, GetInboxVolumeResponse, GetInboxHeatmapData, GetInboxHeatmapError, GetInboxHeatmapResponse, GetInboxSourceBreakdownData, GetInboxSourceBreakdownError, GetInboxSourceBreakdownResponse, GetInboxResponseTimeData, GetInboxResponseTimeError, GetInboxResponseTimeResponse, GetInboxTopAccountsData, GetInboxTopAccountsError, GetInboxTopAccountsResponse, ListInboxConversationAnalyticsData, ListInboxConversationAnalyticsError, ListInboxConversationAnalyticsResponse, GetInboxConversationAnalyticsData, GetInboxConversationAnalyticsError, GetInboxConversationAnalyticsResponse, ListAccountGroupsError, ListAccountGroupsResponse, CreateAccountGroupData, CreateAccountGroupError, CreateAccountGroupResponse, UpdateAccountGroupData, UpdateAccountGroupError, UpdateAccountGroupResponse, DeleteAccountGroupData, DeleteAccountGroupError, DeleteAccountGroupResponse, GetMediaPresignedUrlData, GetMediaPresignedUrlError, GetMediaPresignedUrlResponse, SearchRedditData, SearchRedditError, SearchRedditResponse, GetRedditFeedData, GetRedditFeedError, GetRedditFeedResponse, GetXApiPricingError, GetXApiPricingResponse, GetUsageStatsData, GetUsageStatsError, GetUsageStatsResponse, ListPostsData, ListPostsError, ListPostsResponse, CreatePostData, CreatePostError, CreatePostResponse, SyncExternalPostsData, SyncExternalPostsError, SyncExternalPostsResponse, GetPostData, GetPostError, GetPostResponse, UpdatePostData, UpdatePostError, UpdatePostResponse, DeletePostData, DeletePostError, DeletePostResponse, BulkUploadPostsData, BulkUploadPostsError, BulkUploadPostsResponse, RetryPostData, RetryPostError, RetryPostResponse, UnpublishPostData, UnpublishPostError, UnpublishPostResponse, EditPostData, EditPostError, EditPostResponse, UpdatePostMetadataData, UpdatePostMetadataError, UpdatePostMetadataResponse, ListUsersError, ListUsersResponse, GetUserData, GetUserError, GetUserResponse, ListProfilesData, ListProfilesError, ListProfilesResponse, CreateProfileData, CreateProfileError, CreateProfileResponse, GetProfileData, GetProfileError, GetProfileResponse, UpdateProfileData, UpdateProfileError, UpdateProfileResponse, DeleteProfileData, DeleteProfileError, DeleteProfileResponse, ListAccountsData, ListAccountsError, ListAccountsResponse, GetFollowerStatsData, GetFollowerStatsError, GetFollowerStatsResponse, UpdateAccountData, UpdateAccountError, UpdateAccountResponse, MoveAccountToProfileData, MoveAccountToProfileError, MoveAccountToProfileResponse, DeleteAccountData, DeleteAccountError, DeleteAccountResponse, GetAllAccountsHealthData, GetAllAccountsHealthError, GetAllAccountsHealthResponse, GetAccountHealthData, GetAccountHealthError, GetAccountHealthResponse, GetTikTokCreatorInfoData, GetTikTokCreatorInfoError, GetTikTokCreatorInfoResponse, ListApiKeysError, ListApiKeysResponse, CreateApiKeyData, CreateApiKeyError, CreateApiKeyResponse, DeleteApiKeyData, DeleteApiKeyError, DeleteApiKeyResponse, CreateInviteTokenData, CreateInviteTokenError, CreateInviteTokenResponse, GetConnectUrlData, GetConnectUrlError, GetConnectUrlResponse, HandleOAuthCallbackData, HandleOAuthCallbackError, HandleOAuthCallbackResponse, ConnectAdsData, ConnectAdsError, ConnectAdsResponse, ConfigureTikTokAdsBrandIdentityData, ConfigureTikTokAdsBrandIdentityError, ConfigureTikTokAdsBrandIdentityResponse, ListFacebookPagesData, ListFacebookPagesError, ListFacebookPagesResponse, SelectFacebookPageData, SelectFacebookPageError, SelectFacebookPageResponse, ListGoogleBusinessLocationsData, ListGoogleBusinessLocationsError, ListGoogleBusinessLocationsResponse, SelectGoogleBusinessLocationData, SelectGoogleBusinessLocationError, SelectGoogleBusinessLocationResponse, GetGoogleBusinessReviewsData, GetGoogleBusinessReviewsError, GetGoogleBusinessReviewsResponse, GetGoogleBusinessVerificationsData, GetGoogleBusinessVerificationsError, GetGoogleBusinessVerificationsResponse, StartGoogleBusinessVerificationData, StartGoogleBusinessVerificationError, StartGoogleBusinessVerificationResponse, FetchGoogleBusinessVerificationOptionsData, FetchGoogleBusinessVerificationOptionsError, FetchGoogleBusinessVerificationOptionsResponse, CompleteGoogleBusinessVerificationData, CompleteGoogleBusinessVerificationError, CompleteGoogleBusinessVerificationResponse, GetGoogleBusinessFoodMenusData, GetGoogleBusinessFoodMenusError, GetGoogleBusinessFoodMenusResponse, UpdateGoogleBusinessFoodMenusData, UpdateGoogleBusinessFoodMenusError, UpdateGoogleBusinessFoodMenusResponse, GetGoogleBusinessLocationDetailsData, GetGoogleBusinessLocationDetailsError, GetGoogleBusinessLocationDetailsResponse, UpdateGoogleBusinessLocationDetailsData, UpdateGoogleBusinessLocationDetailsError, UpdateGoogleBusinessLocationDetailsResponse, ListGoogleBusinessMediaData, ListGoogleBusinessMediaError, ListGoogleBusinessMediaResponse, CreateGoogleBusinessMediaData, CreateGoogleBusinessMediaError, CreateGoogleBusinessMediaResponse, DeleteGoogleBusinessMediaData, DeleteGoogleBusinessMediaError, DeleteGoogleBusinessMediaResponse, GetGmbAttributeMetadataData, GetGmbAttributeMetadataError, GetGmbAttributeMetadataResponse, GetGoogleBusinessAttributesData, GetGoogleBusinessAttributesError, GetGoogleBusinessAttributesResponse, UpdateGoogleBusinessAttributesData, UpdateGoogleBusinessAttributesError, UpdateGoogleBusinessAttributesResponse, ListGoogleBusinessPlaceActionsData, ListGoogleBusinessPlaceActionsError, ListGoogleBusinessPlaceActionsResponse, CreateGoogleBusinessPlaceActionData, CreateGoogleBusinessPlaceActionError, CreateGoogleBusinessPlaceActionResponse, DeleteGoogleBusinessPlaceActionData, DeleteGoogleBusinessPlaceActionError, DeleteGoogleBusinessPlaceActionResponse, UpdateGoogleBusinessPlaceActionData, UpdateGoogleBusinessPlaceActionError, UpdateGoogleBusinessPlaceActionResponse, GetGoogleBusinessServicesData, GetGoogleBusinessServicesError, GetGoogleBusinessServicesResponse, UpdateGoogleBusinessServicesData, UpdateGoogleBusinessServicesError, UpdateGoogleBusinessServicesResponse, BatchGetGoogleBusinessReviewsData, BatchGetGoogleBusinessReviewsError, BatchGetGoogleBusinessReviewsResponse, ReplyToGoogleBusinessReviewData, ReplyToGoogleBusinessReviewError, ReplyToGoogleBusinessReviewResponse, DeleteGoogleBusinessReviewReplyData, DeleteGoogleBusinessReviewReplyError, DeleteGoogleBusinessReviewReplyResponse, GetPendingOAuthDataData, GetPendingOAuthDataError, GetPendingOAuthDataResponse, ListLinkedInOrganizationsData, ListLinkedInOrganizationsError, ListLinkedInOrganizationsResponse, SelectLinkedInOrganizationData, SelectLinkedInOrganizationError, SelectLinkedInOrganizationResponse, ListPinterestBoardsForSelectionData, ListPinterestBoardsForSelectionError, ListPinterestBoardsForSelectionResponse, SelectPinterestBoardData, SelectPinterestBoardError, SelectPinterestBoardResponse, ListSnapchatProfilesData, ListSnapchatProfilesError, ListSnapchatProfilesResponse, SelectSnapchatProfileData, SelectSnapchatProfileError, SelectSnapchatProfileResponse, ConnectBlueskyCredentialsData, ConnectBlueskyCredentialsError, ConnectBlueskyCredentialsResponse, ConnectWhatsAppCredentialsData, ConnectWhatsAppCredentialsError, ConnectWhatsAppCredentialsResponse, ListWhatsAppPhoneNumbersData, ListWhatsAppPhoneNumbersError, ListWhatsAppPhoneNumbersResponse, CompleteWhatsAppPhoneSelectionData, CompleteWhatsAppPhoneSelectionError, CompleteWhatsAppPhoneSelectionResponse, GetTelegramConnectStatusData, GetTelegramConnectStatusError, GetTelegramConnectStatusResponse, InitiateTelegramConnectData, InitiateTelegramConnectError, InitiateTelegramConnectResponse, CompleteTelegramConnectData, CompleteTelegramConnectError, CompleteTelegramConnectResponse, GetFacebookPagesData, GetFacebookPagesError, GetFacebookPagesResponse, UpdateFacebookPageData, UpdateFacebookPageError, UpdateFacebookPageResponse, GetLinkedInOrganizationsData, GetLinkedInOrganizationsError, GetLinkedInOrganizationsResponse, GetLinkedInAggregateAnalyticsData, GetLinkedInAggregateAnalyticsError, GetLinkedInAggregateAnalyticsResponse, GetLinkedInPostAnalyticsData, GetLinkedInPostAnalyticsError, GetLinkedInPostAnalyticsResponse, GetLinkedInPostReactionsData, GetLinkedInPostReactionsError, GetLinkedInPostReactionsResponse, UpdateLinkedInOrganizationData, UpdateLinkedInOrganizationError, UpdateLinkedInOrganizationResponse, GetLinkedInMentionsData, GetLinkedInMentionsError, GetLinkedInMentionsResponse, ListInstagramStoriesData, ListInstagramStoriesError, ListInstagramStoriesResponse, GetInstagramStoryInsightsData, GetInstagramStoryInsightsError, GetInstagramStoryInsightsResponse, GetPinterestBoardsData, GetPinterestBoardsError, GetPinterestBoardsResponse, UpdatePinterestBoardsData, UpdatePinterestBoardsError, UpdatePinterestBoardsResponse, GetYoutubePlaylistsData, GetYoutubePlaylistsError, GetYoutubePlaylistsResponse, UpdateYoutubeDefaultPlaylistData, UpdateYoutubeDefaultPlaylistError, UpdateYoutubeDefaultPlaylistResponse, GetGmbLocationsData, GetGmbLocationsError, GetGmbLocationsResponse, UpdateGmbLocationData, UpdateGmbLocationError, UpdateGmbLocationResponse, GetRedditSubredditsData, GetRedditSubredditsError, GetRedditSubredditsResponse, UpdateRedditSubredditsData, UpdateRedditSubredditsError, UpdateRedditSubredditsResponse, GetRedditFlairsData, GetRedditFlairsError, GetRedditFlairsResponse, GetDiscordSettingsData, GetDiscordSettingsError, GetDiscordSettingsResponse, UpdateDiscordSettingsData, UpdateDiscordSettingsError, UpdateDiscordSettingsResponse, GetDiscordChannelsData, GetDiscordChannelsError, GetDiscordChannelsResponse, SendDiscordDirectMessageData, SendDiscordDirectMessageError, SendDiscordDirectMessageResponse, ListDiscordGuildRolesData, ListDiscordGuildRolesError, ListDiscordGuildRolesResponse, ListDiscordGuildMembersData, ListDiscordGuildMembersError, ListDiscordGuildMembersResponse, AddDiscordMemberRoleData, AddDiscordMemberRoleError, AddDiscordMemberRoleResponse, RemoveDiscordMemberRoleData, RemoveDiscordMemberRoleError, RemoveDiscordMemberRoleResponse, ListDiscordPinnedMessagesData, ListDiscordPinnedMessagesError, ListDiscordPinnedMessagesResponse, PinDiscordMessageData, PinDiscordMessageError, PinDiscordMessageResponse, UnpinDiscordMessageData, UnpinDiscordMessageError, UnpinDiscordMessageResponse, ListDiscordScheduledEventsData, ListDiscordScheduledEventsError, ListDiscordScheduledEventsResponse, CreateDiscordScheduledEventData, CreateDiscordScheduledEventError, CreateDiscordScheduledEventResponse, GetDiscordScheduledEventData, GetDiscordScheduledEventError, GetDiscordScheduledEventResponse, UpdateDiscordScheduledEventData, UpdateDiscordScheduledEventError, UpdateDiscordScheduledEventResponse, DeleteDiscordScheduledEventData, DeleteDiscordScheduledEventError, DeleteDiscordScheduledEventResponse, ListQueueSlotsData, ListQueueSlotsError, ListQueueSlotsResponse, CreateQueueSlotData, CreateQueueSlotError, CreateQueueSlotResponse, UpdateQueueSlotData, UpdateQueueSlotError, UpdateQueueSlotResponse, DeleteQueueSlotData, DeleteQueueSlotError, DeleteQueueSlotResponse, PreviewQueueData, PreviewQueueError, PreviewQueueResponse, GetNextQueueSlotData, GetNextQueueSlotError, GetNextQueueSlotResponse, GetWebhookSettingsError, GetWebhookSettingsResponse, CreateWebhookSettingsData, CreateWebhookSettingsError, CreateWebhookSettingsResponse, UpdateWebhookSettingsData, UpdateWebhookSettingsError, UpdateWebhookSettingsResponse, DeleteWebhookSettingsData, DeleteWebhookSettingsError, DeleteWebhookSettingsResponse, GetWebhookLogsData, GetWebhookLogsError, GetWebhookLogsResponse, TestWebhookData, TestWebhookError, TestWebhookResponse, ListLogsData, ListLogsError, ListLogsResponse, ListInboxConversationsData, ListInboxConversationsError, ListInboxConversationsResponse, CreateInboxConversationData, CreateInboxConversationError, CreateInboxConversationResponse, GetInboxConversationData, GetInboxConversationError, GetInboxConversationResponse, UpdateInboxConversationData, UpdateInboxConversationError, UpdateInboxConversationResponse, GetInboxConversationMessagesData, GetInboxConversationMessagesError, GetInboxConversationMessagesResponse, SendInboxMessageData, SendInboxMessageError, SendInboxMessageResponse, EditInboxMessageData, EditInboxMessageError, EditInboxMessageResponse, DeleteInboxMessageData, DeleteInboxMessageError, DeleteInboxMessageResponse, SendTypingIndicatorData, SendTypingIndicatorError, SendTypingIndicatorResponse, MarkConversationReadData, MarkConversationReadError, MarkConversationReadResponse, AddMessageReactionData, AddMessageReactionError, AddMessageReactionResponse, RemoveMessageReactionData, RemoveMessageReactionError, RemoveMessageReactionResponse, UploadMediaDirectData, UploadMediaDirectError, UploadMediaDirectResponse, GetMessengerMenuData, GetMessengerMenuError, GetMessengerMenuResponse, SetMessengerMenuData, SetMessengerMenuError, SetMessengerMenuResponse, DeleteMessengerMenuData, DeleteMessengerMenuError, DeleteMessengerMenuResponse, GetInstagramIceBreakersData, GetInstagramIceBreakersError, GetInstagramIceBreakersResponse, SetInstagramIceBreakersData, SetInstagramIceBreakersError, SetInstagramIceBreakersResponse, DeleteInstagramIceBreakersData, DeleteInstagramIceBreakersError, DeleteInstagramIceBreakersResponse, GetTelegramCommandsData, GetTelegramCommandsError, GetTelegramCommandsResponse, SetTelegramCommandsData, SetTelegramCommandsError, SetTelegramCommandsResponse, DeleteTelegramCommandsData, DeleteTelegramCommandsError, DeleteTelegramCommandsResponse, ListInboxCommentsData, ListInboxCommentsError, ListInboxCommentsResponse, GetInboxPostCommentsData, GetInboxPostCommentsError, GetInboxPostCommentsResponse, ReplyToInboxPostData, ReplyToInboxPostError, ReplyToInboxPostResponse, DeleteInboxCommentData, DeleteInboxCommentError, DeleteInboxCommentResponse, HideInboxCommentData, HideInboxCommentError, HideInboxCommentResponse, UnhideInboxCommentData, UnhideInboxCommentError, UnhideInboxCommentResponse, LikeInboxCommentData, LikeInboxCommentError, LikeInboxCommentResponse, UnlikeInboxCommentData, UnlikeInboxCommentError, UnlikeInboxCommentResponse, SendPrivateReplyToCommentData, SendPrivateReplyToCommentError, SendPrivateReplyToCommentResponse, RetweetPostData, RetweetPostError, RetweetPostResponse, UndoRetweetData, UndoRetweetError, UndoRetweetResponse, BookmarkPostData, BookmarkPostError, BookmarkPostResponse, RemoveBookmarkData, RemoveBookmarkError, RemoveBookmarkResponse, FollowUserData, FollowUserError, FollowUserResponse, UnfollowUserData, UnfollowUserError, UnfollowUserResponse, ListInboxMentionsData, ListInboxMentionsError, ListInboxMentionsResponse, ListInboxReviewsData, ListInboxReviewsError, ListInboxReviewsResponse, ReplyToInboxReviewData, ReplyToInboxReviewError, ReplyToInboxReviewResponse, DeleteInboxReviewReplyData, DeleteInboxReviewReplyError, DeleteInboxReviewReplyResponse, GetWhatsAppTemplatesData, GetWhatsAppTemplatesError, GetWhatsAppTemplatesResponse, CreateWhatsAppTemplateData, CreateWhatsAppTemplateError, CreateWhatsAppTemplateResponse, GetWhatsAppTemplateData, GetWhatsAppTemplateError, GetWhatsAppTemplateResponse, UpdateWhatsAppTemplateData, UpdateWhatsAppTemplateError, UpdateWhatsAppTemplateResponse, DeleteWhatsAppTemplateData, DeleteWhatsAppTemplateError, DeleteWhatsAppTemplateResponse, GetWhatsAppCallingConfigData, GetWhatsAppCallingConfigError, GetWhatsAppCallingConfigResponse, EnableWhatsAppCallingData, EnableWhatsAppCallingError, EnableWhatsAppCallingResponse, UpdateWhatsAppCallingData, UpdateWhatsAppCallingError, UpdateWhatsAppCallingResponse, DisableWhatsAppCallingData, DisableWhatsAppCallingError, DisableWhatsAppCallingResponse, GetWhatsAppCallPermissionsData, GetWhatsAppCallPermissionsError, GetWhatsAppCallPermissionsResponse, InitiateWhatsAppCallData, InitiateWhatsAppCallError, InitiateWhatsAppCallResponse, ListWhatsAppCallsData, ListWhatsAppCallsError, ListWhatsAppCallsResponse, GetWhatsAppCallData, GetWhatsAppCallError, GetWhatsAppCallResponse, GetWhatsAppCallEstimateData, GetWhatsAppCallEstimateError, GetWhatsAppCallEstimateResponse, GetWhatsAppLibraryTemplateData, GetWhatsAppLibraryTemplateError, GetWhatsAppLibraryTemplateResponse, GetWhatsAppBusinessProfileData, GetWhatsAppBusinessProfileError, GetWhatsAppBusinessProfileResponse, UpdateWhatsAppBusinessProfileData, UpdateWhatsAppBusinessProfileError, UpdateWhatsAppBusinessProfileResponse, UploadWhatsAppProfilePhotoData, UploadWhatsAppProfilePhotoError, UploadWhatsAppProfilePhotoResponse, GetWhatsAppDisplayNameData, GetWhatsAppDisplayNameError, GetWhatsAppDisplayNameResponse, UpdateWhatsAppDisplayNameData, UpdateWhatsAppDisplayNameError, UpdateWhatsAppDisplayNameResponse, GetWhatsappBusinessUsernameData, GetWhatsappBusinessUsernameError, GetWhatsappBusinessUsernameResponse, SetWhatsappBusinessUsernameData, SetWhatsappBusinessUsernameError, SetWhatsappBusinessUsernameResponse, DeleteWhatsappBusinessUsernameData, DeleteWhatsappBusinessUsernameError, DeleteWhatsappBusinessUsernameResponse, GetWhatsappBusinessUsernameSuggestionsData, GetWhatsappBusinessUsernameSuggestionsError, GetWhatsappBusinessUsernameSuggestionsResponse, GetWhatsAppNumberInfoData, GetWhatsAppNumberInfoError, GetWhatsAppNumberInfoResponse, GetWhatsAppBlockStatusData, GetWhatsAppBlockStatusError, GetWhatsAppBlockStatusResponse, GetWhatsAppBlockedUsersData, GetWhatsAppBlockedUsersError, GetWhatsAppBlockedUsersResponse, BlockWhatsAppUsersData, BlockWhatsAppUsersError, BlockWhatsAppUsersResponse, UnblockWhatsAppUsersData, UnblockWhatsAppUsersError, UnblockWhatsAppUsersResponse, GetWhatsAppDatasetData, GetWhatsAppDatasetError, GetWhatsAppDatasetResponse, CreateWhatsAppDatasetData, CreateWhatsAppDatasetError, CreateWhatsAppDatasetResponse, GetWhatsAppPhoneNumbersData, GetWhatsAppPhoneNumbersError, GetWhatsAppPhoneNumbersResponse, PurchaseWhatsAppPhoneNumberData, PurchaseWhatsAppPhoneNumberError, PurchaseWhatsAppPhoneNumberResponse, ListWhatsAppNumberCountriesError, ListWhatsAppNumberCountriesResponse, SearchAvailableWhatsAppNumbersData, SearchAvailableWhatsAppNumbersError, SearchAvailableWhatsAppNumbersResponse, CheckWhatsAppNumberAvailabilityData, CheckWhatsAppNumberAvailabilityError, CheckWhatsAppNumberAvailabilityResponse, GetWhatsAppNumberKycFormData, GetWhatsAppNumberKycFormError, GetWhatsAppNumberKycFormResponse, SubmitWhatsAppNumberKycData, SubmitWhatsAppNumberKycError, SubmitWhatsAppNumberKycResponse, UploadWhatsAppNumberKycDocumentData, UploadWhatsAppNumberKycDocumentError, UploadWhatsAppNumberKycDocumentResponse, ValidateWhatsAppNumberKycAddressData, ValidateWhatsAppNumberKycAddressError, ValidateWhatsAppNumberKycAddressResponse, CreateWhatsAppNumberKycLinkData, CreateWhatsAppNumberKycLinkError, CreateWhatsAppNumberKycLinkResponse, GetWhatsAppNumberRemediationData, GetWhatsAppNumberRemediationError, GetWhatsAppNumberRemediationResponse, RemediateWhatsAppNumberData, RemediateWhatsAppNumberError, RemediateWhatsAppNumberResponse, GetWhatsAppPhoneNumberData, GetWhatsAppPhoneNumberError, GetWhatsAppPhoneNumberResponse, ReleaseWhatsAppPhoneNumberData, ReleaseWhatsAppPhoneNumberError, ReleaseWhatsAppPhoneNumberResponse, ListWhatsAppSandboxSessionsError, ListWhatsAppSandboxSessionsResponse, CreateWhatsAppSandboxSessionData, CreateWhatsAppSandboxSessionError, CreateWhatsAppSandboxSessionResponse, DeleteWhatsAppSandboxSessionData, DeleteWhatsAppSandboxSessionError, DeleteWhatsAppSandboxSessionResponse, ListWhatsAppGroupChatsData, ListWhatsAppGroupChatsError, ListWhatsAppGroupChatsResponse, CreateWhatsAppGroupChatData, CreateWhatsAppGroupChatError, CreateWhatsAppGroupChatResponse, GetWhatsAppGroupChatData, GetWhatsAppGroupChatError, GetWhatsAppGroupChatResponse, UpdateWhatsAppGroupChatData, UpdateWhatsAppGroupChatError, UpdateWhatsAppGroupChatResponse, DeleteWhatsAppGroupChatData, DeleteWhatsAppGroupChatError, DeleteWhatsAppGroupChatResponse, AddWhatsAppGroupParticipantsData, AddWhatsAppGroupParticipantsError, AddWhatsAppGroupParticipantsResponse, RemoveWhatsAppGroupParticipantsData, RemoveWhatsAppGroupParticipantsError, RemoveWhatsAppGroupParticipantsResponse, CreateWhatsAppGroupInviteLinkData, CreateWhatsAppGroupInviteLinkError, CreateWhatsAppGroupInviteLinkResponse, ListWhatsAppGroupJoinRequestsData, ListWhatsAppGroupJoinRequestsError, ListWhatsAppGroupJoinRequestsResponse, ApproveWhatsAppGroupJoinRequestsData, ApproveWhatsAppGroupJoinRequestsError, ApproveWhatsAppGroupJoinRequestsResponse, RejectWhatsAppGroupJoinRequestsData, RejectWhatsAppGroupJoinRequestsError, RejectWhatsAppGroupJoinRequestsResponse, ListWhatsAppFlowsData, ListWhatsAppFlowsError, ListWhatsAppFlowsResponse, CreateWhatsAppFlowData, CreateWhatsAppFlowError, CreateWhatsAppFlowResponse, GetWhatsAppFlowData, GetWhatsAppFlowError, GetWhatsAppFlowResponse, UpdateWhatsAppFlowData, UpdateWhatsAppFlowError, UpdateWhatsAppFlowResponse, DeleteWhatsAppFlowData, DeleteWhatsAppFlowError, DeleteWhatsAppFlowResponse, GetWhatsAppFlowJsonData, GetWhatsAppFlowJsonError, GetWhatsAppFlowJsonResponse, UploadWhatsAppFlowJsonData, UploadWhatsAppFlowJsonError, UploadWhatsAppFlowJsonResponse, GetWhatsAppFlowPreviewData, GetWhatsAppFlowPreviewError, GetWhatsAppFlowPreviewResponse, ListWhatsAppFlowVersionsData, ListWhatsAppFlowVersionsError, ListWhatsAppFlowVersionsResponse, PublishWhatsAppFlowData, PublishWhatsAppFlowError, PublishWhatsAppFlowResponse, DeprecateWhatsAppFlowData, DeprecateWhatsAppFlowError, DeprecateWhatsAppFlowResponse, SendWhatsAppFlowMessageData, SendWhatsAppFlowMessageError, SendWhatsAppFlowMessageResponse, ListWhatsAppFlowResponsesData, ListWhatsAppFlowResponsesError, ListWhatsAppFlowResponsesResponse, ListContactsData, ListContactsError, ListContactsResponse, CreateContactData, CreateContactError, CreateContactResponse, GetContactData, GetContactError, GetContactResponse, UpdateContactData, UpdateContactError, UpdateContactResponse, DeleteContactData, DeleteContactError, DeleteContactResponse, GetContactChannelsData, GetContactChannelsError, GetContactChannelsResponse, BulkCreateContactsData, BulkCreateContactsError, BulkCreateContactsResponse, SetContactFieldValueData, SetContactFieldValueError, SetContactFieldValueResponse, ClearContactFieldValueData, ClearContactFieldValueError, ClearContactFieldValueResponse, ListCustomFieldsData, ListCustomFieldsError, ListCustomFieldsResponse, CreateCustomFieldData, CreateCustomFieldError, CreateCustomFieldResponse, UpdateCustomFieldData, UpdateCustomFieldError, UpdateCustomFieldResponse, DeleteCustomFieldData, DeleteCustomFieldError, DeleteCustomFieldResponse, ListBroadcastsData, ListBroadcastsError, ListBroadcastsResponse, CreateBroadcastData, CreateBroadcastError, CreateBroadcastResponse, GetBroadcastData, GetBroadcastError, GetBroadcastResponse, UpdateBroadcastData, UpdateBroadcastError, UpdateBroadcastResponse, DeleteBroadcastData, DeleteBroadcastError, DeleteBroadcastResponse, SendBroadcastData, SendBroadcastError, SendBroadcastResponse, ScheduleBroadcastData, ScheduleBroadcastError, ScheduleBroadcastResponse, CancelBroadcastData, CancelBroadcastError, CancelBroadcastResponse, ListBroadcastRecipientsData, ListBroadcastRecipientsError, ListBroadcastRecipientsResponse, AddBroadcastRecipientsData, AddBroadcastRecipientsError, AddBroadcastRecipientsResponse, ListWorkflowsData, ListWorkflowsError, ListWorkflowsResponse, CreateWorkflowData, CreateWorkflowError, CreateWorkflowResponse, GetWorkflowData, GetWorkflowError, GetWorkflowResponse, UpdateWorkflowData, UpdateWorkflowError, UpdateWorkflowResponse, DeleteWorkflowData, DeleteWorkflowError, DeleteWorkflowResponse, ActivateWorkflowData, ActivateWorkflowError, ActivateWorkflowResponse, PauseWorkflowData, PauseWorkflowError, PauseWorkflowResponse, ListWorkflowExecutionsData, ListWorkflowExecutionsError, ListWorkflowExecutionsResponse, TriggerWorkflowData, TriggerWorkflowError, TriggerWorkflowResponse, ListWorkflowExecutionEventsData, ListWorkflowExecutionEventsError, ListWorkflowExecutionEventsResponse, DuplicateWorkflowData, DuplicateWorkflowError, DuplicateWorkflowResponse, ListWorkflowVersionsData, ListWorkflowVersionsError, ListWorkflowVersionsResponse, GetWorkflowVersionData, GetWorkflowVersionError, GetWorkflowVersionResponse, RestoreWorkflowVersionData, RestoreWorkflowVersionError, RestoreWorkflowVersionResponse, ListSequencesData, ListSequencesError, ListSequencesResponse, CreateSequenceData, CreateSequenceError, CreateSequenceResponse, GetSequenceData, GetSequenceError, GetSequenceResponse, UpdateSequenceData, UpdateSequenceError, UpdateSequenceResponse, DeleteSequenceData, DeleteSequenceError, DeleteSequenceResponse, ActivateSequenceData, ActivateSequenceError, ActivateSequenceResponse, PauseSequenceData, PauseSequenceError, PauseSequenceResponse, EnrollContactsData, EnrollContactsError, EnrollContactsResponse, UnenrollContactData, UnenrollContactError, UnenrollContactResponse, ListSequenceEnrollmentsData, ListSequenceEnrollmentsError, ListSequenceEnrollmentsResponse, ListCommentAutomationsData, ListCommentAutomationsError, ListCommentAutomationsResponse, CreateCommentAutomationData, CreateCommentAutomationError, CreateCommentAutomationResponse, GetCommentAutomationData, GetCommentAutomationError, GetCommentAutomationResponse, UpdateCommentAutomationData, UpdateCommentAutomationError, UpdateCommentAutomationResponse, DeleteCommentAutomationData, DeleteCommentAutomationError, DeleteCommentAutomationResponse, ListCommentAutomationLogsData, ListCommentAutomationLogsError, ListCommentAutomationLogsResponse, ListAdsData, ListAdsError, ListAdsResponse, ListAdCampaignsData, ListAdCampaignsError, ListAdCampaignsResponse, UpdateAdCampaignStatusData, UpdateAdCampaignStatusError, UpdateAdCampaignStatusResponse, UpdateAdCampaignData, UpdateAdCampaignError, UpdateAdCampaignResponse, DeleteAdCampaignData, DeleteAdCampaignError, DeleteAdCampaignResponse, BulkUpdateAdCampaignStatusData, BulkUpdateAdCampaignStatusError, BulkUpdateAdCampaignStatusResponse, DuplicateAdCampaignData, DuplicateAdCampaignError, DuplicateAdCampaignResponse, UpdateAdSetData, UpdateAdSetError, UpdateAdSetResponse, UpdateAdSetStatusData, UpdateAdSetStatusError, UpdateAdSetStatusResponse, GetAdTreeData, GetAdTreeError, GetAdTreeResponse, GetAdsTimelineData, GetAdsTimelineError, GetAdsTimelineResponse, GetAdData, GetAdError, GetAdResponse, UpdateAdData, UpdateAdError, UpdateAdResponse, DeleteAdData, DeleteAdError, DeleteAdResponse, GetCampaignAnalyticsData, GetCampaignAnalyticsError, GetCampaignAnalyticsResponse, GetAdAnalyticsData, GetAdAnalyticsError, GetAdAnalyticsResponse, GetAdTrackingTagsData, GetAdTrackingTagsError, GetAdTrackingTagsResponse, UpdateAdTrackingTagsData, UpdateAdTrackingTagsError, UpdateAdTrackingTagsResponse, GetAdCommentsData, GetAdCommentsError, GetAdCommentsResponse, ListAdsBusinessCentersData, ListAdsBusinessCentersError, ListAdsBusinessCentersResponse, ListAdAccountsData, ListAdAccountsError, ListAdAccountsResponse, BoostPostData, BoostPostError, BoostPostResponse, CreateStandaloneAdData, CreateStandaloneAdError, CreateStandaloneAdResponse, ListLeadsData, ListLeadsError, ListLeadsResponse, ListLeadFormsData, ListLeadFormsError, ListLeadFormsResponse, CreateLeadFormData, CreateLeadFormError, CreateLeadFormResponse, GetLeadFormData, GetLeadFormError, GetLeadFormResponse, ArchiveLeadFormData, ArchiveLeadFormError, ArchiveLeadFormResponse, ListFormLeadsData, ListFormLeadsError, ListFormLeadsResponse, CreateTestLeadData, CreateTestLeadError, CreateTestLeadResponse, SearchAdInterestsData, SearchAdInterestsError, SearchAdInterestsResponse, SearchAdTargetingData, SearchAdTargetingError, SearchAdTargetingResponse, EstimateAdReachData, EstimateAdReachError, EstimateAdReachResponse, ListAdCatalogsData, ListAdCatalogsError, ListAdCatalogsResponse, ListAdCatalogProductSetsData, ListAdCatalogProductSetsError, ListAdCatalogProductSetsResponse, ListAdAudiencesData, ListAdAudiencesError, ListAdAudiencesResponse, CreateAdAudienceData, CreateAdAudienceError, CreateAdAudienceResponse, GetAdAudienceData, GetAdAudienceError, GetAdAudienceResponse, DeleteAdAudienceData, DeleteAdAudienceError, DeleteAdAudienceResponse, AddUsersToAdAudienceData, AddUsersToAdAudienceError, AddUsersToAdAudienceResponse, GetConversionsQualityData, GetConversionsQualityError, GetConversionsQualityResponse, SendConversionsData, SendConversionsError, SendConversionsResponse, AdjustConversionsData, AdjustConversionsError, AdjustConversionsResponse, ListConversionDestinationsData, ListConversionDestinationsError, ListConversionDestinationsResponse, CreateConversionDestinationData, CreateConversionDestinationError, CreateConversionDestinationResponse, GetConversionDestinationData, GetConversionDestinationError, GetConversionDestinationResponse, UpdateConversionDestinationData, UpdateConversionDestinationError, UpdateConversionDestinationResponse, DeleteConversionDestinationData, DeleteConversionDestinationError, DeleteConversionDestinationResponse, ListConversionAssociationsData, ListConversionAssociationsError, ListConversionAssociationsResponse, AddConversionAssociationsData, AddConversionAssociationsError, AddConversionAssociationsResponse, RemoveConversionAssociationsData, RemoveConversionAssociationsError, RemoveConversionAssociationsResponse, GetConversionMetricsData, GetConversionMetricsError, GetConversionMetricsResponse, ListWhatsAppConversionsData, ListWhatsAppConversionsError, ListWhatsAppConversionsResponse, SendWhatsAppConversionData, SendWhatsAppConversionError, SendWhatsAppConversionResponse, CreateCtwaAdData, CreateCtwaAdError, CreateCtwaAdResponse, ListTrackingTagsData, ListTrackingTagsError, ListTrackingTagsResponse, CreateTrackingTagData, CreateTrackingTagError, CreateTrackingTagResponse, GetTrackingTagData, GetTrackingTagError, GetTrackingTagResponse, UpdateTrackingTagData, UpdateTrackingTagError, UpdateTrackingTagResponse, ListTrackingTagSharedAccountsData, ListTrackingTagSharedAccountsError, ListTrackingTagSharedAccountsResponse, AddTrackingTagSharedAccountData, AddTrackingTagSharedAccountError, AddTrackingTagSharedAccountResponse, RemoveTrackingTagSharedAccountData, RemoveTrackingTagSharedAccountError, RemoveTrackingTagSharedAccountResponse, GetTrackingTagStatsData, GetTrackingTagStatsError, GetTrackingTagStatsResponse } from './types.gen';
|
|
4
|
+
import type { ValidatePostLengthData, ValidatePostLengthError, ValidatePostLengthResponse, ValidatePostData, ValidatePostError, ValidatePostResponse, ValidateMediaData, ValidateMediaError, ValidateMediaResponse, ValidateSubredditData, ValidateSubredditError, ValidateSubredditResponse, GetAnalyticsData, GetAnalyticsError, GetAnalyticsResponse, GetYouTubeChannelInsightsData, GetYouTubeChannelInsightsError, GetYouTubeChannelInsightsResponse, GetLinkedInOrgAggregateAnalyticsData, GetLinkedInOrgAggregateAnalyticsError, GetLinkedInOrgAggregateAnalyticsResponse, GetTikTokAccountInsightsData, GetTikTokAccountInsightsError, GetTikTokAccountInsightsResponse, GetYouTubeDailyViewsData, GetYouTubeDailyViewsError, GetYouTubeDailyViewsResponse, GetYouTubeVideoRetentionData, GetYouTubeVideoRetentionError, GetYouTubeVideoRetentionResponse, GetFacebookPageInsightsData, GetFacebookPageInsightsError, GetFacebookPageInsightsResponse, GetInstagramAccountInsightsData, GetInstagramAccountInsightsError, GetInstagramAccountInsightsResponse, GetInstagramFollowerHistoryData, GetInstagramFollowerHistoryError, GetInstagramFollowerHistoryResponse, GetInstagramDemographicsData, GetInstagramDemographicsError, GetInstagramDemographicsResponse, GetYouTubeDemographicsData, GetYouTubeDemographicsError, GetYouTubeDemographicsResponse, GetDailyMetricsData, GetDailyMetricsError, GetDailyMetricsResponse, GetBestTimeToPostData, GetBestTimeToPostError, GetBestTimeToPostResponse, GetContentDecayData, GetContentDecayError, GetContentDecayResponse, GetPostingFrequencyData, GetPostingFrequencyError, GetPostingFrequencyResponse, GetPostTimelineData, GetPostTimelineError, GetPostTimelineResponse, GetGoogleBusinessPerformanceData, GetGoogleBusinessPerformanceError, GetGoogleBusinessPerformanceResponse, GetGoogleBusinessSearchKeywordsData, GetGoogleBusinessSearchKeywordsError, GetGoogleBusinessSearchKeywordsResponse, GetInboxVolumeData, GetInboxVolumeError, GetInboxVolumeResponse, GetInboxHeatmapData, GetInboxHeatmapError, GetInboxHeatmapResponse, GetInboxSourceBreakdownData, GetInboxSourceBreakdownError, GetInboxSourceBreakdownResponse, GetInboxResponseTimeData, GetInboxResponseTimeError, GetInboxResponseTimeResponse, GetInboxTopAccountsData, GetInboxTopAccountsError, GetInboxTopAccountsResponse, ListInboxConversationAnalyticsData, ListInboxConversationAnalyticsError, ListInboxConversationAnalyticsResponse, GetInboxConversationAnalyticsData, GetInboxConversationAnalyticsError, GetInboxConversationAnalyticsResponse, ListAccountGroupsError, ListAccountGroupsResponse, CreateAccountGroupData, CreateAccountGroupError, CreateAccountGroupResponse, UpdateAccountGroupData, UpdateAccountGroupError, UpdateAccountGroupResponse, DeleteAccountGroupData, DeleteAccountGroupError, DeleteAccountGroupResponse, GetMediaPresignedUrlData, GetMediaPresignedUrlError, GetMediaPresignedUrlResponse, SearchRedditData, SearchRedditError, SearchRedditResponse, GetRedditFeedData, GetRedditFeedError, GetRedditFeedResponse, GetXApiPricingError, GetXApiPricingResponse, GetUsageData, GetUsageError, GetUsageResponse, GetUsageStatsData, GetUsageStatsError, GetUsageStatsResponse, GetCallsUsageData, GetCallsUsageError, GetCallsUsageResponse, GetSmsUsageData, GetSmsUsageError, GetSmsUsageResponse, ListPostsData, ListPostsError, ListPostsResponse, CreatePostData, CreatePostError, CreatePostResponse, SyncExternalPostsData, SyncExternalPostsError, SyncExternalPostsResponse, GetPostData, GetPostError, GetPostResponse, UpdatePostData, UpdatePostError, UpdatePostResponse, DeletePostData, DeletePostError, DeletePostResponse, BulkUploadPostsData, BulkUploadPostsError, BulkUploadPostsResponse, RetryPostData, RetryPostError, RetryPostResponse, UnpublishPostData, UnpublishPostError, UnpublishPostResponse, EditPostData, EditPostError, EditPostResponse, UpdatePostMetadataData, UpdatePostMetadataError, UpdatePostMetadataResponse, ListUsersError, ListUsersResponse, GetUserData, GetUserError, GetUserResponse, ListProfilesData, ListProfilesError, ListProfilesResponse, CreateProfileData, CreateProfileError, CreateProfileResponse, GetProfileData, GetProfileError, GetProfileResponse, UpdateProfileData, UpdateProfileError, UpdateProfileResponse, DeleteProfileData, DeleteProfileError, DeleteProfileResponse, ListAccountsData, ListAccountsError, ListAccountsResponse, GetFollowerStatsData, GetFollowerStatsError, GetFollowerStatsResponse, UpdateAccountData, UpdateAccountError, UpdateAccountResponse, MoveAccountToProfileData, MoveAccountToProfileError, MoveAccountToProfileResponse, DeleteAccountData, DeleteAccountError, DeleteAccountResponse, GetAllAccountsHealthData, GetAllAccountsHealthError, GetAllAccountsHealthResponse, GetAccountHealthData, GetAccountHealthError, GetAccountHealthResponse, GetTikTokCreatorInfoData, GetTikTokCreatorInfoError, GetTikTokCreatorInfoResponse, ListApiKeysError, ListApiKeysResponse, CreateApiKeyData, CreateApiKeyError, CreateApiKeyResponse, DeleteApiKeyData, DeleteApiKeyError, DeleteApiKeyResponse, CreateInviteTokenData, CreateInviteTokenError, CreateInviteTokenResponse, GetConnectUrlData, GetConnectUrlError, GetConnectUrlResponse, HandleOAuthCallbackData, HandleOAuthCallbackError, HandleOAuthCallbackResponse, ConnectAdsData, ConnectAdsError, ConnectAdsResponse, ConfigureTikTokAdsBrandIdentityData, ConfigureTikTokAdsBrandIdentityError, ConfigureTikTokAdsBrandIdentityResponse, ListFacebookPagesData, ListFacebookPagesError, ListFacebookPagesResponse, SelectFacebookPageData, SelectFacebookPageError, SelectFacebookPageResponse, ListGoogleBusinessLocationsData, ListGoogleBusinessLocationsError, ListGoogleBusinessLocationsResponse, SelectGoogleBusinessLocationData, SelectGoogleBusinessLocationError, SelectGoogleBusinessLocationResponse, GetGoogleBusinessReviewsData, GetGoogleBusinessReviewsError, GetGoogleBusinessReviewsResponse, GetGoogleBusinessVerificationsData, GetGoogleBusinessVerificationsError, GetGoogleBusinessVerificationsResponse, StartGoogleBusinessVerificationData, StartGoogleBusinessVerificationError, StartGoogleBusinessVerificationResponse, FetchGoogleBusinessVerificationOptionsData, FetchGoogleBusinessVerificationOptionsError, FetchGoogleBusinessVerificationOptionsResponse, CompleteGoogleBusinessVerificationData, CompleteGoogleBusinessVerificationError, CompleteGoogleBusinessVerificationResponse, GetGoogleBusinessFoodMenusData, GetGoogleBusinessFoodMenusError, GetGoogleBusinessFoodMenusResponse, UpdateGoogleBusinessFoodMenusData, UpdateGoogleBusinessFoodMenusError, UpdateGoogleBusinessFoodMenusResponse, GetGoogleBusinessLocationDetailsData, GetGoogleBusinessLocationDetailsError, GetGoogleBusinessLocationDetailsResponse, UpdateGoogleBusinessLocationDetailsData, UpdateGoogleBusinessLocationDetailsError, UpdateGoogleBusinessLocationDetailsResponse, ListGoogleBusinessMediaData, ListGoogleBusinessMediaError, ListGoogleBusinessMediaResponse, CreateGoogleBusinessMediaData, CreateGoogleBusinessMediaError, CreateGoogleBusinessMediaResponse, DeleteGoogleBusinessMediaData, DeleteGoogleBusinessMediaError, DeleteGoogleBusinessMediaResponse, GetGmbAttributeMetadataData, GetGmbAttributeMetadataError, GetGmbAttributeMetadataResponse, GetGoogleBusinessAttributesData, GetGoogleBusinessAttributesError, GetGoogleBusinessAttributesResponse, UpdateGoogleBusinessAttributesData, UpdateGoogleBusinessAttributesError, UpdateGoogleBusinessAttributesResponse, ListGoogleBusinessPlaceActionsData, ListGoogleBusinessPlaceActionsError, ListGoogleBusinessPlaceActionsResponse, CreateGoogleBusinessPlaceActionData, CreateGoogleBusinessPlaceActionError, CreateGoogleBusinessPlaceActionResponse, DeleteGoogleBusinessPlaceActionData, DeleteGoogleBusinessPlaceActionError, DeleteGoogleBusinessPlaceActionResponse, UpdateGoogleBusinessPlaceActionData, UpdateGoogleBusinessPlaceActionError, UpdateGoogleBusinessPlaceActionResponse, GetGoogleBusinessServicesData, GetGoogleBusinessServicesError, GetGoogleBusinessServicesResponse, UpdateGoogleBusinessServicesData, UpdateGoogleBusinessServicesError, UpdateGoogleBusinessServicesResponse, BatchGetGoogleBusinessReviewsData, BatchGetGoogleBusinessReviewsError, BatchGetGoogleBusinessReviewsResponse, ReplyToGoogleBusinessReviewData, ReplyToGoogleBusinessReviewError, ReplyToGoogleBusinessReviewResponse, DeleteGoogleBusinessReviewReplyData, DeleteGoogleBusinessReviewReplyError, DeleteGoogleBusinessReviewReplyResponse, GetPendingOAuthDataData, GetPendingOAuthDataError, GetPendingOAuthDataResponse, ListLinkedInOrganizationsData, ListLinkedInOrganizationsError, ListLinkedInOrganizationsResponse, SelectLinkedInOrganizationData, SelectLinkedInOrganizationError, SelectLinkedInOrganizationResponse, ListPinterestBoardsForSelectionData, ListPinterestBoardsForSelectionError, ListPinterestBoardsForSelectionResponse, SelectPinterestBoardData, SelectPinterestBoardError, SelectPinterestBoardResponse, ListSnapchatProfilesData, ListSnapchatProfilesError, ListSnapchatProfilesResponse, SelectSnapchatProfileData, SelectSnapchatProfileError, SelectSnapchatProfileResponse, ConnectBlueskyCredentialsData, ConnectBlueskyCredentialsError, ConnectBlueskyCredentialsResponse, ConnectWhatsAppCredentialsData, ConnectWhatsAppCredentialsError, ConnectWhatsAppCredentialsResponse, ListWhatsAppPhoneNumbersData, ListWhatsAppPhoneNumbersError, ListWhatsAppPhoneNumbersResponse, CompleteWhatsAppPhoneSelectionData, CompleteWhatsAppPhoneSelectionError, CompleteWhatsAppPhoneSelectionResponse, GetTelegramConnectStatusData, GetTelegramConnectStatusError, GetTelegramConnectStatusResponse, InitiateTelegramConnectData, InitiateTelegramConnectError, InitiateTelegramConnectResponse, CompleteTelegramConnectData, CompleteTelegramConnectError, CompleteTelegramConnectResponse, GetFacebookPagesData, GetFacebookPagesError, GetFacebookPagesResponse, UpdateFacebookPageData, UpdateFacebookPageError, UpdateFacebookPageResponse, GetLinkedInOrganizationsData, GetLinkedInOrganizationsError, GetLinkedInOrganizationsResponse, GetLinkedInAggregateAnalyticsData, GetLinkedInAggregateAnalyticsError, GetLinkedInAggregateAnalyticsResponse, GetLinkedInPostAnalyticsData, GetLinkedInPostAnalyticsError, GetLinkedInPostAnalyticsResponse, GetLinkedInPostReactionsData, GetLinkedInPostReactionsError, GetLinkedInPostReactionsResponse, UpdateLinkedInOrganizationData, UpdateLinkedInOrganizationError, UpdateLinkedInOrganizationResponse, GetLinkedInMentionsData, GetLinkedInMentionsError, GetLinkedInMentionsResponse, ListInstagramStoriesData, ListInstagramStoriesError, ListInstagramStoriesResponse, GetInstagramStoryInsightsData, GetInstagramStoryInsightsError, GetInstagramStoryInsightsResponse, GetPinterestBoardsData, GetPinterestBoardsError, GetPinterestBoardsResponse, UpdatePinterestBoardsData, UpdatePinterestBoardsError, UpdatePinterestBoardsResponse, GetYoutubePlaylistsData, GetYoutubePlaylistsError, GetYoutubePlaylistsResponse, UpdateYoutubeDefaultPlaylistData, UpdateYoutubeDefaultPlaylistError, UpdateYoutubeDefaultPlaylistResponse, GetGmbLocationsData, GetGmbLocationsError, GetGmbLocationsResponse, UpdateGmbLocationData, UpdateGmbLocationError, UpdateGmbLocationResponse, GetRedditSubredditsData, GetRedditSubredditsError, GetRedditSubredditsResponse, UpdateRedditSubredditsData, UpdateRedditSubredditsError, UpdateRedditSubredditsResponse, GetRedditFlairsData, GetRedditFlairsError, GetRedditFlairsResponse, GetDiscordSettingsData, GetDiscordSettingsError, GetDiscordSettingsResponse, UpdateDiscordSettingsData, UpdateDiscordSettingsError, UpdateDiscordSettingsResponse, GetDiscordChannelsData, GetDiscordChannelsError, GetDiscordChannelsResponse, SendDiscordDirectMessageData, SendDiscordDirectMessageError, SendDiscordDirectMessageResponse, ListDiscordGuildRolesData, ListDiscordGuildRolesError, ListDiscordGuildRolesResponse, ListDiscordGuildMembersData, ListDiscordGuildMembersError, ListDiscordGuildMembersResponse, AddDiscordMemberRoleData, AddDiscordMemberRoleError, AddDiscordMemberRoleResponse, RemoveDiscordMemberRoleData, RemoveDiscordMemberRoleError, RemoveDiscordMemberRoleResponse, ListDiscordPinnedMessagesData, ListDiscordPinnedMessagesError, ListDiscordPinnedMessagesResponse, PinDiscordMessageData, PinDiscordMessageError, PinDiscordMessageResponse, UnpinDiscordMessageData, UnpinDiscordMessageError, UnpinDiscordMessageResponse, ListDiscordScheduledEventsData, ListDiscordScheduledEventsError, ListDiscordScheduledEventsResponse, CreateDiscordScheduledEventData, CreateDiscordScheduledEventError, CreateDiscordScheduledEventResponse, GetDiscordScheduledEventData, GetDiscordScheduledEventError, GetDiscordScheduledEventResponse, UpdateDiscordScheduledEventData, UpdateDiscordScheduledEventError, UpdateDiscordScheduledEventResponse, DeleteDiscordScheduledEventData, DeleteDiscordScheduledEventError, DeleteDiscordScheduledEventResponse, ListQueueSlotsData, ListQueueSlotsError, ListQueueSlotsResponse, CreateQueueSlotData, CreateQueueSlotError, CreateQueueSlotResponse, UpdateQueueSlotData, UpdateQueueSlotError, UpdateQueueSlotResponse, DeleteQueueSlotData, DeleteQueueSlotError, DeleteQueueSlotResponse, PreviewQueueData, PreviewQueueError, PreviewQueueResponse, GetNextQueueSlotData, GetNextQueueSlotError, GetNextQueueSlotResponse, GetWebhookSettingsError, GetWebhookSettingsResponse, CreateWebhookSettingsData, CreateWebhookSettingsError, CreateWebhookSettingsResponse, UpdateWebhookSettingsData, UpdateWebhookSettingsError, UpdateWebhookSettingsResponse, DeleteWebhookSettingsData, DeleteWebhookSettingsError, DeleteWebhookSettingsResponse, GetWebhookLogsData, GetWebhookLogsError, GetWebhookLogsResponse, TestWebhookData, TestWebhookError, TestWebhookResponse, ListLogsData, ListLogsError, ListLogsResponse, ListInboxConversationsData, ListInboxConversationsError, ListInboxConversationsResponse, CreateInboxConversationData, CreateInboxConversationError, CreateInboxConversationResponse, GetInboxConversationData, GetInboxConversationError, GetInboxConversationResponse, UpdateInboxConversationData, UpdateInboxConversationError, UpdateInboxConversationResponse, GetInboxConversationMessagesData, GetInboxConversationMessagesError, GetInboxConversationMessagesResponse, SendInboxMessageData, SendInboxMessageError, SendInboxMessageResponse, EditInboxMessageData, EditInboxMessageError, EditInboxMessageResponse, DeleteInboxMessageData, DeleteInboxMessageError, DeleteInboxMessageResponse, SendTypingIndicatorData, SendTypingIndicatorError, SendTypingIndicatorResponse, MarkConversationReadData, MarkConversationReadError, MarkConversationReadResponse, AddMessageReactionData, AddMessageReactionError, AddMessageReactionResponse, RemoveMessageReactionData, RemoveMessageReactionError, RemoveMessageReactionResponse, UploadMediaDirectData, UploadMediaDirectError, UploadMediaDirectResponse, GetMessengerMenuData, GetMessengerMenuError, GetMessengerMenuResponse, SetMessengerMenuData, SetMessengerMenuError, SetMessengerMenuResponse, DeleteMessengerMenuData, DeleteMessengerMenuError, DeleteMessengerMenuResponse, GetInstagramIceBreakersData, GetInstagramIceBreakersError, GetInstagramIceBreakersResponse, SetInstagramIceBreakersData, SetInstagramIceBreakersError, SetInstagramIceBreakersResponse, DeleteInstagramIceBreakersData, DeleteInstagramIceBreakersError, DeleteInstagramIceBreakersResponse, GetTelegramCommandsData, GetTelegramCommandsError, GetTelegramCommandsResponse, SetTelegramCommandsData, SetTelegramCommandsError, SetTelegramCommandsResponse, DeleteTelegramCommandsData, DeleteTelegramCommandsError, DeleteTelegramCommandsResponse, ListInboxCommentsData, ListInboxCommentsError, ListInboxCommentsResponse, GetInboxPostCommentsData, GetInboxPostCommentsError, GetInboxPostCommentsResponse, ReplyToInboxPostData, ReplyToInboxPostError, ReplyToInboxPostResponse, DeleteInboxCommentData, DeleteInboxCommentError, DeleteInboxCommentResponse, HideInboxCommentData, HideInboxCommentError, HideInboxCommentResponse, UnhideInboxCommentData, UnhideInboxCommentError, UnhideInboxCommentResponse, LikeInboxCommentData, LikeInboxCommentError, LikeInboxCommentResponse, UnlikeInboxCommentData, UnlikeInboxCommentError, UnlikeInboxCommentResponse, SendPrivateReplyToCommentData, SendPrivateReplyToCommentError, SendPrivateReplyToCommentResponse, RetweetPostData, RetweetPostError, RetweetPostResponse, UndoRetweetData, UndoRetweetError, UndoRetweetResponse, BookmarkPostData, BookmarkPostError, BookmarkPostResponse, RemoveBookmarkData, RemoveBookmarkError, RemoveBookmarkResponse, FollowUserData, FollowUserError, FollowUserResponse, UnfollowUserData, UnfollowUserError, UnfollowUserResponse, ListInboxMentionsData, ListInboxMentionsError, ListInboxMentionsResponse, ListInboxReviewsData, ListInboxReviewsError, ListInboxReviewsResponse, ReplyToInboxReviewData, ReplyToInboxReviewError, ReplyToInboxReviewResponse, DeleteInboxReviewReplyData, DeleteInboxReviewReplyError, DeleteInboxReviewReplyResponse, GetWhatsAppTemplatesData, GetWhatsAppTemplatesError, GetWhatsAppTemplatesResponse, CreateWhatsAppTemplateData, CreateWhatsAppTemplateError, CreateWhatsAppTemplateResponse, GetWhatsAppTemplateData, GetWhatsAppTemplateError, GetWhatsAppTemplateResponse, UpdateWhatsAppTemplateData, UpdateWhatsAppTemplateError, UpdateWhatsAppTemplateResponse, DeleteWhatsAppTemplateData, DeleteWhatsAppTemplateError, DeleteWhatsAppTemplateResponse, GetWhatsAppCallingConfigData, GetWhatsAppCallingConfigError, GetWhatsAppCallingConfigResponse, EnableWhatsAppCallingLegacyData, EnableWhatsAppCallingLegacyError, EnableWhatsAppCallingLegacyResponse, UpdateWhatsAppCallingLegacyData, UpdateWhatsAppCallingLegacyError, UpdateWhatsAppCallingLegacyResponse, DisableWhatsAppCallingLegacyData, DisableWhatsAppCallingLegacyError, DisableWhatsAppCallingLegacyResponse, GetWhatsAppCallPermissionsData, GetWhatsAppCallPermissionsError, GetWhatsAppCallPermissionsResponse, InitiateWhatsAppCallData, InitiateWhatsAppCallError, InitiateWhatsAppCallResponse, ListWhatsAppCallsData, ListWhatsAppCallsError, ListWhatsAppCallsResponse, GetWhatsAppCallData, GetWhatsAppCallError, GetWhatsAppCallResponse, GetWhatsAppCallRecordingData, GetWhatsAppCallRecordingError, GetWhatsAppCallRecordingResponse, GetWhatsAppCallEstimateData, GetWhatsAppCallEstimateError, GetWhatsAppCallEstimateResponse, ListCallsData, ListCallsError, ListCallsResponse, GetCallData, GetCallError, GetCallResponse, GetCallRecordingData, GetCallRecordingError, GetCallRecordingResponse, CreateVoiceCallData, CreateVoiceCallError, CreateVoiceCallResponse, ListVoiceCallsData, ListVoiceCallsError, ListVoiceCallsResponse, GetVoiceCallData, GetVoiceCallError, GetVoiceCallResponse, EndVoiceCallData, EndVoiceCallError, EndVoiceCallResponse, GetVoiceCallRecordingData, GetVoiceCallRecordingError, GetVoiceCallRecordingResponse, TransferVoiceCallData, TransferVoiceCallError, TransferVoiceCallResponse, GetVoiceCallEstimateData, GetVoiceCallEstimateError, GetVoiceCallEstimateResponse, CreateVoiceWebSessionError, CreateVoiceWebSessionResponse, DialVoiceWebCallData, DialVoiceWebCallError, DialVoiceWebCallResponse, SendSmsData, SendSmsError, SendSmsResponse, LookupSmsNumberData, LookupSmsNumberError, LookupSmsNumberResponse, ListSmsOptOutsData, ListSmsOptOutsError, ListSmsOptOutsResponse, StartSmsRegistrationData, StartSmsRegistrationError, StartSmsRegistrationResponse, ListSmsRegistrationsError, ListSmsRegistrationsResponse, GetSmsRegistrationData, GetSmsRegistrationError, GetSmsRegistrationResponse, VerifySmsRegistrationOtpData, VerifySmsRegistrationOtpError, VerifySmsRegistrationOtpResponse, AppealSmsRegistrationData, AppealSmsRegistrationError, AppealSmsRegistrationResponse, ShareSmsRegistrationData, ShareSmsRegistrationError, ShareSmsRegistrationResponse, GetWhatsAppLibraryTemplateData, GetWhatsAppLibraryTemplateError, GetWhatsAppLibraryTemplateResponse, GetWhatsAppBusinessProfileData, GetWhatsAppBusinessProfileError, GetWhatsAppBusinessProfileResponse, UpdateWhatsAppBusinessProfileData, UpdateWhatsAppBusinessProfileError, UpdateWhatsAppBusinessProfileResponse, UploadWhatsAppProfilePhotoData, UploadWhatsAppProfilePhotoError, UploadWhatsAppProfilePhotoResponse, GetWhatsAppDisplayNameData, GetWhatsAppDisplayNameError, GetWhatsAppDisplayNameResponse, UpdateWhatsAppDisplayNameData, UpdateWhatsAppDisplayNameError, UpdateWhatsAppDisplayNameResponse, GetWhatsappBusinessUsernameData, GetWhatsappBusinessUsernameError, GetWhatsappBusinessUsernameResponse, SetWhatsappBusinessUsernameData, SetWhatsappBusinessUsernameError, SetWhatsappBusinessUsernameResponse, DeleteWhatsappBusinessUsernameData, DeleteWhatsappBusinessUsernameError, DeleteWhatsappBusinessUsernameResponse, GetWhatsappBusinessUsernameSuggestionsData, GetWhatsappBusinessUsernameSuggestionsError, GetWhatsappBusinessUsernameSuggestionsResponse, GetWhatsAppNumberInfoData, GetWhatsAppNumberInfoError, GetWhatsAppNumberInfoResponse, GetWhatsAppBlockStatusData, GetWhatsAppBlockStatusError, GetWhatsAppBlockStatusResponse, GetWhatsAppBlockedUsersData, GetWhatsAppBlockedUsersError, GetWhatsAppBlockedUsersResponse, BlockWhatsAppUsersData, BlockWhatsAppUsersError, BlockWhatsAppUsersResponse, UnblockWhatsAppUsersData, UnblockWhatsAppUsersError, UnblockWhatsAppUsersResponse, GetWhatsAppDatasetData, GetWhatsAppDatasetError, GetWhatsAppDatasetResponse, CreateWhatsAppDatasetData, CreateWhatsAppDatasetError, CreateWhatsAppDatasetResponse, ListPhoneNumbersData, ListPhoneNumbersError, ListPhoneNumbersResponse, GetPhoneNumberData, GetPhoneNumberError, GetPhoneNumberResponse, ReleasePhoneNumberData, ReleasePhoneNumberError, ReleasePhoneNumberResponse, PurchasePhoneNumberData, PurchasePhoneNumberError, PurchasePhoneNumberResponse, ListPhoneNumberCountriesError, ListPhoneNumberCountriesResponse, SearchAvailablePhoneNumbersData, SearchAvailablePhoneNumbersError, SearchAvailablePhoneNumbersResponse, CheckPhoneNumberAvailabilityData, CheckPhoneNumberAvailabilityError, CheckPhoneNumberAvailabilityResponse, GetWhatsAppPhoneNumbersData, GetWhatsAppPhoneNumbersError, GetWhatsAppPhoneNumbersResponse, PurchaseWhatsAppPhoneNumberData, PurchaseWhatsAppPhoneNumberError, PurchaseWhatsAppPhoneNumberResponse, ListWhatsAppNumberCountriesError, ListWhatsAppNumberCountriesResponse, SearchAvailableWhatsAppNumbersData, SearchAvailableWhatsAppNumbersError, SearchAvailableWhatsAppNumbersResponse, CheckWhatsAppNumberAvailabilityData, CheckWhatsAppNumberAvailabilityError, CheckWhatsAppNumberAvailabilityResponse, GetPhoneNumberKycFormData, GetPhoneNumberKycFormError, GetPhoneNumberKycFormResponse, SubmitPhoneNumberKycData, SubmitPhoneNumberKycError, SubmitPhoneNumberKycResponse, UploadPhoneNumberKycDocumentData, UploadPhoneNumberKycDocumentError, UploadPhoneNumberKycDocumentResponse, ValidatePhoneNumberKycAddressData, ValidatePhoneNumberKycAddressError, ValidatePhoneNumberKycAddressResponse, CreatePhoneNumberKycLinkData, CreatePhoneNumberKycLinkError, CreatePhoneNumberKycLinkResponse, CreatePhoneNumberPortInData, CreatePhoneNumberPortInError, CreatePhoneNumberPortInResponse, ListPhoneNumberPortInsError, ListPhoneNumberPortInsResponse, CheckPhoneNumberPortabilityData, CheckPhoneNumberPortabilityError, CheckPhoneNumberPortabilityResponse, UploadPhoneNumberPortInDocumentData, UploadPhoneNumberPortInDocumentError, UploadPhoneNumberPortInDocumentResponse, CancelPhoneNumberPortInData, CancelPhoneNumberPortInError, CancelPhoneNumberPortInResponse, ReviewPhoneNumberKycPacketData, ReviewPhoneNumberKycPacketError, ReviewPhoneNumberKycPacketResponse, GetPhoneNumberRemediationData, GetPhoneNumberRemediationError, GetPhoneNumberRemediationResponse, RemediatePhoneNumberData, RemediatePhoneNumberError, RemediatePhoneNumberResponse, GetWhatsAppNumberKycFormData, GetWhatsAppNumberKycFormError, GetWhatsAppNumberKycFormResponse, SubmitWhatsAppNumberKycData, SubmitWhatsAppNumberKycError, SubmitWhatsAppNumberKycResponse, UploadWhatsAppNumberKycDocumentData, UploadWhatsAppNumberKycDocumentError, UploadWhatsAppNumberKycDocumentResponse, ValidateWhatsAppNumberKycAddressData, ValidateWhatsAppNumberKycAddressError, ValidateWhatsAppNumberKycAddressResponse, CreateWhatsAppNumberKycLinkData, CreateWhatsAppNumberKycLinkError, CreateWhatsAppNumberKycLinkResponse, GetWhatsAppNumberRemediationData, GetWhatsAppNumberRemediationError, GetWhatsAppNumberRemediationResponse, RemediateWhatsAppNumberData, RemediateWhatsAppNumberError, RemediateWhatsAppNumberResponse, EnableVoiceOnNumberData, EnableVoiceOnNumberError, EnableVoiceOnNumberResponse, DisableVoiceOnNumberData, DisableVoiceOnNumberError, DisableVoiceOnNumberResponse, EnableSmsOnNumberData, EnableSmsOnNumberError, EnableSmsOnNumberResponse, DisableSmsOnNumberData, DisableSmsOnNumberError, DisableSmsOnNumberResponse, ReuseSmsRegistrationForNumberData, ReuseSmsRegistrationForNumberError, ReuseSmsRegistrationForNumberResponse, GetWhatsAppCallingData, GetWhatsAppCallingError, GetWhatsAppCallingResponse, EnableWhatsAppCallingData, EnableWhatsAppCallingError, EnableWhatsAppCallingResponse, UpdateWhatsAppCallingData, UpdateWhatsAppCallingError, UpdateWhatsAppCallingResponse, DisableWhatsAppCallingData, DisableWhatsAppCallingError, DisableWhatsAppCallingResponse, GetWhatsAppPhoneNumberData, GetWhatsAppPhoneNumberError, GetWhatsAppPhoneNumberResponse, ReleaseWhatsAppPhoneNumberData, ReleaseWhatsAppPhoneNumberError, ReleaseWhatsAppPhoneNumberResponse, ListWhatsAppSandboxSessionsError, ListWhatsAppSandboxSessionsResponse, CreateWhatsAppSandboxSessionData, CreateWhatsAppSandboxSessionError, CreateWhatsAppSandboxSessionResponse, DeleteWhatsAppSandboxSessionData, DeleteWhatsAppSandboxSessionError, DeleteWhatsAppSandboxSessionResponse, ListWhatsAppGroupChatsData, ListWhatsAppGroupChatsError, ListWhatsAppGroupChatsResponse, CreateWhatsAppGroupChatData, CreateWhatsAppGroupChatError, CreateWhatsAppGroupChatResponse, GetWhatsAppGroupChatData, GetWhatsAppGroupChatError, GetWhatsAppGroupChatResponse, UpdateWhatsAppGroupChatData, UpdateWhatsAppGroupChatError, UpdateWhatsAppGroupChatResponse, DeleteWhatsAppGroupChatData, DeleteWhatsAppGroupChatError, DeleteWhatsAppGroupChatResponse, AddWhatsAppGroupParticipantsData, AddWhatsAppGroupParticipantsError, AddWhatsAppGroupParticipantsResponse, RemoveWhatsAppGroupParticipantsData, RemoveWhatsAppGroupParticipantsError, RemoveWhatsAppGroupParticipantsResponse, CreateWhatsAppGroupInviteLinkData, CreateWhatsAppGroupInviteLinkError, CreateWhatsAppGroupInviteLinkResponse, ListWhatsAppGroupJoinRequestsData, ListWhatsAppGroupJoinRequestsError, ListWhatsAppGroupJoinRequestsResponse, ApproveWhatsAppGroupJoinRequestsData, ApproveWhatsAppGroupJoinRequestsError, ApproveWhatsAppGroupJoinRequestsResponse, RejectWhatsAppGroupJoinRequestsData, RejectWhatsAppGroupJoinRequestsError, RejectWhatsAppGroupJoinRequestsResponse, ListWhatsAppFlowsData, ListWhatsAppFlowsError, ListWhatsAppFlowsResponse, CreateWhatsAppFlowData, CreateWhatsAppFlowError, CreateWhatsAppFlowResponse, GetWhatsAppFlowData, GetWhatsAppFlowError, GetWhatsAppFlowResponse, UpdateWhatsAppFlowData, UpdateWhatsAppFlowError, UpdateWhatsAppFlowResponse, DeleteWhatsAppFlowData, DeleteWhatsAppFlowError, DeleteWhatsAppFlowResponse, GetWhatsAppFlowJsonData, GetWhatsAppFlowJsonError, GetWhatsAppFlowJsonResponse, UploadWhatsAppFlowJsonData, UploadWhatsAppFlowJsonError, UploadWhatsAppFlowJsonResponse, GetWhatsAppFlowPreviewData, GetWhatsAppFlowPreviewError, GetWhatsAppFlowPreviewResponse, ListWhatsAppFlowVersionsData, ListWhatsAppFlowVersionsError, ListWhatsAppFlowVersionsResponse, PublishWhatsAppFlowData, PublishWhatsAppFlowError, PublishWhatsAppFlowResponse, DeprecateWhatsAppFlowData, DeprecateWhatsAppFlowError, DeprecateWhatsAppFlowResponse, SendWhatsAppFlowMessageData, SendWhatsAppFlowMessageError, SendWhatsAppFlowMessageResponse, ListWhatsAppFlowResponsesData, ListWhatsAppFlowResponsesError, ListWhatsAppFlowResponsesResponse, ListContactsData, ListContactsError, ListContactsResponse, CreateContactData, CreateContactError, CreateContactResponse, GetContactData, GetContactError, GetContactResponse, UpdateContactData, UpdateContactError, UpdateContactResponse, DeleteContactData, DeleteContactError, DeleteContactResponse, GetContactChannelsData, GetContactChannelsError, GetContactChannelsResponse, BulkCreateContactsData, BulkCreateContactsError, BulkCreateContactsResponse, SetContactFieldValueData, SetContactFieldValueError, SetContactFieldValueResponse, ClearContactFieldValueData, ClearContactFieldValueError, ClearContactFieldValueResponse, ListCustomFieldsData, ListCustomFieldsError, ListCustomFieldsResponse, CreateCustomFieldData, CreateCustomFieldError, CreateCustomFieldResponse, UpdateCustomFieldData, UpdateCustomFieldError, UpdateCustomFieldResponse, DeleteCustomFieldData, DeleteCustomFieldError, DeleteCustomFieldResponse, ListBroadcastsData, ListBroadcastsError, ListBroadcastsResponse, CreateBroadcastData, CreateBroadcastError, CreateBroadcastResponse, GetBroadcastData, GetBroadcastError, GetBroadcastResponse, UpdateBroadcastData, UpdateBroadcastError, UpdateBroadcastResponse, DeleteBroadcastData, DeleteBroadcastError, DeleteBroadcastResponse, SendBroadcastData, SendBroadcastError, SendBroadcastResponse, ScheduleBroadcastData, ScheduleBroadcastError, ScheduleBroadcastResponse, CancelBroadcastData, CancelBroadcastError, CancelBroadcastResponse, ListBroadcastRecipientsData, ListBroadcastRecipientsError, ListBroadcastRecipientsResponse, AddBroadcastRecipientsData, AddBroadcastRecipientsError, AddBroadcastRecipientsResponse, ListWorkflowsData, ListWorkflowsError, ListWorkflowsResponse, CreateWorkflowData, CreateWorkflowError, CreateWorkflowResponse, GetWorkflowData, GetWorkflowError, GetWorkflowResponse, UpdateWorkflowData, UpdateWorkflowError, UpdateWorkflowResponse, DeleteWorkflowData, DeleteWorkflowError, DeleteWorkflowResponse, ActivateWorkflowData, ActivateWorkflowError, ActivateWorkflowResponse, PauseWorkflowData, PauseWorkflowError, PauseWorkflowResponse, ListWorkflowExecutionsData, ListWorkflowExecutionsError, ListWorkflowExecutionsResponse, TriggerWorkflowData, TriggerWorkflowError, TriggerWorkflowResponse, ListWorkflowExecutionEventsData, ListWorkflowExecutionEventsError, ListWorkflowExecutionEventsResponse, DuplicateWorkflowData, DuplicateWorkflowError, DuplicateWorkflowResponse, ListWorkflowVersionsData, ListWorkflowVersionsError, ListWorkflowVersionsResponse, GetWorkflowVersionData, GetWorkflowVersionError, GetWorkflowVersionResponse, RestoreWorkflowVersionData, RestoreWorkflowVersionError, RestoreWorkflowVersionResponse, ListSequencesData, ListSequencesError, ListSequencesResponse, CreateSequenceData, CreateSequenceError, CreateSequenceResponse, GetSequenceData, GetSequenceError, GetSequenceResponse, UpdateSequenceData, UpdateSequenceError, UpdateSequenceResponse, DeleteSequenceData, DeleteSequenceError, DeleteSequenceResponse, ActivateSequenceData, ActivateSequenceError, ActivateSequenceResponse, PauseSequenceData, PauseSequenceError, PauseSequenceResponse, EnrollContactsData, EnrollContactsError, EnrollContactsResponse, UnenrollContactData, UnenrollContactError, UnenrollContactResponse, ListSequenceEnrollmentsData, ListSequenceEnrollmentsError, ListSequenceEnrollmentsResponse, ListCommentAutomationsData, ListCommentAutomationsError, ListCommentAutomationsResponse, CreateCommentAutomationData, CreateCommentAutomationError, CreateCommentAutomationResponse, GetCommentAutomationData, GetCommentAutomationError, GetCommentAutomationResponse, UpdateCommentAutomationData, UpdateCommentAutomationError, UpdateCommentAutomationResponse, DeleteCommentAutomationData, DeleteCommentAutomationError, DeleteCommentAutomationResponse, ListCommentAutomationLogsData, ListCommentAutomationLogsError, ListCommentAutomationLogsResponse, ListAdsData, ListAdsError, ListAdsResponse, ListAdCampaignsData, ListAdCampaignsError, ListAdCampaignsResponse, UpdateAdCampaignStatusData, UpdateAdCampaignStatusError, UpdateAdCampaignStatusResponse, UpdateAdCampaignData, UpdateAdCampaignError, UpdateAdCampaignResponse, DeleteAdCampaignData, DeleteAdCampaignError, DeleteAdCampaignResponse, BulkUpdateAdCampaignStatusData, BulkUpdateAdCampaignStatusError, BulkUpdateAdCampaignStatusResponse, DuplicateAdCampaignData, DuplicateAdCampaignError, DuplicateAdCampaignResponse, UpdateAdSetData, UpdateAdSetError, UpdateAdSetResponse, UpdateAdSetStatusData, UpdateAdSetStatusError, UpdateAdSetStatusResponse, GetAdTreeData, GetAdTreeError, GetAdTreeResponse, GetAdsTimelineData, GetAdsTimelineError, GetAdsTimelineResponse, GetAdData, GetAdError, GetAdResponse, UpdateAdData, UpdateAdError, UpdateAdResponse, DeleteAdData, DeleteAdError, DeleteAdResponse, GetCampaignAnalyticsData, GetCampaignAnalyticsError, GetCampaignAnalyticsResponse, GetAdAnalyticsData, GetAdAnalyticsError, GetAdAnalyticsResponse, GetAdTrackingTagsData, GetAdTrackingTagsError, GetAdTrackingTagsResponse, UpdateAdTrackingTagsData, UpdateAdTrackingTagsError, UpdateAdTrackingTagsResponse, GetAdCommentsData, GetAdCommentsError, GetAdCommentsResponse, ListAdsBusinessCentersData, ListAdsBusinessCentersError, ListAdsBusinessCentersResponse, ListAdAccountsData, ListAdAccountsError, ListAdAccountsResponse, BoostPostData, BoostPostError, BoostPostResponse, CreateStandaloneAdData, CreateStandaloneAdError, CreateStandaloneAdResponse, ListLeadsData, ListLeadsError, ListLeadsResponse, ListLeadFormsData, ListLeadFormsError, ListLeadFormsResponse, CreateLeadFormData, CreateLeadFormError, CreateLeadFormResponse, GetLeadFormData, GetLeadFormError, GetLeadFormResponse, ArchiveLeadFormData, ArchiveLeadFormError, ArchiveLeadFormResponse, ListFormLeadsData, ListFormLeadsError, ListFormLeadsResponse, CreateTestLeadData, CreateTestLeadError, CreateTestLeadResponse, SearchAdInterestsData, SearchAdInterestsError, SearchAdInterestsResponse, SearchAdTargetingData, SearchAdTargetingError, SearchAdTargetingResponse, EstimateAdReachData, EstimateAdReachError, EstimateAdReachResponse, ListAdCatalogsData, ListAdCatalogsError, ListAdCatalogsResponse, ListAdCatalogProductSetsData, ListAdCatalogProductSetsError, ListAdCatalogProductSetsResponse, ListAdAudiencesData, ListAdAudiencesError, ListAdAudiencesResponse, CreateAdAudienceData, CreateAdAudienceError, CreateAdAudienceResponse, GetAdAudienceData, GetAdAudienceError, GetAdAudienceResponse, DeleteAdAudienceData, DeleteAdAudienceError, DeleteAdAudienceResponse, AddUsersToAdAudienceData, AddUsersToAdAudienceError, AddUsersToAdAudienceResponse, GetConversionsQualityData, GetConversionsQualityError, GetConversionsQualityResponse, SendConversionsData, SendConversionsError, SendConversionsResponse, AdjustConversionsData, AdjustConversionsError, AdjustConversionsResponse, ListConversionDestinationsData, ListConversionDestinationsError, ListConversionDestinationsResponse, CreateConversionDestinationData, CreateConversionDestinationError, CreateConversionDestinationResponse, GetConversionDestinationData, GetConversionDestinationError, GetConversionDestinationResponse, UpdateConversionDestinationData, UpdateConversionDestinationError, UpdateConversionDestinationResponse, DeleteConversionDestinationData, DeleteConversionDestinationError, DeleteConversionDestinationResponse, ListConversionAssociationsData, ListConversionAssociationsError, ListConversionAssociationsResponse, AddConversionAssociationsData, AddConversionAssociationsError, AddConversionAssociationsResponse, RemoveConversionAssociationsData, RemoveConversionAssociationsError, RemoveConversionAssociationsResponse, GetConversionMetricsData, GetConversionMetricsError, GetConversionMetricsResponse, ListWhatsAppConversionsData, ListWhatsAppConversionsError, ListWhatsAppConversionsResponse, SendWhatsAppConversionData, SendWhatsAppConversionError, SendWhatsAppConversionResponse, CreateCtwaAdData, CreateCtwaAdError, CreateCtwaAdResponse, ListTrackingTagsData, ListTrackingTagsError, ListTrackingTagsResponse, CreateTrackingTagData, CreateTrackingTagError, CreateTrackingTagResponse, GetTrackingTagData, GetTrackingTagError, GetTrackingTagResponse, UpdateTrackingTagData, UpdateTrackingTagError, UpdateTrackingTagResponse, ListTrackingTagSharedAccountsData, ListTrackingTagSharedAccountsError, ListTrackingTagSharedAccountsResponse, AddTrackingTagSharedAccountData, AddTrackingTagSharedAccountError, AddTrackingTagSharedAccountResponse, RemoveTrackingTagSharedAccountData, RemoveTrackingTagSharedAccountError, RemoveTrackingTagSharedAccountResponse, GetTrackingTagStatsData, GetTrackingTagStatsError, GetTrackingTagStatsResponse } from './types.gen';
|
|
5
5
|
|
|
6
6
|
export const client = createClient(createConfig());
|
|
7
7
|
|
|
@@ -626,7 +626,38 @@ export const getXApiPricing = <ThrowOnError extends boolean = false>(options?: O
|
|
|
626
626
|
};
|
|
627
627
|
|
|
628
628
|
/**
|
|
629
|
+
* Get plan and usage snapshot
|
|
630
|
+
* The usage hub: current plan name, billing period, plan limits, and
|
|
631
|
+
* usage counts, in one snapshot. For metered consumption over an
|
|
632
|
+
* arbitrary window with breakdowns (by day, by number), use the
|
|
633
|
+
* domain spokes: `GET /v1/usage/calls` and `GET /v1/usage/sms`.
|
|
634
|
+
*
|
|
635
|
+
* The response shape depends on the account's `billingSystem`:
|
|
636
|
+
* * Stripe users: per-period `usage.uploads` / `usage.profiles` counters.
|
|
637
|
+
* * Metronome (usage-based) users: `usage.connectedAccounts`,
|
|
638
|
+
* `usage.xApiCallsByOperation` (per-operation X API call counts —
|
|
639
|
+
* resolve keys via `GET /v1/billing/x-pricing`), plus a `spend`
|
|
640
|
+
* block with `currentPeriodCents`, `xSpendCents`, and
|
|
641
|
+
* `xSpendLimitCents`. The legacy `usage.xApiCalls` 3-tier
|
|
642
|
+
* aggregate is still emitted for back-compat but excludes the
|
|
643
|
+
* $0.200 URL tier and any future tiers — new clients should
|
|
644
|
+
* consume `xApiCallsByOperation` only.
|
|
645
|
+
*
|
|
646
|
+
*/
|
|
647
|
+
export const getUsage = <ThrowOnError extends boolean = false>(options?: OptionsLegacyParser<GetUsageData, ThrowOnError>) => {
|
|
648
|
+
return (options?.client ?? client).get<GetUsageResponse, GetUsageError, ThrowOnError>({
|
|
649
|
+
...options,
|
|
650
|
+
url: '/v1/usage'
|
|
651
|
+
});
|
|
652
|
+
};
|
|
653
|
+
|
|
654
|
+
/**
|
|
655
|
+
* @deprecated
|
|
629
656
|
* Get plan and usage stats
|
|
657
|
+
* Deprecated alias of `GET /v1/usage`; same contract. New integrations
|
|
658
|
+
* should use that path (the usage hub), with `GET /v1/usage/calls` and
|
|
659
|
+
* `GET /v1/usage/sms` for metered breakdowns.
|
|
660
|
+
*
|
|
630
661
|
* Returns the current plan name, billing period, plan limits, and usage counts.
|
|
631
662
|
*
|
|
632
663
|
* The response shape depends on the account's `billingSystem`:
|
|
@@ -648,6 +679,47 @@ export const getUsageStats = <ThrowOnError extends boolean = false>(options?: Op
|
|
|
648
679
|
});
|
|
649
680
|
};
|
|
650
681
|
|
|
682
|
+
/**
|
|
683
|
+
* Calling usage (volumes + billable cost)
|
|
684
|
+
* Aggregated calling usage across your numbers, both channels
|
|
685
|
+
* (WhatsApp Business Calling + regular phone/PSTN): call counts,
|
|
686
|
+
* answered counts, minutes, and cost. Use it for cost visibility or to
|
|
687
|
+
* rebill your own customers per number.
|
|
688
|
+
*
|
|
689
|
+
* Costs come from each call's billing snapshot, so this endpoint always
|
|
690
|
+
* agrees with the invoice: `billableUSD` is what Zernio bills;
|
|
691
|
+
* `metaUSD` is the WhatsApp per-minute charge Meta bills directly to
|
|
692
|
+
* your WABA (display only, never billed by Zernio).
|
|
693
|
+
*
|
|
694
|
+
* Optional `groupBy` returns a breakdown by UTC day, by your number, or
|
|
695
|
+
* by channel. Defaults to the last 30 days.
|
|
696
|
+
*
|
|
697
|
+
*/
|
|
698
|
+
export const getCallsUsage = <ThrowOnError extends boolean = false>(options?: OptionsLegacyParser<GetCallsUsageData, ThrowOnError>) => {
|
|
699
|
+
return (options?.client ?? client).get<GetCallsUsageResponse, GetCallsUsageError, ThrowOnError>({
|
|
700
|
+
...options,
|
|
701
|
+
url: '/v1/usage/calls'
|
|
702
|
+
});
|
|
703
|
+
};
|
|
704
|
+
|
|
705
|
+
/**
|
|
706
|
+
* SMS usage (volumes)
|
|
707
|
+
* Aggregated SMS/MMS volumes across your numbers: sent, received, and
|
|
708
|
+
* total message counts, with an optional breakdown by UTC day or by
|
|
709
|
+
* number. Defaults to the last 30 days.
|
|
710
|
+
*
|
|
711
|
+
* Volumes only, deliberately: SMS cost is carrier-rated asynchronously
|
|
712
|
+
* and billed to your invoice, so per-message cost is not available here.
|
|
713
|
+
* Calling usage (GET /v1/usage/calls) does include billable cost.
|
|
714
|
+
*
|
|
715
|
+
*/
|
|
716
|
+
export const getSmsUsage = <ThrowOnError extends boolean = false>(options?: OptionsLegacyParser<GetSmsUsageData, ThrowOnError>) => {
|
|
717
|
+
return (options?.client ?? client).get<GetSmsUsageResponse, GetSmsUsageError, ThrowOnError>({
|
|
718
|
+
...options,
|
|
719
|
+
url: '/v1/usage/sms'
|
|
720
|
+
});
|
|
721
|
+
};
|
|
722
|
+
|
|
651
723
|
/**
|
|
652
724
|
* List posts
|
|
653
725
|
* Returns a paginated list of posts. Published posts include platformPostUrl with the public URL on each platform.
|
|
@@ -3043,10 +3115,12 @@ export const deleteWhatsAppTemplate = <ThrowOnError extends boolean = false>(opt
|
|
|
3043
3115
|
* Get calling config for an account
|
|
3044
3116
|
* Returns the local calling configuration snapshot for the connected
|
|
3045
3117
|
* WhatsApp account: whether calling is enabled, the forward-to
|
|
3046
|
-
* destination URI, recording opt-in state, the
|
|
3047
|
-
*
|
|
3048
|
-
* whether SIP digest
|
|
3049
|
-
* itself is never
|
|
3118
|
+
* destination URI, recording opt-in state, the phone number record id
|
|
3119
|
+
* (use as `{id}` on the read-write calling sub-resource at
|
|
3120
|
+
* /v1/phone-numbers/{id}/whatsapp/calling) and whether SIP digest
|
|
3121
|
+
* credentials are stored (the encrypted password itself is never
|
|
3122
|
+
* returned). Also carries account-level extras (billing eligibility,
|
|
3123
|
+
* current-period spend) that the number-keyed GET does not.
|
|
3050
3124
|
*
|
|
3051
3125
|
*/
|
|
3052
3126
|
export const getWhatsAppCallingConfig = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<GetWhatsAppCallingConfigData, ThrowOnError>) => {
|
|
@@ -3057,22 +3131,30 @@ export const getWhatsAppCallingConfig = <ThrowOnError extends boolean = false>(o
|
|
|
3057
3131
|
};
|
|
3058
3132
|
|
|
3059
3133
|
/**
|
|
3134
|
+
* @deprecated
|
|
3060
3135
|
* Enable calling on a number
|
|
3136
|
+
* Deprecated alias of `/v1/phone-numbers/{id}/whatsapp/calling`; same contract. New
|
|
3137
|
+
* integrations should use that path.
|
|
3138
|
+
*
|
|
3061
3139
|
* Enable WhatsApp Business Calling on a connected number. Configures
|
|
3062
3140
|
* Meta calling.status=ENABLED with our Telnyx SIP endpoint, fetches and
|
|
3063
3141
|
* stores the Meta-issued SIP password (encrypted), and snapshots the
|
|
3064
3142
|
* customer's forward-to destination.
|
|
3065
3143
|
*
|
|
3066
3144
|
*/
|
|
3067
|
-
export const
|
|
3068
|
-
return (options?.client ?? client).post<
|
|
3145
|
+
export const enableWhatsAppCallingLegacy = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<EnableWhatsAppCallingLegacyData, ThrowOnError>) => {
|
|
3146
|
+
return (options?.client ?? client).post<EnableWhatsAppCallingLegacyResponse, EnableWhatsAppCallingLegacyError, ThrowOnError>({
|
|
3069
3147
|
...options,
|
|
3070
3148
|
url: '/v1/whatsapp/phone-numbers/{id}/calling'
|
|
3071
3149
|
});
|
|
3072
3150
|
};
|
|
3073
3151
|
|
|
3074
3152
|
/**
|
|
3153
|
+
* @deprecated
|
|
3075
3154
|
* Update calling config
|
|
3155
|
+
* Deprecated alias of `/v1/phone-numbers/{id}/whatsapp/calling`; same contract. New
|
|
3156
|
+
* integrations should use that path.
|
|
3157
|
+
*
|
|
3076
3158
|
* Update fields on an already-enabled number. Only fields present in
|
|
3077
3159
|
* the body are written; `undefined` leaves the stored value alone,
|
|
3078
3160
|
* explicit `null` clears a nullable field. No Meta side effect, this
|
|
@@ -3080,22 +3162,26 @@ export const enableWhatsAppCalling = <ThrowOnError extends boolean = false>(opti
|
|
|
3080
3162
|
* handler.
|
|
3081
3163
|
*
|
|
3082
3164
|
*/
|
|
3083
|
-
export const
|
|
3084
|
-
return (options?.client ?? client).patch<
|
|
3165
|
+
export const updateWhatsAppCallingLegacy = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<UpdateWhatsAppCallingLegacyData, ThrowOnError>) => {
|
|
3166
|
+
return (options?.client ?? client).patch<UpdateWhatsAppCallingLegacyResponse, UpdateWhatsAppCallingLegacyError, ThrowOnError>({
|
|
3085
3167
|
...options,
|
|
3086
3168
|
url: '/v1/whatsapp/phone-numbers/{id}/calling'
|
|
3087
3169
|
});
|
|
3088
3170
|
};
|
|
3089
3171
|
|
|
3090
3172
|
/**
|
|
3173
|
+
* @deprecated
|
|
3091
3174
|
* Disable calling on a number
|
|
3175
|
+
* Deprecated alias of `/v1/phone-numbers/{id}/whatsapp/calling`; same contract. New
|
|
3176
|
+
* integrations should use that path.
|
|
3177
|
+
*
|
|
3092
3178
|
* Disable calling. Sends calling.status=DISABLED to Meta (best-effort)
|
|
3093
3179
|
* and flips the local `callingEnabled` flag off. forwardTo and SIP
|
|
3094
3180
|
* creds are preserved so a re-enable does not lose the destination.
|
|
3095
3181
|
*
|
|
3096
3182
|
*/
|
|
3097
|
-
export const
|
|
3098
|
-
return (options?.client ?? client).delete<
|
|
3183
|
+
export const disableWhatsAppCallingLegacy = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<DisableWhatsAppCallingLegacyData, ThrowOnError>) => {
|
|
3184
|
+
return (options?.client ?? client).delete<DisableWhatsAppCallingLegacyResponse, DisableWhatsAppCallingLegacyError, ThrowOnError>({
|
|
3099
3185
|
...options,
|
|
3100
3186
|
url: '/v1/whatsapp/phone-numbers/{id}/calling'
|
|
3101
3187
|
});
|
|
@@ -3130,6 +3216,10 @@ export const getWhatsAppCallPermissions = <ThrowOnError extends boolean = false>
|
|
|
3130
3216
|
* `start_call` is permitted; Meta limits the prompt to 1 per consumer
|
|
3131
3217
|
* per 24h (2 per 7 days) and requires an open 24h service window.
|
|
3132
3218
|
*
|
|
3219
|
+
* **Idempotency:** send an `Idempotency-Key` header to make retries
|
|
3220
|
+
* safe; same key + same body replays the original response instead of
|
|
3221
|
+
* dialing (and billing) a second call.
|
|
3222
|
+
*
|
|
3133
3223
|
*/
|
|
3134
3224
|
export const initiateWhatsAppCall = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<InitiateWhatsAppCallData, ThrowOnError>) => {
|
|
3135
3225
|
return (options?.client ?? client).post<InitiateWhatsAppCallResponse, InitiateWhatsAppCallError, ThrowOnError>({
|
|
@@ -3144,6 +3234,10 @@ export const initiateWhatsAppCall = <ThrowOnError extends boolean = false>(optio
|
|
|
3144
3234
|
* scoped to the resolved SocialAccount; profile-scoped team members
|
|
3145
3235
|
* cannot read calls on sibling accounts.
|
|
3146
3236
|
*
|
|
3237
|
+
* Cursor pagination: pass the returned `nextCursor` as `before` to fetch
|
|
3238
|
+
* the next page (same scheme as `GET /v1/calls`). `since`/`until` remain
|
|
3239
|
+
* as absolute range filters and combine with the cursor.
|
|
3240
|
+
*
|
|
3147
3241
|
*/
|
|
3148
3242
|
export const listWhatsAppCalls = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<ListWhatsAppCallsData, ThrowOnError>) => {
|
|
3149
3243
|
return (options?.client ?? client).get<ListWhatsAppCallsResponse, ListWhatsAppCallsError, ThrowOnError>({
|
|
@@ -3162,6 +3256,23 @@ export const getWhatsAppCall = <ThrowOnError extends boolean = false>(options: O
|
|
|
3162
3256
|
});
|
|
3163
3257
|
};
|
|
3164
3258
|
|
|
3259
|
+
/**
|
|
3260
|
+
* Get a call recording
|
|
3261
|
+
* Resolves a fresh, playable MP3 URL for the call's recording.
|
|
3262
|
+
* Provider-signed recording URLs expire ~10 minutes after signing, so the
|
|
3263
|
+
* `recordingUrl` stored on the call is usually stale by the time it is
|
|
3264
|
+
* played; this endpoint re-signs on demand. Default responds `302 Found`
|
|
3265
|
+
* redirecting to the fresh URL (point an `<audio>` element or a link
|
|
3266
|
+
* straight at this endpoint); pass `as=json` to receive `{ url }` instead.
|
|
3267
|
+
*
|
|
3268
|
+
*/
|
|
3269
|
+
export const getWhatsAppCallRecording = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<GetWhatsAppCallRecordingData, ThrowOnError>) => {
|
|
3270
|
+
return (options?.client ?? client).get<GetWhatsAppCallRecordingResponse, GetWhatsAppCallRecordingError, ThrowOnError>({
|
|
3271
|
+
...options,
|
|
3272
|
+
url: '/v1/whatsapp/calls/{callId}/recording'
|
|
3273
|
+
});
|
|
3274
|
+
};
|
|
3275
|
+
|
|
3165
3276
|
/**
|
|
3166
3277
|
* Estimate per-minute cost
|
|
3167
3278
|
* Returns a zero-markup estimated cost for an outbound call to the
|
|
@@ -3176,6 +3287,356 @@ export const getWhatsAppCallEstimate = <ThrowOnError extends boolean = false>(op
|
|
|
3176
3287
|
});
|
|
3177
3288
|
};
|
|
3178
3289
|
|
|
3290
|
+
/**
|
|
3291
|
+
* List all calls (unified history)
|
|
3292
|
+
* Unified call history across ALL of your numbers: both channels
|
|
3293
|
+
* (WhatsApp Business Calling + regular phone/PSTN), inbound and outbound,
|
|
3294
|
+
* newest first. Unlike `GET /v1/voice/calls` (PSTN-only) and
|
|
3295
|
+
* `GET /v1/whatsapp/calls` (one account at a time), this endpoint needs no
|
|
3296
|
+
* `accountId` and never requires fanning out one request per number.
|
|
3297
|
+
*
|
|
3298
|
+
* Any row can be opened channel-agnostically via `GET /v1/calls/{id}` and
|
|
3299
|
+
* `GET /v1/calls/{id}/recording`; no branching on `channel` needed. When
|
|
3300
|
+
* the counterparty number matches a CRM contact, `contactId` and
|
|
3301
|
+
* `contactName` are set.
|
|
3302
|
+
*
|
|
3303
|
+
* Cursor pagination: pass the returned `nextCursor` as `before` to fetch
|
|
3304
|
+
* the next page. `nextCursor` is null on the last page.
|
|
3305
|
+
*
|
|
3306
|
+
*/
|
|
3307
|
+
export const listCalls = <ThrowOnError extends boolean = false>(options?: OptionsLegacyParser<ListCallsData, ThrowOnError>) => {
|
|
3308
|
+
return (options?.client ?? client).get<ListCallsResponse, ListCallsError, ThrowOnError>({
|
|
3309
|
+
...options,
|
|
3310
|
+
url: '/v1/calls'
|
|
3311
|
+
});
|
|
3312
|
+
};
|
|
3313
|
+
|
|
3314
|
+
/**
|
|
3315
|
+
* Get a call (any channel)
|
|
3316
|
+
* Channel-agnostic call detail: works for both WhatsApp and regular
|
|
3317
|
+
* phone (PSTN) calls, so any row from `GET /v1/calls` can be opened
|
|
3318
|
+
* without branching on `channel`. Returns the full call including
|
|
3319
|
+
* transcript segments, with `contactId`/`contactName` set when the
|
|
3320
|
+
* counterparty matches a CRM contact.
|
|
3321
|
+
*
|
|
3322
|
+
*/
|
|
3323
|
+
export const getCall = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<GetCallData, ThrowOnError>) => {
|
|
3324
|
+
return (options?.client ?? client).get<GetCallResponse, GetCallError, ThrowOnError>({
|
|
3325
|
+
...options,
|
|
3326
|
+
url: '/v1/calls/{id}'
|
|
3327
|
+
});
|
|
3328
|
+
};
|
|
3329
|
+
|
|
3330
|
+
/**
|
|
3331
|
+
* Get a call recording (any channel)
|
|
3332
|
+
* Channel-agnostic recording fetch: resolves a fresh, playable MP3 URL
|
|
3333
|
+
* for any call regardless of channel (provider-signed URLs expire ~10
|
|
3334
|
+
* minutes after signing, so this re-signs on demand). Default responds
|
|
3335
|
+
* `302 Found` redirecting to the fresh URL; pass `as=json` to receive
|
|
3336
|
+
* `{ url }` instead.
|
|
3337
|
+
*
|
|
3338
|
+
*/
|
|
3339
|
+
export const getCallRecording = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<GetCallRecordingData, ThrowOnError>) => {
|
|
3340
|
+
return (options?.client ?? client).get<GetCallRecordingResponse, GetCallRecordingError, ThrowOnError>({
|
|
3341
|
+
...options,
|
|
3342
|
+
url: '/v1/calls/{id}/recording'
|
|
3343
|
+
});
|
|
3344
|
+
};
|
|
3345
|
+
|
|
3346
|
+
/**
|
|
3347
|
+
* Place an outbound phone call
|
|
3348
|
+
* Dials `to` FROM one of your voice-enabled numbers and, on answer,
|
|
3349
|
+
* bridges the callee to the number's stored forward destination, or to
|
|
3350
|
+
* the per-call `forwardTo` override. Destinations can be your own AI
|
|
3351
|
+
* voice agent (Vapi/Retell), a phone, or a SIP endpoint. An optional
|
|
3352
|
+
* `greeting` is spoken to the callee before the bridge.
|
|
3353
|
+
*
|
|
3354
|
+
* The 200 response means the call is dialing; the lifecycle continues
|
|
3355
|
+
* asynchronously (track it via `GET /v1/voice/calls/{id}` or the `call.*`
|
|
3356
|
+
* webhooks). Outbound calls are capped per rolling hour (429 when hit).
|
|
3357
|
+
*
|
|
3358
|
+
* **Idempotency:** send an `Idempotency-Key` header to make retries safe;
|
|
3359
|
+
* same key + same body replays the original response instead of dialing
|
|
3360
|
+
* (and billing) a second call. The body `idempotencyKey` field predates
|
|
3361
|
+
* the header and keeps working; prefer the header.
|
|
3362
|
+
*
|
|
3363
|
+
*/
|
|
3364
|
+
export const createVoiceCall = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<CreateVoiceCallData, ThrowOnError>) => {
|
|
3365
|
+
return (options?.client ?? client).post<CreateVoiceCallResponse, CreateVoiceCallError, ThrowOnError>({
|
|
3366
|
+
...options,
|
|
3367
|
+
url: '/v1/voice/calls'
|
|
3368
|
+
});
|
|
3369
|
+
};
|
|
3370
|
+
|
|
3371
|
+
/**
|
|
3372
|
+
* List phone calls
|
|
3373
|
+
* Your PSTN voice calls (inbound + outbound), newest first. Cursor
|
|
3374
|
+
* pagination: pass the returned `nextCursor` as `before` for the next
|
|
3375
|
+
* page. For a history that also includes WhatsApp calls, use
|
|
3376
|
+
* `GET /v1/calls`.
|
|
3377
|
+
*
|
|
3378
|
+
*/
|
|
3379
|
+
export const listVoiceCalls = <ThrowOnError extends boolean = false>(options?: OptionsLegacyParser<ListVoiceCallsData, ThrowOnError>) => {
|
|
3380
|
+
return (options?.client ?? client).get<ListVoiceCallsResponse, ListVoiceCallsError, ThrowOnError>({
|
|
3381
|
+
...options,
|
|
3382
|
+
url: '/v1/voice/calls'
|
|
3383
|
+
});
|
|
3384
|
+
};
|
|
3385
|
+
|
|
3386
|
+
/**
|
|
3387
|
+
* Get a phone call
|
|
3388
|
+
* Full call detail, including the transcript segments when transcription was on.
|
|
3389
|
+
*/
|
|
3390
|
+
export const getVoiceCall = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<GetVoiceCallData, ThrowOnError>) => {
|
|
3391
|
+
return (options?.client ?? client).get<GetVoiceCallResponse, GetVoiceCallError, ThrowOnError>({
|
|
3392
|
+
...options,
|
|
3393
|
+
url: '/v1/voice/calls/{id}'
|
|
3394
|
+
});
|
|
3395
|
+
};
|
|
3396
|
+
|
|
3397
|
+
/**
|
|
3398
|
+
* Hang up a live call
|
|
3399
|
+
* Hangs up a live call on demand. Idempotent: ending a call that already
|
|
3400
|
+
* ended (or never connected) returns success with the call's current
|
|
3401
|
+
* status. Final duration/cost are written asynchronously when the hangup
|
|
3402
|
+
* event lands, so the call doc may briefly still show its prior status.
|
|
3403
|
+
*
|
|
3404
|
+
*/
|
|
3405
|
+
export const endVoiceCall = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<EndVoiceCallData, ThrowOnError>) => {
|
|
3406
|
+
return (options?.client ?? client).post<EndVoiceCallResponse, EndVoiceCallError, ThrowOnError>({
|
|
3407
|
+
...options,
|
|
3408
|
+
url: '/v1/voice/calls/{id}/end'
|
|
3409
|
+
});
|
|
3410
|
+
};
|
|
3411
|
+
|
|
3412
|
+
/**
|
|
3413
|
+
* Get a call recording
|
|
3414
|
+
* Resolves a fresh, playable MP3 URL for the call's recording
|
|
3415
|
+
* (provider-signed URLs expire ~10 minutes after signing, so this
|
|
3416
|
+
* endpoint re-signs on demand). Default responds `302 Found` redirecting
|
|
3417
|
+
* to the fresh URL; pass `as=json` to receive `{ url }` instead.
|
|
3418
|
+
*
|
|
3419
|
+
*/
|
|
3420
|
+
export const getVoiceCallRecording = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<GetVoiceCallRecordingData, ThrowOnError>) => {
|
|
3421
|
+
return (options?.client ?? client).get<GetVoiceCallRecordingResponse, GetVoiceCallRecordingError, ThrowOnError>({
|
|
3422
|
+
...options,
|
|
3423
|
+
url: '/v1/voice/calls/{id}/recording'
|
|
3424
|
+
});
|
|
3425
|
+
};
|
|
3426
|
+
|
|
3427
|
+
/**
|
|
3428
|
+
* Blind-transfer a live call
|
|
3429
|
+
* Moves the call's current leg to a new destination (a phone number or a
|
|
3430
|
+
* SIP endpoint). This is a BLIND transfer: control of the leg is handed
|
|
3431
|
+
* off and the call ends normally when the transferred leg hangs up. The
|
|
3432
|
+
* caller ID presented on the transfer leg is always your own number.
|
|
3433
|
+
*
|
|
3434
|
+
*/
|
|
3435
|
+
export const transferVoiceCall = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<TransferVoiceCallData, ThrowOnError>) => {
|
|
3436
|
+
return (options?.client ?? client).post<TransferVoiceCallResponse, TransferVoiceCallError, ThrowOnError>({
|
|
3437
|
+
...options,
|
|
3438
|
+
url: '/v1/voice/calls/{id}/transfer'
|
|
3439
|
+
});
|
|
3440
|
+
};
|
|
3441
|
+
|
|
3442
|
+
/**
|
|
3443
|
+
* Estimate call cost
|
|
3444
|
+
* Pre-call cost estimate for a PSTN call: the carrier leg plus optional
|
|
3445
|
+
* recording and transcription add-ons. Same billing formula as the
|
|
3446
|
+
* post-call invoice, so the quote and the final charge can't disagree.
|
|
3447
|
+
* The per-minute figure is deliberately conservative (the real cost
|
|
3448
|
+
* comes from the settled carrier record after the call), so estimates
|
|
3449
|
+
* trend slightly over the actual invoice. Parity endpoint of
|
|
3450
|
+
* `GET /v1/whatsapp/calls/estimate`, minus the Meta line (PSTN calls
|
|
3451
|
+
* have no separate Meta bill, so `totalCostUSD` equals
|
|
3452
|
+
* `billableCostUSD`).
|
|
3453
|
+
*
|
|
3454
|
+
*/
|
|
3455
|
+
export const getVoiceCallEstimate = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<GetVoiceCallEstimateData, ThrowOnError>) => {
|
|
3456
|
+
return (options?.client ?? client).get<GetVoiceCallEstimateResponse, GetVoiceCallEstimateError, ThrowOnError>({
|
|
3457
|
+
...options,
|
|
3458
|
+
url: '/v1/voice/calls/estimate'
|
|
3459
|
+
});
|
|
3460
|
+
};
|
|
3461
|
+
|
|
3462
|
+
/**
|
|
3463
|
+
* Mint a browser softphone session
|
|
3464
|
+
* Step 1 of the two-step browser softphone handshake. Mints a WebRTC
|
|
3465
|
+
* session (token + credential) the browser registers with the
|
|
3466
|
+
* `@telnyx/webrtc` SDK. Once registered, call
|
|
3467
|
+
* `POST /v1/voice/calls/web/dial` with the returned `credentialId` to
|
|
3468
|
+
* place the call. The split avoids bridging to a browser that has not
|
|
3469
|
+
* finished registering. The token lives ~1 hour (it must outlive the
|
|
3470
|
+
* whole call, not just the handshake).
|
|
3471
|
+
*
|
|
3472
|
+
*/
|
|
3473
|
+
export const createVoiceWebSession = <ThrowOnError extends boolean = false>(options?: OptionsLegacyParser<unknown, ThrowOnError>) => {
|
|
3474
|
+
return (options?.client ?? client).post<CreateVoiceWebSessionResponse, CreateVoiceWebSessionError, ThrowOnError>({
|
|
3475
|
+
...options,
|
|
3476
|
+
url: '/v1/voice/calls/web'
|
|
3477
|
+
});
|
|
3478
|
+
};
|
|
3479
|
+
|
|
3480
|
+
/**
|
|
3481
|
+
* Dial from the browser softphone
|
|
3482
|
+
* Step 2 of the browser softphone handshake: places an outbound call
|
|
3483
|
+
* whose answered leg is bridged to the browser registered with the
|
|
3484
|
+
* credential from `POST /v1/voice/calls/web`. The call runs through the
|
|
3485
|
+
* normal outbound lane, so it is logged as outbound (from = your number,
|
|
3486
|
+
* to = target) and recorded per the number's settings.
|
|
3487
|
+
*
|
|
3488
|
+
*/
|
|
3489
|
+
export const dialVoiceWebCall = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<DialVoiceWebCallData, ThrowOnError>) => {
|
|
3490
|
+
return (options?.client ?? client).post<DialVoiceWebCallResponse, DialVoiceWebCallError, ThrowOnError>({
|
|
3491
|
+
...options,
|
|
3492
|
+
url: '/v1/voice/calls/web/dial'
|
|
3493
|
+
});
|
|
3494
|
+
};
|
|
3495
|
+
|
|
3496
|
+
/**
|
|
3497
|
+
* Send an SMS/MMS
|
|
3498
|
+
* Sends an SMS (or MMS when `mediaUrls` is set) from one of your
|
|
3499
|
+
* SMS-enabled numbers. At least one of `text` / `mediaUrls` is required.
|
|
3500
|
+
* Both numbers are normalized to E.164, so `from` matches regardless of
|
|
3501
|
+
* formatting and replies thread into the same inbox conversation.
|
|
3502
|
+
*
|
|
3503
|
+
* US numbers must have an approved carrier registration
|
|
3504
|
+
* (`/v1/sms/registrations`) before messages deliver.
|
|
3505
|
+
*
|
|
3506
|
+
* **Idempotency:** send an `Idempotency-Key` header to make retries safe:
|
|
3507
|
+
* same key + same body replays the original response instead of sending a
|
|
3508
|
+
* second message; same key + different body returns 422; a key still in
|
|
3509
|
+
* flight returns 409.
|
|
3510
|
+
*
|
|
3511
|
+
*/
|
|
3512
|
+
export const sendSms = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<SendSmsData, ThrowOnError>) => {
|
|
3513
|
+
return (options?.client ?? client).post<SendSmsResponse, SendSmsError, ThrowOnError>({
|
|
3514
|
+
...options,
|
|
3515
|
+
url: '/v1/sms/messages'
|
|
3516
|
+
});
|
|
3517
|
+
};
|
|
3518
|
+
|
|
3519
|
+
/**
|
|
3520
|
+
* Look up carrier + line type
|
|
3521
|
+
* Carrier name and line type (mobile / landline / voip / toll-free) for a
|
|
3522
|
+
* number, plus `smsReachable` (landlines can't receive SMS). Use it to
|
|
3523
|
+
* validate recipients before sending. Each lookup is billed by the
|
|
3524
|
+
* carrier-data provider, so call it explicitly (e.g. pre-validating an
|
|
3525
|
+
* opt-in list), not on every send.
|
|
3526
|
+
*
|
|
3527
|
+
*/
|
|
3528
|
+
export const lookupSmsNumber = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<LookupSmsNumberData, ThrowOnError>) => {
|
|
3529
|
+
return (options?.client ?? client).get<LookupSmsNumberResponse, LookupSmsNumberError, ThrowOnError>({
|
|
3530
|
+
...options,
|
|
3531
|
+
url: '/v1/sms/lookup'
|
|
3532
|
+
});
|
|
3533
|
+
};
|
|
3534
|
+
|
|
3535
|
+
/**
|
|
3536
|
+
* List SMS opt-outs
|
|
3537
|
+
* The recipients who opted out of SMS (replied STOP) across your numbers,
|
|
3538
|
+
* most recent first. Compliance surface: you must be able to see and
|
|
3539
|
+
* export your opt-out list. Read-only: a recipient is re-subscribed only
|
|
3540
|
+
* by replying START. Pass `format=csv` to download a CSV instead of JSON.
|
|
3541
|
+
*
|
|
3542
|
+
*/
|
|
3543
|
+
export const listSmsOptOuts = <ThrowOnError extends boolean = false>(options?: OptionsLegacyParser<ListSmsOptOutsData, ThrowOnError>) => {
|
|
3544
|
+
return (options?.client ?? client).get<ListSmsOptOutsResponse, ListSmsOptOutsError, ThrowOnError>({
|
|
3545
|
+
...options,
|
|
3546
|
+
url: '/v1/sms/opt-outs'
|
|
3547
|
+
});
|
|
3548
|
+
};
|
|
3549
|
+
|
|
3550
|
+
/**
|
|
3551
|
+
* Start a carrier registration
|
|
3552
|
+
* Starts the US carrier registration that a number needs before SMS
|
|
3553
|
+
* delivers: 10DLC (standard company or sole-proprietor) or toll-free
|
|
3554
|
+
* verification. 10DLC needs `brand` + `campaign`; toll-free needs
|
|
3555
|
+
* `tollFree`. Approval is asynchronous; poll
|
|
3556
|
+
* `GET /v1/sms/registrations/{id}` (sole-prop registrations first need
|
|
3557
|
+
* the OTP step: a code is texted to the brand's mobile number, submit it
|
|
3558
|
+
* via `/verify-otp`).
|
|
3559
|
+
*
|
|
3560
|
+
* Already have an approved registration? Add another number to it with
|
|
3561
|
+
* `POST /v1/phone-numbers/{id}/sms/reuse-registration` instead
|
|
3562
|
+
* of registering (and paying the carrier brand fee) again.
|
|
3563
|
+
*
|
|
3564
|
+
* Rather have your client fill in the legal business details? Create a
|
|
3565
|
+
* share link with `POST /v1/sms/registrations/share`.
|
|
3566
|
+
*
|
|
3567
|
+
*/
|
|
3568
|
+
export const startSmsRegistration = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<StartSmsRegistrationData, ThrowOnError>) => {
|
|
3569
|
+
return (options?.client ?? client).post<StartSmsRegistrationResponse, StartSmsRegistrationError, ThrowOnError>({
|
|
3570
|
+
...options,
|
|
3571
|
+
url: '/v1/sms/registrations'
|
|
3572
|
+
});
|
|
3573
|
+
};
|
|
3574
|
+
|
|
3575
|
+
/**
|
|
3576
|
+
* List carrier registrations
|
|
3577
|
+
*/
|
|
3578
|
+
export const listSmsRegistrations = <ThrowOnError extends boolean = false>(options?: OptionsLegacyParser<unknown, ThrowOnError>) => {
|
|
3579
|
+
return (options?.client ?? client).get<ListSmsRegistrationsResponse, ListSmsRegistrationsError, ThrowOnError>({
|
|
3580
|
+
...options,
|
|
3581
|
+
url: '/v1/sms/registrations'
|
|
3582
|
+
});
|
|
3583
|
+
};
|
|
3584
|
+
|
|
3585
|
+
/**
|
|
3586
|
+
* Get a carrier registration
|
|
3587
|
+
* Poll this for approval progress after starting a registration.
|
|
3588
|
+
*/
|
|
3589
|
+
export const getSmsRegistration = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<GetSmsRegistrationData, ThrowOnError>) => {
|
|
3590
|
+
return (options?.client ?? client).get<GetSmsRegistrationResponse, GetSmsRegistrationError, ThrowOnError>({
|
|
3591
|
+
...options,
|
|
3592
|
+
url: '/v1/sms/registrations/{id}'
|
|
3593
|
+
});
|
|
3594
|
+
};
|
|
3595
|
+
|
|
3596
|
+
/**
|
|
3597
|
+
* Submit the sole-prop OTP
|
|
3598
|
+
* Completes sole-proprietor 10DLC brand verification by submitting the
|
|
3599
|
+
* one-time PIN texted to the brand's mobile number. On success the
|
|
3600
|
+
* registration continues to campaign creation automatically.
|
|
3601
|
+
*
|
|
3602
|
+
*/
|
|
3603
|
+
export const verifySmsRegistrationOtp = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<VerifySmsRegistrationOtpData, ThrowOnError>) => {
|
|
3604
|
+
return (options?.client ?? client).post<VerifySmsRegistrationOtpResponse, VerifySmsRegistrationOtpError, ThrowOnError>({
|
|
3605
|
+
...options,
|
|
3606
|
+
url: '/v1/sms/registrations/{id}/verify-otp'
|
|
3607
|
+
});
|
|
3608
|
+
};
|
|
3609
|
+
|
|
3610
|
+
/**
|
|
3611
|
+
* Appeal a rejected campaign
|
|
3612
|
+
* Appeals a rejected 10DLC campaign with the carrier registry. Only a
|
|
3613
|
+
* registration that reached campaign creation can be appealed; a
|
|
3614
|
+
* brand-level rejection should be fixed and re-verified instead. On
|
|
3615
|
+
* success the registration returns to `pending`.
|
|
3616
|
+
*
|
|
3617
|
+
*/
|
|
3618
|
+
export const appealSmsRegistration = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<AppealSmsRegistrationData, ThrowOnError>) => {
|
|
3619
|
+
return (options?.client ?? client).post<AppealSmsRegistrationResponse, AppealSmsRegistrationError, ThrowOnError>({
|
|
3620
|
+
...options,
|
|
3621
|
+
url: '/v1/sms/registrations/{id}/appeal'
|
|
3622
|
+
});
|
|
3623
|
+
};
|
|
3624
|
+
|
|
3625
|
+
/**
|
|
3626
|
+
* Create a registration share link
|
|
3627
|
+
* Creates a single-use, expiring link (valid 7 days) that lets someone
|
|
3628
|
+
* else (whoever has the legal business details) fill in the carrier
|
|
3629
|
+
* registration form for one of your numbers, without a Zernio login. The
|
|
3630
|
+
* registration is created under your account once the form is submitted.
|
|
3631
|
+
*
|
|
3632
|
+
*/
|
|
3633
|
+
export const shareSmsRegistration = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<ShareSmsRegistrationData, ThrowOnError>) => {
|
|
3634
|
+
return (options?.client ?? client).post<ShareSmsRegistrationResponse, ShareSmsRegistrationError, ThrowOnError>({
|
|
3635
|
+
...options,
|
|
3636
|
+
url: '/v1/sms/registrations/share'
|
|
3637
|
+
});
|
|
3638
|
+
};
|
|
3639
|
+
|
|
3179
3640
|
/**
|
|
3180
3641
|
* Look up a library template
|
|
3181
3642
|
* Look up a single pre-approved Template Library template by its exact name, to
|
|
@@ -3446,47 +3907,82 @@ export const createWhatsAppDataset = <ThrowOnError extends boolean = false>(opti
|
|
|
3446
3907
|
|
|
3447
3908
|
/**
|
|
3448
3909
|
* List phone numbers
|
|
3449
|
-
* List all
|
|
3910
|
+
* List all phone numbers purchased by the authenticated user.
|
|
3450
3911
|
* By default, released numbers are excluded. Connected (bring-your-own)
|
|
3451
|
-
* numbers are returned in the separate `connected` array
|
|
3452
|
-
* billed and have no provisioning lifecycle.
|
|
3912
|
+
* WhatsApp numbers are returned in the separate `connected` array; they
|
|
3913
|
+
* are not billed and have no provisioning lifecycle.
|
|
3453
3914
|
*
|
|
3454
3915
|
*/
|
|
3455
|
-
export const
|
|
3456
|
-
return (options?.client ?? client).get<
|
|
3916
|
+
export const listPhoneNumbers = <ThrowOnError extends boolean = false>(options?: OptionsLegacyParser<ListPhoneNumbersData, ThrowOnError>) => {
|
|
3917
|
+
return (options?.client ?? client).get<ListPhoneNumbersResponse, ListPhoneNumbersError, ThrowOnError>({
|
|
3457
3918
|
...options,
|
|
3458
|
-
url: '/v1/
|
|
3919
|
+
url: '/v1/phone-numbers'
|
|
3920
|
+
});
|
|
3921
|
+
};
|
|
3922
|
+
|
|
3923
|
+
/**
|
|
3924
|
+
* Get phone number
|
|
3925
|
+
* Retrieve the current status of a purchased phone number. Poll this to
|
|
3926
|
+
* track Meta pre-verification (US sync path) and, for regulated (Tier 3/4)
|
|
3927
|
+
* numbers, the async lifecycle: pending_regulatory → active (or
|
|
3928
|
+
* regulatory_declined). When a regulated number has an Onfido ID step,
|
|
3929
|
+
* `onfidoVerificationUrl` appears here once the order is placed — forward
|
|
3930
|
+
* it to the end user. (Or subscribe to the whatsapp.number.* webhooks
|
|
3931
|
+
* instead of polling.)
|
|
3932
|
+
*
|
|
3933
|
+
*/
|
|
3934
|
+
export const getPhoneNumber = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<GetPhoneNumberData, ThrowOnError>) => {
|
|
3935
|
+
return (options?.client ?? client).get<GetPhoneNumberResponse, GetPhoneNumberError, ThrowOnError>({
|
|
3936
|
+
...options,
|
|
3937
|
+
url: '/v1/phone-numbers/{id}'
|
|
3938
|
+
});
|
|
3939
|
+
};
|
|
3940
|
+
|
|
3941
|
+
/**
|
|
3942
|
+
* Release phone number
|
|
3943
|
+
* Release a purchased phone number. This will:
|
|
3944
|
+
* 1. Disconnect any linked WhatsApp social account
|
|
3945
|
+
* 2. Decrement the Stripe subscription quantity (or cancel if last number)
|
|
3946
|
+
* 3. Release the number from Telnyx
|
|
3947
|
+
* 4. Mark the number as released
|
|
3948
|
+
*
|
|
3949
|
+
*/
|
|
3950
|
+
export const releasePhoneNumber = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<ReleasePhoneNumberData, ThrowOnError>) => {
|
|
3951
|
+
return (options?.client ?? client).delete<ReleasePhoneNumberResponse, ReleasePhoneNumberError, ThrowOnError>({
|
|
3952
|
+
...options,
|
|
3953
|
+
url: '/v1/phone-numbers/{id}'
|
|
3459
3954
|
});
|
|
3460
3955
|
};
|
|
3461
3956
|
|
|
3462
3957
|
/**
|
|
3463
3958
|
* Purchase phone number
|
|
3464
|
-
* Initiate purchasing a
|
|
3959
|
+
* Initiate purchasing a phone number. Payment-first flow: the user does not pick
|
|
3465
3960
|
* a specific number. The system either creates a Stripe Checkout Session (first number)
|
|
3466
3961
|
* or increments the existing subscription quantity and provisions inline (subsequent numbers).
|
|
3467
3962
|
*
|
|
3468
3963
|
* Requires a paid plan. The maximum number of phone numbers is determined by the user's plan.
|
|
3469
3964
|
*
|
|
3470
3965
|
*/
|
|
3471
|
-
export const
|
|
3472
|
-
return (options?.client ?? client).post<
|
|
3966
|
+
export const purchasePhoneNumber = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<PurchasePhoneNumberData, ThrowOnError>) => {
|
|
3967
|
+
return (options?.client ?? client).post<PurchasePhoneNumberResponse, PurchasePhoneNumberError, ThrowOnError>({
|
|
3473
3968
|
...options,
|
|
3474
|
-
url: '/v1/
|
|
3969
|
+
url: '/v1/phone-numbers/purchase'
|
|
3475
3970
|
});
|
|
3476
3971
|
};
|
|
3477
3972
|
|
|
3478
3973
|
/**
|
|
3479
3974
|
* List offerable number countries
|
|
3480
|
-
* The
|
|
3975
|
+
* The phone number countries available to purchase, each with its flat
|
|
3481
3976
|
* monthly price (cents), regulatory tier, whether it needs end-user KYC
|
|
3482
|
-
* (Tier 3/4), and
|
|
3483
|
-
*
|
|
3977
|
+
* (Tier 3/4), and per-feature availability (PSTN calls, WhatsApp, SMS,
|
|
3978
|
+
* and WhatsApp Business Calling outbound). Drives the country picker.
|
|
3979
|
+
* Tier-4 countries appear only when enabled.
|
|
3484
3980
|
*
|
|
3485
3981
|
*/
|
|
3486
|
-
export const
|
|
3487
|
-
return (options?.client ?? client).get<
|
|
3982
|
+
export const listPhoneNumberCountries = <ThrowOnError extends boolean = false>(options?: OptionsLegacyParser<unknown, ThrowOnError>) => {
|
|
3983
|
+
return (options?.client ?? client).get<ListPhoneNumberCountriesResponse, ListPhoneNumberCountriesError, ThrowOnError>({
|
|
3488
3984
|
...options,
|
|
3489
|
-
url: '/v1/
|
|
3985
|
+
url: '/v1/phone-numbers/countries'
|
|
3490
3986
|
});
|
|
3491
3987
|
};
|
|
3492
3988
|
|
|
@@ -3494,10 +3990,108 @@ export const listWhatsAppNumberCountries = <ThrowOnError extends boolean = false
|
|
|
3494
3990
|
* Search available numbers
|
|
3495
3991
|
* Search the provider's inventory for numbers available to purchase in a
|
|
3496
3992
|
* country (default US). Optional filters narrow the results. The country
|
|
3497
|
-
* must be offerable (see GET /v1/
|
|
3993
|
+
* must be offerable (see GET /v1/phone-numbers/countries). Voice
|
|
3994
|
+
* capability is always required; pass `sms=true` to only see numbers that
|
|
3995
|
+
* can also text (SMS support is per-number, not per-country).
|
|
3498
3996
|
*
|
|
3499
3997
|
*/
|
|
3500
|
-
export const
|
|
3998
|
+
export const searchAvailablePhoneNumbers = <ThrowOnError extends boolean = false>(options?: OptionsLegacyParser<SearchAvailablePhoneNumbersData, ThrowOnError>) => {
|
|
3999
|
+
return (options?.client ?? client).get<SearchAvailablePhoneNumbersResponse, SearchAvailablePhoneNumbersError, ThrowOnError>({
|
|
4000
|
+
...options,
|
|
4001
|
+
url: '/v1/phone-numbers/available'
|
|
4002
|
+
});
|
|
4003
|
+
};
|
|
4004
|
+
|
|
4005
|
+
/**
|
|
4006
|
+
* Check country availability
|
|
4007
|
+
* Pre-purchase check, so you can warn BEFORE a customer invests in KYC
|
|
4008
|
+
* (regulated review is async, 1-3 days). Tells you whether we have
|
|
4009
|
+
* deliverable inventory, and what address the customer needs:
|
|
4010
|
+
* - `addressConstraint: geo` → the registered address MUST be in one of
|
|
4011
|
+
* the returned `areas` (the only place we have stock). A different-area
|
|
4012
|
+
* address passes pre-approval but the number can never be assigned.
|
|
4013
|
+
* - `addressConstraint: country` → any in-country address works.
|
|
4014
|
+
* - `addressConstraint: none` → field-only / instant country, no address.
|
|
4015
|
+
* Call this before starting the KYC form for regulated countries.
|
|
4016
|
+
*
|
|
4017
|
+
*/
|
|
4018
|
+
export const checkPhoneNumberAvailability = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<CheckPhoneNumberAvailabilityData, ThrowOnError>) => {
|
|
4019
|
+
return (options?.client ?? client).get<CheckPhoneNumberAvailabilityResponse, CheckPhoneNumberAvailabilityError, ThrowOnError>({
|
|
4020
|
+
...options,
|
|
4021
|
+
url: '/v1/phone-numbers/availability'
|
|
4022
|
+
});
|
|
4023
|
+
};
|
|
4024
|
+
|
|
4025
|
+
/**
|
|
4026
|
+
* @deprecated
|
|
4027
|
+
* List phone numbers
|
|
4028
|
+
* Deprecated alias of `/v1/phone-numbers`; same contract. New
|
|
4029
|
+
* integrations should use that path.
|
|
4030
|
+
*
|
|
4031
|
+
* List all WhatsApp phone numbers purchased by the authenticated user.
|
|
4032
|
+
* By default, released numbers are excluded. Connected (bring-your-own)
|
|
4033
|
+
* numbers are returned in the separate `connected` array — they are not
|
|
4034
|
+
* billed and have no provisioning lifecycle.
|
|
4035
|
+
*
|
|
4036
|
+
*/
|
|
4037
|
+
export const getWhatsAppPhoneNumbers = <ThrowOnError extends boolean = false>(options?: OptionsLegacyParser<GetWhatsAppPhoneNumbersData, ThrowOnError>) => {
|
|
4038
|
+
return (options?.client ?? client).get<GetWhatsAppPhoneNumbersResponse, GetWhatsAppPhoneNumbersError, ThrowOnError>({
|
|
4039
|
+
...options,
|
|
4040
|
+
url: '/v1/whatsapp/phone-numbers'
|
|
4041
|
+
});
|
|
4042
|
+
};
|
|
4043
|
+
|
|
4044
|
+
/**
|
|
4045
|
+
* @deprecated
|
|
4046
|
+
* Purchase phone number
|
|
4047
|
+
* Deprecated alias of `/v1/phone-numbers/purchase`; same contract. New
|
|
4048
|
+
* integrations should use that path.
|
|
4049
|
+
*
|
|
4050
|
+
* Initiate purchasing a WhatsApp phone number. Payment-first flow: the user does not pick
|
|
4051
|
+
* a specific number. The system either creates a Stripe Checkout Session (first number)
|
|
4052
|
+
* or increments the existing subscription quantity and provisions inline (subsequent numbers).
|
|
4053
|
+
*
|
|
4054
|
+
* Requires a paid plan. The maximum number of phone numbers is determined by the user's plan.
|
|
4055
|
+
*
|
|
4056
|
+
*/
|
|
4057
|
+
export const purchaseWhatsAppPhoneNumber = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<PurchaseWhatsAppPhoneNumberData, ThrowOnError>) => {
|
|
4058
|
+
return (options?.client ?? client).post<PurchaseWhatsAppPhoneNumberResponse, PurchaseWhatsAppPhoneNumberError, ThrowOnError>({
|
|
4059
|
+
...options,
|
|
4060
|
+
url: '/v1/whatsapp/phone-numbers/purchase'
|
|
4061
|
+
});
|
|
4062
|
+
};
|
|
4063
|
+
|
|
4064
|
+
/**
|
|
4065
|
+
* @deprecated
|
|
4066
|
+
* List offerable number countries
|
|
4067
|
+
* Deprecated alias of `/v1/phone-numbers/countries`; same contract. New
|
|
4068
|
+
* integrations should use that path.
|
|
4069
|
+
*
|
|
4070
|
+
* The WhatsApp number countries available to purchase, each with its flat
|
|
4071
|
+
* monthly price (cents), regulatory tier, whether it needs end-user KYC
|
|
4072
|
+
* (Tier 3/4), and whether outbound calling is available (not BIC-blocked).
|
|
4073
|
+
* Drives the country picker. Tier-4 countries appear only when enabled.
|
|
4074
|
+
*
|
|
4075
|
+
*/
|
|
4076
|
+
export const listWhatsAppNumberCountries = <ThrowOnError extends boolean = false>(options?: OptionsLegacyParser<unknown, ThrowOnError>) => {
|
|
4077
|
+
return (options?.client ?? client).get<ListWhatsAppNumberCountriesResponse, ListWhatsAppNumberCountriesError, ThrowOnError>({
|
|
4078
|
+
...options,
|
|
4079
|
+
url: '/v1/whatsapp/phone-numbers/countries'
|
|
4080
|
+
});
|
|
4081
|
+
};
|
|
4082
|
+
|
|
4083
|
+
/**
|
|
4084
|
+
* @deprecated
|
|
4085
|
+
* Search available numbers
|
|
4086
|
+
* Deprecated alias of `/v1/phone-numbers/available`; same contract. New
|
|
4087
|
+
* integrations should use that path.
|
|
4088
|
+
*
|
|
4089
|
+
* Search the provider's inventory for numbers available to purchase in a
|
|
4090
|
+
* country (default US). Optional filters narrow the results. The country
|
|
4091
|
+
* must be offerable (see GET /v1/whatsapp/phone-numbers/countries).
|
|
4092
|
+
*
|
|
4093
|
+
*/
|
|
4094
|
+
export const searchAvailableWhatsAppNumbers = <ThrowOnError extends boolean = false>(options?: OptionsLegacyParser<SearchAvailableWhatsAppNumbersData, ThrowOnError>) => {
|
|
3501
4095
|
return (options?.client ?? client).get<SearchAvailableWhatsAppNumbersResponse, SearchAvailableWhatsAppNumbersError, ThrowOnError>({
|
|
3502
4096
|
...options,
|
|
3503
4097
|
url: '/v1/whatsapp/phone-numbers/available'
|
|
@@ -3505,7 +4099,11 @@ export const searchAvailableWhatsAppNumbers = <ThrowOnError extends boolean = fa
|
|
|
3505
4099
|
};
|
|
3506
4100
|
|
|
3507
4101
|
/**
|
|
4102
|
+
* @deprecated
|
|
3508
4103
|
* Check country availability
|
|
4104
|
+
* Deprecated alias of `/v1/phone-numbers/availability`; same contract. New
|
|
4105
|
+
* integrations should use that path.
|
|
4106
|
+
*
|
|
3509
4107
|
* Pre-purchase check, so you can warn BEFORE a customer invests in KYC
|
|
3510
4108
|
* (regulated review is async, 1-3 days). Tells you whether we have
|
|
3511
4109
|
* deliverable inventory, and what address the customer needs:
|
|
@@ -3531,6 +4129,249 @@ export const checkWhatsAppNumberAvailability = <ThrowOnError extends boolean = f
|
|
|
3531
4129
|
* address, or file (document) per requirement.
|
|
3532
4130
|
*
|
|
3533
4131
|
*/
|
|
4132
|
+
export const getPhoneNumberKycForm = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<GetPhoneNumberKycFormData, ThrowOnError>) => {
|
|
4133
|
+
return (options?.client ?? client).get<GetPhoneNumberKycFormResponse, GetPhoneNumberKycFormError, ThrowOnError>({
|
|
4134
|
+
...options,
|
|
4135
|
+
url: '/v1/phone-numbers/kyc'
|
|
4136
|
+
});
|
|
4137
|
+
};
|
|
4138
|
+
|
|
4139
|
+
/**
|
|
4140
|
+
* Submit KYC
|
|
4141
|
+
* Submit the end customer's KYC (textual values, uploaded documents,
|
|
4142
|
+
* address) for a Tier 3/4 country. Documents are streamed straight to the
|
|
4143
|
+
* number provider and are not stored by Zernio. Builds + submits a
|
|
4144
|
+
* regulatory requirement group and claims a pending_regulatory slot; the
|
|
4145
|
+
* number is ordered + activated once the provider approves (asynchronous).
|
|
4146
|
+
* A customer may hold several same-country numbers in review at once; a
|
|
4147
|
+
* double-submit of the SAME attempt is deduped via `submissionId`.
|
|
4148
|
+
*
|
|
4149
|
+
* For an ID-card document requirement, carriers commonly require BOTH sides:
|
|
4150
|
+
* combine the front and back into a single file before uploading (the
|
|
4151
|
+
* dashboard does this automatically). A one-sided ID is a common decline
|
|
4152
|
+
* reason; fix it via POST /v1/phone-numbers/{id}/remediate.
|
|
4153
|
+
*
|
|
4154
|
+
* Before submitting, call GET /v1/phone-numbers/availability to
|
|
4155
|
+
* check the country has deliverable inventory and, for geographic-match
|
|
4156
|
+
* countries, which area the address must be in — otherwise the submission
|
|
4157
|
+
* can pass review yet never be assignable a number.
|
|
4158
|
+
*
|
|
4159
|
+
*/
|
|
4160
|
+
export const submitPhoneNumberKyc = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<SubmitPhoneNumberKycData, ThrowOnError>) => {
|
|
4161
|
+
return (options?.client ?? client).post<SubmitPhoneNumberKycResponse, SubmitPhoneNumberKycError, ThrowOnError>({
|
|
4162
|
+
...options,
|
|
4163
|
+
url: '/v1/phone-numbers/kyc'
|
|
4164
|
+
});
|
|
4165
|
+
};
|
|
4166
|
+
|
|
4167
|
+
/**
|
|
4168
|
+
* Upload a KYC document
|
|
4169
|
+
* Upload ONE document and get back its provider document id, to reference
|
|
4170
|
+
* from POST /v1/phone-numbers/kyc via `documents[].documentId`.
|
|
4171
|
+
* Send the RAW file bytes as the request body (not base64); put the filename
|
|
4172
|
+
* in the `X-Filename` header. Uploading documents one-per-request keeps each
|
|
4173
|
+
* request under the ~4.5MB body limit. The document streams straight to the
|
|
4174
|
+
* number provider and is not stored by Zernio.
|
|
4175
|
+
*
|
|
4176
|
+
*/
|
|
4177
|
+
export const uploadPhoneNumberKycDocument = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<UploadPhoneNumberKycDocumentData, ThrowOnError>) => {
|
|
4178
|
+
return (options?.client ?? client).post<UploadPhoneNumberKycDocumentResponse, UploadPhoneNumberKycDocumentError, ThrowOnError>({
|
|
4179
|
+
...options,
|
|
4180
|
+
url: '/v1/phone-numbers/kyc/upload-document'
|
|
4181
|
+
});
|
|
4182
|
+
};
|
|
4183
|
+
|
|
4184
|
+
/**
|
|
4185
|
+
* Pre-validate KYC address
|
|
4186
|
+
* Optional early check for the address step of a Tier 4 (end-user identity)
|
|
4187
|
+
* registration: validates a postal address for deliverability BEFORE the full
|
|
4188
|
+
* KYC submit, so it can be corrected before any documents are uploaded. The
|
|
4189
|
+
* full submit (POST /v1/phone-numbers/kyc) re-validates the address,
|
|
4190
|
+
* so this call is purely a fast feedback path and skipping it is safe. Only
|
|
4191
|
+
* the postal address is sent (no documents, no gov-ID fields). A region
|
|
4192
|
+
* (`administrative_area`) is required by the validator; when it is omitted the
|
|
4193
|
+
* pre-check is skipped and `{ ok: true, skipped: true }` is returned (the
|
|
4194
|
+
* final submit still validates).
|
|
4195
|
+
*
|
|
4196
|
+
*/
|
|
4197
|
+
export const validatePhoneNumberKycAddress = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<ValidatePhoneNumberKycAddressData, ThrowOnError>) => {
|
|
4198
|
+
return (options?.client ?? client).post<ValidatePhoneNumberKycAddressResponse, ValidatePhoneNumberKycAddressError, ThrowOnError>({
|
|
4199
|
+
...options,
|
|
4200
|
+
url: '/v1/phone-numbers/kyc/validate-address'
|
|
4201
|
+
});
|
|
4202
|
+
};
|
|
4203
|
+
|
|
4204
|
+
/**
|
|
4205
|
+
* Create a hosted KYC link
|
|
4206
|
+
* Create a single-use, 7-day hosted KYC link that your end customer
|
|
4207
|
+
* completes WITHOUT a Zernio login — useful when the person who holds the
|
|
4208
|
+
* ID and address is not your team. They fill the regulated verification on
|
|
4209
|
+
* a Zernio-hosted page; the number provisions under YOUR account once they
|
|
4210
|
+
* submit. Only regulated (KYC) countries are valid: a country that does not
|
|
4211
|
+
* require KYC returns 400.
|
|
4212
|
+
*
|
|
4213
|
+
* White-label the page with `branding` (your company name, logo, brand
|
|
4214
|
+
* color). Supply `redirect_url` to send the end customer back to your own
|
|
4215
|
+
* site after a successful submit (completion params are appended — see
|
|
4216
|
+
* below). Listen for the `whatsapp.number.kyc_submitted` webhook to react
|
|
4217
|
+
* when the form is completed.
|
|
4218
|
+
*
|
|
4219
|
+
*/
|
|
4220
|
+
export const createPhoneNumberKycLink = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<CreatePhoneNumberKycLinkData, ThrowOnError>) => {
|
|
4221
|
+
return (options?.client ?? client).post<CreatePhoneNumberKycLinkResponse, CreatePhoneNumberKycLinkError, ThrowOnError>({
|
|
4222
|
+
...options,
|
|
4223
|
+
url: '/v1/phone-numbers/kyc/share'
|
|
4224
|
+
});
|
|
4225
|
+
};
|
|
4226
|
+
|
|
4227
|
+
/**
|
|
4228
|
+
* Port numbers in
|
|
4229
|
+
* Submit a port-in for one or more existing numbers from another carrier.
|
|
4230
|
+
* Creates the carrier order(s), attaches the end-user (current account)
|
|
4231
|
+
* info plus the LOA and invoice documents, and submits to the losing
|
|
4232
|
+
* carrier. The transfer PIN is forwarded to the carrier and never stored.
|
|
4233
|
+
* Ported numbers arrive voice-ready (and SMS-ready where the order
|
|
4234
|
+
* supports messaging).
|
|
4235
|
+
*
|
|
4236
|
+
* Run the portability check (POST /v1/phone-numbers/port-in/check) and
|
|
4237
|
+
* upload the two documents (POST /v1/phone-numbers/port-in/documents)
|
|
4238
|
+
* first. The carrier may split the numbers into several orders (by
|
|
4239
|
+
* country, number type, losing carrier); `orders` carries per-order
|
|
4240
|
+
* results, and a partial failure still returns 201 with the failed
|
|
4241
|
+
* orders' `error` set (they stay as cancellable drafts).
|
|
4242
|
+
*
|
|
4243
|
+
*/
|
|
4244
|
+
export const createPhoneNumberPortIn = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<CreatePhoneNumberPortInData, ThrowOnError>) => {
|
|
4245
|
+
return (options?.client ?? client).post<CreatePhoneNumberPortInResponse, CreatePhoneNumberPortInError, ThrowOnError>({
|
|
4246
|
+
...options,
|
|
4247
|
+
url: '/v1/phone-numbers/port-in'
|
|
4248
|
+
});
|
|
4249
|
+
};
|
|
4250
|
+
|
|
4251
|
+
/**
|
|
4252
|
+
* List port-in orders
|
|
4253
|
+
* Your porting orders, newest first (max 50). Poll this for port progress:
|
|
4254
|
+
* pending, confirmed FOC date, exception reason, or ported.
|
|
4255
|
+
*
|
|
4256
|
+
*/
|
|
4257
|
+
export const listPhoneNumberPortIns = <ThrowOnError extends boolean = false>(options?: OptionsLegacyParser<unknown, ThrowOnError>) => {
|
|
4258
|
+
return (options?.client ?? client).get<ListPhoneNumberPortInsResponse, ListPhoneNumberPortInsError, ThrowOnError>({
|
|
4259
|
+
...options,
|
|
4260
|
+
url: '/v1/phone-numbers/port-in'
|
|
4261
|
+
});
|
|
4262
|
+
};
|
|
4263
|
+
|
|
4264
|
+
/**
|
|
4265
|
+
* Check portability
|
|
4266
|
+
* Pre-flight portability check: whether each number can be ported in and
|
|
4267
|
+
* whether it qualifies for FastPort, BEFORE the user commits to a port
|
|
4268
|
+
* order (LOA, invoice, service address). Read-only; creates no order and
|
|
4269
|
+
* bills nothing.
|
|
4270
|
+
*
|
|
4271
|
+
*/
|
|
4272
|
+
export const checkPhoneNumberPortability = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<CheckPhoneNumberPortabilityData, ThrowOnError>) => {
|
|
4273
|
+
return (options?.client ?? client).post<CheckPhoneNumberPortabilityResponse, CheckPhoneNumberPortabilityError, ThrowOnError>({
|
|
4274
|
+
...options,
|
|
4275
|
+
url: '/v1/phone-numbers/port-in/check'
|
|
4276
|
+
});
|
|
4277
|
+
};
|
|
4278
|
+
|
|
4279
|
+
/**
|
|
4280
|
+
* Upload a porting document
|
|
4281
|
+
* Upload ONE porting document (the signed LOA or a recent carrier invoice)
|
|
4282
|
+
* and get back its `documentId`, which the port-in create request takes as
|
|
4283
|
+
* `loaDocumentId` / `invoiceDocumentId`. PDF, JPEG, or PNG, 10MB max.
|
|
4284
|
+
*
|
|
4285
|
+
*/
|
|
4286
|
+
export const uploadPhoneNumberPortInDocument = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<UploadPhoneNumberPortInDocumentData, ThrowOnError>) => {
|
|
4287
|
+
return (options?.client ?? client).post<UploadPhoneNumberPortInDocumentResponse, UploadPhoneNumberPortInDocumentError, ThrowOnError>({
|
|
4288
|
+
...options,
|
|
4289
|
+
...formDataBodySerializer,
|
|
4290
|
+
headers: {
|
|
4291
|
+
'Content-Type': null,
|
|
4292
|
+
...options?.headers
|
|
4293
|
+
},
|
|
4294
|
+
url: '/v1/phone-numbers/port-in/documents'
|
|
4295
|
+
});
|
|
4296
|
+
};
|
|
4297
|
+
|
|
4298
|
+
/**
|
|
4299
|
+
* Cancel a port-in
|
|
4300
|
+
* Cancel an in-flight port (wrong number, staying with the old carrier).
|
|
4301
|
+
* Only orders that haven't ported can be cancelled; a completed port is a
|
|
4302
|
+
* normal number release instead. The carrier may report `cancel-pending`
|
|
4303
|
+
* briefly while the losing carrier acknowledges; it settles to
|
|
4304
|
+
* `cancelled`.
|
|
4305
|
+
*
|
|
4306
|
+
*/
|
|
4307
|
+
export const cancelPhoneNumberPortIn = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<CancelPhoneNumberPortInData, ThrowOnError>) => {
|
|
4308
|
+
return (options?.client ?? client).delete<CancelPhoneNumberPortInResponse, CancelPhoneNumberPortInError, ThrowOnError>({
|
|
4309
|
+
...options,
|
|
4310
|
+
url: '/v1/phone-numbers/port-in/{id}'
|
|
4311
|
+
});
|
|
4312
|
+
};
|
|
4313
|
+
|
|
4314
|
+
/**
|
|
4315
|
+
* Pre-review a KYC packet
|
|
4316
|
+
* Advisory dry-run of a regulated-KYC packet before submitting: reviews
|
|
4317
|
+
* the exact documents the regulator will see (referenced by the ids from
|
|
4318
|
+
* POST /v1/phone-numbers/kyc/upload-document) against the declared values
|
|
4319
|
+
* and address, and returns plain-language advisories for likely decline
|
|
4320
|
+
* reasons (wrong document type, mismatched address, one-sided ID scans).
|
|
4321
|
+
* Non-blocking: advisories are warnings, submitting anyway is always
|
|
4322
|
+
* allowed, and any review failure degrades to an empty list.
|
|
4323
|
+
*
|
|
4324
|
+
*/
|
|
4325
|
+
export const reviewPhoneNumberKycPacket = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<ReviewPhoneNumberKycPacketData, ThrowOnError>) => {
|
|
4326
|
+
return (options?.client ?? client).post<ReviewPhoneNumberKycPacketResponse, ReviewPhoneNumberKycPacketError, ThrowOnError>({
|
|
4327
|
+
...options,
|
|
4328
|
+
url: '/v1/phone-numbers/kyc/review-packet'
|
|
4329
|
+
});
|
|
4330
|
+
};
|
|
4331
|
+
|
|
4332
|
+
/**
|
|
4333
|
+
* Get declined requirements
|
|
4334
|
+
* For a number in `regulatory_declined`, returns ONLY the requirements the
|
|
4335
|
+
* reviewer flagged declined, as a form spec (same shape as the KYC form GET).
|
|
4336
|
+
* The customer fixes just those — Telnyx supports correcting a declined
|
|
4337
|
+
* requirement group and re-submitting it (no new number/group). Falls back
|
|
4338
|
+
* to the full spec if the provider exposes no per-requirement flags.
|
|
4339
|
+
*
|
|
4340
|
+
*/
|
|
4341
|
+
export const getPhoneNumberRemediation = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<GetPhoneNumberRemediationData, ThrowOnError>) => {
|
|
4342
|
+
return (options?.client ?? client).get<GetPhoneNumberRemediationResponse, GetPhoneNumberRemediationError, ThrowOnError>({
|
|
4343
|
+
...options,
|
|
4344
|
+
url: '/v1/phone-numbers/{id}/remediate'
|
|
4345
|
+
});
|
|
4346
|
+
};
|
|
4347
|
+
|
|
4348
|
+
/**
|
|
4349
|
+
* Resubmit a declined number
|
|
4350
|
+
* Submit corrected values/documents for the declined requirement(s). We
|
|
4351
|
+
* PATCH them onto the SAME requirement group and re-submit it for approval;
|
|
4352
|
+
* the number goes `regulatory_declined` → `pending_regulatory`. No new
|
|
4353
|
+
* number and no new billing. Body shape matches the KYC submit (values /
|
|
4354
|
+
* documents / address) — send only the corrected fields.
|
|
4355
|
+
*
|
|
4356
|
+
*/
|
|
4357
|
+
export const remediatePhoneNumber = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<RemediatePhoneNumberData, ThrowOnError>) => {
|
|
4358
|
+
return (options?.client ?? client).post<RemediatePhoneNumberResponse, RemediatePhoneNumberError, ThrowOnError>({
|
|
4359
|
+
...options,
|
|
4360
|
+
url: '/v1/phone-numbers/{id}/remediate'
|
|
4361
|
+
});
|
|
4362
|
+
};
|
|
4363
|
+
|
|
4364
|
+
/**
|
|
4365
|
+
* @deprecated
|
|
4366
|
+
* Get KYC form spec
|
|
4367
|
+
* Deprecated alias of `/v1/phone-numbers/kyc`; same contract. New
|
|
4368
|
+
* integrations should use that path.
|
|
4369
|
+
*
|
|
4370
|
+
* For a Tier 3/4 country, the fields the end customer must provide (Telnyx
|
|
4371
|
+
* regulatory requirements) before a number can be ordered: text, date,
|
|
4372
|
+
* address, or file (document) per requirement.
|
|
4373
|
+
*
|
|
4374
|
+
*/
|
|
3534
4375
|
export const getWhatsAppNumberKycForm = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<GetWhatsAppNumberKycFormData, ThrowOnError>) => {
|
|
3535
4376
|
return (options?.client ?? client).get<GetWhatsAppNumberKycFormResponse, GetWhatsAppNumberKycFormError, ThrowOnError>({
|
|
3536
4377
|
...options,
|
|
@@ -3539,7 +4380,11 @@ export const getWhatsAppNumberKycForm = <ThrowOnError extends boolean = false>(o
|
|
|
3539
4380
|
};
|
|
3540
4381
|
|
|
3541
4382
|
/**
|
|
4383
|
+
* @deprecated
|
|
3542
4384
|
* Submit KYC
|
|
4385
|
+
* Deprecated alias of `/v1/phone-numbers/kyc`; same contract. New
|
|
4386
|
+
* integrations should use that path.
|
|
4387
|
+
*
|
|
3543
4388
|
* Submit the end customer's KYC (textual values, uploaded documents,
|
|
3544
4389
|
* address) for a Tier 3/4 country. Documents are streamed straight to the
|
|
3545
4390
|
* number provider and are not stored by Zernio. Builds + submits a
|
|
@@ -3567,7 +4412,11 @@ export const submitWhatsAppNumberKyc = <ThrowOnError extends boolean = false>(op
|
|
|
3567
4412
|
};
|
|
3568
4413
|
|
|
3569
4414
|
/**
|
|
4415
|
+
* @deprecated
|
|
3570
4416
|
* Upload a KYC document
|
|
4417
|
+
* Deprecated alias of `/v1/phone-numbers/kyc/upload-document`; same contract. New
|
|
4418
|
+
* integrations should use that path.
|
|
4419
|
+
*
|
|
3571
4420
|
* Upload ONE document and get back its provider document id, to reference
|
|
3572
4421
|
* from POST /v1/whatsapp/phone-numbers/kyc via `documents[].documentId`.
|
|
3573
4422
|
* Send the RAW file bytes as the request body (not base64); put the filename
|
|
@@ -3584,7 +4433,11 @@ export const uploadWhatsAppNumberKycDocument = <ThrowOnError extends boolean = f
|
|
|
3584
4433
|
};
|
|
3585
4434
|
|
|
3586
4435
|
/**
|
|
4436
|
+
* @deprecated
|
|
3587
4437
|
* Pre-validate KYC address
|
|
4438
|
+
* Deprecated alias of `/v1/phone-numbers/kyc/validate-address`; same contract. New
|
|
4439
|
+
* integrations should use that path.
|
|
4440
|
+
*
|
|
3588
4441
|
* Optional early check for the address step of a Tier 4 (end-user identity)
|
|
3589
4442
|
* registration: validates a postal address for deliverability BEFORE the full
|
|
3590
4443
|
* KYC submit, so it can be corrected before any documents are uploaded. The
|
|
@@ -3604,7 +4457,11 @@ export const validateWhatsAppNumberKycAddress = <ThrowOnError extends boolean =
|
|
|
3604
4457
|
};
|
|
3605
4458
|
|
|
3606
4459
|
/**
|
|
4460
|
+
* @deprecated
|
|
3607
4461
|
* Create a hosted KYC link
|
|
4462
|
+
* Deprecated alias of `/v1/phone-numbers/kyc/share`; same contract. New
|
|
4463
|
+
* integrations should use that path.
|
|
4464
|
+
*
|
|
3608
4465
|
* Create a single-use, 7-day hosted KYC link that your end customer
|
|
3609
4466
|
* completes WITHOUT a Zernio login — useful when the person who holds the
|
|
3610
4467
|
* ID and address is not your team. They fill the regulated verification on
|
|
@@ -3627,7 +4484,11 @@ export const createWhatsAppNumberKycLink = <ThrowOnError extends boolean = false
|
|
|
3627
4484
|
};
|
|
3628
4485
|
|
|
3629
4486
|
/**
|
|
4487
|
+
* @deprecated
|
|
3630
4488
|
* Get declined requirements
|
|
4489
|
+
* Deprecated alias of `/v1/phone-numbers/{id}/remediate`; same contract. New
|
|
4490
|
+
* integrations should use that path.
|
|
4491
|
+
*
|
|
3631
4492
|
* For a number in `regulatory_declined`, returns ONLY the requirements the
|
|
3632
4493
|
* reviewer flagged declined, as a form spec (same shape as the KYC form GET).
|
|
3633
4494
|
* The customer fixes just those — Telnyx supports correcting a declined
|
|
@@ -3643,7 +4504,11 @@ export const getWhatsAppNumberRemediation = <ThrowOnError extends boolean = fals
|
|
|
3643
4504
|
};
|
|
3644
4505
|
|
|
3645
4506
|
/**
|
|
4507
|
+
* @deprecated
|
|
3646
4508
|
* Resubmit a declined number
|
|
4509
|
+
* Deprecated alias of `/v1/phone-numbers/{id}/remediate`; same contract. New
|
|
4510
|
+
* integrations should use that path.
|
|
4511
|
+
*
|
|
3647
4512
|
* Submit corrected values/documents for the declined requirement(s). We
|
|
3648
4513
|
* PATCH them onto the SAME requirement group and re-submit it for approval;
|
|
3649
4514
|
* the number goes `regulatory_declined` → `pending_regulatory`. No new
|
|
@@ -3659,7 +4524,166 @@ export const remediateWhatsAppNumber = <ThrowOnError extends boolean = false>(op
|
|
|
3659
4524
|
};
|
|
3660
4525
|
|
|
3661
4526
|
/**
|
|
4527
|
+
* Enable phone calling on a number
|
|
4528
|
+
* Turns on regular phone (PSTN) calling for one of your numbers and
|
|
4529
|
+
* configures how inbound calls are handled. Inbound calls route to
|
|
4530
|
+
* `forwardTo`: your own AI voice agent (Vapi/Retell), a phone, or a SIP
|
|
4531
|
+
* endpoint. Optional extras: voicemail, business-hours windows, an IVR
|
|
4532
|
+
* menu, a caller blocklist, recording, and transcription. A number can
|
|
4533
|
+
* also be voice-enabled with no forward (outbound-only).
|
|
4534
|
+
*
|
|
4535
|
+
* Idempotent, and doubles as the settings update: only fields present in
|
|
4536
|
+
* the body are written. Omitting `forwardTo` preserves the current
|
|
4537
|
+
* destination; sending an empty string clears it.
|
|
4538
|
+
*
|
|
4539
|
+
*/
|
|
4540
|
+
export const enableVoiceOnNumber = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<EnableVoiceOnNumberData, ThrowOnError>) => {
|
|
4541
|
+
return (options?.client ?? client).post<EnableVoiceOnNumberResponse, EnableVoiceOnNumberError, ThrowOnError>({
|
|
4542
|
+
...options,
|
|
4543
|
+
url: '/v1/phone-numbers/{id}/voice'
|
|
4544
|
+
});
|
|
4545
|
+
};
|
|
4546
|
+
|
|
4547
|
+
/**
|
|
4548
|
+
* Disable phone calling on a number
|
|
4549
|
+
* Turns off PSTN calling for the number. The stored forward destination
|
|
4550
|
+
* and settings are preserved, so re-enabling restores the prior config.
|
|
4551
|
+
*
|
|
4552
|
+
*/
|
|
4553
|
+
export const disableVoiceOnNumber = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<DisableVoiceOnNumberData, ThrowOnError>) => {
|
|
4554
|
+
return (options?.client ?? client).delete<DisableVoiceOnNumberResponse, DisableVoiceOnNumberError, ThrowOnError>({
|
|
4555
|
+
...options,
|
|
4556
|
+
url: '/v1/phone-numbers/{id}/voice'
|
|
4557
|
+
});
|
|
4558
|
+
};
|
|
4559
|
+
|
|
4560
|
+
/**
|
|
4561
|
+
* Enable SMS on a number
|
|
4562
|
+
* Turns on SMS for one of your numbers. The number's real carrier
|
|
4563
|
+
* capability is checked first: some number types can't do SMS at all
|
|
4564
|
+
* (`smsCapable: false`), and a number still provisioning at the carrier
|
|
4565
|
+
* returns `notReady: true` (try again once provisioning finishes).
|
|
4566
|
+
*
|
|
4567
|
+
* US numbers additionally need a carrier registration before messages
|
|
4568
|
+
* deliver; the response tells you which path applies:
|
|
4569
|
+
* - `alreadyRegistered: true`: a prior registration still covers this
|
|
4570
|
+
* number; SMS was simply reactivated.
|
|
4571
|
+
* - `reusable` set: you have an approved registration this number can
|
|
4572
|
+
* join in one click via
|
|
4573
|
+
* `POST /v1/phone-numbers/{id}/sms/reuse-registration`
|
|
4574
|
+
* (no new brand/campaign, no extra carrier fee).
|
|
4575
|
+
* - `needsRegistration: true` and no `reusable`: start one via
|
|
4576
|
+
* `POST /v1/sms/registrations`.
|
|
4577
|
+
*
|
|
4578
|
+
* Idempotent: re-running re-attempts any carrier-side setup that failed.
|
|
4579
|
+
*
|
|
4580
|
+
*/
|
|
4581
|
+
export const enableSmsOnNumber = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<EnableSmsOnNumberData, ThrowOnError>) => {
|
|
4582
|
+
return (options?.client ?? client).post<EnableSmsOnNumberResponse, EnableSmsOnNumberError, ThrowOnError>({
|
|
4583
|
+
...options,
|
|
4584
|
+
url: '/v1/phone-numbers/{id}/sms'
|
|
4585
|
+
});
|
|
4586
|
+
};
|
|
4587
|
+
|
|
4588
|
+
/**
|
|
4589
|
+
* Disable SMS on a number
|
|
4590
|
+
* Turns off SMS for the number (deactivates its SMS account). The carrier
|
|
4591
|
+
* registration is untouched, so re-enabling later just reactivates it,
|
|
4592
|
+
* with no re-registration.
|
|
4593
|
+
*
|
|
4594
|
+
*/
|
|
4595
|
+
export const disableSmsOnNumber = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<DisableSmsOnNumberData, ThrowOnError>) => {
|
|
4596
|
+
return (options?.client ?? client).delete<DisableSmsOnNumberResponse, DisableSmsOnNumberError, ThrowOnError>({
|
|
4597
|
+
...options,
|
|
4598
|
+
url: '/v1/phone-numbers/{id}/sms'
|
|
4599
|
+
});
|
|
4600
|
+
};
|
|
4601
|
+
|
|
4602
|
+
/**
|
|
4603
|
+
* Add a number to an existing registration
|
|
4604
|
+
* Attaches this number to your existing approved 10DLC campaign instead
|
|
4605
|
+
* of running a fresh registration: the number inherits the campaign's
|
|
4606
|
+
* approval (no new brand or campaign, no extra carrier fee). Enable SMS
|
|
4607
|
+
* on the number first (`POST /v1/phone-numbers/{id}/sms`; its response
|
|
4608
|
+
* tells you whether a reusable registration exists).
|
|
4609
|
+
*
|
|
4610
|
+
*/
|
|
4611
|
+
export const reuseSmsRegistrationForNumber = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<ReuseSmsRegistrationForNumberData, ThrowOnError>) => {
|
|
4612
|
+
return (options?.client ?? client).post<ReuseSmsRegistrationForNumberResponse, ReuseSmsRegistrationForNumberError, ThrowOnError>({
|
|
4613
|
+
...options,
|
|
4614
|
+
url: '/v1/phone-numbers/{id}/sms/reuse-registration'
|
|
4615
|
+
});
|
|
4616
|
+
};
|
|
4617
|
+
|
|
4618
|
+
/**
|
|
4619
|
+
* Get calling config for a number
|
|
4620
|
+
* The WhatsApp Business Calling configuration of this number, keyed the
|
|
4621
|
+
* same way as the POST/PATCH/DELETE below (full read-write on one
|
|
4622
|
+
* sub-resource). Encrypted secrets are never returned; only a boolean
|
|
4623
|
+
* saying whether a SIP password is stored. The account-scoped read
|
|
4624
|
+
* (`GET /v1/whatsapp/calling?accountId=`) remains for callers that only
|
|
4625
|
+
* know the social account id, and additionally carries account-level
|
|
4626
|
+
* extras (billing eligibility, current-period spend).
|
|
4627
|
+
*
|
|
4628
|
+
*/
|
|
4629
|
+
export const getWhatsAppCalling = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<GetWhatsAppCallingData, ThrowOnError>) => {
|
|
4630
|
+
return (options?.client ?? client).get<GetWhatsAppCallingResponse, GetWhatsAppCallingError, ThrowOnError>({
|
|
4631
|
+
...options,
|
|
4632
|
+
url: '/v1/phone-numbers/{id}/whatsapp/calling'
|
|
4633
|
+
});
|
|
4634
|
+
};
|
|
4635
|
+
|
|
4636
|
+
/**
|
|
4637
|
+
* Enable calling on a number
|
|
4638
|
+
* Enable WhatsApp Business Calling on a connected number. Configures
|
|
4639
|
+
* Meta calling.status=ENABLED with our Telnyx SIP endpoint, fetches and
|
|
4640
|
+
* stores the Meta-issued SIP password (encrypted), and snapshots the
|
|
4641
|
+
* customer's forward-to destination.
|
|
4642
|
+
*
|
|
4643
|
+
*/
|
|
4644
|
+
export const enableWhatsAppCalling = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<EnableWhatsAppCallingData, ThrowOnError>) => {
|
|
4645
|
+
return (options?.client ?? client).post<EnableWhatsAppCallingResponse, EnableWhatsAppCallingError, ThrowOnError>({
|
|
4646
|
+
...options,
|
|
4647
|
+
url: '/v1/phone-numbers/{id}/whatsapp/calling'
|
|
4648
|
+
});
|
|
4649
|
+
};
|
|
4650
|
+
|
|
4651
|
+
/**
|
|
4652
|
+
* Update calling config
|
|
4653
|
+
* Update fields on an already-enabled number. Only fields present in
|
|
4654
|
+
* the body are written; `undefined` leaves the stored value alone,
|
|
4655
|
+
* explicit `null` clears a nullable field. No Meta side effect, this
|
|
4656
|
+
* only changes local routing state consumed by the Telnyx webhook
|
|
4657
|
+
* handler.
|
|
4658
|
+
*
|
|
4659
|
+
*/
|
|
4660
|
+
export const updateWhatsAppCalling = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<UpdateWhatsAppCallingData, ThrowOnError>) => {
|
|
4661
|
+
return (options?.client ?? client).patch<UpdateWhatsAppCallingResponse, UpdateWhatsAppCallingError, ThrowOnError>({
|
|
4662
|
+
...options,
|
|
4663
|
+
url: '/v1/phone-numbers/{id}/whatsapp/calling'
|
|
4664
|
+
});
|
|
4665
|
+
};
|
|
4666
|
+
|
|
4667
|
+
/**
|
|
4668
|
+
* Disable calling on a number
|
|
4669
|
+
* Disable calling. Sends calling.status=DISABLED to Meta (best-effort)
|
|
4670
|
+
* and flips the local `callingEnabled` flag off. forwardTo and SIP
|
|
4671
|
+
* creds are preserved so a re-enable does not lose the destination.
|
|
4672
|
+
*
|
|
4673
|
+
*/
|
|
4674
|
+
export const disableWhatsAppCalling = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<DisableWhatsAppCallingData, ThrowOnError>) => {
|
|
4675
|
+
return (options?.client ?? client).delete<DisableWhatsAppCallingResponse, DisableWhatsAppCallingError, ThrowOnError>({
|
|
4676
|
+
...options,
|
|
4677
|
+
url: '/v1/phone-numbers/{id}/whatsapp/calling'
|
|
4678
|
+
});
|
|
4679
|
+
};
|
|
4680
|
+
|
|
4681
|
+
/**
|
|
4682
|
+
* @deprecated
|
|
3662
4683
|
* Get phone number
|
|
4684
|
+
* Deprecated alias of `/v1/phone-numbers/{id}`; same contract. New
|
|
4685
|
+
* integrations should use that path.
|
|
4686
|
+
*
|
|
3663
4687
|
* Retrieve the current status of a purchased phone number. Poll this to
|
|
3664
4688
|
* track Meta pre-verification (US sync path) and, for regulated (Tier 3/4)
|
|
3665
4689
|
* numbers, the async lifecycle: pending_regulatory → active (or
|
|
@@ -3677,7 +4701,11 @@ export const getWhatsAppPhoneNumber = <ThrowOnError extends boolean = false>(opt
|
|
|
3677
4701
|
};
|
|
3678
4702
|
|
|
3679
4703
|
/**
|
|
4704
|
+
* @deprecated
|
|
3680
4705
|
* Release phone number
|
|
4706
|
+
* Deprecated alias of `/v1/phone-numbers/{id}`; same contract. New
|
|
4707
|
+
* integrations should use that path.
|
|
4708
|
+
*
|
|
3681
4709
|
* Release a purchased phone number. This will:
|
|
3682
4710
|
* 1. Disconnect any linked WhatsApp social account
|
|
3683
4711
|
* 2. Decrement the Stripe subscription quantity (or cancel if last number)
|