Source Spec

Each system we connect to and can extract data from. For instance, when we mention that “we have a Hubspot source spec,” it means that our system knows how to establish a connection with Hubspot and extract data from it.


The specific instantiation of a source spec for a given user. A Source includes user-provided properties such as a username, API key, and other necessary pieces of information. These properties are essential for establishing a connection with the user’s account on the external platform.


The recipient of the data extracted from a source. Portable currently supports these destination engines: Snowflake, BigQuery, Redshift, Postgres, MySQL and Google Sheets. Like Sources, Destinations contain a set of user-provided properties that allow Portable to connect to the associated engine on behalf of their owner.


A flow, short for data flow, associates a source with a destination. It contains additional information, like the frequency at which the flow is run. For example, a user may have a Hubspot to Snowflake flow that runs every 24 hours.


Resources typically represent endpoints within a connector. For example, a GitHub connector may have resources like issues and repositories. Some connectors may have user-defined resources that are unique to a particular user (e.g. custom objects in Hubspot).

Run attempt

Every time Portable tries to run a flow, a run attempt is created. It holds data like start time, end time and the result of this attempt. Can contain information about the number of resources extracted, analyzed and loaded and any errors encountered while extracting the data from the source and loading it into a destination.