Linking Campaign Monitor as a source
Contents
This source is currently in alpha. The interface and available tables may change.
The Campaign Monitor (CreateSend) connector syncs your email marketing data – clients, campaigns, lists, segments, templates, suppression lists, and subscriber states – into PostHog.
Adding a data source
- Go to the sources tab of the data pipeline section in PostHog.
- Click + New source and then click Link next to Campaign Monitor.
- Next, you need two credentials from Campaign Monitor:
- API key – Create one in your Campaign Monitor account settings under Account settings → API keys.
- Client ID – This identifies the client whose data you want to sync. You can find it on the client's Settings page, or by calling the
clients.jsonAPI endpoint.
- Back in PostHog, enter the credentials and click Next.
- Select the tables you want to sync, set the sync method and frequency, then click Import.
Once the syncs are complete, you can start using Campaign Monitor data in PostHog.
Available tables
| Table | Description | Sync method |
|---|---|---|
clients | Clients in your Campaign Monitor account | Full refresh |
campaigns | Sent campaigns for the selected client | Full refresh |
scheduled_campaigns | Campaigns scheduled to send | Full refresh |
draft_campaigns | Draft campaigns | Full refresh |
lists | Subscriber lists for the client | Full refresh |
segments | Segments defined on the client's lists | Full refresh |
templates | Email templates for the client | Full refresh |
suppression_list | The client's suppression list | Full refresh |
active_subscribers | Active subscribers across the client's lists | Full refresh |
unsubscribed_subscribers | Unsubscribed subscribers across the client's lists | Full refresh |
bounced_subscribers | Bounced subscribers across the client's lists | Full refresh |
Incremental tables sync only new or updated records on each run. Full refresh tables reload all data on each sync.
Sync limitations
All Campaign Monitor tables currently sync via full refresh. Incremental sync is not yet available for this source.
Configuration
| Option | Type | Required |
|---|---|---|
API key | password | Yes |
Client ID | text | Yes |
Supported tables
| Table | Description | Sync method | Incremental field | Primary key |
|---|---|---|---|---|
clients | A Campaign Monitor client — an account that owns lists, campaigns, and subscribers. | Full refresh | — | — |
campaigns | A sent email campaign belonging to the client. | Full refresh | — | — |
scheduled_campaigns | A campaign that is scheduled to be sent at a future date. | Full refresh | — | — |
draft_campaigns | A draft campaign that has not yet been sent or scheduled. | Full refresh | — | — |
lists | A subscriber list belonging to the client. | Full refresh | — | — |
segments | A segment — a saved subset of a subscriber list defined by rules. | Full refresh | — | — |
templates | An email template available to the client for building campaigns. | Full refresh | — | — |
suppression_list | Email addresses suppressed for the client (will not receive campaigns). | Full refresh | — | — |
active_subscribers | Subscribers currently active (subscribed) on a list. | Full refresh | — | — |
unsubscribed_subscribers | Subscribers who have unsubscribed from a list. | Full refresh | — | — |
bounced_subscribers | Subscribers whose email to a list has bounced. | Full refresh | — | — |