Tables

Data Connections

Learn about Data Connections in WaymakerOS.

ConnectionsIntegrations

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:

  1. An external service sends data (e.g., Stripe sends a payment event)
  2. The Connection receives the data via webhook or API poll
  3. Field mapping rules transform the data into your table's column structure
  4. A new row is created (or an existing row is updated)

Connecting a data source

  1. Open your table
  2. Click Settings in the toolbar
  3. Click Data Source
  4. Select an existing Connection or create a new one
  5. Configure field mapping — map incoming fields to table columns
  6. Save

Field mapping

For each incoming data field, select which table column it maps to:

Incoming FieldTable Column
customer.emailEmail
amountAmount
createdDate
statusStatus

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

Google

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