@prezly/sdk 7.12.0 → 9.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +8 -8
- package/dist/Client.d.ts +29 -0
- package/dist/Client.js +35 -0
- package/dist/{Sdk → api}/ApiClient.d.ts +2 -2
- package/dist/api/ApiClient.js +88 -0
- package/dist/{Sdk → api}/DeferredJobsApiClient.d.ts +3 -3
- package/dist/api/DeferredJobsApiClient.js +92 -0
- package/dist/{Sdk → api}/constants.d.ts +0 -0
- package/dist/api/constants.js +3 -0
- package/dist/api/index.d.ts +2 -0
- package/dist/api/index.js +2 -0
- package/dist/endpoints/Accounts/Client.d.ts +10 -0
- package/dist/endpoints/Accounts/Client.js +22 -0
- package/dist/endpoints/Accounts/index.d.ts +2 -0
- package/dist/endpoints/Accounts/index.js +2 -0
- package/dist/endpoints/Accounts/types.d.ts +16 -0
- package/dist/endpoints/Accounts/types.js +1 -0
- package/dist/endpoints/CampaignRecipients/Client.d.ts +29 -0
- package/dist/endpoints/CampaignRecipients/Client.js +78 -0
- package/dist/endpoints/CampaignRecipients/index.d.ts +3 -0
- package/dist/endpoints/CampaignRecipients/index.js +3 -0
- package/dist/endpoints/CampaignRecipients/scopes.d.ts +27 -0
- package/dist/endpoints/CampaignRecipients/scopes.js +1 -0
- package/dist/endpoints/CampaignRecipients/types.d.ts +14 -0
- package/dist/endpoints/CampaignRecipients/types.js +1 -0
- package/dist/endpoints/Campaigns/Client.d.ts +21 -0
- package/dist/endpoints/Campaigns/Client.js +85 -0
- package/dist/endpoints/Campaigns/index.d.ts +2 -0
- package/dist/endpoints/Campaigns/index.js +2 -0
- package/dist/{Sdk → endpoints}/Campaigns/types.d.ts +11 -9
- package/dist/endpoints/Campaigns/types.js +1 -0
- package/dist/endpoints/Coverage/Client.d.ts +23 -0
- package/dist/endpoints/Coverage/Client.js +102 -0
- package/dist/endpoints/Coverage/index.d.ts +2 -0
- package/dist/endpoints/Coverage/index.js +2 -0
- package/dist/{Sdk → endpoints}/Coverage/types.d.ts +14 -12
- package/dist/endpoints/Coverage/types.js +1 -0
- package/dist/endpoints/Jobs/Client.d.ts +7 -0
- package/dist/endpoints/Jobs/Client.js +12 -0
- package/dist/endpoints/Jobs/index.d.ts +2 -0
- package/dist/endpoints/Jobs/index.js +2 -0
- package/dist/endpoints/Jobs/types.d.ts +7 -0
- package/dist/endpoints/Jobs/types.js +1 -0
- package/dist/endpoints/Licenses/Client.d.ts +7 -0
- package/dist/endpoints/Licenses/Client.js +13 -0
- package/dist/endpoints/Licenses/index.d.ts +1 -0
- package/dist/endpoints/Licenses/index.js +1 -0
- package/dist/endpoints/NewsroomCategories/Client.d.ts +14 -0
- package/dist/endpoints/NewsroomCategories/Client.js +48 -0
- package/dist/endpoints/NewsroomCategories/index.d.ts +2 -0
- package/dist/endpoints/NewsroomCategories/index.js +2 -0
- package/dist/{Sdk → endpoints}/NewsroomCategories/types.d.ts +3 -3
- package/dist/endpoints/NewsroomCategories/types.js +1 -0
- package/dist/endpoints/NewsroomContacts/Client.d.ts +16 -0
- package/dist/endpoints/NewsroomContacts/Client.js +69 -0
- package/dist/endpoints/NewsroomContacts/index.d.ts +2 -0
- package/dist/endpoints/NewsroomContacts/index.js +2 -0
- package/dist/{Sdk → endpoints}/NewsroomContacts/types.d.ts +7 -11
- package/dist/endpoints/NewsroomContacts/types.js +1 -0
- package/dist/endpoints/NewsroomDomains/Client.d.ts +15 -0
- package/dist/endpoints/NewsroomDomains/Client.js +41 -0
- package/dist/endpoints/NewsroomDomains/index.d.ts +2 -0
- package/dist/endpoints/NewsroomDomains/index.js +2 -0
- package/dist/endpoints/NewsroomDomains/types.d.ts +3 -0
- package/dist/endpoints/NewsroomDomains/types.js +1 -0
- package/dist/endpoints/NewsroomGalleries/Client.d.ts +17 -0
- package/dist/endpoints/NewsroomGalleries/Client.js +75 -0
- package/dist/endpoints/NewsroomGalleries/index.d.ts +2 -0
- package/dist/endpoints/NewsroomGalleries/index.js +2 -0
- package/dist/{Sdk → endpoints}/NewsroomGalleries/types.d.ts +13 -11
- package/dist/endpoints/NewsroomGalleries/types.js +1 -0
- package/dist/{Sdk/NewsroomLanguages/NewsroomLanguages.d.ts → endpoints/NewsroomLanguages/Client.d.ts} +9 -11
- package/dist/endpoints/NewsroomLanguages/Client.js +93 -0
- package/dist/endpoints/NewsroomLanguages/index.d.ts +2 -0
- package/dist/endpoints/NewsroomLanguages/index.js +2 -0
- package/dist/endpoints/NewsroomLanguages/lib.d.ts +2 -0
- package/dist/endpoints/NewsroomLanguages/lib.js +3 -0
- package/dist/{Sdk → endpoints}/NewsroomLanguages/types.d.ts +5 -5
- package/dist/endpoints/NewsroomLanguages/types.js +1 -0
- package/dist/endpoints/NewsroomPrivacyRequests/Client.d.ts +9 -0
- package/dist/endpoints/NewsroomPrivacyRequests/Client.js +22 -0
- package/dist/endpoints/NewsroomPrivacyRequests/index.d.ts +2 -0
- package/dist/endpoints/NewsroomPrivacyRequests/index.js +2 -0
- package/dist/{Sdk → endpoints}/NewsroomPrivacyRequests/types.d.ts +5 -5
- package/dist/endpoints/NewsroomPrivacyRequests/types.js +1 -0
- package/dist/endpoints/NewsroomSubscriptions/Client.d.ts +13 -0
- package/dist/endpoints/NewsroomSubscriptions/Client.js +15 -0
- package/dist/endpoints/NewsroomSubscriptions/index.d.ts +2 -0
- package/dist/endpoints/NewsroomSubscriptions/index.js +2 -0
- package/dist/{Sdk → endpoints}/NewsroomSubscriptions/types.d.ts +3 -3
- package/dist/endpoints/NewsroomSubscriptions/types.js +1 -0
- package/dist/{Sdk/NewsroomThemes/NewsroomThemes.d.ts → endpoints/NewsroomThemes/Client.d.ts} +4 -6
- package/dist/endpoints/NewsroomThemes/Client.js +36 -0
- package/dist/endpoints/NewsroomThemes/index.d.ts +1 -0
- package/dist/endpoints/NewsroomThemes/index.js +1 -0
- package/dist/endpoints/NewsroomWebhooks/Client.d.ts +14 -0
- package/dist/endpoints/NewsroomWebhooks/Client.js +42 -0
- package/dist/endpoints/NewsroomWebhooks/index.d.ts +2 -0
- package/dist/endpoints/NewsroomWebhooks/index.js +2 -0
- package/dist/endpoints/NewsroomWebhooks/types.d.ts +15 -0
- package/dist/endpoints/NewsroomWebhooks/types.js +1 -0
- package/dist/endpoints/Newsrooms/Client.d.ts +19 -0
- package/dist/endpoints/Newsrooms/Client.js +90 -0
- package/dist/endpoints/Newsrooms/index.d.ts +2 -0
- package/dist/endpoints/Newsrooms/index.js +2 -0
- package/dist/{Sdk → endpoints}/Newsrooms/types.d.ts +11 -11
- package/dist/endpoints/Newsrooms/types.js +1 -0
- package/dist/endpoints/SenderAddresses/Client.d.ts +12 -0
- package/dist/endpoints/SenderAddresses/Client.js +37 -0
- package/dist/endpoints/SenderAddresses/index.d.ts +2 -0
- package/dist/endpoints/SenderAddresses/index.js +2 -0
- package/dist/{Sdk → endpoints}/SenderAddresses/types.d.ts +2 -2
- package/dist/endpoints/SenderAddresses/types.js +1 -0
- package/dist/endpoints/Snippets/Client.d.ts +14 -0
- package/dist/endpoints/Snippets/Client.js +42 -0
- package/dist/endpoints/Snippets/index.d.ts +2 -0
- package/dist/endpoints/Snippets/index.js +2 -0
- package/dist/{Sdk → endpoints}/Snippets/types.d.ts +2 -2
- package/dist/endpoints/Snippets/types.js +1 -0
- package/dist/endpoints/Stories/Client.d.ts +17 -0
- package/dist/endpoints/Stories/Client.js +63 -0
- package/dist/endpoints/Stories/index.d.ts +2 -0
- package/dist/endpoints/Stories/index.js +2 -0
- package/dist/{Sdk → endpoints}/Stories/types.d.ts +19 -18
- package/dist/endpoints/Stories/types.js +1 -0
- package/dist/{Sdk/Subscriptions/Subscriptions.d.ts → endpoints/Subscriptions/Client.d.ts} +6 -8
- package/dist/endpoints/Subscriptions/Client.js +51 -0
- package/dist/endpoints/Subscriptions/index.d.ts +2 -0
- package/dist/endpoints/Subscriptions/index.js +2 -0
- package/dist/{Sdk → endpoints}/Subscriptions/types.d.ts +13 -6
- package/dist/endpoints/Subscriptions/types.js +8 -0
- package/dist/endpoints/index.d.ts +20 -0
- package/dist/endpoints/index.js +20 -0
- package/dist/{Api → http}/ApiError.d.ts +2 -2
- package/dist/http/ApiError.js +14 -0
- package/dist/http/Http.d.ts +8 -0
- package/dist/http/Http.js +62 -0
- package/dist/{Api → http}/constants.d.ts +0 -0
- package/dist/http/constants.js +3 -0
- package/dist/{Api → http}/createRequest.d.ts +2 -2
- package/dist/http/createRequest.js +99 -0
- package/dist/http/index.d.ts +3 -0
- package/dist/http/index.js +3 -0
- package/dist/http/lib.d.ts +3 -0
- package/dist/http/lib.js +29 -0
- package/dist/{Api → http}/types.d.ts +0 -0
- package/dist/http/types.js +16 -0
- package/dist/index.d.ts +3 -2
- package/dist/index.js +4 -22
- package/dist/{Sdk/routing.d.ts → routing.d.ts} +1 -2
- package/dist/routing.js +27 -0
- package/dist/types/Campaign.d.ts +33 -31
- package/dist/types/Campaign.js +23 -20
- package/dist/types/Category.d.ts +1 -1
- package/dist/types/Category.js +1 -3
- package/dist/types/Contact.d.ts +83 -69
- package/dist/types/Contact.js +34 -26
- package/dist/types/ContactDuplicateSuggestion.d.ts +9 -7
- package/dist/types/ContactDuplicateSuggestion.js +7 -7
- package/dist/types/{CountryRef.d.ts → Country.d.ts} +0 -0
- package/dist/types/Country.js +1 -0
- package/dist/types/{Coverage.d.ts → CoverageEntry.d.ts} +32 -30
- package/dist/types/CoverageEntry.js +25 -0
- package/dist/types/Culture.d.ts +14 -0
- package/dist/types/Culture.js +9 -0
- package/dist/types/DnsConfigurationInstruction.js +1 -3
- package/dist/types/EmailRecipient.d.ts +14 -12
- package/dist/types/EmailRecipient.js +7 -7
- package/dist/types/EmailSubscription.js +1 -3
- package/dist/types/Entity.js +1 -3
- package/dist/types/JobState.js +5 -9
- package/dist/types/License.d.ts +12 -2
- package/dist/types/License.js +14 -3
- package/dist/types/Newsroom.d.ts +30 -14
- package/dist/types/Newsroom.js +23 -10
- package/dist/types/NewsroomCompanyInformation.js +1 -3
- package/dist/types/NewsroomContact.d.ts +2 -2
- package/dist/types/NewsroomContact.js +1 -3
- package/dist/types/NewsroomDomain.d.ts +7 -1
- package/dist/types/NewsroomDomain.js +2 -3
- package/dist/types/NewsroomGallery.d.ts +17 -5
- package/dist/types/NewsroomGallery.js +9 -3
- package/dist/types/NewsroomLanguageSettings.d.ts +3 -3
- package/dist/types/NewsroomLanguageSettings.js +1 -3
- package/dist/types/NewsroomTheme.d.ts +53 -0
- package/dist/types/NewsroomTheme.js +25 -0
- package/dist/types/NewsroomWebhook.d.ts +11 -9
- package/dist/types/NewsroomWebhook.js +13 -13
- package/dist/types/Permissions.js +10 -14
- package/dist/types/PrivacyRequest.d.ts +13 -11
- package/dist/types/PrivacyRequest.js +17 -16
- package/dist/types/SenderAddress.d.ts +8 -6
- package/dist/types/SenderAddress.js +9 -9
- package/dist/types/SenderDomain.d.ts +8 -6
- package/dist/types/SenderDomain.js +10 -10
- package/dist/types/Snippet.d.ts +1 -1
- package/dist/types/Snippet.js +1 -3
- package/dist/types/Story.d.ts +66 -64
- package/dist/types/Story.js +33 -30
- package/dist/types/{UserRef.d.ts → User.d.ts} +0 -0
- package/dist/types/User.js +1 -0
- package/dist/types/UserAccount.d.ts +3 -3
- package/dist/types/UserAccount.js +1 -3
- package/dist/types/common/Notification.d.ts +14 -12
- package/dist/types/common/Notification.js +11 -11
- package/dist/types/common/OEmbedInfo.js +1 -3
- package/dist/types/common/Pagination.js +9 -9
- package/dist/types/common/Query.d.ts +4 -1
- package/dist/types/common/Query.js +15 -3
- package/dist/types/common/Utm.js +1 -3
- package/dist/types/common/Warning.js +1 -3
- package/dist/types/common/index.js +6 -19
- package/dist/types/index.d.ts +12 -23
- package/dist/types/index.js +28 -53
- package/dist/{Sdk/utils.d.ts → utils.d.ts} +1 -1
- package/dist/utils.js +23 -0
- package/package.json +20 -6
- package/dist/Api/Api.d.ts +0 -9
- package/dist/Api/Api.js +0 -55
- package/dist/Api/ApiError.js +0 -30
- package/dist/Api/constants.js +0 -7
- package/dist/Api/createRequest.js +0 -154
- package/dist/Api/index.d.ts +0 -3
- package/dist/Api/index.js +0 -14
- package/dist/Api/lib.d.ts +0 -12
- package/dist/Api/lib.js +0 -67
- package/dist/Api/types.js +0 -20
- package/dist/Sdk/Accounts/Accounts.d.ts +0 -12
- package/dist/Sdk/Accounts/Accounts.js +0 -79
- package/dist/Sdk/Accounts/index.d.ts +0 -2
- package/dist/Sdk/Accounts/index.js +0 -15
- package/dist/Sdk/Accounts/types.d.ts +0 -16
- package/dist/Sdk/Accounts/types.js +0 -3
- package/dist/Sdk/ApiClient.js +0 -68
- package/dist/Sdk/CampaignRecipients/CampaignRecipients.d.ts +0 -28
- package/dist/Sdk/CampaignRecipients/CampaignRecipients.js +0 -126
- package/dist/Sdk/CampaignRecipients/index.d.ts +0 -2
- package/dist/Sdk/CampaignRecipients/index.js +0 -20
- package/dist/Sdk/CampaignRecipients/types.d.ts +0 -12
- package/dist/Sdk/CampaignRecipients/types.js +0 -3
- package/dist/Sdk/Campaigns/Campaigns.d.ts +0 -23
- package/dist/Sdk/Campaigns/Campaigns.js +0 -168
- package/dist/Sdk/Campaigns/index.d.ts +0 -2
- package/dist/Sdk/Campaigns/index.js +0 -9
- package/dist/Sdk/Campaigns/types.js +0 -3
- package/dist/Sdk/Coverage/Coverage.d.ts +0 -24
- package/dist/Sdk/Coverage/Coverage.js +0 -159
- package/dist/Sdk/Coverage/index.d.ts +0 -2
- package/dist/Sdk/Coverage/index.js +0 -9
- package/dist/Sdk/Coverage/types.js +0 -3
- package/dist/Sdk/DeferredJobsApiClient.js +0 -126
- package/dist/Sdk/Jobs/Jobs.d.ts +0 -9
- package/dist/Sdk/Jobs/Jobs.js +0 -64
- package/dist/Sdk/Jobs/index.d.ts +0 -2
- package/dist/Sdk/Jobs/index.js +0 -9
- package/dist/Sdk/Jobs/types.d.ts +0 -7
- package/dist/Sdk/Jobs/types.js +0 -3
- package/dist/Sdk/Licenses/Licenses.d.ts +0 -9
- package/dist/Sdk/Licenses/Licenses.js +0 -66
- package/dist/Sdk/Licenses/index.d.ts +0 -1
- package/dist/Sdk/Licenses/index.js +0 -9
- package/dist/Sdk/NewsroomCategories/NewsroomCategories.d.ts +0 -16
- package/dist/Sdk/NewsroomCategories/NewsroomCategories.js +0 -129
- package/dist/Sdk/NewsroomCategories/index.d.ts +0 -2
- package/dist/Sdk/NewsroomCategories/index.js +0 -9
- package/dist/Sdk/NewsroomCategories/types.js +0 -3
- package/dist/Sdk/NewsroomContacts/NewsroomContacts.d.ts +0 -18
- package/dist/Sdk/NewsroomContacts/NewsroomContacts.js +0 -145
- package/dist/Sdk/NewsroomContacts/index.d.ts +0 -2
- package/dist/Sdk/NewsroomContacts/index.js +0 -9
- package/dist/Sdk/NewsroomContacts/types.js +0 -3
- package/dist/Sdk/NewsroomDomains/NewsroomDomains.d.ts +0 -17
- package/dist/Sdk/NewsroomDomains/NewsroomDomains.js +0 -137
- package/dist/Sdk/NewsroomDomains/index.d.ts +0 -2
- package/dist/Sdk/NewsroomDomains/index.js +0 -9
- package/dist/Sdk/NewsroomDomains/types.d.ts +0 -3
- package/dist/Sdk/NewsroomDomains/types.js +0 -3
- package/dist/Sdk/NewsroomGalleries/NewsroomGalleries.d.ts +0 -19
- package/dist/Sdk/NewsroomGalleries/NewsroomGalleries.js +0 -140
- package/dist/Sdk/NewsroomGalleries/index.d.ts +0 -1
- package/dist/Sdk/NewsroomGalleries/index.js +0 -9
- package/dist/Sdk/NewsroomGalleries/types.js +0 -3
- package/dist/Sdk/NewsroomLanguages/NewsroomLanguages.js +0 -173
- package/dist/Sdk/NewsroomLanguages/index.d.ts +0 -2
- package/dist/Sdk/NewsroomLanguages/index.js +0 -9
- package/dist/Sdk/NewsroomLanguages/lib.d.ts +0 -2
- package/dist/Sdk/NewsroomLanguages/lib.js +0 -15
- package/dist/Sdk/NewsroomLanguages/types.js +0 -3
- package/dist/Sdk/NewsroomPrivacyRequests/NewsroomPrivacyRequests.d.ts +0 -11
- package/dist/Sdk/NewsroomPrivacyRequests/NewsroomPrivacyRequests.js +0 -83
- package/dist/Sdk/NewsroomPrivacyRequests/index.d.ts +0 -2
- package/dist/Sdk/NewsroomPrivacyRequests/index.js +0 -9
- package/dist/Sdk/NewsroomPrivacyRequests/types.js +0 -3
- package/dist/Sdk/NewsroomSubscriptions/NewsroomSubscriptions.d.ts +0 -15
- package/dist/Sdk/NewsroomSubscriptions/NewsroomSubscriptions.js +0 -65
- package/dist/Sdk/NewsroomSubscriptions/index.d.ts +0 -2
- package/dist/Sdk/NewsroomSubscriptions/index.js +0 -9
- package/dist/Sdk/NewsroomSubscriptions/types.js +0 -3
- package/dist/Sdk/NewsroomThemes/NewsroomThemes.js +0 -111
- package/dist/Sdk/NewsroomThemes/index.d.ts +0 -1
- package/dist/Sdk/NewsroomThemes/index.js +0 -9
- package/dist/Sdk/NewsroomWebhooks/NewsroomWebhooks.d.ts +0 -16
- package/dist/Sdk/NewsroomWebhooks/NewsroomWebhooks.js +0 -124
- package/dist/Sdk/NewsroomWebhooks/index.d.ts +0 -2
- package/dist/Sdk/NewsroomWebhooks/index.js +0 -9
- package/dist/Sdk/NewsroomWebhooks/types.d.ts +0 -15
- package/dist/Sdk/NewsroomWebhooks/types.js +0 -3
- package/dist/Sdk/Newsrooms/Newsrooms.d.ts +0 -21
- package/dist/Sdk/Newsrooms/Newsrooms.js +0 -184
- package/dist/Sdk/Newsrooms/index.d.ts +0 -2
- package/dist/Sdk/Newsrooms/index.js +0 -9
- package/dist/Sdk/Newsrooms/types.js +0 -3
- package/dist/Sdk/Sdk.d.ts +0 -42
- package/dist/Sdk/Sdk.js +0 -59
- package/dist/Sdk/SenderAddresses/SenderAddresses.d.ts +0 -14
- package/dist/Sdk/SenderAddresses/SenderAddresses.js +0 -110
- package/dist/Sdk/SenderAddresses/index.d.ts +0 -2
- package/dist/Sdk/SenderAddresses/index.js +0 -9
- package/dist/Sdk/SenderAddresses/types.js +0 -3
- package/dist/Sdk/Snippets/Snippets.d.ts +0 -16
- package/dist/Sdk/Snippets/Snippets.js +0 -124
- package/dist/Sdk/Snippets/index.d.ts +0 -2
- package/dist/Sdk/Snippets/index.js +0 -9
- package/dist/Sdk/Snippets/types.js +0 -3
- package/dist/Sdk/Stories/Stories.d.ts +0 -19
- package/dist/Sdk/Stories/Stories.js +0 -129
- package/dist/Sdk/Stories/index.d.ts +0 -2
- package/dist/Sdk/Stories/index.js +0 -9
- package/dist/Sdk/Stories/types.js +0 -3
- package/dist/Sdk/Subscriptions/Subscriptions.js +0 -136
- package/dist/Sdk/Subscriptions/index.d.ts +0 -2
- package/dist/Sdk/Subscriptions/index.js +0 -9
- package/dist/Sdk/Subscriptions/types.js +0 -3
- package/dist/Sdk/constants.js +0 -8
- package/dist/Sdk/index.d.ts +0 -14
- package/dist/Sdk/index.js +0 -32
- package/dist/Sdk/routing.js +0 -31
- package/dist/Sdk/types.d.ts +0 -6
- package/dist/Sdk/types.js +0 -3
- package/dist/Sdk/utils.js +0 -40
- package/dist/types/ContactRef.d.ts +0 -12
- package/dist/types/ContactRef.js +0 -3
- package/dist/types/CountryRef.js +0 -3
- package/dist/types/Coverage.js +0 -24
- package/dist/types/CultureRef.d.ts +0 -12
- package/dist/types/CultureRef.js +0 -9
- package/dist/types/EmailBranding.d.ts +0 -8
- package/dist/types/EmailBranding.js +0 -3
- package/dist/types/EmailBrandingMode.d.ts +0 -4
- package/dist/types/EmailBrandingMode.js +0 -9
- package/dist/types/GalleryStatus.d.ts +0 -4
- package/dist/types/GalleryStatus.js +0 -9
- package/dist/types/LicenseStatus.d.ts +0 -9
- package/dist/types/LicenseStatus.js +0 -14
- package/dist/types/NewsroomDomainShareInstructions.d.ts +0 -4
- package/dist/types/NewsroomDomainShareInstructions.js +0 -3
- package/dist/types/NewsroomGalleryImage.d.ts +0 -8
- package/dist/types/NewsroomGalleryImage.js +0 -3
- package/dist/types/NewsroomThemePreset.d.ts +0 -36
- package/dist/types/NewsroomThemePreset.js +0 -3
- package/dist/types/ThemeFeature.d.ts +0 -12
- package/dist/types/ThemeFeature.js +0 -17
- package/dist/types/ThemeStatus.d.ts +0 -4
- package/dist/types/ThemeStatus.js +0 -9
- package/dist/types/TrackingPolicy.d.ts +0 -5
- package/dist/types/TrackingPolicy.js +0 -10
- package/dist/types/UnsubscribeReason.d.ts +0 -7
- package/dist/types/UnsubscribeReason.js +0 -12
- package/dist/types/UserRef.js +0 -3
- package/dist/types/scopes/AllContactsScope.d.ts +0 -6
- package/dist/types/scopes/AllContactsScope.js +0 -3
- package/dist/types/scopes/CampaignRecipientsScope.d.ts +0 -8
- package/dist/types/scopes/CampaignRecipientsScope.js +0 -3
- package/dist/types/scopes/CampaignReportScope.d.ts +0 -9
- package/dist/types/scopes/CampaignReportScope.js +0 -3
- package/dist/types/scopes/ContactEmployeesScope.d.ts +0 -7
- package/dist/types/scopes/ContactEmployeesScope.js +0 -3
- package/dist/types/scopes/ContactOrganisationsScope.d.ts +0 -7
- package/dist/types/scopes/ContactOrganisationsScope.js +0 -3
- package/dist/types/scopes/ContactsScope.d.ts +0 -6
- package/dist/types/scopes/ContactsScope.js +0 -3
- package/dist/types/scopes/index.d.ts +0 -6
- package/dist/types/scopes/index.js +0 -19
package/README.md
CHANGED
|
@@ -13,9 +13,9 @@ yarn add @prezly/sdk
|
|
|
13
13
|
Using ES Modules:
|
|
14
14
|
|
|
15
15
|
```js
|
|
16
|
-
import
|
|
16
|
+
import { createPrezlyClient } from '@prezly/sdk';
|
|
17
17
|
|
|
18
|
-
const
|
|
18
|
+
const prezlyClient = createPrezlyClient({
|
|
19
19
|
accessToken: 'your-access-token',
|
|
20
20
|
});
|
|
21
21
|
```
|
|
@@ -23,9 +23,9 @@ const prezlySdk = new PrezlySdk({
|
|
|
23
23
|
Or Using CommonJS:
|
|
24
24
|
|
|
25
25
|
```js
|
|
26
|
-
const
|
|
26
|
+
const { createPrezlyClient } = require('@prezly/sdk').default;
|
|
27
27
|
|
|
28
|
-
const
|
|
28
|
+
const prezlyClient = createPrezlyClient({
|
|
29
29
|
accessToken: 'your-access-token',
|
|
30
30
|
});
|
|
31
31
|
```
|
|
@@ -53,7 +53,7 @@ yarn add whatwg-fetch
|
|
|
53
53
|
```js
|
|
54
54
|
import 'whatwg-fetch';
|
|
55
55
|
// ...
|
|
56
|
-
import
|
|
56
|
+
import { createPrezlyClient } from '@prezly/sdk';
|
|
57
57
|
```
|
|
58
58
|
|
|
59
59
|
We recommend referring to the [official `whatwg-fetch` module documentation](https://www.npmjs.com/package/whatwg-fetch) for more information.
|
|
@@ -69,7 +69,7 @@ yarn add node-fetch
|
|
|
69
69
|
```js
|
|
70
70
|
global.fetch = require('node-fetch');
|
|
71
71
|
// ...
|
|
72
|
-
const
|
|
72
|
+
const { createPrezlyClient } = require('@prezly/sdk');
|
|
73
73
|
```
|
|
74
74
|
|
|
75
75
|
We recommend referring to the [official `node-fetch` module documentation](https://www.npmjs.com/package/node-fetch) for more information.
|
|
@@ -87,7 +87,7 @@ Using ES Modules:
|
|
|
87
87
|
```js
|
|
88
88
|
import 'cross-fetch/polyfill';
|
|
89
89
|
// ...
|
|
90
|
-
import
|
|
90
|
+
import { createPrezlyClient } from '@prezly/sdk';
|
|
91
91
|
```
|
|
92
92
|
|
|
93
93
|
Or Using CommonJS:
|
|
@@ -95,7 +95,7 @@ Or Using CommonJS:
|
|
|
95
95
|
```js
|
|
96
96
|
require('cross-fetch/polyfill');
|
|
97
97
|
// ...
|
|
98
|
-
const
|
|
98
|
+
const { createPrezlyClient } = require('@prezly/sdk');
|
|
99
99
|
```
|
|
100
100
|
|
|
101
101
|
We recommend referring to the [official `cross-fetch` module documentation](https://www.npmjs.com/package/cross-fetch) for more information.
|
package/dist/Client.d.ts
ADDED
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { Accounts, Campaigns, CampaignRecipients, Coverage, Jobs, Licenses, Newsrooms, NewsroomCategories, NewsroomContacts, NewsroomLanguages, NewsroomThemes, NewsroomWebhooks, NewsroomPrivacyRequests, NewsroomDomains, NewsroomGalleries, SenderAddresses, Stories, Snippets, Subscriptions } from './endpoints';
|
|
2
|
+
import type { HeadersMap } from './http';
|
|
3
|
+
export interface ClientOptions {
|
|
4
|
+
accessToken: string;
|
|
5
|
+
baseUrl?: string;
|
|
6
|
+
headers?: HeadersMap;
|
|
7
|
+
}
|
|
8
|
+
export interface Client {
|
|
9
|
+
accounts: Accounts.Client;
|
|
10
|
+
campaigns: Campaigns.Client;
|
|
11
|
+
campaignRecipients: CampaignRecipients.Client;
|
|
12
|
+
coverage: Coverage.Client;
|
|
13
|
+
jobs: Jobs.Client;
|
|
14
|
+
licenses: Licenses.Client;
|
|
15
|
+
newsrooms: Newsrooms.Client;
|
|
16
|
+
newsroomCategories: NewsroomCategories.Client;
|
|
17
|
+
newsroomContacts: NewsroomContacts.Client;
|
|
18
|
+
newsroomLanguages: NewsroomLanguages.Client;
|
|
19
|
+
newsroomThemes: NewsroomThemes.Client;
|
|
20
|
+
newsroomWebhooks: NewsroomWebhooks.Client;
|
|
21
|
+
newsroomPrivacyRequests: NewsroomPrivacyRequests.Client;
|
|
22
|
+
newsroomDomains: NewsroomDomains.Client;
|
|
23
|
+
newsroomGalleries: NewsroomGalleries.Client;
|
|
24
|
+
senderAddresses: SenderAddresses.Client;
|
|
25
|
+
stories: Stories.Client;
|
|
26
|
+
snippets: Snippets.Client;
|
|
27
|
+
subscriptions: Subscriptions.Client;
|
|
28
|
+
}
|
|
29
|
+
export declare function createClient({ accessToken, baseUrl, headers, }: ClientOptions): Client;
|
package/dist/Client.js
ADDED
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { ApiClient, DeferredJobsApiClient } from "./api/index.js";
|
|
2
|
+
import { Accounts, Campaigns, CampaignRecipients, Coverage, Jobs, Licenses, Newsrooms, NewsroomCategories, NewsroomContacts, NewsroomLanguages, NewsroomThemes, NewsroomWebhooks, NewsroomPrivacyRequests, NewsroomDomains, NewsroomGalleries, SenderAddresses, Stories, Snippets, Subscriptions } from "./endpoints/index.js";
|
|
3
|
+
const DEFAULT_BASE_URL = 'https://api.prezly.com';
|
|
4
|
+
export function createClient({
|
|
5
|
+
accessToken,
|
|
6
|
+
baseUrl = DEFAULT_BASE_URL,
|
|
7
|
+
headers = {}
|
|
8
|
+
}) {
|
|
9
|
+
const apiClient = new DeferredJobsApiClient(new ApiClient({
|
|
10
|
+
accessToken,
|
|
11
|
+
baseUrl,
|
|
12
|
+
headers
|
|
13
|
+
}));
|
|
14
|
+
return {
|
|
15
|
+
accounts: new Accounts.Client(apiClient),
|
|
16
|
+
campaigns: new Campaigns.Client(apiClient),
|
|
17
|
+
campaignRecipients: new CampaignRecipients.Client(apiClient),
|
|
18
|
+
coverage: new Coverage.Client(apiClient),
|
|
19
|
+
jobs: new Jobs.Client(apiClient),
|
|
20
|
+
licenses: new Licenses.Client(apiClient),
|
|
21
|
+
newsrooms: new Newsrooms.Client(apiClient),
|
|
22
|
+
newsroomCategories: new NewsroomCategories.Client(apiClient),
|
|
23
|
+
newsroomContacts: new NewsroomContacts.Client(apiClient),
|
|
24
|
+
newsroomLanguages: new NewsroomLanguages.Client(apiClient),
|
|
25
|
+
newsroomThemes: new NewsroomThemes.Client(apiClient),
|
|
26
|
+
newsroomWebhooks: new NewsroomWebhooks.Client(apiClient),
|
|
27
|
+
newsroomPrivacyRequests: new NewsroomPrivacyRequests.Client(apiClient),
|
|
28
|
+
newsroomDomains: new NewsroomDomains.Client(apiClient),
|
|
29
|
+
newsroomGalleries: new NewsroomGalleries.Client(apiClient),
|
|
30
|
+
senderAddresses: new SenderAddresses.Client(apiClient),
|
|
31
|
+
stories: new Stories.Client(apiClient),
|
|
32
|
+
snippets: new Snippets.Client(apiClient),
|
|
33
|
+
subscriptions: new Subscriptions.Client(apiClient)
|
|
34
|
+
};
|
|
35
|
+
}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { ApiResponse, HeadersMap, Params, ParamsWithPayload } from '../
|
|
1
|
+
import type { ApiResponse, HeadersMap, Params, ParamsWithPayload } from '../http';
|
|
2
2
|
export interface Options {
|
|
3
3
|
accessToken: string;
|
|
4
4
|
baseUrl: string;
|
|
5
5
|
headers: HeadersMap;
|
|
6
6
|
}
|
|
7
|
-
export
|
|
7
|
+
export declare class ApiClient {
|
|
8
8
|
private readonly baseUrl;
|
|
9
9
|
private readonly headers;
|
|
10
10
|
constructor({ accessToken, baseUrl, headers }: Options);
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
import { Http } from "../http/index.js";
|
|
2
|
+
import { stripSlashes } from "../utils.js";
|
|
3
|
+
import { DEFAULT_USER_AGENT } from "./constants.js";
|
|
4
|
+
export class ApiClient {
|
|
5
|
+
constructor({
|
|
6
|
+
accessToken,
|
|
7
|
+
baseUrl,
|
|
8
|
+
headers
|
|
9
|
+
}) {
|
|
10
|
+
this.baseUrl = baseUrl;
|
|
11
|
+
this.headers = {
|
|
12
|
+
authorization: `Bearer ${accessToken}`,
|
|
13
|
+
'User-Agent': DEFAULT_USER_AGENT,
|
|
14
|
+
...headers
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
get(endpointUri, {
|
|
18
|
+
headers,
|
|
19
|
+
query
|
|
20
|
+
} = {}) {
|
|
21
|
+
return Http.get(this.buildEndpointUrl(endpointUri), {
|
|
22
|
+
headers: {
|
|
23
|
+
...this.headers,
|
|
24
|
+
...headers
|
|
25
|
+
},
|
|
26
|
+
query
|
|
27
|
+
});
|
|
28
|
+
}
|
|
29
|
+
post(endpointUri, {
|
|
30
|
+
headers,
|
|
31
|
+
payload,
|
|
32
|
+
query
|
|
33
|
+
} = {}) {
|
|
34
|
+
return Http.post(this.buildEndpointUrl(endpointUri), {
|
|
35
|
+
headers: {
|
|
36
|
+
...this.headers,
|
|
37
|
+
...headers
|
|
38
|
+
},
|
|
39
|
+
payload,
|
|
40
|
+
query
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
put(endpointUri, {
|
|
44
|
+
headers,
|
|
45
|
+
payload,
|
|
46
|
+
query
|
|
47
|
+
} = {}) {
|
|
48
|
+
return Http.put(this.buildEndpointUrl(endpointUri), {
|
|
49
|
+
headers: {
|
|
50
|
+
...this.headers,
|
|
51
|
+
...headers
|
|
52
|
+
},
|
|
53
|
+
payload,
|
|
54
|
+
query
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
patch(endpointUri, {
|
|
58
|
+
headers,
|
|
59
|
+
payload,
|
|
60
|
+
query
|
|
61
|
+
} = {}) {
|
|
62
|
+
return Http.patch(this.buildEndpointUrl(endpointUri), {
|
|
63
|
+
headers: {
|
|
64
|
+
...this.headers,
|
|
65
|
+
...headers
|
|
66
|
+
},
|
|
67
|
+
payload,
|
|
68
|
+
query
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
delete(endpointUri, {
|
|
72
|
+
headers,
|
|
73
|
+
payload,
|
|
74
|
+
query
|
|
75
|
+
} = {}) {
|
|
76
|
+
return Http.delete(this.buildEndpointUrl(endpointUri), {
|
|
77
|
+
headers: {
|
|
78
|
+
...this.headers,
|
|
79
|
+
...headers
|
|
80
|
+
},
|
|
81
|
+
payload,
|
|
82
|
+
query
|
|
83
|
+
});
|
|
84
|
+
}
|
|
85
|
+
buildEndpointUrl(endpointUri) {
|
|
86
|
+
return `${stripSlashes(this.baseUrl)}/${stripSlashes(endpointUri)}`;
|
|
87
|
+
}
|
|
88
|
+
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { ProgressPromise } from '@prezly/progress-promise';
|
|
2
|
-
import { Params, ParamsWithPayload } from '../
|
|
3
|
-
import ApiClient from './ApiClient';
|
|
4
|
-
export
|
|
2
|
+
import type { Params, ParamsWithPayload } from '../http';
|
|
3
|
+
import type { ApiClient } from './ApiClient';
|
|
4
|
+
export declare class DeferredJobsApiClient {
|
|
5
5
|
private readonly apiClient;
|
|
6
6
|
constructor(apiClient: ApiClient);
|
|
7
7
|
get<V = any, P = any>(endpointUri: string, { headers, query }?: Params): ProgressPromise<V, P>;
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
import { ProgressPromise } from '@prezly/progress-promise';
|
|
2
|
+
import { Http, HttpCodes, isDeferredJobResponse } from "../http/index.js";
|
|
3
|
+
import { routing } from "../routing.js";
|
|
4
|
+
import { JobStatus } from "../types/index.js";
|
|
5
|
+
const JOB_STATUS_POLLING_INTERVAL = 2000; // ms
|
|
6
|
+
|
|
7
|
+
async function sleep(milliseconds) {
|
|
8
|
+
return new Promise(resolve => setTimeout(resolve, milliseconds));
|
|
9
|
+
}
|
|
10
|
+
async function handleDeferredJob(request) {
|
|
11
|
+
const response = await request;
|
|
12
|
+
if (response.status === HttpCodes.ACCEPTED && isDeferredJobResponse(response.payload)) {
|
|
13
|
+
return new ProgressPromise(async function (resolve, reject, progress) {
|
|
14
|
+
do {
|
|
15
|
+
const response = await Http.get(routing.jobsUrl);
|
|
16
|
+
const {
|
|
17
|
+
job
|
|
18
|
+
} = response.payload;
|
|
19
|
+
if (job.status === JobStatus.RESOLVED) {
|
|
20
|
+
resolve(job.value);
|
|
21
|
+
return;
|
|
22
|
+
}
|
|
23
|
+
if (job.status === JobStatus.REJECTED) {
|
|
24
|
+
reject(job.value);
|
|
25
|
+
return;
|
|
26
|
+
}
|
|
27
|
+
progress(job.progress, job.value);
|
|
28
|
+
await sleep(JOB_STATUS_POLLING_INTERVAL);
|
|
29
|
+
} while (true); // eslint-disable-line no-constant-condition
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
return ProgressPromise.resolve(response.payload);
|
|
34
|
+
}
|
|
35
|
+
export class DeferredJobsApiClient {
|
|
36
|
+
constructor(apiClient) {
|
|
37
|
+
this.apiClient = apiClient;
|
|
38
|
+
}
|
|
39
|
+
get(endpointUri, {
|
|
40
|
+
headers,
|
|
41
|
+
query
|
|
42
|
+
} = {}) {
|
|
43
|
+
return handleDeferredJob(this.apiClient.get(endpointUri, {
|
|
44
|
+
headers,
|
|
45
|
+
query
|
|
46
|
+
}));
|
|
47
|
+
}
|
|
48
|
+
post(endpointUri, {
|
|
49
|
+
headers,
|
|
50
|
+
payload,
|
|
51
|
+
query
|
|
52
|
+
} = {}) {
|
|
53
|
+
return handleDeferredJob(this.apiClient.post(endpointUri, {
|
|
54
|
+
headers,
|
|
55
|
+
payload,
|
|
56
|
+
query
|
|
57
|
+
}));
|
|
58
|
+
}
|
|
59
|
+
put(endpointUri, {
|
|
60
|
+
headers,
|
|
61
|
+
payload,
|
|
62
|
+
query
|
|
63
|
+
} = {}) {
|
|
64
|
+
return handleDeferredJob(this.apiClient.put(endpointUri, {
|
|
65
|
+
headers,
|
|
66
|
+
payload,
|
|
67
|
+
query
|
|
68
|
+
}));
|
|
69
|
+
}
|
|
70
|
+
patch(endpointUri, {
|
|
71
|
+
headers,
|
|
72
|
+
payload,
|
|
73
|
+
query
|
|
74
|
+
} = {}) {
|
|
75
|
+
return handleDeferredJob(this.apiClient.patch(endpointUri, {
|
|
76
|
+
headers,
|
|
77
|
+
payload,
|
|
78
|
+
query
|
|
79
|
+
}));
|
|
80
|
+
}
|
|
81
|
+
delete(endpointUri, {
|
|
82
|
+
headers,
|
|
83
|
+
payload,
|
|
84
|
+
query
|
|
85
|
+
} = {}) {
|
|
86
|
+
return handleDeferredJob(this.apiClient.delete(endpointUri, {
|
|
87
|
+
headers,
|
|
88
|
+
payload,
|
|
89
|
+
query
|
|
90
|
+
}));
|
|
91
|
+
}
|
|
92
|
+
}
|
|
File without changes
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { DeferredJobsApiClient } from '../../api';
|
|
2
|
+
import type { UserAccount } from '../../types';
|
|
3
|
+
import type { CreateRequest, CreateResponse, ListResponse, UpdateRequest, UpdateResponse } from './types';
|
|
4
|
+
export declare class Client {
|
|
5
|
+
private readonly apiClient;
|
|
6
|
+
constructor(apiClient: DeferredJobsApiClient);
|
|
7
|
+
list(): Promise<ListResponse>;
|
|
8
|
+
create(payload: CreateRequest): Promise<CreateResponse>;
|
|
9
|
+
update(id: UserAccount['id'], payload: UpdateRequest): Promise<UpdateResponse>;
|
|
10
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { routing } from "../../routing.js";
|
|
2
|
+
export class Client {
|
|
3
|
+
constructor(apiClient) {
|
|
4
|
+
this.apiClient = apiClient;
|
|
5
|
+
}
|
|
6
|
+
async list() {
|
|
7
|
+
const url = routing.accounts;
|
|
8
|
+
return this.apiClient.get(url);
|
|
9
|
+
}
|
|
10
|
+
async create(payload) {
|
|
11
|
+
const url = routing.accounts;
|
|
12
|
+
return this.apiClient.post(url, {
|
|
13
|
+
payload
|
|
14
|
+
});
|
|
15
|
+
}
|
|
16
|
+
async update(id, payload) {
|
|
17
|
+
const url = `${routing.accounts}/${id}`;
|
|
18
|
+
return this.apiClient.patch(url, {
|
|
19
|
+
payload
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { UserAccount } from '../../types';
|
|
2
|
+
export interface ListResponse {
|
|
3
|
+
accounts: UserAccount[];
|
|
4
|
+
}
|
|
5
|
+
export interface CreateRequest {
|
|
6
|
+
company_name: string;
|
|
7
|
+
}
|
|
8
|
+
export interface CreateResponse {
|
|
9
|
+
activation_url: string;
|
|
10
|
+
}
|
|
11
|
+
export interface UpdateRequest {
|
|
12
|
+
show_in_menu: boolean;
|
|
13
|
+
}
|
|
14
|
+
export interface UpdateResponse {
|
|
15
|
+
account: UserAccount;
|
|
16
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import type { DeferredJobsApiClient } from '../../api';
|
|
2
|
+
import type { Campaign, Contact, EmailRecipient } from '../../types';
|
|
3
|
+
import { Query } from '../../types';
|
|
4
|
+
import type { RecipientsOperationResponse } from '../Campaigns';
|
|
5
|
+
import type { ContactsScope } from './scopes';
|
|
6
|
+
import type { ListOptions, ListResponse, SearchOptions } from './types';
|
|
7
|
+
declare type CampaignId = Campaign['id'];
|
|
8
|
+
declare type ContactId = Contact['id'];
|
|
9
|
+
declare type EmailRecipientId = EmailRecipient['id'];
|
|
10
|
+
export declare class Client {
|
|
11
|
+
private readonly apiClient;
|
|
12
|
+
constructor(apiClient: DeferredJobsApiClient);
|
|
13
|
+
list(campaignId: CampaignId, options: ListOptions): Promise<ListResponse>;
|
|
14
|
+
search(campaignId: CampaignId, options: SearchOptions): Promise<ListResponse>;
|
|
15
|
+
get(campaignId: CampaignId, recipientId: EmailRecipientId): Promise<EmailRecipient>;
|
|
16
|
+
addContact(campaignId: CampaignId, contact: {
|
|
17
|
+
id: ContactId;
|
|
18
|
+
emailAddress?: string;
|
|
19
|
+
}): Promise<RecipientsOperationResponse>;
|
|
20
|
+
addContacts(campaignId: CampaignId, contacts: {
|
|
21
|
+
query?: Query;
|
|
22
|
+
scope?: ContactsScope;
|
|
23
|
+
}): Promise<RecipientsOperationResponse>;
|
|
24
|
+
removeRecipient(campaignId: CampaignId, recipientId: EmailRecipientId): Promise<RecipientsOperationResponse>;
|
|
25
|
+
removeRecipients(campaignId: CampaignId, params?: {
|
|
26
|
+
query: Query;
|
|
27
|
+
}): Promise<RecipientsOperationResponse>;
|
|
28
|
+
}
|
|
29
|
+
export {};
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import { routing } from "../../routing.js";
|
|
2
|
+
import { Query } from "../../types/index.js";
|
|
3
|
+
export class Client {
|
|
4
|
+
constructor(apiClient) {
|
|
5
|
+
this.apiClient = apiClient;
|
|
6
|
+
}
|
|
7
|
+
async list(campaignId, options) {
|
|
8
|
+
const {
|
|
9
|
+
limit,
|
|
10
|
+
offset,
|
|
11
|
+
sortOrder
|
|
12
|
+
} = options;
|
|
13
|
+
const url = routing.campaignRecipientsUrl.replace(':campaign_id', String(campaignId));
|
|
14
|
+
return this.apiClient.get(url, {
|
|
15
|
+
query: {
|
|
16
|
+
limit,
|
|
17
|
+
offset,
|
|
18
|
+
sort: sortOrder
|
|
19
|
+
}
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
async search(campaignId, options) {
|
|
23
|
+
const {
|
|
24
|
+
limit,
|
|
25
|
+
offset,
|
|
26
|
+
sortOrder,
|
|
27
|
+
query
|
|
28
|
+
} = options;
|
|
29
|
+
const url = routing.campaignRecipientsUrl.replace(':campaign_id', String(campaignId));
|
|
30
|
+
// TODO: Introduce dedicated Search POST API
|
|
31
|
+
return this.apiClient.get(url, {
|
|
32
|
+
query: {
|
|
33
|
+
query: Query.stringify(query),
|
|
34
|
+
sort: sortOrder,
|
|
35
|
+
limit,
|
|
36
|
+
offset
|
|
37
|
+
}
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
async get(campaignId, recipientId) {
|
|
41
|
+
const url = routing.campaignRecipientsUrl.replace(':campaign_id', String(campaignId));
|
|
42
|
+
const {
|
|
43
|
+
recipient
|
|
44
|
+
} = await this.apiClient.get(`${url}/${recipientId}`);
|
|
45
|
+
return recipient;
|
|
46
|
+
}
|
|
47
|
+
async addContact(campaignId, contact) {
|
|
48
|
+
const url = routing.campaignRecipientsUrl.replace(':campaign_id', String(campaignId));
|
|
49
|
+
return this.apiClient.post(url, {
|
|
50
|
+
payload: {
|
|
51
|
+
contact
|
|
52
|
+
}
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
async addContacts(campaignId, contacts) {
|
|
56
|
+
const url = routing.campaignRecipientsUrl.replace(':campaign_id', String(campaignId));
|
|
57
|
+
return this.apiClient.post(url, {
|
|
58
|
+
payload: {
|
|
59
|
+
contacts
|
|
60
|
+
}
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
async removeRecipient(campaignId, recipientId) {
|
|
64
|
+
const url = routing.campaignRecipientsUrl.replace(':campaign_id', String(campaignId));
|
|
65
|
+
return this.apiClient.delete(`${url}/${recipientId}`);
|
|
66
|
+
}
|
|
67
|
+
async removeRecipients(campaignId, params) {
|
|
68
|
+
const {
|
|
69
|
+
query
|
|
70
|
+
} = params || {};
|
|
71
|
+
const url = routing.campaignRecipientsUrl.replace(':campaign_id', String(campaignId));
|
|
72
|
+
return this.apiClient.delete(url, {
|
|
73
|
+
payload: {
|
|
74
|
+
query
|
|
75
|
+
}
|
|
76
|
+
});
|
|
77
|
+
}
|
|
78
|
+
}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import type { Campaign, Contact, EmailRecipient, SelectionValue } from '../../types';
|
|
2
|
+
export interface AllContactsScope {
|
|
3
|
+
type: 'scope:contacts';
|
|
4
|
+
selection?: SelectionValue<Contact['id']>;
|
|
5
|
+
}
|
|
6
|
+
export interface ContactOrganisationsScope {
|
|
7
|
+
type: 'scope:contact_organisations';
|
|
8
|
+
contact_id: Contact['id'];
|
|
9
|
+
selection?: SelectionValue<Contact['id']>;
|
|
10
|
+
}
|
|
11
|
+
export interface ContactEmployeesScope {
|
|
12
|
+
type: 'scope:contact_organisations';
|
|
13
|
+
contact_id: Contact['id'];
|
|
14
|
+
selection?: SelectionValue<Contact['id']>;
|
|
15
|
+
}
|
|
16
|
+
export interface CampaignRecipientsScope {
|
|
17
|
+
type: 'scope:campaign_recipients';
|
|
18
|
+
campaign_id: Campaign['id'];
|
|
19
|
+
selection?: SelectionValue<EmailRecipient['id']>;
|
|
20
|
+
}
|
|
21
|
+
export interface CampaignReportScope {
|
|
22
|
+
type: 'scope:campaign_recipients';
|
|
23
|
+
campaign_id: Campaign['id'];
|
|
24
|
+
report: 'recipients' | 'sent' | 'clicked' | 'opened' | 'unopened' | 'undelivered' | 'unsubscribed';
|
|
25
|
+
selection?: SelectionValue<Contact['id']>;
|
|
26
|
+
}
|
|
27
|
+
export declare type ContactsScope = AllContactsScope | ContactOrganisationsScope | ContactEmployeesScope | CampaignRecipientsScope | CampaignReportScope;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { EmailRecipient, Pagination, Query } from '../../types';
|
|
2
|
+
export interface ListOptions {
|
|
3
|
+
limit?: number;
|
|
4
|
+
offset?: number;
|
|
5
|
+
sortOrder?: string;
|
|
6
|
+
}
|
|
7
|
+
export interface SearchOptions extends ListOptions {
|
|
8
|
+
query?: Query;
|
|
9
|
+
}
|
|
10
|
+
export interface ListResponse {
|
|
11
|
+
recipients: EmailRecipient[];
|
|
12
|
+
pagination: Pagination;
|
|
13
|
+
sort: string;
|
|
14
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { ProgressPromise } from '@prezly/progress-promise';
|
|
2
|
+
import type { DeferredJobsApiClient } from '../../api';
|
|
3
|
+
import type { Campaign } from '../../types';
|
|
4
|
+
import type { CreateRequest, RecipientsOperationResponse, CampaignResponse, UpdateRequest, ListResponse, SearchOptions } from './types';
|
|
5
|
+
export declare class Client {
|
|
6
|
+
private readonly apiClient;
|
|
7
|
+
constructor(apiClient: DeferredJobsApiClient);
|
|
8
|
+
list(options: SearchOptions): Promise<ListResponse>;
|
|
9
|
+
search(options: SearchOptions): Promise<ListResponse>;
|
|
10
|
+
get(id: Campaign['id']): Promise<CampaignResponse>;
|
|
11
|
+
duplicate(id: Campaign['id']): Promise<CampaignResponse>;
|
|
12
|
+
delete(id: Campaign['id']): Promise<void>;
|
|
13
|
+
test(id: Campaign['id'], emails: string[]): Promise<void>;
|
|
14
|
+
send(id: Campaign['id']): Promise<void>;
|
|
15
|
+
schedule(id: Campaign['id'], sendAt: Date): Promise<Campaign>;
|
|
16
|
+
unschedule(id: Campaign['id']): Promise<Campaign>;
|
|
17
|
+
create(payload: CreateRequest): ProgressPromise<RecipientsOperationResponse, {
|
|
18
|
+
recipients_number: number;
|
|
19
|
+
}>;
|
|
20
|
+
update(id: Campaign['id'], payload: UpdateRequest): Promise<CampaignResponse>;
|
|
21
|
+
}
|