CSV import for profiles / events / contacts + on-demand export of 4 entity types to CSV or JSON. Honest about not being Hightouch.
Hightouch + Census do scheduled reverse-ETL from your warehouse INTO operational tools — that's a different product than what this module is. Sendora's Import & Export module ships two surfaces: CSV import with column mappings + dry-run preview (for profiles / events / contacts), and on-demand export of profiles / events / analytics / survey_responses to CSV or JSON. Exports land in R2 and you download via a 15-min presigned URL. No cron, no scheduled-push to Snowflake / BigQuery / Postgres, no backfill-resume — fire-and-poll only. The win is a clean migration on/off path, not a continuous warehouse sync.
Features
- CSV import of 3 entity types:
profiles,events,contacts. Column-mapping per field,skipDuplicatesoption,dryRunpreview before apply. - On-demand export of 4 entity types:
profiles,events,analytics,survey_responses. Output format: CSV or JSON. Optional filters + date range. - Background runner + R2 storage — fire the job, poll status, download via 15-min presigned URL when complete. No backend-streaming bottleneck on multi-GB exports.
- ADMIN-gated + audit-logged — every import + export records actor + payload size + filters in the audit log.
- Migration-friendly — combined with auth-service's bcrypt / scrypt / argon2 hash-import endpoint (separate module), this covers the "users + their events + their profiles" leg of moving onto Sendora from a legacy stack.
Common use cases
Migrate a customer list from Mailchimp / HubSpot / Salesforce — CSV import with `dryRun` to preview before commit.
Periodic export of survey responses + events for warehouse load (you trigger + load yourself; no cron, no destination push).
Ad-hoc data pulls for analyst requests — export 30d of profiles + survey_responses to CSV, share via the presigned URL.
Start in minutes. Scale without switching tools.
The free tier covers most side projects. Every module is turn-key and every SDK is first-party.