Skip to main content

Airtable

This page contains the setup guide and reference information for the Airtable source connector.

Prerequisites

  • An active Airtable account
  • Personal Access Token with the following scopes:
    • data.records:read
    • data.recordComments:read
    • schema.bases:read

Setup guide

Step 1: Set up Airtable

For Calabi Connect:

  1. Go to https://airtable.com/create/tokens to create new token.

  2. Add following scopes:

    • data.records:read
    • data.recordComments:read
    • schema.bases:read
  3. Select required bases or allow access to all available and press the Create Token button.

  4. Save token from the popup window.

Step 2: Set up Airtable connector in Calabi Connect

For Calabi Connect:

  1. Log into your Calabi Connect account.

  2. Click Sources and then click + New source.

  3. On the Set up the source page, select Airtable from the Source type dropdown.

  4. Enter a name for the Airtable connector.

  5. You can use OAuth or a Personal Access Token to authenticate your Airtable account. We recommend using OAuth for Calabi Connect.

    • To authenticate using OAuth, select OAuth2.0 from the Authentication dropdown click Authenticate your Airtable account to sign in with Airtable, select required workspaces you want to sync and authorize your account.
    • To authenticate using a Personal Access Token, select Personal Access Token from the Authentication dropdown and enter the Access Token for your Airtable account.
      info

      When using OAuth, you may see a 400 or 401 error causing a failed sync. You can re-authenticate your Airtable connector to solve the issue temporarily. We are working on a permanent fix that you can follow here.

  6. Click Set up source.

For Calabi Connect:

  1. Navigate to the Calabi Connect dashboard.
  2. In the left navigation bar, click Sources. In the top-right corner, click +new source.
  3. On the Set up the source page, enter the name for the Airtable connector and select Airtable from the Source type dropdown.
  4. Select Personal Access Token from the Authentication dropdown and enter the Access Token for your Airtable account.
  5. Click Set up source.

Configuration options

The Airtable connector provides the following optional configuration settings:

  • Number of Concurrent Threads: Controls the number of concurrent threads used for syncing (default: 5, minimum: 2, maximum: 40). Higher values can improve sync performance when syncing multiple bases or when there is I/O wait time. The connector automatically respects Airtable's rate limit of 5 requests per second per base, so increasing this value will not cause rate limit errors.
  • Add Base ID to Stream Name: When enabled, includes the Airtable base ID in stream names to ensure uniqueness. This is useful if you have cloned Airtable bases with tables that share the same name. Enabling this option changes stream names and requires a full refresh of your data.

Note on changed table names and deleted tables

Please keep in mind that if you start syncing a table via Calabi Connect, then rename it in your Airtable account, the connector will not continue syncing that table until you reset your connection schema and select it again. At that point, the table will begin syncing to a table with the new name in the destination. This is because there is no way for Airtable to tell Calabi Connect which tables have been renamed. Similarly, if you delete a table that was previously syncing, the connector will stop syncing it.

Supported sync modes

The Airtable source connector supports the following sync modes:

Supported Streams

This source allows you to pull all available tables and bases using Metadata API for a given authenticated user. In case you rename or add a column to any existing table, you will need to recreate the source to update the Calabi Connect catalog.

Performance Considerations

See information about rate limits here.

Data type map

Integration TypeCalabi Connect TypeNullable
multipleAttachmentsstringYes
autoNumberstringYes
barcodestringYes
buttonstringYes
checkboxbooleanYes
singleCollaboratorstringYes
countnumberYes
createdBystringYes
createdTimedatetime, format: date-timeYes
currencynumberYes
emailstringYes
datestring, format: dateYes
durationnumberYes
lastModifiedBystringYes
lastModifiedTimedatetime, format: date-timeYes
multipleRecordLinksarray with stringsYes
multilineTextstringYes
multipleCollaboratorsarray with stringsYes
multipleSelectsarray with stringsYes
numbernumberYes
percentnumberYes
phoneNumberstringYes
ratingnumberYes
richTextstringYes
singleLineTextstringYes
externalSyncSourcestringYes
urlstringYes
formulastring, number or array with anyYes
lookuparray with anyYes
multipleLookupValuesarray with anyYes
rolluparray with anyYes
  • All the fields are nullable by default, meaning that the field could be empty.
  • The array with any - represents the classic array with one of the other Airtable data types inside, such as:
    • string
    • number/integer
    • nested lists/objects