With the Campaign API you can manage and publish email marketing campaigns that have already been created by a Wix user.
With the Campaign API you can:
To create a campaign, a Wix user must either design a template from scratch or use one of the pre-made templates available in the Wix dashboard. The API does not support campaign creation.
After the campaign is created, your app can send a test email to preview how it will appear in an inbox. We strongly recommend you calling the Send Test method only a few times in a row. There's a rate limit to prevent the abusing of the method.
To publish a campaign, you need to set up sender details. You can publish the campaign from the default sender only. Therefore, whenever you want to publish a different campaign, the appropriate sender must be set as the default. To determine which email address will be used as the "From" address, call Identify Sender Address. Campaigns can only be sent to Wix site contacts.
It's possible to schedule a campaign when publishing it. You can schedule the campaign no less than 30 minutes until the sending time. A Wix user needs to upgrade the plan to schedule the campaign.
When a campaign is published, you'll also receive a URL for the campaign's landing page, which can be shared on social media.
A campaign can also be published without sending emails. In this case, only the campaign landing page URL will be provided.
A Wix user can be blocked from using Wix Email Marketing if they don't comply with the Wix Email Marketing Terms of Use.
This article shares possible use cases your app could support, as well as example flows. You're certainly not limited to these use cases, but it can be a helpful jumping off point as you plan your app's implementation.
Your app can help a Wix User run an A/B test on the subject of their new email campaign. For example, a marketing company wants to test different subject lines and CTA buttons to determine which performs better in terms of open rates and conversions. They use a robust, multi-phase A/B testing approach to fine-tune the effectiveness of their campaigns.
Note: This flow assumes you have already created and published an email marketing campaign with a couple variations of the subject line and CTA buttons.
CLICKED
activity.Campaign ID.
Marketing campaign title. If you don't provide the value, the title automatically gets the value of an email subject.
URL of the first image after the logo.
Landing page snapshot URL.
This field is deprecated and snapshot images are no longer supported. Instead, use the firstImageUrl
field.
The value of this field will soon become the same as the value of the firstImageUrl
field.
Editor type.
Campaign status.
Campaign visibility status.
Campaign distribution status.
Publishing data. The field is returned empty if the campaign isn't published.
Date and time when the campaign was created.
Date and time when the campaign was updated.
Email subject of the campaign (initially copied from the template). TODO: Deprecated (moved to "GetComposerResponse").
{
"campaignId": "c9b491f8-bad0-4d0d-8a1c-c90055d31553",
"title": "Email subject",
"firstImageUrl": "//static.wixstatic.com/media/eceb8e_e1f32b0d497447a8898e7abcf01d7d87~mv2_d_5600_3733_s_4_2.jpg",
"editorType": "WEB",
"status": "ACTIVE",
"visibilityStatus": "PUBLISHED",
"distributionStatus": "DISTRIBUTED",
"publishingData": {
"landingPageUrl": "https://www.example.com/so/SHORTCODE",
"statistics": {
"landingPage": {},
"emailCampaign": {
"delivered": 2,
"opened": 2,
"clicked": 2
},
"total": {
"mailsSent": 2,
"opened": 10,
"clicked": 8
}
},
"datePublished": "2020-02-14T14:28:54Z"
},
"dateCreated": "2020-02-13T11:18:30Z",
"dateUpdated": "2020-02-14T14:28:19.680596102Z"
}
This API is subject to change. Bug fixes and new features will be released based on developer feedback throughout the preview period.
Validates any provided link. Use this method when you want to check whether the link complies with the abuse rules and can be used in a campaign.
If you provide a link as a placeholder, it's returned in a response as valid.
You can only call this method when authenticated as a Wix app or Wix user identity.
URL to validate.
Whether the link is valid.
curl -X POST 'https://www.wixapis.com/email-marketing/v1/campaign-validation/validate-link' \
-H 'Content-Type: application/json' \
-H 'Authorization: <AUTH>'
-d '{
"url": "http://paypal-security-alert.com/login"
}' \
{
"valid": false
}
This API is subject to change. Bug fixes and new features will be released based on developer feedback throughout the preview period.
Validates links that are inside the provided HTML. This method automatically takes out links from the HTML block and validates them. Use this method when you want to check whether the link complies with the abuse rules and can be used in a campaign.
You can only call this method when authenticated as a Wix app or Wix user identity.
HTML string with links.
Non-valid links.
curl -X POST 'https://www.wixapis.com/email-marketing/v1/campaign-validation/validate-html-links' \
-H 'Content-Type: application/json' \
-H 'Authorization: <AUTH>'
-d '{
"html": """<a href="http://paypal-security-alert.com/login">Click here!</a><a href="http://www.amaz0n-support.com/refund">More info</a>"""
}' \
{
"blacklistedLinks": [
"http://paypal-security-alert.com/login",
"http://www.amaz0n-support.com/refund"
]
}
Retrieves a list of statistics for up to 100 selected campaigns.
For each campaign, you receive the total activity count for the campaign's landing page and email. For example, the total amount of times the landing page was opened, or the total amount of email recipients that clicked a link in an email.
Call List Campaigns to retrieve additional information for your campaigns. Call List Recipients to retrieve a list of recipients and their activities related to a selected campaign.
You can only call this method when authenticated as a Wix app or Wix user identity.
IDs of the campaigns to retrieve (max 100 campaigns).
List of statistics.
curl -X GET 'https://www.wixapis.com/email-marketing/v1/campaigns/statistics?campaignIds=5274f9f6-7031-40d6-972a-b3212ed53f58&campaignIds=8a7f8211-99e4-4116-9d41-da2d11c1e161' \
-H 'Authorization: <AUTH>'
{
"statistics": [
{
"campaignId": "5274f9f6-7031-40d6-972a-b3212ed53f58",
"landingPage": {
"opened": 0,
"clicked": 0
},
"email": {
"delivered": 6,
"opened": 2,
"clicked": 2,
"bounced": 0,
"complained": 0,
"notSent": 0
}
},
{
"campaignId": "8a7f8211-99e4-4116-9d41-da2d11c1e161",
"landingPage": {
"opened": 1,
"clicked": 0
},
"email": {
"delivered": 6,
"opened": 6,
"clicked": 0,
"bounced": 0,
"complained": 0,
"notSent": 0
}
}
]
}
Retrieves a list of recipients for a selected campaign based on a specific recipient activity.
Pages are returned with a maximum of 1,000 recipients per page and defaults to 40 recipients per page.
Call List Statistics to retrieve a list of activity for selected campaigns. Call List Campaigns to retrieve additional information for your campaigns.
You can only call this method when authenticated as a Wix app or Wix user identity.
Campaign ID.
Email activity to filter.
Number of items to load.
Pointer to the next or previous page in the list of results.
You can get the relevant cursor token
from the pagingMetadata
object in the previous call's response.
Not relevant for the first request.
List of recipients.
Details on the paged set of returned results.
curl -X GET 'https://www.wixapis.com/email-marketing/v1/campaigns/8a7f8211-99e4-4116-9d41-da2d11c1e261/statistics/recipients?activity=DELIVERED' \
-H 'Authorization: <AUTH>'
{
"recipients": [
{
"contactId": "7af98416-1939-4239-91fa-8ce9f17cc3f7",
"lastActivityDate": "2022-05-13T11:17:45Z"
},
{
"contactId": "8cef2efc-fe2f-4a30-8136-9d59b901d04c",
"lastActivityDate": "2022-05-13T11:17:45Z"
}
],
"pagingMetadata": {
"count": 2
}
}
Retrieves information about an email campaign.
You can only call this method when authenticated as a Wix app or Wix user identity.
Campaign ID.
Whether a returned campaign object should include publishingData.statistics
.
Default: false
.
Campaign information.
curl -X GET 'https://www.wixapis.com/email-marketing/v1/campaigns/98b5a0b3-549b-4e58-b933-a8bd40923a14' \
-H 'Authorization: <AUTH>'
{
"campaign": {
"campaignId": "98b5a0b3-549b-4e58-b933-a8bd40923a14",
"title": "Yoga with puppies",
"firstImageUrl": "//static.wixstatic.com/media/eceb8e_f1f549829402430e8e6408182cb1453c~mv2_d_3681_1488_s_2.jpg",
"editorType": "WEB",
"status": "ACTIVE",
"visibilityStatus": "PUBLISHED",
"distributionStatus": "DISTRIBUTED",
"publishingData": {
"landingPageUrl": "https://shoutout.wix.com/so/d8NCkRGvE",
"datePublished": "2020-07-08T12:37:17Z"
},
"dateCreated": "2020-07-08T12:36:05Z",
"dateUpdated": "2020-07-08T12:36:29.801250634Z"
}
}
Permanently deletes a campaign.
You can only call this method when authenticated as a Wix app or Wix user identity.
Campaign ID.
curl -X DELETE 'https://www.wixapis.com/email-marketing/v1/campaigns/98b5a0b3-549b-4e58-b933-a8bd40923a14' \
-H 'Authorization: <AUTH>'
{}
Returns a list of email campaigns.
By default sorts by the dateUpdated
field in the DESC
order.
You can only call this method when authenticated as a Wix app or Wix user identity.
Number of items to load.
Number of items to skip in the current sort order.
Whether to include publishingData.statistics
in the returned campaign object.
Default: false
.
Campaign status.
Visibility status.
Paging parameters.
List of campaigns.
curl -X GET 'https://www.wixapis.com/email-marketing/v1/campaigns?option_include_statistics=true&visibility_statuses=DRAFT&statuses=ACTIVE' \
-H 'Authorization: <AUTH>'
{
"campaigns": [
{
"campaignId": "688565b5-d890-4984-8167-1987c1999a1a",
"title": "Yoga with puppies",
"firstImageUrl": "https:////static.wixstatic.com/media/eceb8e_baccf99d697447468400ca1aba4c4a60~mv2.jpg",
"editorType": "WEB",
"status": "ACTIVE",
"visibilityStatus": "DRAFT",
"distributionStatus": "NOT_STARTED",
"dateCreated": "2020-04-23T11:29:22Z",
"dateUpdated": "2020-05-14T10:08:33.291462479Z"
}
]
}
Publishes and sends a specified campaign.
If the email_distribution_options
object isn't passed in the request, the campaign is only published as a landing page.
You can only call this method when authenticated as a Wix app or Wix user identity.
Campaign ID
Email distribution options. Pass this object in the request if you need to distribute your marketing campaign with emails.
Publishing info.
curl -X POST 'https://www.wixapis.com/email-marketing/v1/campaigns/98b5a0b3-549b-4e58-b933-a8bd40923a14/publish' \
-H 'Content-Type: application/json' \
-H 'Authorization: <AUTH>'
-d '{
"emailDistributionOptions": {
"emailSubject": "Yoga with puppies",
"labelIds": ["contacts-all"]
}
}'
{
"publishingData": {
"landingPageUrl": "https://shoutout.wix.com/so/{code}",
"datePublished": "2022-09-22T12:58:37.407664Z"
}
}
There is 1 error with this status code:
See the entire list and learn more about Wix errors.
Sends a test email. Use this method to preview your email campaign.
We strongly recommend you calling this method only a few times in a row, as it has a rate limit.
You can only call this method when authenticated as a Wix app or Wix user identity.
Campaign ID.
Email subject.
Recipient email address.
curl -X POST 'https://www.wixapis.com/email-marketing/v1/campaigns/98b5a0b3-549b-4e58-b933-a8bd40923a14/test' \
-H 'Authorization: <AUTH>'
-H 'Content-Type: application/json' \
-d '{
"emailSubject": "Yoga with puppies",
"toEmailAddress": "yoga@example.com"
}' \
{}
Pauses a scheduled campaign.
You can only call this method when authenticated as a Wix app or Wix user identity.
Campaign ID.
curl -X POST 'https://www.wixapis.com/email-marketing/v1/campaigns/926bfb51-33c8-47d5-9b38-546d0e7b46d7/pause-scheduling' \
-H 'Authorization: <AUTH>'
{}
Changes the sending time for an already scheduled campaign.
You can only call this method when authenticated as a Wix app or Wix user identity.
ID of the campaign to reschedule.
New time for sending out the campaign.
curl -X POST 'https://www.wixapis.com/email-marketing/v1/campaigns/d699798f-dc07-4668-89f9-6db2e8ab52a3/reschedule' \
-H 'Content-Type: application/json' \
-H 'Authorization: <AUTH>'
-d '{
"sendAt": "2024-08-14T14:43:00Z"
}'
{}
Creates a copy of an existing campaign.
You can only call this method when authenticated as a Wix app or Wix user identity.
ID of the message to be duplicated.
Campaign information.
curl -X POST 'https://www.wixapis.com/email-marketing/v1/campaigns/98b5a0b3-549b-4e58-b933-a8bd40923a14/reuse' \
-H 'Authorization: <AUTH>'
{
"campaign": {
"campaignId": "98b5a0b3-549b-4e58-b933-a8bd40923a14",
"title": "Yoga with puppies",
"firstImageUrl": "//static.wixstatic.com/media/eceb8e_f1f549829402430e8e6408182cb1453c~mv2_d_3681_1488_s_2.jpg",
"editorType": "WEB",
"status": "ACTIVE",
"visibilityStatus": "DRAFT",
"distributionStatus": "NOT_STARTED",
"dateCreated": "2020-07-09T10:07:51Z",
"dateUpdated": "2020-07-09T10:07:51.781290641Z"
}
}
Retrieves the audience of a paused campaign. Use this method to retrieve all selected audience of the paused campaign at once, so they can be passed in bulk when the campaign is published again after being paused.
You can only call this method when authenticated as a Wix app or Wix user identity.
Campaign ID.
Campaign audience.
curl -X POST 'https://www.wixapis.com/email-marketing/v1/campaigns/11ab3908-c40e-4deb-8e42-ca743f73ac8b/audience' \
-H 'Authorization: <AUTH>'
{
"audience": {
"contactIds": [
"6a5e3cd4-233e-4d84-9418-bdf3abe332da",
"b641f20c-f033-489d-8f57-a2cfe2ae3845"
],
"labelIds": ["13ac190d-8c00-47fd-8a33-69b5032a3ac7"],
"segmentIds": [
"2d3e7da2-135e-4050-a122-fa6c186d8ced",
"23b786de-02fa-47fb-b37b-456fb5f6fd0d",
"c92f529f-d559-4cf9-84f0-5a576db99f64"
],
"contactsFilter": {
"id": {
"$in": ["3e229a21-f113-41bf-9e51-af923294180a"]
}
},
"activeContactsOnly": true
}
}
Checks if the sender's email address will be used as the "from" address or will it be replaced and to what exactly.
You can only call this method when authenticated as a Wix app or Wix user identity.
Email address to verify.
Actual "from" address that will be used for sending emails.
curl -X POST 'https://www.wixapis.com/email-marketing/v1/identify-sender-address' \
-H 'Content-Type: application/json' \
-H 'Authorization: <AUTH>'
-d '{
"emailAddress": "john.doe@gmail.com"
}'
{
"senderAddress": "john.doe@pb02.ascendbywix.com"
}
Triggered when a campaign is successfully distributed to all recipients.
Unique event ID. Allows clients to ignore duplicate webhooks.
Fully qualified domain name of the entity associated with the event. Expected wix.email_marketing.v1.campaign
.
Event name. Expected campaign_distributed_event
.
ID of the entity associated with the event.
Event timestamp.
Whether the event was triggered as a result of a privacy regulation application (for example, GDPR).
If present, indicates the action that triggered the event.
Event information.
The data payload will include the following as an encoded JWT:
{
"data": {
"eventType": "wix.email_marketing.v1.campaign_campaign_distributed_event",
"instanceId": "<app-instance-id>",
"data": "<stringified-JSON>",
// The identity field is sent as a stringified JSON
"identity": {
"identityType": "<identityType>", // ANONYMOUS_VISITOR, MEMBER, WIX_USER, APP
"anonymousVisitorId": "<anonymousVisitorId>", // in case of ANONYMOUS_VISITOR
"memberId": "<memberId>", // in case of MEMBER
"wixUserId": "<wixUserId>", // in case of WIX_USER
"appId": "<appId>" // in case of APP
}
}
}
{
"entityId": "38d837a5-8303-413c-8ac0-75d735a4bdb0",
"actionEvent": {
"body": {
"campaignId": "c9b491f8-bad0-4d0d-8a1c-c90055d31553"
}
},
"slug": "campaign_distributed_event",
"id": "aacdffe0-8e14-4d1b-8060-8d0bf8248d36",
"entityFqdn": "wix.email_marketing.v1.campaign",
"eventTime": "2022-09-22T12:58:37.407664Z",
"triggeredByAnonymizeRequest": false
}
Triggered when a scheduled campaign is paused.
Unique event ID. Allows clients to ignore duplicate webhooks.
Fully qualified domain name of the entity associated with the event. Expected wix.email_marketing.v1.campaign
.
Event name. Expected campaign_paused_event
.
ID of the entity associated with the event.
Event timestamp.
Whether the event was triggered as a result of a privacy regulation application (for example, GDPR).
If present, indicates the action that triggered the event.
Event information.
The data payload will include the following as an encoded JWT:
{
"data": {
"eventType": "wix.email_marketing.v1.campaign_campaign_paused_event",
"instanceId": "<app-instance-id>",
"data": "<stringified-JSON>",
// The identity field is sent as a stringified JSON
"identity": {
"identityType": "<identityType>", // ANONYMOUS_VISITOR, MEMBER, WIX_USER, APP
"anonymousVisitorId": "<anonymousVisitorId>", // in case of ANONYMOUS_VISITOR
"memberId": "<memberId>", // in case of MEMBER
"wixUserId": "<wixUserId>", // in case of WIX_USER
"appId": "<appId>" // in case of APP
}
}
}
{
"entityId": "38d837a5-8303-413c-8ac0-75d735a4bdb0",
"actionEvent": {
"body": {
"campaignId": "c9b491f8-bad0-4d0d-8a1c-c90055d31553"
}
},
"slug": "campaign_paused_event",
"id": "aacdffe0-8e14-4d1b-8060-8d0bf8248d36",
"entityFqdn": "wix.email_marketing.v1.campaign",
"eventTime": "2022-09-22T12:58:37.407664Z",
"triggeredByAnonymizeRequest": false
}
Triggered when a draft campaign is published.
Unique event ID. Allows clients to ignore duplicate webhooks.
Fully qualified domain name of the entity associated with the event. Expected wix.email_marketing.v1.campaign
.
Event name. Expected campaign_published_event
.
ID of the entity associated with the event.
Event timestamp.
Whether the event was triggered as a result of a privacy regulation application (for example, GDPR).
If present, indicates the action that triggered the event.
Event information.
The data payload will include the following as an encoded JWT:
{
"data": {
"eventType": "wix.email_marketing.v1.campaign_campaign_published_event",
"instanceId": "<app-instance-id>",
"data": "<stringified-JSON>",
// The identity field is sent as a stringified JSON
"identity": {
"identityType": "<identityType>", // ANONYMOUS_VISITOR, MEMBER, WIX_USER, APP
"anonymousVisitorId": "<anonymousVisitorId>", // in case of ANONYMOUS_VISITOR
"memberId": "<memberId>", // in case of MEMBER
"wixUserId": "<wixUserId>", // in case of WIX_USER
"appId": "<appId>" // in case of APP
}
}
}
{
"entityId": "38d837a5-8303-413c-8ac0-75d735a4bdb0",
"actionEvent": {
"body": {
"campaignId": "c9b491f8-bad0-4d0d-8a1c-c90055d31553",
"landingPageUrl": "https://www.pianosandguitars.com/so/SHORTCODE",
"mailingListSizeEstimate": 0
}
},
"slug": "campaign_published_event",
"id": "aacdffe0-8e14-4d1b-8060-8d0bf8248d36",
"entityFqdn": "wix.email_marketing.v1.campaign",
"eventTime": "2022-09-22T12:58:37.407664Z",
"triggeredByAnonymizeRequest": false
}
Triggered when a campaign is identified as abusive and rejected without sending emails to recipients.
Unique event ID. Allows clients to ignore duplicate webhooks.
Fully qualified domain name of the entity associated with the event. Expected wix.email_marketing.v1.campaign
.
Event name. Expected campaign_rejected_event
.
ID of the entity associated with the event.
Event timestamp.
Whether the event was triggered as a result of a privacy regulation application (for example, GDPR).
If present, indicates the action that triggered the event.
Event information.
The data payload will include the following as an encoded JWT:
{
"data": {
"eventType": "wix.email_marketing.v1.campaign_campaign_rejected_event",
"instanceId": "<app-instance-id>",
"data": "<stringified-JSON>",
// The identity field is sent as a stringified JSON
"identity": {
"identityType": "<identityType>", // ANONYMOUS_VISITOR, MEMBER, WIX_USER, APP
"anonymousVisitorId": "<anonymousVisitorId>", // in case of ANONYMOUS_VISITOR
"memberId": "<memberId>", // in case of MEMBER
"wixUserId": "<wixUserId>", // in case of WIX_USER
"appId": "<appId>" // in case of APP
}
}
}
{
"entityId": "38d837a5-8303-413c-8ac0-75d735a4bdb0",
"actionEvent": {
"body": {
"campaignId": "c9b491f8-bad0-4d0d-8a1c-c90055d31553"
}
},
"slug": "campaign_rejected_event",
"id": "aacdffe0-8e14-4d1b-8060-8d0bf8248d36",
"entityFqdn": "wix.email_marketing.v1.campaign",
"eventTime": "2022-09-22T12:58:37.407664Z",
"triggeredByAnonymizeRequest": false
}
Triggered when a campaign is scheduled to be sent out at the specific time.
Unique event ID. Allows clients to ignore duplicate webhooks.
Fully qualified domain name of the entity associated with the event. Expected wix.email_marketing.v1.campaign
.
Event name. Expected campaign_scheduled_event
.
ID of the entity associated with the event.
Event timestamp.
Whether the event was triggered as a result of a privacy regulation application (for example, GDPR).
If present, indicates the action that triggered the event.
Event information.
The data payload will include the following as an encoded JWT:
{
"data": {
"eventType": "wix.email_marketing.v1.campaign_campaign_scheduled_event",
"instanceId": "<app-instance-id>",
"data": "<stringified-JSON>",
// The identity field is sent as a stringified JSON
"identity": {
"identityType": "<identityType>", // ANONYMOUS_VISITOR, MEMBER, WIX_USER, APP
"anonymousVisitorId": "<anonymousVisitorId>", // in case of ANONYMOUS_VISITOR
"memberId": "<memberId>", // in case of MEMBER
"wixUserId": "<wixUserId>", // in case of WIX_USER
"appId": "<appId>" // in case of APP
}
}
}
{
"entityId": "38d837a5-8303-413c-8ac0-75d735a4bdb0",
"actionEvent": {
"body": {
"campaignId": "c9b491f8-bad0-4d0d-8a1c-c90055d31553",
"sendAt": "2020-02-14T14:28:19.680596102Z",
"rescheduled": true
}
},
"slug": "campaign_scheduled_event",
"id": "aacdffe0-8e14-4d1b-8060-8d0bf8248d36",
"entityFqdn": "wix.email_marketing.v1.campaign",
"eventTime": "2022-09-22T12:58:37.407664Z",
"triggeredByAnonymizeRequest": false
}
Triggered when the mailing list isn't clean and campaign was terminated.
Unique event ID. Allows clients to ignore duplicate webhooks.
Fully qualified domain name of the entity associated with the event. Expected wix.email_marketing.v1.campaign
.
Event name. Expected campaign_terminated_event
.
ID of the entity associated with the event.
Event timestamp.
Whether the event was triggered as a result of a privacy regulation application (for example, GDPR).
If present, indicates the action that triggered the event.
Event information.
The data payload will include the following as an encoded JWT:
{
"data": {
"eventType": "wix.email_marketing.v1.campaign_campaign_terminated_event",
"instanceId": "<app-instance-id>",
"data": "<stringified-JSON>",
// The identity field is sent as a stringified JSON
"identity": {
"identityType": "<identityType>", // ANONYMOUS_VISITOR, MEMBER, WIX_USER, APP
"anonymousVisitorId": "<anonymousVisitorId>", // in case of ANONYMOUS_VISITOR
"memberId": "<memberId>", // in case of MEMBER
"wixUserId": "<wixUserId>", // in case of WIX_USER
"appId": "<appId>" // in case of APP
}
}
}
{
"entityId": "38d837a5-8303-413c-8ac0-75d735a4bdb0",
"actionEvent": {
"body": {
"campaignId": "c9b491f8-bad0-4d0d-8a1c-c90055d31553"
}
},
"slug": "campaign_terminated_event",
"id": "aacdffe0-8e14-4d1b-8060-8d0bf8248d36",
"entityFqdn": "wix.email_marketing.v1.campaign",
"eventTime": "2022-09-22T12:58:37.407664Z",
"triggeredByAnonymizeRequest": false
}
Triggered when a campaign is created.
Unique event ID. Allows clients to ignore duplicate webhooks.
Fully qualified domain name of the entity associated with the event. Expected wix.email_marketing.v1.campaign
.
Event name. Expected created
.
ID of the entity associated with the event.
Event timestamp.
Whether the event was triggered as a result of a privacy regulation application (for example, GDPR).
If present, indicates the action that triggered the event.
Event information.
The data payload will include the following as an encoded JWT:
{
"data": {
"eventType": "wix.email_marketing.v1.campaign_created",
"instanceId": "<app-instance-id>",
"data": "<stringified-JSON>",
// The identity field is sent as a stringified JSON
"identity": {
"identityType": "<identityType>", // ANONYMOUS_VISITOR, MEMBER, WIX_USER, APP
"anonymousVisitorId": "<anonymousVisitorId>", // in case of ANONYMOUS_VISITOR
"memberId": "<memberId>", // in case of MEMBER
"wixUserId": "<wixUserId>", // in case of WIX_USER
"appId": "<appId>" // in case of APP
}
}
}
{
"entityId": "38d837a5-8303-413c-8ac0-75d735a4bdb0",
"actionEvent": {
"body": {
"campaignId": "c9b491f8-bad0-4d0d-8a1c-c90055d31553",
"title": "Email subject",
"firstImageUrl": "//static.wixstatic.com/media/eceb8e_e1f32b0d497447a8898e7abcf01d7d87~mv2_d_5600_3733_s_4_2.jpg",
"editorType": "WEB",
"status": "ACTIVE",
"visibilityStatus": "PUBLISHED",
"distributionStatus": "DISTRIBUTED",
"publishingData": {
"landingPageUrl": "https://www.example.com/so/SHORTCODE",
"statistics": {
"landingPage": {},
"emailCampaign": {
"delivered": 2,
"opened": 2,
"clicked": 2
},
"total": {
"mailsSent": 2,
"opened": 10,
"clicked": 8
}
},
"datePublished": "2020-02-14T14:28:54Z"
},
"dateCreated": "2020-02-13T11:18:30Z",
"dateUpdated": "2020-02-14T14:28:19.680596102Z"
}
},
"slug": "created",
"id": "aacdffe0-8e14-4d1b-8060-8d0bf8248d36",
"entityFqdn": "wix.email_marketing.v1.campaign",
"eventTime": "2022-09-22T12:58:37.407664Z",
"triggeredByAnonymizeRequest": false
}
Triggered when a campaign is deleted.
Unique event ID. Allows clients to ignore duplicate webhooks.
Fully qualified domain name of the entity associated with the event. Expected wix.email_marketing.v1.campaign
.
Event name. Expected deleted
.
ID of the entity associated with the event.
Event timestamp.
Whether the event was triggered as a result of a privacy regulation application (for example, GDPR).
If present, indicates the action that triggered the event.
Event information.
The data payload will include the following as an encoded JWT:
{
"data": {
"eventType": "wix.email_marketing.v1.campaign_deleted",
"instanceId": "<app-instance-id>",
"data": "<stringified-JSON>",
// The identity field is sent as a stringified JSON
"identity": {
"identityType": "<identityType>", // ANONYMOUS_VISITOR, MEMBER, WIX_USER, APP
"anonymousVisitorId": "<anonymousVisitorId>", // in case of ANONYMOUS_VISITOR
"memberId": "<memberId>", // in case of MEMBER
"wixUserId": "<wixUserId>", // in case of WIX_USER
"appId": "<appId>" // in case of APP
}
}
}
{
"id": "85deb868-5896-4a44-8f0a-3544eb432216",
"entityFqdn": "wix.email_marketing.v1.campaign",
"slug": "deleted",
"entityId": "077766f0-ffa4-4fa1-bdf8-dbb0439c1892",
"deletedEvent": {},
"eventTime": "2023-05-25T10:57:03.945444Z",
"triggeredByAnonymizeRequest": false
}
Triggered when an email campaign has a new recipient activity.
Unique event ID. Allows clients to ignore duplicate webhooks.
Fully qualified domain name of the entity associated with the event. Expected wix.email_marketing.v1.campaign
.
Event name. Expected email_activity_updated
.
ID of the entity associated with the event.
Event timestamp.
Whether the event was triggered as a result of a privacy regulation application (for example, GDPR).
If present, indicates the action that triggered the event.
Event information.
The data payload will include the following as an encoded JWT:
{
"data": {
"eventType": "wix.email_marketing.v1.campaign_email_activity_updated",
"instanceId": "<app-instance-id>",
"data": "<stringified-JSON>",
// The identity field is sent as a stringified JSON
"identity": {
"identityType": "<identityType>", // ANONYMOUS_VISITOR, MEMBER, WIX_USER, APP
"anonymousVisitorId": "<anonymousVisitorId>", // in case of ANONYMOUS_VISITOR
"memberId": "<memberId>", // in case of MEMBER
"wixUserId": "<wixUserId>", // in case of WIX_USER
"appId": "<appId>" // in case of APP
}
}
}
{
"entityId": "38d837a5-8303-413c-8ac0-75d735a4bdb0",
"actionEvent": {
"body": {
"timestamp": "2022-09-22T12:58:00Z",
"recipientEmailAddress": "michaeltaylor@example.com",
"open": {
"userAgent": "Mozilla/5.0 (Windows NT 5.1; rv:11.0) Gecko Firefox/11.0 (via ggpht.com GoogleImageProxy)"
},
"activityType": "OPEN",
"contactId": "f1654c62-53b4-43d5-b01b-acbf782dee6f",
"campaignId": "38d837a5-8303-413c-8ac0-75d735a4bdb0",
"metadata": {
"metadataFieldOne": "6b8fe9d9-bf02-42ed-9b27-77be5f6bc133",
"metadataFieldTwo": "80cad016-1f36-4238-9748-2545fd374480"
}
}
},
"slug": "email_activity_updated",
"id": "aacdffe0-8e14-4d1b-8060-8d0bf8248d36",
"entityFqdn": "wix.email_marketing.v1.campaign",
"eventTime": "2022-09-22T12:58:37.407664Z",
"triggeredByAnonymizeRequest": false
}