Data Sync & Flows
Flows are Mako’s way of moving data between sources and destinations. They combine extraction queries, schema mapping, and scheduling into a configurable pipeline.
Flow Types
Section titled “Flow Types”Connector Flows
Section titled “Connector Flows”Pull data from external services (Stripe, Close CRM, PostHog) into your warehouse using connectors.
Database-to-Database Flows
Section titled “Database-to-Database Flows”Move data between any two connected databases. Write a SQL extraction query on the source, configure column mappings, and sync to the destination.
Webhook Flows
Section titled “Webhook Flows”Triggered by external webhooks for real-time or near-real-time sync.
Configuring a Database Flow
Section titled “Configuring a Database Flow”- Source — Select a database connection and write an extraction query
- Destination — Select where the data goes (e.g., BigQuery dataset + table)
- Type Coercions — Map source column types to destination types
- Schedule — Set a cron expression for automatic runs
The Flow Agent can help configure all of this. Open the chat in the flow editor and describe what you want to sync.
Template Placeholders
Section titled “Template Placeholders”Extraction queries support template placeholders for incremental sync:
SELECT * FROM ordersWHERE updated_at > '{{last_sync_timestamp}}'ORDER BY updated_at ASCThe sync engine replaces {{last_sync_timestamp}} with the timestamp from the last successful run.
Scheduling
Section titled “Scheduling”Flows support cron scheduling via Inngest:
# Every hour0 * * * *
# Every day at 2 AM0 2 * * *
# Every Monday at 9 AM0 9 * * 1Enable scheduling in the flow configuration. Inngest handles retry on failure with exponential backoff.
Monitoring
Section titled “Monitoring”The flow logs show execution history, row counts, errors, and timing for each run. Access via the Flows tab in the sidebar.