Skip to content
Bubble to Airtable Two-way Sync Plugin
Share
Explore

WorkFlows and actions

This plugin provides a lot of different actions for various scenarious, you can find these actions inside Element Actions tab when creating a new workflow step.
image.png
Data synchronization actions
These actions will let you make CRUD operations with single rows or entire tables and sync Bubble database with AirTable.
Tables information is described using JSON objects like this:
{
"BubbleTableName": "",
"AirTableName": "",
"TableFields": ""
}
“BubbleTableName” and “AirTableName” are string values of tables names, “TableFields” are comma (,) separated tables fields names, that also have to be a string (surrounded by “”) and must match in both Bubble and AirTable tables. In some cases “TableFields” field is not required.
Some actions allows you to define multiple tables at once, in that case you can simply separate multiple JSON objects with a comma, like this:
{
"BubbleTableName": "",
"AirTableName": "",
"TableFields": ""
},
{
"BubbleTableName": "",
"AirTableName": "",
"TableFields": ""
}
Do not put a comma after the last object/field.
Here is the list of all the actions with exmples.
Insert Tables to Bubble - Copies data from on or more AirTable tables and inserts those rows to Bubble.
image.png
BubbleTableName – Bubble table’s name where data will be loaded to.
AirTableName – AirTable table’s name from where data will be copied.
TableFields - Tables fields names are separated by “,” and must match in both Bubble and AirTable Tables, only these fields will be used. Do not put relationship fields.
Insert Tables to AirTable - Copies Data from one or more Bubble tables and inserts those rows to AirTable.
image.png
BubbleTableName – Bubble table’s name from where data will be copied.
AirTableName – AirTable table’s name where data will be loaded to.
TableFields - Tables fields names are separated by “,” and must match in both Bubble and AirTable Tables, only these fields will be used. Do not put relationship fields.
Insert New Rows To Bubble - Copies all the new rows from one or more AirTable tables that do not have BubbleId.
image.png
BubbleTableName – Bubble table’s name where new data will be loaded to.
AirTableName – AirTable table’s name from where new data will be copied.
TableFields - Tables fields names are separated by “,” and must match in both Bubble and AirTable Tables, only these fields will be used. Do not put relationship fields.
Insert New Rows To AirTable - Copies all the rows from one or more Bubble tables that do not have AirId.
image.png
BubbleTableName – Bubble table’s name from where new data will be copied.
AirTableName – AirTable table’s name where new data will be loaded to.
TableFields - Tables fields names are separated by “,” and must match in both Bubble and AirTable Tables, only these fields will be used. Do not put relationship fields.
Insert Row to AirTable - Inserts one row into AirTable.
image.png
BubbleTableName – Bubble table’s name where this row is being created.
AirTableName – AirTable table’s name where this created row will be copied to.
TableFields - Tables fields names are separated by “,” and must match in both Bubble and AirTable Tables, only these fields will be used. Do not put relationship fields.
BubbleRowId - unique id of the Bubble row that was just inserted.
Update AirTable Row - Updates one AirTable table’s row.
image.png
BubbleTableName – Bubble table’s name whose row has been updated.
AirTableName – AirTable table’s name whose row will also be updated.
TableFields - Tables fields names are separated by “,” and must match in both Bubble and AirTable tables, only these fields will be used. Do not put relationship fields.
BubbleRowId - unique id of the Bubble row that was updated.
Update AirTable Tables - Updates all rows of one or more AirTable’s tables.
image.png
BubbleTableName – Bubble table’s name whose rows are updated
AirTableName – AirTable table’s name whose rows will get updated.
TableFields - Tables fields names are separated by “,” and must match in both Bubble and AirTable Tables, only these fields will be used. Do not put relationship fields.
Delete Row - Delete single row from AirTable and Bubble.
image.png
BubbleTableName – Bubble table’s name whose row will be deleted.
AirTableName – AirTable table’s name whose row will be deleted.
BubbleRowId - unique id of the Bubble row to be deleted.
Delete Multiple Rows - Delete one or many rows from Bubble and AirTable table.
image.png
BubbleTableName – Bubble table’s name whose row will be deleted.
AirTableName – AirTable table’s name whose row will be deleted.
List of Things - the list of things that will be deleted from Bubble and AirTable.
Delete Tables - Delete all rows from one or multiple Bubble and AirTable tables.
image.png
BubbleTableName – Bubble table’s name whose rows will be deleted.
AirTableName – AirTable table’s name whose rows will be deleted.
Sync Tables - Deletes rows from Bubble that are missing in AirTable table, inserts rows into Bubble that are present in AirTable but are missing in Bubble, updates Bubble rows that have changes. Can sync multiple tables.
image.png
BubbleTableName – Bubble table’s name.
AirTableName – AirTable table’s name.
TableFields - Tables fields names are separated by “,” and must match in both Bubble and AirTable Tables, only these fields will be used. Do not put relationship fields.
Relationships synchronization actions
These actions will let you sync raletions between tables (in Bubble “List of Things” or “Thing” fields and in AirTable “Link to another record” fields).
Lets assume our Post table have a field List of Comments:
image.png
In AirTable we also would have a table for posts and comments:
image.png
Comments unique ids gets turned into links to Comments records inside AirTable.
Tables information and relations are described using JSON objects like this:
{
"BubbleTableName": "",
"AirTableName": "",
"relationships": []
}
“BubbleTableName” and “AirTableName” are string values of tables names, “relationships” field is an array of relation JSON objects that looks like this:
{
"ListOfThings": "",
"BubbleRelatedTable": "",
"BubbleRelationField": "",
"AirRelatedTable": "",
"AirRelationField": ""
}
ListOfThings – values can be “yes” if this is a one-to-many relation (field’s type is List of Things) or “no” if this is a one to one relation (field’s type is Thing).
BubbleRelatedTable – Bubble’s table that this field is referencing.
BubbleRelationField – Name of the field used to reference another table (type is Thing or List of Things).
AirRelatedTable – AirTable’s equivalent table that this field is referencing.
AirRelationField – AirTable’s equivalent field for referencing another table.
To define more than one relation, separate multiple ralation JSON objects inside relationships array like this:
{
"BubbleTableName": "",
"AirTableName": "",
"relationships": [
{
"ListOfThings": "",
"BubbleRelatedTable": "",
"BubbleRelationField": "",
"AirRelatedTable": "",
"AirRelationField": ""
},
{
"ListOfThings": "",
"BubbleRelatedTable": "",
"BubbleRelationField": "",
"AirRelatedTable": "",
"AirRelationField": ""
}
]
}
Some actions allows you to define multiple tables at once, in that case you can simply separate multiple JSON objects with a comma, like this:
{
"BubbleTableName": "",
"AirTableName": "",
"relationships": [
...
]
},
{
"BubbleTableName": "",
"AirTableName": "",
"relationships": [
...
]
}
Update AirTable Row Relations - Updates relationships of a single AirTable table’s row.
image.png
BubbleTableName – Bubble table’s name whose relationships are being updated.
AirTableName – AirTable table’s name whose relationships are being updated.
Relationships – list of relations objects that specifies which fields are linked to what tables in corresponding databases.
BubbleRowId - unique id of the Bubble row whos relations was changed.

