Data Sources

Data Sources work on top of Data Collections and provide advanced functionality, such as:

  • Ability for your customers to choose which data collection to use and configure its parameters.
  • Share these settings between different actions and flows: they will be updated in all places simultaneously.
  • Provide dynamic schemas for Field Mappings.
  • Subscribe to data change events even if webhooks are not available.

Universal and Integration-specific Data Sources

When you want to work with similar data in multiple applications, create a universal data source.

They let you use the same code and logic for any app you integrate with and can be used in universal Flows and Field Mappings.

For example, "Users" or "Tasks" will most often be universal data sources. In most cases, you would select a Universal Data Model for a Data Source to make it automatically map to the right data in each external application.

If you want to work with data that is specific to a particular application, create an integration-specific data source.
For example, "Slack Canvases" or "JIRA Workflows" may be integration-specific data sources.

You can customize universal data sources for each individual application after you create them.
It lets you work with data that is similar, but not exactly the same in each app.

Customer Instances

To actually interact with data, you need to create a Data Source Instance for a specific Connection.

Through a Data Source Instance, you can navigate data, get information about the collection, read and write data, and react to events.

See more detail in the Data Source Instances article.

Navigating Data Source

Depending on an application, there may be different ways of getting data, for example:

  • Application may have multiple similar objects (Task and Subtasks, or Leads and Contacts).
  • There could be multiple lists of objects user may want to select.
  • There could be custom objects user may use for a given integration.

To deal with this, you can request a list of available data locations from a Data Source Instance and then set its path field to point to a specific collection.

See Navigating Data Source Instance article for details.

Data Collection Specification

When a Data Source Instance is pointing to a collection, you can use its collectionSpec property to get information about the collection:

  • How do records look like (their fields schema with names, types, descriptions, and possible values).
  • What operations are supported (create, update, delete, etc).
  • What methods of receiving events are supported (real-time push, polling, etc.).

For more detail, see the Data Collection article.

Reading and Writing Data

See the API docs for more detail.