Source connector
MoEngage connector
MoEngage integration for databases, warehouses and BI tools
Customer engagement source for campaigns and retention metrics. Datrise captures MoEngage entities such as engagement events, campaign performance, and retention behavior signals, then lands normalized and typed models for warehouse reporting, attribution, and AI workflows.
The MoEngage REST APIs (Data APIs for ingest, Get User /v1/customers/export for reads, S3 Exports and Streams for bulk delivery) authenticates with HTTP Basic, API key, incremental runs key on event.event_time (with export_day / export_hour partition keys on S3 Exports), and MoEngage caps calls at per workspace: Track Event 30,000 events/minute, Track User 10,000 user updates/minute, bulk import 60,000 users plus 60,000 events/minute, Delete User 5,000 requests/minute, and the Get User export endpoint 20 users per payload and 1,000 users per minute, with a 128 KB body cap and HTTP 429 over the limit.
Of the 3 objects, 2 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 `moengage_engagement_events`) with a schema derived from the MoEngage 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 MoEngage pipeline page, and join the waitlist to get the MoEngage connector (Marketing) with guided onboarding.
What MoEngage 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 |
|---|---|---|
| engagement events | moengage_engagement_events | Append-only, incremental by timestamp |
| campaign performance | moengage_campaign_performance | Upsert by primary key, incremental on updated-at |
| retention behavior signals | moengage_retention_behavior_signals | Upsert by primary key, incremental on updated-at |
MoEngage API: setup facts for the connector
Verified against the vendor documentation on 2026-09-14. Unknown values are left blank rather than guessed.
| API | MoEngage REST APIs (Data APIs for ingest, Get User /v1/customers/export for reads, S3 Exports and Streams for bulk delivery) |
|---|---|
| Authentication | HTTP Basic, API key — Every call uses HTTP Basic authentication whose Base64 value is workspace_id:api_key, with the Workspace ID and the per-feature API key (Data, Push, Campaigns, Inform, Personalize) copied from Settings > Account > APIs in the dashboard. |
| Pagination | none — The Get User export endpoint has no page, offset or cursor parameter — you post up to 20 identifiers per request — and bulk data arrives as gzipped JSON files rather than paged responses. |
| Rate limit | per workspace: Track Event 30,000 events/minute, Track User 10,000 user updates/minute, bulk import 60,000 users plus 60,000 events/minute, Delete User 5,000 requests/minute, and the Get User export endpoint 20 users per payload and 1,000 users per minute, with a 128 KB body cap and HTTP 429 over the limit |
| Incremental cursor | event.event_time (with export_day / export_hour partition keys on S3 Exports) — Each exported record carries event.event_time plus top-level export_day and export_hour fields and lands in an export_day=YYYY-MM-DD folder, so incremental loading is done by export partition — no MoEngage REST endpoint takes an updated-since filter. |
| Webhooks | Yes — MoEngage Streams (near-real-time POST of user and campaign events to your endpoint, default batch of 100 events, three retries at 30, 60 and 120 seconds) |
| Bulk export | Yes — S3 Exports / data-warehouse exports (gzipped JSON, optional PGP, every 15 mins, daily 02:00 UTC or weekly Mondays 02:00 UTC) |
| Deletes detectable | No — Delete User is a hard delete after a 24-hour buffer during which the profile still appears everywhere, and the docs state you cannot retrieve users once deleted, so there is no soft-delete flag or tombstone record to sync. |
What bites when replicating MoEngage
- Requests must hit the host of the workspace's own data center (api-01 and api-04 US, api-02 EU, api-03 India, api-06 Indonesia, api-101 other), and MoEngage states that once data is captured in a workspace it cannot be migrated to a different data center.
- S3 Exports cannot backfill — the docs say you cannot export data from before you configured automated data exports, so warehouse history begins the day the connection is created and the export frequency cannot be changed after saving.
- Both bulk paths are gated by MoEngage rather than self-serve: S3 Exports and Streams ship only with the Streams add-on that a Customer Success Manager enables (about 30 minutes to provision), and the Get User endpoint also has to be turned on by support because it returns PII.
- Get User (POST /v1/customers/export) is a lookup, not an extract: it accepts at most 20 identifiers per payload at 1,000 users per minute and has no parameter to export the entire user base.
Popular destinations for MoEngage
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
MoEngage connector FAQ
- What MoEngage data does the connector extract?
- 3 objects: engagement events, campaign performance and retention behavior signals. Each lands in its own table with types preserved; history-style objects (1: engagement events) load as append-only streams.
- Is the MoEngage 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 MoEngage data?
- Into 43 destinations: relational databases, cloud warehouses, data lakes, spreadsheets and BI tools. Each MoEngage → destination pair has its own page with the object-to-table mapping.
Related Marketing sources
Other sources in the same category, each with its own connector page.
Early access
Launch your MoEngage pipeline with guided onboarding
Join the waitlist to get priority access for MoEngage integrations with guided setup, schema-aware mapping, and production-grade incremental sync.