Data Connections
Learn about Data Connections in WaymakerOS.
Connect external data sources to your tables. When data arrives via webhook, API, or integration, it automatically populates rows in your table.
How connections work
Tables can receive data from Waymaker Connections — the integration layer in Commander. A connection defines where data comes from and how it maps to your table columns.
The flow:
- An external service sends data (e.g., Stripe sends a payment event)
- The Connection receives the data via webhook or API poll
- Field mapping rules transform the data into your table's column structure
- A new row is created (or an existing row is updated)
Connecting a data source
- Open your table
- Click Settings in the toolbar
- Click Data Source
- Select an existing Connection or create a new one
- Configure field mapping — map incoming fields to table columns
- Save
Field mapping
For each incoming data field, select which table column it maps to:
| Incoming Field | → | Table Column |
|---|---|---|
customer.email | → | |
amount | → | Amount |
created | → | Date |
status | → | Status |
Fields that don't map to a column are ignored. Columns without a mapping remain empty for incoming rows.
Supported integrations
Stripe
Connect your Stripe account to sync:
- Charges — payment amounts, customer details, status
- Customers — customer profiles, email, metadata
- Subscriptions — plan details, billing cycle, status
Connect Google services to sync:
- Google Sheets — import data from a Google Sheet
- Google Analytics — event data and metrics
Webhooks
Any service that supports webhooks can push data to your table. Set up an incoming webhook URL in the Connections module and share it with the external service.
Custom API
Use the Connections API to programmatically insert and update rows from any service.
Sync behaviour
New data
When new data arrives, a new row is created with the mapped field values.
Updated data
If you configure a key field (a column that uniquely identifies a row), incoming data with a matching key updates the existing row instead of creating a duplicate.
Example: Use the Stripe charge ID as a key field. When Stripe sends an updated charge event, the existing row is updated instead of duplicated.
Sync frequency
- Webhooks: Real-time — data appears within seconds
- API polls: Configurable — every 5 minutes, hourly, or daily
Next steps
- Filtering & Sorting — filter connected data
- Column Types — ensure columns match your incoming data types
- Connections Overview — learn more about the Connections module