> AI agents: this is one page from PostHog's docs. Full index of Markdown docs for LLMs: https://posthog.com/llms.txt # Linking Iterable as a source Canonical URL: https://posthog.com/docs/data-pipelines/sources/iterable > **Cloud region:** This page uses US Cloud hosts. For an EU Cloud project, use `https://eu.posthog.com` instead of `https://app.posthog.com` (app host for links). ## On this page - [Adding a data source](#adding-a-data-source) - [Available tables](#available-tables) - [Configuration](#configuration) - [Supported tables](#supported-tables) ![](https://res.cloudinary.com/dmukukwp6/image/upload/texture_tan_9608fcca70) ![](https://res.cloudinary.com/dmukukwp6/image/upload/texture_tan_dark_a92b0e022d) Let AI connect your sources for you Skip the manual setup — run this in your project and the wizard auto-detects your databases and APIs and connects them to PostHog. `npx @posthog/wizard warehouse` ![PostHog Wizard hedgehog](https://res.cloudinary.com/dmukukwp6/image/upload/wizard_3f8bb7a240.png) ![](https://res.cloudinary.com/dmukukwp6/image/upload/wizard_3f8bb7a240.png)Let AI connect your sources for you Enter your Iterable API key to pull your Iterable data into the PostHog data warehouse. ## Adding a data source 1. Go to the [sources tab](https://app.posthog.com/data-management/sources) of the data pipeline section in PostHog. 2. Click **\+ New source** and then click **Link** next to Iterable. 3. Create a **server-side** API key with read permissions in your [Iterable integrations settings](https://app.iterable.com/settings/apiKeys). Client-side (Mobile/Browser/JWT) keys are not supported. Note the data center that issued the key (US or EU). 4. Back in PostHog, paste the key into the `API key` field, select the matching `Data center` (US at `api.iterable.com` or EU at `api.eu.iterable.com`), and click **Next**. 5. 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 Iterable data in PostHog. ## Available tables | Table | Description | Sync method | | --- | --- | --- | | `campaigns` | Iterable campaigns | Full refresh | | `channels` | Messaging channels | Full refresh | | `lists` | Subscriber lists | Full refresh | | `message_types` | Message types | Full refresh | | `templates` | Message templates | Full refresh | **Incremental** tables sync only new or updated records on each run. **Full refresh** tables reload all data on each sync. ## Configuration | Option | Type | Required | | --- | --- | --- | | `API key` | password | Yes | | `Data center` | select | Yes | ## Supported tables | Table | Description | Sync method | Incremental field | Primary key | | --- | --- | --- | --- | --- | | `campaigns` | A marketing campaign in Iterable that sends messages to a target audience. | Full refresh | — | — | | `channels` | A messaging channel in Iterable that groups message types (e.g. a marketing or transactional channel). | Full refresh | — | — | | `lists` | A list of subscribers in Iterable used to target messages. | Full refresh | — | — | | `message_types` | A message type in Iterable, used for subscription management within a channel. | Full refresh | — | — | | `templates` | A reusable message template in Iterable used by campaigns and triggered sends. | Full refresh | — | — | | `campaign_metrics` | Lifetime performance metrics for an Iterable campaign, such as sends, opens, clicks, bounces and unsubscribes. | Full refresh | — | — | | `list_users` | Membership of Iterable lists: one row per user in each list. | Full refresh | — | — | | `email_send` | One row per email Iterable sent, from the Export API. | Append only, Full refresh | createdAt | — | | `email_open` | — | Append only, Full refresh | createdAt | — | | `email_click` | — | Append only, Full refresh | createdAt | — | | `email_bounce` | — | Append only, Full refresh | createdAt | — | | `email_complaint` | — | Append only, Full refresh | createdAt | — | | `email_send_skip` | — | Append only, Full refresh | createdAt | — | | `email_subscribe` | — | Append only, Full refresh | createdAt | — | | `email_unsubscribe` | — | Append only, Full refresh | createdAt | — | | `hosted_unsubscribe_click` | — | Append only, Full refresh | createdAt | — | | `push_send` | — | Append only, Full refresh | createdAt | — | | `push_open` | — | Append only, Full refresh | createdAt | — | | `push_uninstall` | — | Append only, Full refresh | createdAt | — | | `push_bounce` | — | Append only, Full refresh | createdAt | — | | `push_send_skip` | — | Append only, Full refresh | createdAt | — | | `in_app_send` | — | Append only, Full refresh | createdAt | — | | `in_app_open` | — | Append only, Full refresh | createdAt | — | | `in_app_click` | — | Append only, Full refresh | createdAt | — | | `in_app_close` | — | Append only, Full refresh | createdAt | — | | `in_app_delete` | — | Append only, Full refresh | createdAt | — | | `in_app_delivery` | — | Append only, Full refresh | createdAt | — | | `in_app_send_skip` | — | Append only, Full refresh | createdAt | — | | `in_app_recall` | — | Append only, Full refresh | createdAt | — | | `inbox_session` | — | Append only, Full refresh | createdAt | — | | `inbox_message_impression` | — | Append only, Full refresh | createdAt | — | | `sms_send` | — | Append only, Full refresh | createdAt | — | | `sms_bounce` | — | Append only, Full refresh | createdAt | — | | `sms_click` | — | Append only, Full refresh | createdAt | — | | `sms_received` | — | Append only, Full refresh | createdAt | — | | `sms_send_skip` | — | Append only, Full refresh | createdAt | — | | `sms_usage_info` | — | Append only, Full refresh | createdAt | — | | `web_push_send` | — | Append only, Full refresh | createdAt | — | | `web_push_click` | — | Append only, Full refresh | createdAt | — | | `web_push_send_skip` | — | Append only, Full refresh | createdAt | — | | `embedded_send` | — | Append only, Full refresh | createdAt | — | | `embedded_send_skip` | — | Append only, Full refresh | createdAt | — | | `embedded_click` | — | Append only, Full refresh | createdAt | — | | `embedded_received` | — | Append only, Full refresh | createdAt | — | | `embedded_impression` | — | Append only, Full refresh | createdAt | — | | `embedded_session` | — | Append only, Full refresh | createdAt | — | | `whatsapp_send` | — | Append only, Full refresh | createdAt | — | | `whatsapp_send_skip` | — | Append only, Full refresh | createdAt | — | | `whatsapp_bounce` | — | Append only, Full refresh | createdAt | — | | `whatsapp_click` | — | Append only, Full refresh | createdAt | — | | `whatsapp_received` | — | Append only, Full refresh | createdAt | — | | `whatsapp_seen` | — | Append only, Full refresh | createdAt | — | | `whatsapp_usage_info` | — | Append only, Full refresh | createdAt | — | | `journey_exit` | — | Append only, Full refresh | createdAt | — | | `purchase` | — | Append only, Full refresh | createdAt | — | | `custom_event` | — | Append only, Full refresh | createdAt | — | | `users` | User profiles in the Iterable project, from the Export API. | Append only, Full refresh | profileUpdatedAt | — |