This integration is powered by Singer's Campaign Monitor tap. For support, visit the GitHub repo or join the Singer Slack.
Campaign Monitor integration summary
Stitch’s Campaign Monitor integration replicates data using the Campaign Monitor API . Refer to the Schema section for a list of objects available for replication.
Campaign Monitor feature snapshot
A high-level look at Stitch's Campaign Monitor (v1) integration, including release status, useful links, and the features supported in Stitch.
STITCH | |||
Release status |
Released on October 1, 2018 |
Supported by | |
Stitch plan |
Standard |
API availability |
Available |
Singer GitHub repository | |||
REPLICATION SETTINGS | |||
Anchor Scheduling |
Supported |
Advanced Scheduling |
Supported |
Table-level reset |
Unsupported |
Configurable Replication Methods |
Unsupported |
DATA SELECTION | |||
Table selection |
Unsupported |
Column selection |
Unsupported |
Select all |
Unsupported |
||
TRANSPARENCY | |||
Extraction Logs |
Supported |
Loading Reports |
Supported |
Connecting Campaign Monitor
Step 1: Retrieve your Campaign Monitor API credentials
- Sign into your Campaign Monitor account.
- Click the user menu (your avatar), located in the top right corner.
- Click Account settings.
- On the Account Settings page, click API keys.
- Locate your Client ID.
Keep this page open - you’ll need it to complete the next step.
Step 2: Add Campaign Monitor as a Stitch data source
- Sign into your Stitch account.
-
On the Stitch Dashboard page, click the Add Integration button.
-
Click the Campaign Monitor icon.
-
Enter a name for the integration. This is the name that will display on the Stitch Dashboard for the integration; it’ll also be used to create the schema in your destination.
For example, the name “Stitch Campaign Monitor” would create a schema called
stitch_campaign_monitor
in the destination. Note: Schema names cannot be changed after you save the integration. - In the Campaign Monitor Client ID field, paste your Campaign Monitor client ID.
Step 3: Define the historical replication start date
The Sync Historical Data setting defines the starting date for your Campaign Monitor integration. This means that data equal to or newer than this date will be replicated to your data warehouse.
Change this setting if you want to replicate data beyond Campaign Monitor’s default setting of 1 year. For a detailed look at historical replication jobs, check out the Syncing Historical SaaS Data guide.
Step 4: Create a replication schedule
In the Replication Frequency section, you’ll create the integration’s replication schedule. An integration’s replication schedule determines how often Stitch runs a replication job, and the time that job begins.
Campaign Monitor integrations support the following replication scheduling methods:
-
Advanced Scheduling using Cron (Advanced or Premium plans only)
To keep your row usage low, consider setting the integration to replicate less frequently. See the Understanding and Reducing Your Row Usage guide for tips on reducing your usage.
Step 5: Authorize Stitch to access Campaign Monitor
- Next, you’ll be prompted to sign into your Campaign Monitor account.
- Follow the prompts to complete the authorization process.
- After the authorization process is successfully completed, you’ll be directed back to Stitch.
- Click All Done.
Initial and historical replication jobs
After you finish setting up Campaign Monitor, its Sync Status may show as Pending on either the Stitch Dashboard or in the Integration Details page.
For a new integration, a Pending status indicates that Stitch is in the process of scheduling the initial replication job for the integration. This may take some time to complete.
Initial replication jobs with Anchor Scheduling
If using Anchor Scheduling, an initial replication job may not kick off immediately. This depends on the selected Replication Frequency and Anchor Time. Refer to the Anchor Scheduling documentation for more information.
Free historical data loads
The first seven days of replication, beginning when data is first replicated, are free. Rows replicated from the new integration during this time won’t count towards your quota. Stitch offers this as a way of testing new integrations, measuring usage, and ensuring historical data volumes don’t quickly consume your quota.
Campaign Monitor table reference
Schemas and versioning
Schemas and naming conventions can change from version to version, so we recommend verifying your integration’s version before continuing.
The schema and info displayed below is for version 1 of this integration.
This is the latest version of the Campaign Monitor integration.
Table and column names in your destination
Depending on your destination, table and column names may not appear as they are outlined below.
For example: Object names are lowercased in Redshift (CusTomERs
> customers
), while case is maintained in PostgreSQL destinations (CusTomERs
> CusTomERs
). Refer to the Loading Guide for your destination for more info.
campaign_bounces
The campaign_bounces
table contains info about the subscribers who bounced for a given campaign.
Key-based Incremental |
|
Primary Keys |
CampaignID EmailAddress Date ListID |
Replication Key |
Date |
Useful links |
BounceType STRING |
CampaignID STRING |
Date DATE-TIME |
EmailAddress STRING |
ListID STRING |
Reason STRING |
campaign_clicks
The campaign_clicks
table contains info about subscribers who clicked a link in a given campaign.
Key-based Incremental |
|
Primary Keys |
CampaignID EmailAddress ListID Date |
Replication Key |
Date |
Useful links |
CampaignID STRING |
City STRING |
CountryCode STRING |
CountryName STRING |
Date DATE-TIME |
EmailAddress STRING |
IPAddress STRING |
Latitude NUMBER |
ListID STRING |
Longitude NUMBER |
Region STRING |
URL STRING |
campaign_email_client_usage
The campaign_email_client_usage
table contains info about the email clients subscribers use to open campaigns.
Full Table |
|
Primary Keys |
CampaignID Client Version |
Useful links |
CampaignID STRING |
Client STRING |
Percentage NUMBER |
Subscribers INTEGER |
Version STRING |
campaign_opens
The campaign_opens
table contains info about subscribers who opened a campaign.
Key-based Incremental |
|
Primary Keys |
CampaignID EmailAddress ListID Date |
Replication Key |
Date |
Useful links |
CampaignID STRING |
City STRING |
CountryCode STRING |
CountryName STRING |
Date DATE-TIME |
EmailAddress STRING |
IPAddress STRING |
Latitude NUMBER |
ListID STRING |
Longitude NUMBER |
Region STRING |
campaign_recipients
The campaign_recipients
table contains info about the subscribers that a campaign was sent to.
Key-based Incremental |
|
Primary Keys |
CampaignID EmailAddress ListID |
Useful links |
CampaignID STRING |
EmailAddress STRING |
ListID STRING |
campaign_spam_complaints
The campaign_spam_complaints
table contains info about subscribers who marked a campaign as spam.
Key-based Incremental |
|
Primary Keys |
CampaignID EmailAddress ListID Date |
Replication Key |
Date |
Useful links |
CampaignID STRING |
Date DATE-TIME |
EmailAddress STRING |
ListID STRING |
campaign_summary
The campaign_summary
table contains summary info about sent campaigns.
Full Table |
|
Primary Key |
CampaignID |
Useful links |
Bounced INTEGER |
CampaignID STRING |
Clicks INTEGER |
Forwards INTEGER |
Likes INTEGER |
Mentions INTEGER |
Recipients INTEGER |
SpamComplaints INTEGER |
TotalOpened INTEGER |
UniqueOpened INTEGER |
Unsubscribed INTEGER |
WebVersionTextURL STRING |
WebVersionURL STRING |
WorldviewURL STRING |
campaign_unsubscribes
The campaign_unsubscribes
table contains info about the subscribers who unsubscribed from the email for a campaign.
Key-based Incremental |
|
Primary Keys |
CampaignID EmailAddress ListID Date |
Replication Key |
Date |
Useful links |
CampaignID STRING |
Date DATE-TIME |
EmailAddress STRING |
IPAddress STRING |
ListID STRING |
campaigns
The campaigns
table contains info about the the campaigns in your Campaign Monitor account.
Key-based Incremental |
|
Primary Key |
CampaignID |
Useful links |
CampaignID STRING |
FromEmail STRING |
FromName STRING |
Name STRING |
ReplyTo STRING |
SentDate DATE-TIME |
Subject STRING |
TotalRecipients NUMBER |
WebVersionTextURL STRING |
WebVersionURL STRING |
list_active_subscribers
The list_active_subscribers
table contains info about the active subscribers for lists.
Key-based Incremental |
|
Primary Keys |
ListID EmailAddress Date |
Replication Key |
Date |
Useful links |
ConsentToTrack STRING |
||
CustomFields ARRAY
|
||
Date DATE-TIME |
||
EmailAddress STRING |
||
ListID STRING |
||
Name STRING |
||
ReadsEmailWith STRING |
||
State STRING |
list_bounced_subscribers
The list_bounced_subscribers
table contains info about the bounced subscribers for lists.
Key-based Incremental |
|
Primary Keys |
ListID EmailAddress Date |
Replication Key |
Date |
Useful links |
ConsentToTrack STRING |
||
CustomFields ARRAY
|
||
Date DATE-TIME |
||
EmailAddress STRING |
||
ListID STRING |
||
Name STRING |
||
ReadsEmailWith STRING |
||
State STRING |
list_deleted_subscribers
The list_deleted_subscribers
table contains info about the deleted subscribers for lists.
Key-based Incremental |
|
Primary Keys |
ListID EmailAddress Date |
Replication Key |
Date |
Useful links |
ConsentToTrack STRING |
||
CustomFields ARRAY
|
||
Date DATE-TIME |
||
EmailAddress STRING |
||
ListID STRING |
||
Name STRING |
||
ReadsEmailWith STRING |
||
State STRING |
list_details
The list_details
table contains summary info about lists in your Campaign Monitor account.
Key-based Incremental |
|
Primary Key |
ListID |
Useful links |
ConfirmationSuccessPage STRING |
ConfirmedOptIn BOOLEAN |
ListID STRING |
Title STRING |
UnsubscribePage STRING |
UnsubscribeSetting STRING |
list_unconfirmed_subscribers
The list_unconfirmed_subscribers
table contains info about the unconfirmed subscribers for lists.
Key-based Incremental |
|
Primary Keys |
ListID EmailAddress Date |
Replication Key |
Date |
Useful links |
ConsentToTrack STRING |
||
CustomFields ARRAY
|
||
Date DATE-TIME |
||
EmailAddress STRING |
||
ListID STRING |
||
Name STRING |
||
ReadsEmailWith STRING |
||
State STRING |
list_unsubscribed_subscribers
The list_unsubscribed_subscribers
table contains info about the unsubscribed subscribers for lists.
Key-based Incremental |
|
Primary Keys |
ListID EmailAddress Date |
Replication Key |
Date |
Useful links |
ConsentToTrack STRING |
||
CustomFields ARRAY
|
||
Date DATE-TIME |
||
EmailAddress STRING |
||
ListID STRING |
||
Name STRING |
||
ReadsEmailWith STRING |
||
State STRING |
lists
The lists
table contains info about the lists in your Campaign Monitor account.
Full Table |
|
Primary Key |
ListID |
Useful links |
ListID STRING |
Name STRING |
Related | Troubleshooting |
Questions? Feedback?
Did this article help? If you have questions or feedback, feel free to submit a pull request with your suggestions, open an issue on GitHub, or reach out to us.