Linking Attentive as a source
This source is currently in alpha. The interface and available tables may change.
Connect your Attentive account using a private app API key. Attentive's public API is write-oriented with no bulk read endpoints, so all tables are populated from webhook events as they happen. History before the connection date is not backfilled.
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 Attentive.
- Generate an API key in Attentive by going to Marketplace > Create app and creating a private app. No OAuth is required.
- Back in PostHog, paste the API key in the API key field and click Next.
- PostHog tries to register a webhook for you using your API key. The webhook is initially disabled until you provide the signing key. Attentive doesn't return the signing key in the API response, so copy the signing key from the webhook's settings page in Attentive and paste it into the Signing key field in PostHog. Once the signing key is saved, PostHog enables the webhook automatically.
- If auto-registration failed, set the webhook up manually:
- In Attentive, go to Marketplace > your private app > Webhooks.
- Paste the webhook URL PostHog shows into the Destination URL field.
- Select the events you want to track (SMS, email, custom attributes).
- Save the webhook, then copy its signing key and paste it into PostHog.
- Select the tables you want to sync, then click Import.
Once setup is complete, tables begin populating as Attentive delivers webhook events to PostHog.
Available tables
All tables are webhook-backed. They populate forward from the moment the source is connected — there is no historical backfill.
| Table | Description | Sync method |
|---|---|---|
sms_subscribed | SMS subscription events | Webhook |
sms_sent | SMS sent events | Webhook |
sms_message_link_click | SMS link click events | Webhook |
email_subscribed | Email subscription events | Webhook |
email_unsubscribed | Email unsubscription events | Webhook |
email_opened | Email opened events | Webhook |
email_message_link_click | Email link click events | Webhook |
custom_attribute_set | Custom attribute events | Webhook |
Each row includes a synthetic event_id (a hash of the full payload for deduplication) and a created_at column derived from Attentive's millisecond timestamp for partitioning.
Configuration
| Option | Type | Required |
|---|---|---|
API key | password | Yes |
Supported tables
| Table | Description | Sync method | Incremental field | Primary key |
|---|---|---|---|---|
sms_subscribed | A subscriber opting in to receive SMS messages from Attentive. | Webhook, Full refresh | — | — |
sms_sent | An SMS message sent to a subscriber by Attentive. | Webhook, Full refresh | — | — |
sms_message_link_click | A subscriber clicking a link in an SMS message sent by Attentive. | Webhook, Full refresh | — | — |
email_subscribed | A subscriber opting in to receive email from Attentive. | Webhook, Full refresh | — | — |
email_unsubscribed | A subscriber opting out of receiving email from Attentive. | Webhook, Full refresh | — | — |
email_opened | A subscriber opening an email sent by Attentive. | Webhook, Full refresh | — | — |
email_message_link_click | A subscriber clicking a link in an email sent by Attentive. | Webhook, Full refresh | — | — |
custom_attribute_set | A custom attribute being set on an Attentive subscriber. | Webhook, Full refresh | — | — |