SDK version: 13.0.0
Revision: 2024-10-15
CONTRIBUTING.md
document.MIGRATION.md
file.CHANGELOG.md
.This SDK is a thin wrapper around our API. See our API Reference for full documentation on API behavior.
This SDK exactly mirrors the organization and naming convention of the above language-agnostic resources, with a few namespace changes to make it fit better with Typescript
This SDK is organized into the following resources:
You can install this library using npm
.
npm install klaviyo-api@13.0.0
Alternatively, you can also run this using this repo as source code, simply download this repo then connect to your app putting the path in your package.json or via npm link
path: add this line to your apps package.json
"klaviyo-api": "< path to downloaded source code >"
npm link:
run npm link
in your local copy of this repo's directory
run npm link <"path to this repo">
first in your consuming app's directory
Sample file:
If you want to test out the repo but don't have a consuming app, you can run our sample typescript file, make whatever edits you want to sample.ts
in the sample
folder and use
npm run sample --pk=<YOUR PRIVATE KEY HERE>
import { ApiKeySession, ProfilesApi } from 'klaviyo-api'
const session = new ApiKeySession("< YOUR API KEY HERE >")
const profilesApi = new ProfilesApi(session)
createProfile
operation:import {
ApiKeySession,
ProfileCreateQuery,
ProfileEnum,
ProfilesApi,
} from 'klaviyo-api'
const session = new ApiKeySession("< YOUR API KEY HERE >")
const profilesApi = new ProfilesApi(session)
let profile: ProfileCreateQuery = {
data: {
type: ProfileEnum.Profile,
attributes: {
email: "typescript_test_1@klaviyo-demo.com"
}
}
}
profilesApi.createProfile(profile).then(result => {
console.log(result)
}).catch(error => {
console.log(error)
});
Constructing an API object also has optional property RetryOptions
, this acts as a light wrapper with some different defaults around the exponential-backoff
library
you can override
const retryOptions: RetryOptions = new RetryOptions({numOfAttempts: 3, timeMultiple: 5, startingDelay: 500)
const session = new ApiKeySession("< YOUR API KEY HERE >", retryOptions)
if you have used exponential backoff before you can bypass the all the settings by just setting the options with a BackoffOptions
object
const retryOptions: RetryOptions = new RetryOptions()
retryOptions.options = { "BUILD YOUR OWN BackoffOptions object here" }
There is also an optional Klaviyo
import that has all the Apis and Auth, if you prefer that method for organization.
import { Klaviyo } from 'klaviyo-api'
const profilesApi = new Klaviyo.ProfilesApi(new Klaviyo.Auth.ApiKeySession("< YOUR API KEY HERE >", retryOptions))
Failed api calls throw an AxiosError.
The two most commonly useful error items are probably
error.response.status
error.response.statusText
Here is an example of logging those errors to the console
profilesApi.createProfile(profile).then(result => {
console.log(result.body)
}).catch(error => {
console.log(error.response.status)
console.log(error.response.statusText)
});
The ImageApi
exposes uploadImageFromFile()
import fs from 'fs'
import {ApiKeySession, ImageApi } from 'klaviyo-api'
const session = new ApiKeySession("< YOUR API KEY HERE >")
const imageApi = new ImagesApi(session)
imageApi.uploadImageFromFile(fs.createReadStream("./test_image.jpeg")).then(result => {
console.log(result.body)
}).catch(error => {
console.log(error)
}
If you only connect to one Klaviyo account you may find it useful to access preconfigured objects.
Set a global key, If you were using ConfigWrapper
this also sets the GlobalApiKeySettings
import { GlobalApiKeySettings } from 'klaviyo-api'
new GlobalApiKeySettings("< YOUR API KEY HERE >")
Now you can use the shortened names ProfilesApi
can be referenced with Profiles
import { Profiles, GlobalApiKeySettings } from 'klaviyo-api'
new GlobalApiKeySettings("< YOUR API KEY HERE >")
Profiles.getProfiles().then(result => {
console.log(result.body)
}).catch(error => {
console.log(error.response.status)
console.log(error.response.statusText)
});
For users creating integrations or managing multiple Klaviyo accounts, Klaviyo's OAuth authentication will make these tasks easier.
First, configure an integration. If you haven't set up an integration, learn about it in this guide
The klaviyo-api
package can keep your access token
up to date. If you have already developed a system for refreshing tokens or would like a more minimalist option, skip to OAuthBasicSession
For the OAuthApi to be storage agnostic, this interface must be implemented for the OAuthApi
to retrieve and save you access
and refresh
tokens.
Implement the retrieve
and save
functions outlined in the interface. If you need help getting started, check out the storageHelpers.ts
in the Klaviyo Example Typescript Integration
Your implementation needs to include two methods:
save
is called after creating a new access token
via the authorization flow or after refreshing the access token
.
Your code needs to update (and insert if you are going to be using createTokens()
) the new access
or refresh
token information into storage
to keep track of which of your integration users' access information you are referencing, the customerIdentifier
is a unique value to help with lookup later.
save(customerIdentifier: string, tokens: CreatedTokens): Promise<void> | void
retrieve
leverages the customerIdentifier
to look up the saved token information and returns it for the OAuthApi
to use
retrieve(customerIdentifier: string): Promise<RetrievedTokens> | RetrievedTokens
import { TokenStorage } from 'klaviyo-api';
class <Your Token Storage Class Name Here> implements TokenStorage
This class holds the information about your specific integration. It takes three inputs:
clientId
- This is the id of your integration. Retrieve it from your integration's settings pageclientSecret
- This is the secret for your integration. The secret is generated upon the creation of your integration.tokenStorage
- This is an instance of your implementation of TokenStorage
and is called automatically when creating and refreshing access tokens
import { OAuthApi } from 'klaviyo-api';
const oauthApi = new OAuthApi("<client id>", "<client secret>", <instance of your TokenStorage implimentation>)
OAuthSession
To make an API call, you need to create an OAuthSession
instance. This session object is the OAuth equivalent of ApiKeySession
and is used similarly.
It takes two properties
customerIdentifier
- This is how the session is going to grab a user's authentication information and let your implementation of TokenStorage
know where to save any update access token
oauthApi
- This is the instance of OAuthApi
created above. It will dictate how the session saves
and retrieves
the access tokens
retryOptions
- OPTIONAL - the RetryOptions
instance outlines your desired exponential backoff retry options, outlined in Retry Options aboveimport { OAuthSession, ProfilesApi } from 'klaviyo-api';
const session = new OAuthSession(customerIdentifier, oauthApi)
//Pass the session into the API you want to use
const profileApi = new ProfilesApi(session)
OAuthBasicSession
If you don't want to deal with any of the helpers above or don't want klaviyo-api
to refresh your tokens for you, this is the alternative.
The OAuthBasicSession
takes up to two parameters
accessToken
- The token is used in the API calls' authenticationretryOptions
- OPTIONAL - the RetryOptions
instance outlines your desired exponential backoff retry options, outlined in Retry Options aboveimport { OAuthBasicSession } from 'klaviyo-api';
const session = new OAuthBasicSession("<access token>")
//Pass the session into the API you want to use
const profileApi = new ProfilesApi(session)
Remember to check for 401
errors. A 401 means that your token is probably expired.
KlaviyoTokenError
If an error occurred during an API call, check the error type with isKlaviyoTokenError
. The name property will reflect which step the error occurred, reflecting whether it happened during creating, refreshing, saving, or retrieving the name
tokens. The cause
property will hold the error object of whatever specific error occurred.
Build The authorization flow in the same application as with the rest of your integrations business logic or separately. There is no requirement that the authorization flow has to be backend and can be implemented entirely in a frontend application (in that case, you can ignore this section, as this repo shouldn't use this for frontend code)
To understand the authorization flow, there are two major resources to help:
If you implement your authorization flow on a node server, you can use these exposed helper functions.
The OAuthApi class also exposes helpful Authorization flow utilities.
generateAuthorizeUrl
- This helps correctly format the Klaviyo /oauth/authorize
URL the application needs to redirect to so a user can approve your integration.
state
- This is the only way to identify which user just authorized your application (or failed to). state
is passed back via query parameter to your redirectUrl
.scope
- The permissions the created access tokens
will have. The user will be displayed these scopes during the authorization flow. For these permissions to work, also add them to your app settings in Klaviyo herecodeChallenge
- This is the value generated above by the generateCode
function.redirectUrl
- This is the URL that Klaviyo will redirect the user to once Authorization is completed (even if it is denied or has an error).
Remember to whitelist this redirect URL in your integration's settings in Klaviyo.
import { OAuthApi } from 'klaviyo-api'
const oauthApi = new OAuthApi("
createTokens
- Uses Klaviyo /oauth/token/
endpoint to create access
and refresh
tokens
customerIdentifier
- This ID is NOT sent to Klaviyo's API. If the /token
API call this method wraps is successful, the created tokens will be passed into your save
method along with this customerIdentifier
in your implementation of TokenStorage
.codeVerifier
- The verifier code must match the challenge code in the authorized URL redirect.authorizationCode
- A User approving your integration creates this temporary authorization code. Your specified redirect URL receives this under a code
query parameter.redirectUrl
- The endpoint set in generateAuthorizeUrl
. Whitelist the URL in your application settings.import { OAuthApi } from 'klaviyo-api'
const oauthApi = new OAuthApi("<client id>", "<client secret>", <TokenStorage implementation instance>)
await oauthApi.createTokens(
customerIdentifier,
codeVerifier,
authorizationCode,
redirectUrl
)
OAuthCallbackQueryParams
For typescript users, this object is an interface representing the possible query parameters sent to your redirect endpointAll the PKCE helper functions live within the Pkce
namespace. Read about PKCE here
import { Pkce } from 'klaviyo-api'
The Pkce
namespace holds two different helper utilities
generateCodes
- This method will create the codeVerifier
and codeChallenge
needed later in the authorization flow.
import { Pkce } from 'klaviyo-api'
const pkceCodes = new Pkce.generateCodes()
// the two codes can be accessed by
const codeVerifier: string = pkceCodes.codeVerifier
const codeChallenge: string = pkceCodes.codeChallenge
CodeStorage
- This is an OPTIONAL interface to help keep your code organized, to relate a customerIdentifier
to their generated PKCE code
import { Pkce } from 'klaviyo-api'
class <Your Code Storage Class Here> implements Pkce.CodeStorage
Here we will go over
As a reminder, some optional parameters are named slightly differently from how you would make the call without the SDK docs;
the reason for this is that some query parameter names have variables that make for bad JavaScript names.
For example: page[cursor]
becomes pageCursor
. (In short: remove the non-allowed characters and append words with camelCase).
All the endpoints that return a list of results use cursor-based pagination.
Obtain the cursor value from the call you want to get the next page for, then pass it under the pageCursor
optional parameter. The page cursor looks like WzE2NDA5OTUyMDAsICIzYzRjeXdGTndadyIsIHRydWVd
.
API call:
https://a.klaviyo.com/api/profiles/?page[cursor]=WzE2NTcyMTM4NjQsICIzc042NjRyeHo0ciIsIHRydWVd
SDK call:
import { ApiKeySession, ProfilesApi } from 'klaviyo-api'
const session = new ApiKeySession("< YOUR API KEY HERE >")
const profilesApi = new ProfilesApi(session)
const profileList = await profilesApi.getProfiles({pageCursor: 'WzE2NTcyMTM4NjQsICIzc042NjRyeHo0ciIsIHRydWVd'})
You get the cursor for the next
page from body.link.next
. This returns the entire url of the next call,
but the SDK will accept the entire link and use only the relevant cursor, so no need to do any parsing of the next
link on your end
Here is an example of getting the second next and passing in the page cursor:
import { ApiKeySession, ProfilesApi } from 'klaviyo-api'
const session = new ApiKeySession("< YOUR API KEY HERE >")
const profilesApi = new ProfilesApi(session)
try {
const profilesListFirstPage = await profilesApi.getProfiles()
const nextPage = profilesListFirstPage.body.links.next
const profileListSecondPage = await profilesApi.getProfiles({pageCursor: nextPage})
console.log(profileListSecondPage.body)
} catch (e) {
console.log(e)
}
There are more page cursors than just next
: first
, last
, next
and prev
. Check the API Reference for all the paging params for a given endpoint.
Some endpoints allow you to set the page size by using the pageSize
parameter.
API call:
https://a.klaviyo.com/api/profiles/?page[size]=20
SDK call:
import { ApiKeySession, ProfilesApi } from 'klaviyo-api'
const session = new ApiKeySession("< YOUR API KEY HERE >")
const profilesApi = new ProfilesApi(session)
const profileList = await profilesApi.getProfiles({pageSize: 20})
Additional fields are used to populate parts of the response that would be null
otherwise.
For example, for the getProfile
, endpoint you can pass in a request to get the predictive analytics of the profile. Using the additionalFields
parameter does impact the rate limit of the endpoint in cases where the related resource is subject to a lower rate limit, so be sure to keep an eye on your usage.
API call:
https://a.klaviyo.com/api/profiles/01GDDKASAP8TKDDA2GRZDSVP4H/?additional-fields[profile]=predictive_analytics
SDK call:
import { ApiKeySession, ProfilesApi } from 'klaviyo-api'
const session = new ApiKeySession("< YOUR API KEY HERE >")
const profilesApi = new ProfilesApi(session)
const profileId = '01GDDKASAP8TKDDA2GRZDSVP4H'
const profile = await profilesApi.getProfile(profileId, {additionalFieldsProfile: ['predictive_analytics']})
// If your profile has enough information for predictive analytis it will populate
console.log(profile.body.data.attributes.predictiveAnalytics)
You can filter responses by passing a string into the optional parameter filter
. Note that when filtering by a property it will be snake_case instead of camelCase, ie. metric_id
Read more about formatting your filter strings in our developer documentation
Here is an example of a filter string for results between two date times: less-than(updated,2023-04-26T00:00:00Z),greater-than(updated,2023-04-19T00:00:00Z)
Here is a code example to filter for profiles with the matching emails:
https://a.klaviyo.com/api/profiles/?filter=any(email,["henry.chan@klaviyo-demo.com","amanda.das@klaviyo-demo.com"]
SDK call:
import { ApiKeySession, ProfilesApi } from 'klaviyo-api'
const session = new ApiKeySession("< YOUR API KEY HERE >")
const profilesApi = new ProfilesApi(session)
const filter = 'any(email,["henry.chan@klaviyo-demo.com","amanda.das@klaviyo-demo.com"])'
const profileList = await profilesApi.getProfiles({filter})
To help create filters in the correct format, use the FilterBuilder
class
new FilterBuilder()
.equals("email", "sm@klaviyo-demo.com")
.build() // outputs equals(email,"sm@klaviyo-demo.com")
Complex filters can be build by adding additional filters to the builder before calling build()
const date = new Date(2023, 7, 15, 12, 30, 0);
new FilterBuilder()
.any("email", ["sarah.mason@klaviyo-demo.com", "sm@klaviyo-demo.com"])
.greaterThan("created", date)
.build();
// outputs any(email,["sarah.mason@klaviyo-demo.com","sm@klaviyo-demo.com"]),greater-than(created,2023-08-15T16:30:00.000Z)
If you only want a specific subset of data from a specific query you can use sparse fields to request only the specific properties. The SDK expands the optional sparse fields into their own option, where you can pass a list of the desired items to include.
To get a list of event properties the API call you would use is:
https://a.klaviyo.com/api/events/?fields[event]=event_properties
SDK call:
import { ApiKeySession, EventsApi } from 'klaviyo-api'
const session = new ApiKeySession("< YOUR API KEY HERE >")
const eventsApi = new EventsApi(session)
const eventsList = await eventsApi.getEvents({fieldsEvent: ["event_properties"]})
Your can request the results of specific endpoints to be ordered by a given parameter. The direction of the sort can be reversed by adding a -
in front of the sort key.
For example datetime
will be ascending while -datetime
will be descending.
If you are unsure about the available sort fields, refer to the API Reference page for the endpoint you are using. For a comprehensive list that links to the documentation for each function check the Endpoints section below.
API Call to get events sorted by oldest to newest datetime:
https://a.klaviyo.com/api/events/?sort=-datetime
SDK call:
import { ApiKeySession, EventsApi } from 'klaviyo-api'
const session = new ApiKeySession("< YOUR API KEY HERE >")
const eventsApi = new EventsApi(session)
const events = await eventsApi.getEvents({sort: '-datetime'})
You can add additional information to your API response via additional fields and the includes parameter. This allows you to get information about two or more objects from a single API call. Using the includes parameter often changes the rate limit of the endpoint so be sure to take note.
API call to get profile information and the information about the lists the profile is in:
https://a.klaviyo.com/api/profiles/01GDDKASAP8TKDDA2GRZDSVP4H/?include=lists
SDK call:
import { ApiKeySession, ProfilesApi } from 'klaviyo-api'
const session = new ApiKeySession("< YOUR API KEY HERE >")
const profilesApi = new ProfilesApi(session)
const profileId = '01GDDKASAP8TKDDA2GRZDSVP4H'
const profile = await profilesApi.getProfile(profileId,{include:["lists"]})
// Profile information is accessed the same way with
console.log(profile.body.data)
// Lists related to the profile with be accessible via the included array
console.log(profile.body.included)
Note about sparse fields and relationships: you can also request only specific fields for the included object as well.
import { ApiKeySession, ProfilesApi } from 'klaviyo-api'
const session = new ApiKeySession("< YOUR API KEY HERE >")
const profilesApi = new ProfilesApi(session)
const profileId = '01GDDKASAP8TKDDA2GRZDSVP4H'
// Use the fieldsLists property to request only the list name
const profile = await profilesApi.getProfile(profileId, {fieldsList: ['name'], include: ["lists"]})
// Profile information is accessed the same way with
console.log(profile.body.data)
// Lists related to the profile with be accessible via the included array
console.log(profile.body.included)
The Klaviyo API has a series of endpoints to expose the relationships between different Klaviyo Items. You can read more about relationships in our documentation.
Here are some use cases and their examples:
API call to get the list membership for a profile with the given profile ID:
https://a.klaviyo.com/api/profiles/01GDDKASAP8TKDDA2GRZDSVP4H/relationships/lists/
SDK call:
import { ApiKeySession, ProfilesApi } from 'klaviyo-api'
const session = new ApiKeySession("< YOUR API KEY HERE >")
const profilesApi = new ProfilesApi(session)
const profileId = '01GDDKASAP8TKDDA2GRZDSVP4H'
const profileRelationships = await profilesApi.getProfileRelationshipsLists(profileId)
For another example:
Get all campaigns associated with the given tag_id
.
API call:
https://a.klaviyo.com/api/tags/9c8db7a0-5ab5-4e3c-9a37-a3224fd14382/relationships/campaigns/
SDK call:
import { ApiKeySession, TagsApi } from 'klaviyo-api'
const session = new ApiKeySession("< YOUR API KEY HERE >")
const tagsApi = new TagsApi(session)
const tagId = '9c8db7a0-5ab5-4e3c-9a37-a3224fd14382'
const relatedCampagins = tagsApi.getTagRelationshipsCampaigns(tagId)
You can use any combination of the features outlines above in conjunction with one another.
API call to get events associated with a specific metric, then return just the event properties sorted by oldest to newest datetime:
API call:
https://a.klaviyo.com/api/events/?fields[event]=event_properties&filter=equals(metric_id,"URDbLg")&sort=-datetime
SDK call:
import { ApiKeySession, EventsApi } from 'klaviyo-api'
const session = new ApiKeySession("< YOUR API KEY HERE >")
const eventsApi = new EventsApi(session)
const metricId = 'URDbLg'
const filter = `equal(metric_id,"${metricId}")`
const events = await eventsApi.getEvents({fieldsEvent: ['event_properties'], sort: '-datetime', filter})
AccountsApi.getAccount(id: string, options)
AccountsApi.getAccounts(options)
Assign Template to Campaign Message
CampaignsApi.assignTemplateToCampaignMessage(campaignMessageAssignTemplateQuery: CampaignMessageAssignTemplateQuery)
CampaignsApi.createCampaignMessageAssignTemplate(campaignMessageAssignTemplateQuery: CampaignMessageAssignTemplateQuery)
CampaignsApi.cancelCampaignSend(id: string, campaignSendJobPartialUpdateQuery: CampaignSendJobPartialUpdateQuery)
CampaignsApi.updateCampaignSendJob(id: string, campaignSendJobPartialUpdateQuery: CampaignSendJobPartialUpdateQuery)
CampaignsApi.createCampaign(campaignCreateQuery: CampaignCreateQuery)
CampaignsApi.createCampaignClone(campaignCloneQuery: CampaignCloneQuery)
CampaignsApi.cloneCampaign(campaignCloneQuery: CampaignCloneQuery)
CampaignsApi.deleteCampaign(id: string)
CampaignsApi.getCampaign(id: string, options)
Get Campaign for Campaign Message
CampaignsApi.getCampaignForCampaignMessage(id: string, options)
CampaignsApi.getCampaignMessageCampaign(id: string, options)
Get Campaign ID for Campaign Message
CampaignsApi.getCampaignIdForCampaignMessage(id: string)
CampaignsApi.getCampaignMessageRelationshipsCampaign(id: string)
CampaignsApi.getCampaignMessage(id: string, options)
Get Campaign Recipient Estimation
CampaignsApi.getCampaignRecipientEstimation(id: string, options)
Get Campaign Recipient Estimation Job
CampaignsApi.getCampaignRecipientEstimationJob(id: string, options)
CampaignsApi.getCampaignSendJob(id: string, options)
CampaignsApi.getCampaignTags(id: string, options)
CampaignsApi.getCampaigns(filter: string, options)
CampaignsApi.getMessageIdsForCampaign(id: string)
CampaignsApi.getCampaignRelationshipsCampaignMessages(id: string)
CampaignsApi.getMessagesForCampaign(id: string, options)
CampaignsApi.getCampaignCampaignMessages(id: string, options)
CampaignsApi.getTagIdsForCampaign(id: string)
CampaignsApi.getCampaignRelationshipsTags(id: string)
Get Template for Campaign Message
CampaignsApi.getTemplateForCampaignMessage(id: string, options)
CampaignsApi.getCampaignMessageTemplate(id: string, options)
Get Template ID for Campaign Message
CampaignsApi.getTemplateIdForCampaignMessage(id: string)
CampaignsApi.getCampaignMessageRelationshipsTemplate(id: string)
Refresh Campaign Recipient Estimation
CampaignsApi.refreshCampaignRecipientEstimation(campaignRecipientEstimationJobCreateQuery: CampaignRecipientEstimationJobCreateQuery)
CampaignsApi.createCampaignRecipientEstimationJob(campaignRecipientEstimationJobCreateQuery: CampaignRecipientEstimationJobCreateQuery)
CampaignsApi.sendCampaign(campaignSendJobCreateQuery: CampaignSendJobCreateQuery)
CampaignsApi.createCampaignSendJob(campaignSendJobCreateQuery: CampaignSendJobCreateQuery)
CampaignsApi.updateCampaign(id: string, campaignPartialUpdateQuery: CampaignPartialUpdateQuery)
CampaignsApi.updateCampaignMessage(id: string, campaignMessagePartialUpdateQuery: CampaignMessagePartialUpdateQuery)
CatalogsApi.addCategoryToCatalogItem(id: string, catalogItemCategoryOp: CatalogItemCategoryOp)
CatalogsApi.createCatalogItemRelationshipsCategories(id: string, catalogItemCategoryOp: CatalogItemCategoryOp)
CatalogsApi.createCatalogItemRelationshipsCategory(id: string, catalogItemCategoryOp: CatalogItemCategoryOp)
CatalogsApi.addItemsToCatalogCategory(id: string, catalogCategoryItemOp: CatalogCategoryItemOp)
CatalogsApi.createCatalogCategoryRelationshipsItems(id: string, catalogCategoryItemOp: CatalogCategoryItemOp)
CatalogsApi.createCatalogCategoryRelationshipsItem(id: string, catalogCategoryItemOp: CatalogCategoryItemOp)
Bulk Create Catalog Categories
CatalogsApi.bulkCreateCatalogCategories(catalogCategoryCreateJobCreateQuery: CatalogCategoryCreateJobCreateQuery)
CatalogsApi.spawnCreateCategoriesJob(catalogCategoryCreateJobCreateQuery: CatalogCategoryCreateJobCreateQuery)
CatalogsApi.createCatalogCategoryBulkCreateJob(catalogCategoryCreateJobCreateQuery: CatalogCategoryCreateJobCreateQuery)
CatalogsApi.bulkCreateCatalogItems(catalogItemCreateJobCreateQuery: CatalogItemCreateJobCreateQuery)
CatalogsApi.spawnCreateItemsJob(catalogItemCreateJobCreateQuery: CatalogItemCreateJobCreateQuery)
CatalogsApi.createCatalogItemBulkCreateJob(catalogItemCreateJobCreateQuery: CatalogItemCreateJobCreateQuery)
CatalogsApi.bulkCreateCatalogVariants(catalogVariantCreateJobCreateQuery: CatalogVariantCreateJobCreateQuery)
CatalogsApi.spawnCreateVariantsJob(catalogVariantCreateJobCreateQuery: CatalogVariantCreateJobCreateQuery)
CatalogsApi.createCatalogVariantBulkCreateJob(catalogVariantCreateJobCreateQuery: CatalogVariantCreateJobCreateQuery)
Bulk Delete Catalog Categories
CatalogsApi.bulkDeleteCatalogCategories(catalogCategoryDeleteJobCreateQuery: CatalogCategoryDeleteJobCreateQuery)
CatalogsApi.spawnDeleteCategoriesJob(catalogCategoryDeleteJobCreateQuery: CatalogCategoryDeleteJobCreateQuery)
CatalogsApi.createCatalogCategoryBulkDeleteJob(catalogCategoryDeleteJobCreateQuery: CatalogCategoryDeleteJobCreateQuery)
CatalogsApi.bulkDeleteCatalogItems(catalogItemDeleteJobCreateQuery: CatalogItemDeleteJobCreateQuery)
CatalogsApi.spawnDeleteItemsJob(catalogItemDeleteJobCreateQuery: CatalogItemDeleteJobCreateQuery)
CatalogsApi.createCatalogItemBulkDeleteJob(catalogItemDeleteJobCreateQuery: CatalogItemDeleteJobCreateQuery)
CatalogsApi.bulkDeleteCatalogVariants(catalogVariantDeleteJobCreateQuery: CatalogVariantDeleteJobCreateQuery)
CatalogsApi.spawnDeleteVariantsJob(catalogVariantDeleteJobCreateQuery: CatalogVariantDeleteJobCreateQuery)
CatalogsApi.createCatalogVariantBulkDeleteJob(catalogVariantDeleteJobCreateQuery: CatalogVariantDeleteJobCreateQuery)
Bulk Update Catalog Categories
CatalogsApi.bulkUpdateCatalogCategories(catalogCategoryUpdateJobCreateQuery: CatalogCategoryUpdateJobCreateQuery)
CatalogsApi.spawnUpdateCategoriesJob(catalogCategoryUpdateJobCreateQuery: CatalogCategoryUpdateJobCreateQuery)
CatalogsApi.createCatalogCategoryBulkUpdateJob(catalogCategoryUpdateJobCreateQuery: CatalogCategoryUpdateJobCreateQuery)
CatalogsApi.bulkUpdateCatalogItems(catalogItemUpdateJobCreateQuery: CatalogItemUpdateJobCreateQuery)
CatalogsApi.spawnUpdateItemsJob(catalogItemUpdateJobCreateQuery: CatalogItemUpdateJobCreateQuery)
CatalogsApi.createCatalogItemBulkUpdateJob(catalogItemUpdateJobCreateQuery: CatalogItemUpdateJobCreateQuery)
CatalogsApi.bulkUpdateCatalogVariants(catalogVariantUpdateJobCreateQuery: CatalogVariantUpdateJobCreateQuery)
CatalogsApi.spawnUpdateVariantsJob(catalogVariantUpdateJobCreateQuery: CatalogVariantUpdateJobCreateQuery)
CatalogsApi.createCatalogVariantBulkUpdateJob(catalogVariantUpdateJobCreateQuery: CatalogVariantUpdateJobCreateQuery)
Create Back In Stock Subscription
CatalogsApi.createBackInStockSubscription(serverBISSubscriptionCreateQuery: ServerBISSubscriptionCreateQuery)
CatalogsApi.createCatalogCategory(catalogCategoryCreateQuery: CatalogCategoryCreateQuery)
CatalogsApi.createCatalogItem(catalogItemCreateQuery: CatalogItemCreateQuery)
CatalogsApi.createCatalogVariant(catalogVariantCreateQuery: CatalogVariantCreateQuery)
CatalogsApi.deleteCatalogCategory(id: string)
CatalogsApi.deleteCatalogItem(id: string)
CatalogsApi.deleteCatalogVariant(id: string)
Get Bulk Create Catalog Items Job
CatalogsApi.getBulkCreateCatalogItemsJob(jobId: string, options)
CatalogsApi.getCreateItemsJob(jobId: string, options)
CatalogsApi.getCatalogItemBulkCreateJob(jobId: string, options)
Get Bulk Create Catalog Items Jobs
CatalogsApi.getBulkCreateCatalogItemsJobs(options)
CatalogsApi.getCreateItemsJobs(options)
CatalogsApi.getCatalogItemBulkCreateJobs(options)
Get Bulk Delete Catalog Items Job
CatalogsApi.getBulkDeleteCatalogItemsJob(jobId: string, options)
CatalogsApi.getDeleteItemsJob(jobId: string, options)
CatalogsApi.getCatalogItemBulkDeleteJob(jobId: string, options)
Get Bulk Delete Catalog Items Jobs
CatalogsApi.getBulkDeleteCatalogItemsJobs(options)
CatalogsApi.getDeleteItemsJobs(options)
CatalogsApi.getCatalogItemBulkDeleteJobs(options)
Get Bulk Update Catalog Items Job
CatalogsApi.getBulkUpdateCatalogItemsJob(jobId: string, options)
CatalogsApi.getUpdateItemsJob(jobId: string, options)
CatalogsApi.getCatalogItemBulkUpdateJob(jobId: string, options)
Get Bulk Update Catalog Items Jobs
CatalogsApi.getBulkUpdateCatalogItemsJobs(options)
CatalogsApi.getUpdateItemsJobs(options)
CatalogsApi.getCatalogItemBulkUpdateJobs(options)
CatalogsApi.getCatalogCategories(options)
CatalogsApi.getCatalogCategory(id: string, options)
CatalogsApi.getCatalogItem(id: string, options)
CatalogsApi.getCatalogItems(options)
CatalogsApi.getCatalogVariant(id: string, options)
CatalogsApi.getCatalogVariants(options)
Get Categories for Catalog Item
CatalogsApi.getCategoriesForCatalogItem(id: string, options)
CatalogsApi.getCatalogItemCategories(id: string, options)
Get Category IDs for Catalog Item
CatalogsApi.getCategoryIdsForCatalogItem(id: string, options)
CatalogsApi.getCatalogItemRelationshipsCategories(id: string, options)
CatalogsApi.getCreateCategoriesJob(jobId: string, options)
CatalogsApi.getCatalogCategoryBulkCreateJob(jobId: string, options)
CatalogsApi.getCreateCategoriesJobs(options)
CatalogsApi.getCatalogCategoryBulkCreateJobs(options)
CatalogsApi.getCreateVariantsJob(jobId: string, options)
CatalogsApi.getCatalogVariantBulkCreateJob(jobId: string, options)
CatalogsApi.getCreateVariantsJobs(options)
CatalogsApi.getCatalogVariantBulkCreateJobs(options)
CatalogsApi.getDeleteCategoriesJob(jobId: string, options)
CatalogsApi.getCatalogCategoryBulkDeleteJob(jobId: string, options)
CatalogsApi.getDeleteCategoriesJobs(options)
CatalogsApi.getCatalogCategoryBulkDeleteJobs(options)
CatalogsApi.getDeleteVariantsJob(jobId: string, options)
CatalogsApi.getCatalogVariantBulkDeleteJob(jobId: string, options)
CatalogsApi.getDeleteVariantsJobs(options)
CatalogsApi.getCatalogVariantBulkDeleteJobs(options)
Get Item IDs for Catalog Category
CatalogsApi.getItemIdsForCatalogCategory(id: string, options)
CatalogsApi.getCatalogCategoryRelationshipsItems(id: string, options)
Get Items for Catalog Category
CatalogsApi.getItemsForCatalogCategory(id: string, options)
CatalogsApi.getCatalogCategoryItems(id: string, options)
CatalogsApi.getUpdateCategoriesJob(jobId: string, options)
CatalogsApi.getCatalogCategoryBulkUpdateJob(jobId: string, options)
CatalogsApi.getUpdateCategoriesJobs(options)
CatalogsApi.getCatalogCategoryBulkUpdateJobs(options)
CatalogsApi.getUpdateVariantsJob(jobId: string, options)
CatalogsApi.getCatalogVariantBulkUpdateJob(jobId: string, options)
CatalogsApi.getUpdateVariantsJobs(options)
CatalogsApi.getCatalogVariantBulkUpdateJobs(options)
CatalogsApi.getVariantsForCatalogItem(id: string, options)
CatalogsApi.getCatalogItemVariants(id: string, options)
Remove Categories from Catalog Item
CatalogsApi.removeCategoriesFromCatalogItem(id: string, catalogItemCategoryOp: CatalogItemCategoryOp)
CatalogsApi.deleteCatalogItemRelationshipsCategories(id: string, catalogItemCategoryOp: CatalogItemCategoryOp)
Remove Items from Catalog Category
CatalogsApi.removeItemsFromCatalogCategory(id: string, catalogCategoryItemOp: CatalogCategoryItemOp)
CatalogsApi.deleteCatalogCategoryRelationshipsItems(id: string, catalogCategoryItemOp: CatalogCategoryItemOp)
CatalogsApi.updateCatalogCategory(id: string, catalogCategoryUpdateQuery: CatalogCategoryUpdateQuery)
CatalogsApi.updateCatalogItem(id: string, catalogItemUpdateQuery: CatalogItemUpdateQuery)
CatalogsApi.updateCatalogVariant(id: string, catalogVariantUpdateQuery: CatalogVariantUpdateQuery)
Update Categories for Catalog Item
CatalogsApi.updateCategoriesForCatalogItem(id: string, catalogItemCategoryOp: CatalogItemCategoryOp)
CatalogsApi.updateCatalogItemRelationshipsCategories(id: string, catalogItemCategoryOp: CatalogItemCategoryOp)
Update Items for Catalog Category
CatalogsApi.updateItemsForCatalogCategory(id: string, catalogCategoryItemOp: CatalogCategoryItemOp)
CatalogsApi.updateCatalogCategoryRelationshipsItems(id: string, catalogCategoryItemOp: CatalogCategoryItemOp)
CouponsApi.bulkCreateCouponCodes(couponCodeCreateJobCreateQuery: CouponCodeCreateJobCreateQuery)
CouponsApi.spawnCouponCodeBulkCreateJob(couponCodeCreateJobCreateQuery: CouponCodeCreateJobCreateQuery)
CouponsApi.createCouponCodeBulkCreateJob(couponCodeCreateJobCreateQuery: CouponCodeCreateJobCreateQuery)
CouponsApi.createCoupon(couponCreateQuery: CouponCreateQuery)
CouponsApi.createCouponCode(couponCodeCreateQuery: CouponCodeCreateQuery)
CouponsApi.deleteCoupon(id: string)
CouponsApi.deleteCouponCode(id: string)
Get Bulk Create Coupon Code Jobs
CouponsApi.getBulkCreateCouponCodeJobs(options)
CouponsApi.getCouponCodeBulkCreateJobs(options)
Get Bulk Create Coupon Codes Job
CouponsApi.getBulkCreateCouponCodesJob(jobId: string, options)
CouponsApi.getCouponCodeBulkCreateJob(jobId: string, options)
CouponsApi.getCodeIdsForCoupon(id: string, options)
CouponsApi.getCouponCodeRelationshipsCoupon(id: string, options)
CouponsApi.getCoupon(id: string, options)
CouponsApi.getCouponCode(id: string, options)
CouponsApi.getCouponCodes(options)
CouponsApi.getCouponCodesForCoupon(id: string, options)
CouponsApi.getCouponCouponCodes(id: string, options)
CouponsApi.getCouponForCouponCode(id: string, options)
CouponsApi.getCouponCodeCoupon(id: string, options)
CouponsApi.getCouponIdForCouponCode(id: string)
CouponsApi.getCouponRelationshipsCouponCodes(id: string)
CouponsApi.getCoupons(options)
CouponsApi.updateCoupon(id: string, couponUpdateQuery: CouponUpdateQuery)
CouponsApi.updateCouponCode(id: string, couponCodeUpdateQuery: CouponCodeUpdateQuery)
DataPrivacyApi.requestProfileDeletion(dataPrivacyCreateDeletionJobQuery: DataPrivacyCreateDeletionJobQuery)
DataPrivacyApi.createDataPrivacyDeletionJob(dataPrivacyCreateDeletionJobQuery: DataPrivacyCreateDeletionJobQuery)
EventsApi.bulkCreateEvents(eventsBulkCreateJob: EventsBulkCreateJob)
EventsApi.createEventBulkCreateJob(eventsBulkCreateJob: EventsBulkCreateJob)
EventsApi.createEvent(eventCreateQueryV2: EventCreateQueryV2)
EventsApi.getEvent(id: string, options)
EventsApi.getEventMetric(id: string, options)
EventsApi.getEventProfile(id: string, options)
EventsApi.getEvents(options)
EventsApi.getMetricIdForEvent(id: string)
EventsApi.getEventRelationshipsMetric(id: string)
EventsApi.getProfileIdForEvent(id: string)
EventsApi.getEventRelationshipsProfile(id: string)
FlowsApi.deleteFlow(id: string)
Get Action ID for Flow Message
FlowsApi.getActionIdForFlowMessage(id: string)
FlowsApi.getFlowMessageRelationshipsAction(id: string)
FlowsApi.getActionIdsForFlow(id: string, options)
FlowsApi.getFlowRelationshipsFlowActions(id: string, options)
FlowsApi.getActionsForFlow(id: string, options)
FlowsApi.getFlowFlowActions(id: string, options)
FlowsApi.getFlow(id: string, options)
FlowsApi.getFlowAction(id: string, options)
FlowsApi.getFlowActionFlow(id: string, options)
FlowsApi.getFlowIdForFlowAction(id: string)
FlowsApi.getFlowActionRelationshipsFlow(id: string)
FlowsApi.getFlowMessage(id: string, options)
FlowsApi.getFlowMessageAction(id: string, options)
FlowsApi.getFlowTags(id: string, options)
FlowsApi.getFlows(options)
Get Message IDs for Flow Action
FlowsApi.getMessageIdsForFlowAction(id: string, options)
FlowsApi.getFlowActionRelationshipsMessages(id: string, options)
FlowsApi.getMessagesForFlowAction(id: string, options)
FlowsApi.getFlowActionMessages(id: string, options)
FlowsApi.getTagIdsForFlow(id: string)
FlowsApi.getFlowRelationshipsTags(id: string)
FlowsApi.getTemplateForFlowMessage(id: string, options)
FlowsApi.getFlowMessageTemplate(id: string, options)
Get Template ID for Flow Message
FlowsApi.getTemplateIdForFlowMessage(id: string)
FlowsApi.getFlowMessageRelationshipsTemplate(id: string)
FlowsApi.updateFlow(id: string, flowUpdateQuery: FlowUpdateQuery)
FormsApi.getForm(id: string, options)
FormsApi.getFormForFormVersion(id: string, options)
FormsApi.getFormVersionForm(id: string, options)
FormsApi.getFormIdForFormVersion(id: string)
FormsApi.getFormVersionRelationshipsForm(id: string)
FormsApi.getFormVersion(id: string, options)
FormsApi.getForms(options)
FormsApi.getVersionIdsForForm(id: string)
FormsApi.getFormRelationshipsFormVersions(id: string)
FormsApi.getVersionsForForm(id: string, options)
FormsApi.getFormFormVersions(id: string, options)
ImagesApi.getImage(id: string, options)
ImagesApi.getImages(options)
ImagesApi.updateImage(id: string, imagePartialUpdateQuery: ImagePartialUpdateQuery)
ImagesApi.uploadImageFromFile(file: RequestFile, )
ImagesApi.createImageUpload(file: RequestFile, )
ImagesApi.uploadImageFromUrl(imageCreateQuery: ImageCreateQuery)
ImagesApi.createImage(imageCreateQuery: ImageCreateQuery)
ListsApi.createList(listCreateQuery: ListCreateQuery)
ListsApi.createListRelationships(id: string, listMembersAddQuery: ListMembersAddQuery)
ListsApi.createListRelationshipsProfile(id: string, listMembersAddQuery: ListMembersAddQuery)
ListsApi.deleteList(id: string)
ListsApi.deleteListRelationships(id: string, listMembersDeleteQuery: ListMembersDeleteQuery)
ListsApi.deleteListRelationshipsProfiles(id: string, listMembersDeleteQuery: ListMembersDeleteQuery)
ListsApi.getList(id: string, options)
ListsApi.getListFlowTriggers(id: string, options)
ListsApi.getListProfiles(id: string, options)
Get List Relationships Flow Triggers
ListsApi.getListRelationshipsFlowTriggers(id: string)
ListsApi.getListTags(id: string, options)
ListsApi.getLists(options)
ListsApi.getProfileIdsForList(id: string, options)
ListsApi.getListRelationshipsProfiles(id: string, options)
ListsApi.getTagIdsForList(id: string)
ListsApi.getListRelationshipsTags(id: string)
ListsApi.updateList(id: string, listPartialUpdateQuery: ListPartialUpdateQuery)
MetricsApi.getMetric(id: string, options)
MetricsApi.getMetricFlowTriggers(id: string, options)
Get Metric for Metric Property
MetricsApi.getMetricForMetricProperty(id: string, options)
MetricsApi.getMetricPropertyMetric(id: string, options)
Get Metric ID for Metric Property
MetricsApi.getMetricIdForMetricProperty(id: string)
MetricsApi.getMetricPropertyRelationshipsMetric(id: string)
MetricsApi.getMetricProperty(id: string, options)
Get Metric Relationships Flow Triggers
MetricsApi.getMetricRelationshipsFlowTriggers(id: string)
MetricsApi.getMetrics(options)
MetricsApi.getPropertiesForMetric(id: string, options)
MetricsApi.getMetricMetricProperties(id: string, options)
MetricsApi.getPropertyIdsForMetric(id: string)
MetricsApi.getMetricRelationshipsMetricProperties(id: string)
MetricsApi.queryMetricAggregates(metricAggregateQuery: MetricAggregateQuery)
MetricsApi.createMetricAggregate(metricAggregateQuery: MetricAggregateQuery)
ProfilesApi.bulkSubscribeProfiles(subscriptionCreateJobCreateQuery: SubscriptionCreateJobCreateQuery)
ProfilesApi.subscribeProfiles(subscriptionCreateJobCreateQuery: SubscriptionCreateJobCreateQuery)
ProfilesApi.createProfileSubscriptionBulkCreateJob(subscriptionCreateJobCreateQuery: SubscriptionCreateJobCreateQuery)
ProfilesApi.bulkSuppressProfiles(suppressionCreateJobCreateQuery: SuppressionCreateJobCreateQuery)
ProfilesApi.suppressProfiles(suppressionCreateJobCreateQuery: SuppressionCreateJobCreateQuery)
ProfilesApi.createProfileSuppressionBulkCreateJob(suppressionCreateJobCreateQuery: SuppressionCreateJobCreateQuery)
ProfilesApi.bulkUnsubscribeProfiles(subscriptionDeleteJobCreateQuery: SubscriptionDeleteJobCreateQuery)
ProfilesApi.unsubscribeProfiles(subscriptionDeleteJobCreateQuery: SubscriptionDeleteJobCreateQuery)
ProfilesApi.createProfileSubscriptionBulkDeleteJob(subscriptionDeleteJobCreateQuery: SubscriptionDeleteJobCreateQuery)
ProfilesApi.bulkUnsuppressProfiles(suppressionDeleteJobCreateQuery: SuppressionDeleteJobCreateQuery)
ProfilesApi.unsuppressProfiles(suppressionDeleteJobCreateQuery: SuppressionDeleteJobCreateQuery)
ProfilesApi.createProfileSuppressionBulkDeleteJob(suppressionDeleteJobCreateQuery: SuppressionDeleteJobCreateQuery)
ProfilesApi.createOrUpdateProfile(profileUpsertQuery: ProfileUpsertQuery)
ProfilesApi.createProfileImport(profileUpsertQuery: ProfileUpsertQuery)
ProfilesApi.createProfile(profileCreateQuery: ProfileCreateQuery)
ProfilesApi.createPushToken(pushTokenCreateQuery: PushTokenCreateQuery)
ProfilesApi.getBulkImportProfilesJob(jobId: string, options)
ProfilesApi.getBulkProfileImportJob(jobId: string, options)
ProfilesApi.getProfileBulkImportJob(jobId: string, options)
ProfilesApi.getBulkImportProfilesJobs(options)
ProfilesApi.getBulkProfileImportJobs(options)
ProfilesApi.getProfileBulkImportJobs(options)
Get Bulk Suppress Profiles Job
ProfilesApi.getBulkSuppressProfilesJob(jobId: string, options)
ProfilesApi.getProfileSuppressionBulkCreateJob(jobId: string, options)
Get Bulk Suppress Profiles Jobs
ProfilesApi.getBulkSuppressProfilesJobs(options)
ProfilesApi.getProfileSuppressionBulkCreateJobs(options)
Get Bulk Unsuppress Profiles Job
ProfilesApi.getBulkUnsuppressProfilesJob(jobId: string, options)
ProfilesApi.getProfileSuppressionBulkDeleteJob(jobId: string, options)
Get Bulk Unsuppress Profiles Jobs
ProfilesApi.getBulkUnsuppressProfilesJobs(options)
ProfilesApi.getProfileSuppressionBulkDeleteJobs(options)
Get Errors for Bulk Import Profiles Job
ProfilesApi.getErrorsForBulkImportProfilesJob(id: string, options)
ProfilesApi.getBulkProfileImportJobImportErrors(id: string, options)
ProfilesApi.getProfileBulkImportJobImportErrors(id: string, options)
Get List for Bulk Import Profiles Job
ProfilesApi.getListForBulkImportProfilesJob(id: string, options)
ProfilesApi.getBulkProfileImportJobLists(id: string, options)
ProfilesApi.getProfileBulkImportJobLists(id: string, options)
Get List IDs for Bulk Import Profiles Job
ProfilesApi.getListIdsForBulkImportProfilesJob(id: string)
ProfilesApi.getBulkProfileImportJobRelationshipsLists(id: string)
ProfilesApi.getProfileBulkImportJobRelationshipsLists(id: string)
ProfilesApi.getListIdsForProfile(id: string)
ProfilesApi.getProfileRelationshipsLists(id: string)
ProfilesApi.getListsForProfile(id: string, options)
ProfilesApi.getProfileLists(id: string, options)
ProfilesApi.getProfile(id: string, options)
Get Profile IDs for Bulk Import Profiles Job
ProfilesApi.getProfileIdsForBulkImportProfilesJob(id: string, options)
ProfilesApi.getBulkProfileImportJobRelationshipsProfiles(id: string, options)
ProfilesApi.getProfileBulkImportJobRelationshipsProfiles(id: string, options)
ProfilesApi.getProfiles(options)
Get Profiles for Bulk Import Profiles Job
ProfilesApi.getProfilesForBulkImportProfilesJob(id: string, options)
ProfilesApi.getBulkProfileImportJobProfiles(id: string, options)
ProfilesApi.getProfileBulkImportJobProfiles(id: string, options)
ProfilesApi.getSegmentIdsForProfile(id: string)
ProfilesApi.getProfileRelationshipsSegments(id: string)
ProfilesApi.getSegmentsForProfile(id: string, options)
ProfilesApi.getProfileSegments(id: string, options)
ProfilesApi.mergeProfiles(profileMergeQuery: ProfileMergeQuery)
ProfilesApi.createProfileMerge(profileMergeQuery: ProfileMergeQuery)
ProfilesApi.spawnBulkProfileImportJob(profileImportJobCreateQuery: ProfileImportJobCreateQuery)
ProfilesApi.bulkImportProfiles(profileImportJobCreateQuery: ProfileImportJobCreateQuery)
ProfilesApi.createProfileBulkImportJob(profileImportJobCreateQuery: ProfileImportJobCreateQuery)
ProfilesApi.updateProfile(id: string, profilePartialUpdateQuery: ProfilePartialUpdateQuery)
ReportingApi.queryCampaignValues(campaignValuesRequestDTO: CampaignValuesRequestDTO, options)
ReportingApi.createCampaignValueReport(campaignValuesRequestDTO: CampaignValuesRequestDTO, options)
ReportingApi.queryFlowSeries(flowSeriesRequestDTO: FlowSeriesRequestDTO, options)
ReportingApi.createFlowSeryReport(flowSeriesRequestDTO: FlowSeriesRequestDTO, options)
ReportingApi.queryFlowValues(flowValuesRequestDTO: FlowValuesRequestDTO, options)
ReportingApi.createFlowValueReport(flowValuesRequestDTO: FlowValuesRequestDTO, options)
ReportingApi.queryFormSeries(formSeriesRequestDTO: FormSeriesRequestDTO)
ReportingApi.createFormSeryReport(formSeriesRequestDTO: FormSeriesRequestDTO)
ReportingApi.queryFormValues(formValuesRequestDTO: FormValuesRequestDTO)
ReportingApi.createFormValueReport(formValuesRequestDTO: FormValuesRequestDTO)
ReportingApi.querySegmentSeries(segmentSeriesRequestDTO: SegmentSeriesRequestDTO)
ReportingApi.createSegmentSeryReport(segmentSeriesRequestDTO: SegmentSeriesRequestDTO)
ReportingApi.querySegmentValues(segmentValuesRequestDTO: SegmentValuesRequestDTO)
ReportingApi.createSegmentValueReport(segmentValuesRequestDTO: SegmentValuesRequestDTO)
ReviewsApi.getReview(id: string, options)
ReviewsApi.getReviews(options)
SegmentsApi.createSegment(segmentCreateQuery: SegmentCreateQuery)
SegmentsApi.deleteSegment(id: string)
SegmentsApi.getProfileIdsForSegment(id: string, options)
SegmentsApi.getSegmentRelationshipsProfiles(id: string, options)
SegmentsApi.getProfilesForSegment(id: string, options)
SegmentsApi.getSegmentProfiles(id: string, options)
SegmentsApi.getSegment(id: string, options)
SegmentsApi.getSegmentFlowTriggers(id: string, options)
Get Segment Relationships Flow Triggers
SegmentsApi.getSegmentRelationshipsFlowTriggers(id: string)
SegmentsApi.getSegments(options)
SegmentsApi.getTagIdsForSegment(id: string)
SegmentsApi.getSegmentRelationshipsTags(id: string)
SegmentsApi.getTagsForSegment(id: string, options)
SegmentsApi.getSegmentTags(id: string, options)
SegmentsApi.updateSegment(id: string, segmentPartialUpdateQuery: SegmentPartialUpdateQuery)
TagsApi.createTag(tagCreateQuery: TagCreateQuery)
TagsApi.createTagGroup(tagGroupCreateQuery: TagGroupCreateQuery)
TagsApi.deleteTag(id: string)
TagsApi.deleteTagGroup(id: string)
TagsApi.getCampaignIdsForTag(id: string)
TagsApi.getTagRelationshipsCampaigns(id: string)
TagsApi.getFlowIdsForTag(id: string)
TagsApi.getTagRelationshipsFlows(id: string)
TagsApi.getListIdsForTag(id: string)
TagsApi.getTagRelationshipsLists(id: string)
TagsApi.getSegmentIdsForTag(id: string)
TagsApi.getTagRelationshipsSegments(id: string)
TagsApi.getTag(id: string, options)
TagsApi.getTagGroup(id: string, options)
TagsApi.getTagGroupForTag(id: string, options)
TagsApi.getTagTagGroup(id: string, options)
TagsApi.getTagGroupIdForTag(id: string)
TagsApi.getTagRelationshipsTagGroup(id: string)
TagsApi.getTagGroups(options)
TagsApi.getTagIdsForTagGroup(id: string)
TagsApi.getTagGroupRelationshipsTags(id: string)
TagsApi.getTags(options)
TagsApi.getTagsForTagGroup(id: string, options)
TagsApi.getTagGroupTags(id: string, options)
TagsApi.removeTagFromCampaigns(id: string, tagCampaignOp: TagCampaignOp)
TagsApi.deleteTagRelationshipsCampaigns(id: string, tagCampaignOp: TagCampaignOp)
TagsApi.removeTagFromFlows(id: string, tagFlowOp: TagFlowOp)
TagsApi.deleteTagRelationshipsFlows(id: string, tagFlowOp: TagFlowOp)
TagsApi.removeTagFromLists(id: string, tagListOp: TagListOp)
TagsApi.deleteTagRelationshipsLists(id: string, tagListOp: TagListOp)
TagsApi.removeTagFromSegments(id: string, tagSegmentOp: TagSegmentOp)
TagsApi.deleteTagRelationshipsSegments(id: string, tagSegmentOp: TagSegmentOp)
TagsApi.tagCampaigns(id: string, tagCampaignOp: TagCampaignOp)
TagsApi.createTagRelationshipsCampaigns(id: string, tagCampaignOp: TagCampaignOp)
TagsApi.createTagRelationshipsCampaign(id: string, tagCampaignOp: TagCampaignOp)
TagsApi.tagFlows(id: string, tagFlowOp: TagFlowOp)
TagsApi.createTagRelationshipsFlows(id: string, tagFlowOp: TagFlowOp)
TagsApi.createTagRelationshipsFlow(id: string, tagFlowOp: TagFlowOp)
TagsApi.tagLists(id: string, tagListOp: TagListOp)
TagsApi.createTagRelationshipsLists(id: string, tagListOp: TagListOp)
TagsApi.createTagRelationshipsList(id: string, tagListOp: TagListOp)
TagsApi.tagSegments(id: string, tagSegmentOp: TagSegmentOp)
TagsApi.createTagRelationshipsSegments(id: string, tagSegmentOp: TagSegmentOp)
TagsApi.createTagRelationshipsSegment(id: string, tagSegmentOp: TagSegmentOp)
TagsApi.updateTag(id: string, tagUpdateQuery: TagUpdateQuery)
TagsApi.updateTagGroup(id: string, tagGroupUpdateQuery: TagGroupUpdateQuery)
TemplatesApi.cloneTemplate(templateCloneQuery: TemplateCloneQuery)
TemplatesApi.createTemplateClone(templateCloneQuery: TemplateCloneQuery)
TemplatesApi.createTemplate(templateCreateQuery: TemplateCreateQuery)
TemplatesApi.createUniversalContent(universalContentCreateQuery: UniversalContentCreateQuery)
TemplatesApi.createTemplateUniversalContent(universalContentCreateQuery: UniversalContentCreateQuery)
TemplatesApi.deleteTemplate(id: string)
TemplatesApi.deleteUniversalContent(id: string)
TemplatesApi.deleteTemplateUniversalContent(id: string)
TemplatesApi.getAllUniversalContent(options)
TemplatesApi.getTemplateUniversalContent(options)
TemplatesApi.getTemplate(id: string, options)
TemplatesApi.getTemplates(options)
TemplatesApi.getUniversalContent(id: string, options)
TemplatesApi.renderTemplate(templateRenderQuery: TemplateRenderQuery)
TemplatesApi.createTemplateRender(templateRenderQuery: TemplateRenderQuery)
TemplatesApi.updateTemplate(id: string, templateUpdateQuery: TemplateUpdateQuery)
TemplatesApi.updateUniversalContent(id: string, universalContentPartialUpdateQuery: UniversalContentPartialUpdateQuery)
TemplatesApi.updateTemplateUniversalContent(id: string, universalContentPartialUpdateQuery: UniversalContentPartialUpdateQuery)
TrackingSettingsApi.getTrackingSetting(id: string, options)
TrackingSettingsApi.getTrackingSettings(options)
TrackingSettingsApi.updateTrackingSetting(id: string, trackingSettingPartialUpdateQuery: TrackingSettingPartialUpdateQuery)
WebhooksApi.createWebhook(webhookCreateQuery: WebhookCreateQuery)
WebhooksApi.deleteWebhook(id: string)
WebhooksApi.getWebhook(id: string, options)
WebhooksApi.getWebhookTopic(id: string)
WebhooksApi.getWebhookTopics()
WebhooksApi.getWebhooks(options)
WebhooksApi.updateWebhook(id: string, webhookPartialUpdateQuery: WebhookPartialUpdateQuery)
try {
await YOUR_CALL_HERE
} catch (e) {
console.log(e)
}
In the interest of making the SDK follow conventions, we made the following namespace changes relative to the language agnostic resources up top.
-
are removed in favor of camelCaseFor example:
get-campaigns
becomes getCampaigns
Data Privacy
become DataPrivacy
The parameters follow the same naming conventions as the resource groups and operations.
We stick to the following convention for parameters/arguments
required
in the docs are passed as positional args.apiKey
for any operations, as it is defined upon api instantiation; public key is still required where its used.