Update AirTable Tables Relations - Updates relationships of one or multiple AirTable tables.
image.png
BubbleTableName – Bubble table’s name whose relationships are being updated.
AirTableName – AirTable table’s name whose relationships are being updated.
Relationships – list of relations objects that specifies which fields are linked to what tables in corresponding databases.
ListOfThings – values can be “yes” if this is a one-to-many relation (field’s type is List of Things) or “no” if this is a one to one relation (field’s type is Thing).
BubbleRelatedTable – Bubbles table that this field is referencing.
BubbleRelationField – Name of the field used to reference another table (type is Thing or List of Things).
AirRelatedTable – AirTable’s equivalent table that this field is referencing.
AirRelationField – AirTable’s equivalent field for referencing another table.

Update Bubble Tables Relations - Updates relationships of one or multiple Bubble tables.
image.png
BubbleTableName – Bubble table’s name whose relationships are being updated.
AirTableName – AirTable table’s name whose relationships are being updated.
Relationships – list of relations objects that specifies which fields are linked to what tables in corresponding databases.
ListOfThings – values can be “yes” if this is a one-to-many relation (field’s type is List of Things) or “no” if this is a one to one relation (field’s type is Thing).
BubbleRelatedTable – Bubbles table that this field is referencing.
BubbleRelationField – Name of the field used to reference another table (type is Thing or List of Things).
AirRelatedTable – AirTable’s equivalent table that this field is referencing.
AirRelationField – AirTable’s equivalent field for referencing another table.
Want to print your doc?
This is not the way.
Try clicking the ⋯ next to your doc name or using a keyboard shortcut (
CtrlP
) instead.