Introduction

The Tulip-Airtable Integration provides an easy way to integrate Tulip with existing data in Airtable. The API closely follows REST semantics, uses JSON to encode objects, and relies on standard HTTP codes to signal operation outcomes. The Goal of this connector is to integrate Airtable with Tulip using HTTP Connectors & provide our customers with an out of box Airtable connector that can be imported into their instance.

Purpose

We are going to highlight different HTTP connector functions that can be built by doing HTTP calls to Airtable API endpoints to interact with the Airtables within a workspace to try out various read and write actions on the tables that could be leveraged for various use cases. We will explore the usage of OAuth Bearer Token and take advantage

API Doc

Airtable API Documentation

Pre-Requisites

  1. Create an account on Airtable
  2. Create new workspace, and Generate Bearer token to be used as part of the Connection headers.

Tulip Connection Details

The following information would need to be configured on Tulip's connectors.

  1. Running On: Cloud Connector Host
  2. Host :api.airtable.com
  3. Port:443
  4. TLS:Yes
  5. OAuth 2(Bearer Token): Authentication will be carried forward to all the Connector Functions.

Connector Functions

Airtable Create Record

Purpose

This connector function creates either a single or a list of records within Airtable.
Your request body should include an array of up to 10 record objects. Each of these objects should have one key, fields, which contains all of your record's values by field name. You can include all, some, or none of the field values.

Endpoint

HTTP POST call to the endpoint https://api.airtable.com/v0/base_id/TableName

Required Input

The following are the parameters that are to be passed

  1. TableName (URL)
  2. An array of objects passed as request body for creating multiple records

Output Extractor

  1. Array of Objects
  2. Each Object has RecordId, and other Fields of Table

Airtable Delete Record

Purpose

This connector function will delete the data from Airtable with the provided record_id. The Data will be deleted from the table permanently

Endpoint

HTTP DELETE call to the endpoint -https://api.airtable.com/v0/base_id/TableName

Required Input

The following are the URL parameters that are to be passed

  1. Table Name
  2. Record Id

Airtable Get Record

Purpose

This connector function gets a single record from Airtable with the provided Record Id, With this connector, we can get the data to modify or use as inputs to another connector

Endpoint

HTTP GET call to the endpoint -https://api.airtable.com/v0/base_id/TableName

Required Input

The following are the URL parameters that are to be passed

  1. TableName
  2. Record Id

Output Extractor

  1. Array of Objects
  2. Each Object had RecordId, and other Fields of Table

Airtable List Records

Purpose

This connector function gets a list of records from Airtable, the number of records is defined by the max records query parameter. With this connector, we can get the data to modify or use as inputs to another connector

Endpoint

HTTP GET call to the endpoint -https://api.airtable.com/v0/base_id/TableName

Required Input

The following are the parameters that are to be passed

  1. Table Name (URL)
  2. MaxRecords: Number specifying the Number of records to be Fetched (Query Parameter)

Output Extractor

  1. Array of Objects
  2. Each Object had RecordId, and other Fields of Table

Airtable Update Record

Purpose

This connector function updates a record within Airtable.
A PATCH request will only update the fields you specify, leaving the rest as they were. The Connector will take table Name, Record Id and the list of values to be updated in the table.

Endpoint

HTTP Patch call to the endpoint -https://api.airtable.com/v0/base_id/TableName

Required Input

The following are the parameters that are to be passed

  1. TableName (URL)
  2. Record Id (URL)
  3. Updated Values: the Different columns that we would like to update sent as the request body

Output Extractor

  1. Array of Objects
  2. Each Object had RecordId, and other Fields of Table

Video

Did this answer your question?