Airtable (Action Flow)
Important
Any references to third-party products or services do not constitute Celonis Product Documentation nor do they create any contractual obligations. This material is for informational purposes only and is subject to change without notice. Celonis does not warrant the availability, accuracy, reliability, completeness, or usefulness of any information regarding the subject of third-party services or systems.
The Airtable modules allow you to monitor records and submitted forms or search, retrieve, create, update, and delete records in your Airtable account.
To get started with Airtable, create an account at airtable.com/signup.
You can connect Airtable in three ways:
Connect using OAuth
To connect Airtable using OAuth:
Log in to your Execution Management System account, open the Airtable module Action Flow, click the Add button next to the Connection type field, and select Airtable OAuth.
Optional: In the Connection name field, enter a name for the connection.
Optional: Click Show Advanced Settings and enter the client credentials created in the section, Obtain OAuth Credentials.
Click Save.
In the Authentication screen, click Add a base and select the base to which you want to grant access.
Click Grant access.
You have successfully connected the Airtable app with Execution Management System.
Connect using API Key or Personal Access Token
You can connect Airtable app using API Key or personal access token values from your Airtable account.
Caution
API keys will be deprecated by the end of January 2024. After this date, API keys will stop working, and you will have to migrate to personal access tokens. Personal access tokens allow you to grant API access to Airtable data securely. Learn more.
Log in to your Airtable account.
Click Your Profile Icon > Developer hub.
Click API key and copy the API key to a safe place.
Log in to your Execution Management System account, open the Airtable module Action Flow, click the Add button next to the Connection type field, and select the connection type as Airtable token or key.
Optional: In the Connection name field, enter a name for the connection.
Select the token type as Personal Access Token or API Key.
If you selected the token type as API Key, enter the token copied in step 3.
If you selected the token type as Personal Access Token, enter the token copied in the section, Create Personal Access Token.
Optional: Click Show Advanced Settingsand select the proxy service in the Proxy field.
Note
By choosing a Proxy, you understand and confirm that your Airtable data, including API keys, will be routed through a third-party service.
Click Save.
You have successfully established the connection. You can now edit your Action Flow and add more Airtable modules. If your connection needs reauthorization, follow the connection renewal steps here.
Create Personal Access Token
To connect using Personal Access Token:
Log in to your Airtable account.
Click Your Profile Icon > Developer hub.
Click Personal access tokens > Create new token.
Enter a name for the access token, select the Scopes, Access, and click Create token.
Copy the Personal Access Token to a safe place, and click Done.
You have created personal access token successfully.
Obtain OAuth Credentials
Providing OAuth credentials is optional.
When you select the connection type as OAuth, authorize your account without the need to provide OAuth credentials.
To obtain OAuth credentials:
Log in to your Airtable account.
Click Profile > Developer hub.
Click OAuth integrations > Register new OAuth integration.
Enter the name for the integration and OAuth redirect URL as
https://www.integromat.com/oauth/cb/airtable3
.Click Generate client secret.
Copy the Client ID and Client Secret to a safe place.
Select the scopes, enter the support information, and click Save changes.
You have successfully created OAuth credentials.
Records
You can watch, create, update, search, retrieve, upsert, delete records, and watch responses using the following modules.
Returns all newly created or updated records in a view (required Created Time or Last Modified Time fields).
Connection | Establish a connection to your Airtable account. |
Base | Select the base that contains the table you want to watch for records. |
Table | Select the table you want to watch for new records. |
Trigger configuration | Trigger field Select the If you do not have a ![]() Label field: used as a label for a record. For example, Choose where to start dialog. ![]() |
Limit | The maximum number of records Execution Management System will return during one execution cycle. |
View | Select the view to watch the records. If selected, it will return the records only in that view. |
Formula | Enter the formula to filter records. For more details, refer to the Formula field reference documentation. The formula will be evaluated for each record, and if the result is not If combined with the For example, to only include records where Name isn't empty, pass in
|
Use Column ID | Select whether to use column ID instead of column name for mapping. This enables persistence over the column name change. Enabling this option allows to replace entity keys in the response; instead of entity names specified as parameter keys, their identifiers will be specified. Changing this value will break all existing mappings in this Action Flow. |
Triggers when a new response is submitted.
Warning
Available for paid Pro Plan only. See the Airtable pricing page.
The webhook URL needs to be generated in Execution Management System and added to the form configuration in the Airtable.
Add the Watch Responses module to your Execution Management System Action Flow.
Generate and copy the webhook URL.
Log in to your Airtable account.
Open the Base and the table you want for the form and create a Form view.
Set the form as needed, scroll down the form, and enable the Redirect to URL after the form is submitted option.
Enter the Webhook URL generated in step 2 to the displayed dialog box and add the ?record_id={record_id} just after the webhook URL to include the Record ID in the module's output, then click Save. The resulting URL will, for example, look like this:
https://hook.eu1.make.com/tgnp28pewooafbdgobvbh225hmocbn85?record_id={record_id}
Go back to your Execution Management System Action Flow and run the Watch Responses module only to load fields from Airtable and to be able to map those fields into the other modules.
Submit the form in Airtable where the Redirect to URL after the form is submitted option is enabled and Webhook URL added (step 6 above).
The Watch Responses module is triggered and loads the desired data.
Add the Airtable > Get a Record module just after the Airtable > Watch Responses module and map the record_id to the Record ID field.
Every time the form is submitted, the Watch Responses module in your Execution Management System Action Flow is triggered, and the Get a Record module returns the submitted form details.
Searches for specific records or returns all records.
Connection | Establish a connection to your Airtable account. |
Base | Select or map the base that contains the table you want to search for records. |
Table | Select the table you want to search for records. |
Formula | Enter the formula to filter records. For more details about formulae, refer to the Formula field reference documentation. The formula will be evaluated for each record, and if the result is not If combined with the For example, to only include records where Name isn't empty, pass in
|
Sort | Specify sorting, if needed. The higher item in the list has precedence. |
View | Select or map the view for the search results. |
Output Fields | Add the fields you want to receive in the output. If no field is provided, all fields will be returned. It can be the field's name, for example, |
Limit | Set the maximum number of records Execution Management System will return during one execution cycle. The default value is 10. |
Use Column ID | Select whether to use column ID instead of column name for mapping. This enables persistence over the column name change. Enabling this option allows to replace entity keys in the response; instead of entity names specified as parameter keys, their identifiers will be specified. Changing this value will break all existing mappings in this Action Flow. |
Retrieves a single record by its ID.
Connection | Establish a connection to your Airtable account. |
Base | Select the base that contains the table with the record whose details you want to retrieve. |
Table | Select the table that contains the record whose details you want to retrieve. |
Record ID | Enter (map) the Record ID whose details you want to retrieve. Alternatively, you can use the search option to select the record. |
Use Column ID | Select whether to use column ID instead of column name for mapping. This enables persistence over the column name change. Enabling this option allows to replace entity keys in the response; instead of entity names specified as parameter keys, their identifiers will be specified. Changing this value will break all existing mappings in this Action Flow. |
Creates a new record in a Airtable.
Connection | Establish a connection to your Airtable account. |
Base | Select the base containing the table you want to create a record. |
Table | Select the table in which you want to create a record. |
Record | Enter values to the desired fields. See also Airtable's guide to basic field types. |
Smart links | Enable this option if you want to enter names instead of record IDs to fields that link to another table. The record is automatically created in the linked table if there is no match. |
Use Column ID | Select whether to use column ID instead of column name for mapping. This enables persistence over the column name change. Enabling this option allows to replace entity keys in the response; instead of entity names specified as parameter keys, their identifiers will be specified. Changing this value will break all existing mappings in this Action Flow. |
Updates a record by its ID.
Connection | Establish a connection to your Airtable account. |
Base | Select the base containing the table whose records you want to update. |
Table | Select the table whose record you want to update. |
Records ID | Enter (map) the Record ID you want to update. You can retrieve the ID, for example, using the Search Records or Watch Records module. Alternatively, you can use the Search button to select the Record ID. |
Record | Enter values in the fields you want to update. See also Airtable's guide to basic field types. NoteTo delete the content of the field, use the ![]() ![]() |
Smart links | Enable this option if you want to enter names instead of record IDs to fields that link to another table. The record is automatically created in the linked table if there is no match. |
Use Column ID | Select whether to use column ID instead of column name for mapping. This enables persistence over the column name change. Enabling this option allows to replace entity keys in the response; instead of entity names specified as parameter keys, their identifiers will be specified. Changing this value will break all existing mappings in this Action Flow. |
Creates a new or updates an existing record.
Connection | Establish a connection to your Airtable account. |
Base | Select the base containing the table you want to update or create a record. |
Table | Select the table where you want to create or update a record. |
Record ID | Enter (map) the ID of the record you want to update. If no ID is entered, it will create a new record. You can retrieve the ID, for example, using the Search Records or Watch Records module. Alternatively, you can use the Search button to select the Record ID. If you enter an ID that does not exist, an error occurs, and no action is performed. |
Record | Enter values in the fields you want to update or create. See also Airtable's guide to basic field types. |
Smart links | Enable this option if you want to enter names instead of record IDs to fields that link to another table. The record is automatically created in the linked table if there is no match. |
Use Column ID | Select whether to use column ID instead of column name for mapping. This enables persistence over the column name change. Enabling this option allows to replace entity keys in the response; instead of entity names specified as parameter keys, their identifiers will be specified. Changing this value will break all existing mappings in this Action Flow. |
Deletes a record by its ID.
Connection | Establish a connection to your Airtable account. |
Base | Select the base that contains the table you want to delete a record from. |
Table | Select the table you want to delete the record from. |
Record ID | Enter the ID of the record you want to delete. You can retrieve the ID, for example, using the Search Records or Watch Records module. Alternatively, you can use the Search button to select the Record ID. |
Creates a record with mapped fields.
Connection | Establish a connection to your Airtable account. |
Base | Enter the base that contains the table you want to create a record in. |
Table | Enter the table you want to create a record in. |
Record Fields as Array | Add the Column ID and Field value by selecting the field type for the record you want to create. |
Smart links | Enable this field to enter the user name in the linked record fields instead of record IDs to select an existing record or create a new one if it doesn't exist and use it to add new options in single/multiple select fields. |
Updates a record with mapped fields.
Connection | Establish a connection to your Airtable account. |
Base | Enter the base that contains the table whose record details you want to update. |
Table | Enter the table whose record details you want to update. |
Record ID | Enter the Record ID whose details you want to update. |
Record Fields | Add a new Column ID and Field value by selecting the field type you want to update. |
Smart links | Enable this field to enter the user name in the linked record fields instead of record IDs to select an existing record or create a new one if it doesn't exist and use it to add new options in single/multiple select fields. |
Searches for specific records or returns all records. Advanced module for mapping.
Connection | Establish a connection to your Airtable account. |
Base ID | Enter the Base ID that contains the table whose records you want to search. |
Table | Enter the table whose records you want to search. |
Sort | A list of sort objects that specifies the way you want to order the records. For example, asc. |
View | The name or ID of a view of the records in the table. |
Formula | A formula is used to filter records. The formula will be evaluated for each record, and if the result is not |
Output Fields | Add the fields you want to receive in the output. If no field is provided, all fields will be returned. It can be the field's name, for example, |
Limit | Set the maximum number of records Execution Management System will return during one execution cycle. |
Use Column ID | Select whether to use column ID instead of column name for mapping. This enables persistence over the column name change. Enabling this option allows to replace entity keys in the response; instead of entity names specified as parameter keys, their identifiers will be specified. Changing this value will break all existing mappings in this Action Flow. |
Other
You can list bases, table schemas, and call APIs using the following modules.
Allows you to perform a custom API call.
Connection | Establish a connection to your Airtable account. |
URL | Enter a path relative to NoteFor the list of available endpoints, refer to the Airtable REST API Documentation. |
Method | Select the HTTP method you want to use:
|
Headers | Enter the desired request headers. You don't have to add authorization headers; we already did that for you. |
Query String | Enter the request query string. |
Body | Enter the body content for your API call. |
Example of Use - List Records
The following API call returns all records in the specified table in your Airtable account:
URL:
/v0/{base_id}/{table_id}
Method:
GET

Search results can be found in the module's Output under Bundle > Body > records.
In our example, 4 records were returned:

Returns the detailed list of all bases.
Connection | Establish a connection to your Airtable account. |
Limit | Set the maximum number of bases Execution Management System will return during one execution cycle. |
Returns the schema of the tables in the specified base.
Connection | Establish a connection to your Airtable account. |
Base | Select or map the base whose table schemas you want to list. |
Limit | Set the maximum number of table schemas Execution Management System will return during one execution cycle. |