Source connector
Twitter connector
Twitter integration for databases, warehouses and BI tools
Organic post activity and audience engagement on X. Datrise captures Twitter entities such as posts, users, engagement metrics, followers, mentions and hashtags, then lands normalized and typed models for warehouse reporting, attribution, and AI workflows.
The X API v2 authenticates with OAuth 2.0, API key, incremental runs key on since_id, and Twitter caps calls at Endpoint- and context-specific 15-minute windows, e.g. GET /2/tweets/search/recent: 450 req/15min per app, 300/15min per user; GET /2/users/:id/tweets: 10,000/15min per app, 900/15min per user; GET /2/tweets/search/all: 1 req/sec, 300/15min.
Of the 6 objects, 5 sync as upserts keyed on the primary key and 1 as append-only streams, so each incremental run moves only what changed since the last watermark. Every object lands in its own table (for example `twitter_posts`) with a schema derived from the Twitter API rather than a flattened CSV, in any of the 43 supported destinations.
Datrise is in early access: pick a destination below to open the Twitter pipeline page, and join the waitlist to get the Twitter connector with guided onboarding.
What Twitter data Datrise extracts
Each object lands in its own typed table. Sync mode is derived from the object: history-style objects append, everything else upserts.
| Object | Landing table | Sync mode |
|---|---|---|
| posts | twitter_posts | Upsert by primary key, incremental on updated-at |
| users | twitter_users | Upsert by primary key, incremental on updated-at |
| engagement metrics | twitter_engagement_metrics | Append-only, incremental by timestamp |
| followers | twitter_followers | Upsert by primary key, incremental on updated-at |
| mentions | twitter_mentions | Upsert by primary key, incremental on updated-at |
| hashtags | twitter_hashtags | Upsert by primary key, incremental on updated-at |
Twitter API: setup facts for the connector
Verified against the vendor documentation on 2026-09-02. Unknown values are left blank rather than guessed.
| API | X API v2 |
|---|---|
| Authentication | OAuth 2.0, API key — App-only Bearer token (api_key style) for read-only public data; OAuth 2.0 with PKCE (recommended, scoped) or legacy OAuth 1.0a user context is required for posting, liking, following, and DMs. |
| Pagination | token — Cursor pagination via `pagination_token` set to the previous response's `meta.next_token`; opaque tokens, endpoint-specific `max_results` caps, and results ordered reverse-chronological, so ongoing polling should use `since_id` rather than re-walking pages. |
| Rate limit | Endpoint- and context-specific 15-minute windows, e.g. GET /2/tweets/search/recent: 450 req/15min per app, 300/15min per user; GET /2/users/:id/tweets: 10,000/15min per app, 900/15min per user; GET /2/tweets/search/all: 1 req/sec, 300/15min |
| Incremental cursor | since_id — Timeline and search endpoints accept `since_id`/`until_id` to page only new posts by Snowflake ID, which is preferred over `pagination_token` for polling because pagination tokens are not designed for repeated "what's new" walks. |
| Webhooks | Yes — Account Activity / webhook events (billed per delivered event, e.g. post creation, follow, DM) |
| Bulk export | No |
| Deletes detectable | Yes — Looking up a deleted, suspended, or otherwise inaccessible post by ID returns a `ResourceNotFoundProblem` entry in the response's `errors` array (`type: https://api.x.com/2/problems/resource-not-found`) instead of the post object. |
What bites when replicating Twitter
- The API is billed on a pay-per-usage credit model, not a flat plan: reads cost per resource returned (e.g. $0.005/post, $0.010/user) and writes cost per request (a standard post is $0.015, but a post containing a URL jumps to $0.200), so query shape directly drives spend.
- Pay-per-usage access is capped at 3,000,000 post reads per month regardless of budget remaining, and identical resource requests within the same rolling 24-hour UTC window are deduplicated and billed only once.
- `GET /2/tweets/search/all` (full-archive search) is throttled to 1 request/second in addition to its 300/15min window, far tighter than the 450/15min on recent-search, so full-history backfills need to be paced accordingly.
- Pagination tokens are opaque, can expire, and are not meant for repeated polling of new content; connectors doing incremental sync should track `since_id` instead of re-walking `pagination_token` pages, or risk missing or re-processing posts.
Popular destinations for Twitter
Choose a destination below to open the ready pipeline page.
- AAirtable
Relational spreadsheet destination for ops and go-to-market teams.
View pipeline - AAmazon Athena
Serverless SQL over S3 data lake tables.
View pipeline - AAmazon DynamoDB
Serverless key-value and document store on AWS.
View pipeline - AAmazon QuickSight
AWS serverless BI with SPICE and embedded analytics.
View pipeline - AAmazon Redshift
AWS petabyte-scale warehouse with Spectrum.
View pipeline - AAmazon S3 Data Lake
Object storage landing zone for parquet and snapshots.
View pipeline - AApache Superset
Open-source BI for SQL exploration, charts, and dashboard publishing.
View pipeline - AAzure Data Lake Storage
ADLS Gen2 object storage for analytics workloads.
View pipeline - AAzure Synapse
Microsoft analytics workspace with SQL pools.
View pipeline
Twitter connector FAQ
- What Twitter data does the connector extract?
- 6 objects: posts, users, engagement metrics, followers, mentions and hashtags. Each lands in its own table with types preserved; history-style objects (1: engagement metrics) load as append-only streams.
- Is the Twitter integration incremental?
- Yes. After the initial full load, every run reads only records changed since the last watermark (updated-at or event timestamp) and applies an upsert or an append depending on the object.
- Where can I load Twitter data?
- Into 43 destinations: relational databases, cloud warehouses, data lakes, spreadsheets and BI tools. Each Twitter → destination pair has its own page with the object-to-table mapping.
Related sources
Other sources in the same category, each with its own connector page.
Early access
Launch your Twitter pipeline with guided onboarding
Join the waitlist to get priority access for Twitter integrations with guided setup, schema-aware mapping, and production-grade incremental sync.