Airtable

Databases integration · 9 node(s) including 1 trigger.

00Overview

Every field below is exactly what you see in the Flomation editor. Fields marked ● live picker let you choose from a list pulled live from your account — no IDs to look up.

01Connecting Airtable

Add your credentials as a Flomation environment secret, then pick them in each node. The connection fields are:

FieldTypeDetails
Airtable Personal Access TokensecretRequiredpat...
i
Pick an Environment on your flow (Flow Settings → Environment) so the secret resolves. Secret fields never show the value — they reference ${secrets.your_secret}.

02Base

Base: Get Schema

airtable/base_get_schema · Action

Get the schema of a base — its tables, and each table's fields (name, type, options) and views. Requires the schema.bases:read scope. Returns the tables array.

FieldTypeDetails
Base IDstringRequiredappXXXXXXXXXXXXXX

Returns: tables, count, result, tool_result, success, error

Base: List

airtable/base_list · Action

List the Airtable bases the token can access, with their IDs and permission levels. Optionally filter by permission level. Requires the schema.bases:read scope.

FieldTypeDetails
Permission LevelstringComma-separated filter: read, comment, edit, create (optional)

Returns: bases, count, tool_result, success, error

03Record

Record: Create

airtable/record_create · Action

Create a record in an Airtable table. Set fields as simple key/value rows or as a JSON object for typed values (arrays, linked records, attachments). Returns the new record and its ID.

FieldTypeDetails
Base IDstringRequiredappXXXXXXXXXXXXXX
Table (ID or name)stringRequiredtblXXXXXXXXXXXXXX or Table 1
Fieldskey_value_arrayField name = value (for simple text/number/single-select fields)
Fields (JSON, advanced)object{"Name":"Ada","Tags":["A","B"],"Done":true}
TypecastbooleanCoerce string values to the field's type / create missing select options

Returns: id, fields, record, tool_result, success, error

Record: Delete

airtable/record_delete · Action

Delete a record from an Airtable table by its record ID. Returns the deleted record ID.

FieldTypeDetails
Base IDstringRequiredappXXXXXXXXXXXXXX
Table (ID or name)stringRequiredtblXXXXXXXXXXXXXX or Table 1
Record IDstringRequiredrecXXXXXXXXXXXXXX

Returns: id, deleted, tool_result, success, error

Record: Get

airtable/record_get · Action

Retrieve a single record from an Airtable table by its record ID. Returns the record and its fields.

FieldTypeDetails
Base IDstringRequiredappXXXXXXXXXXXXXX
Table (ID or name)stringRequiredtblXXXXXXXXXXXXXX or Table 1
Record IDstringRequiredrecXXXXXXXXXXXXXX

Returns: id, fields, record, tool_result, success, error

Record: List

airtable/record_list · Action

List or search records in an Airtable table. Filter with a formula, sort, restrict to a view, project fields, and page through results (or return all). Returns matching records.

FieldTypeDetails
Base IDstringRequiredappXXXXXXXXXXXXXX
Table (ID or name)stringRequiredtblXXXXXXXXXXXXXX or Table 1
Filter by FormulastringNOT({Name} = 'Admin')
ViewstringView name or ID (optional)
Return FieldsstringComma-separated field names to return (optional)
Sort FieldstringField name to sort by (optional)
Sort Directionstringchoices: Ascending, Descending
Sort (JSON, advanced)object[{"field":"Created","direction":"desc"}] (overrides Sort Field)
Return AllbooleanPage through every matching record (up to a safety cap)
Max RecordsintegerCap on total records returned (optional)
Page SizeintegerRecords per page, max 100 (default 100)
OffsetstringPagination offset from a previous page (optional)

Returns: records, count, offset, result, tool_result, success, error

Record: Update

airtable/record_update · Action

Update fields on an existing Airtable record by its record ID. Only the supplied fields change. Returns the updated record.

FieldTypeDetails
Base IDstringRequiredappXXXXXXXXXXXXXX
Table (ID or name)stringRequiredtblXXXXXXXXXXXXXX or Table 1
Record IDstringRequiredrecXXXXXXXXXXXXXX
Fieldskey_value_arrayField name = value (for simple text/number/single-select fields)
Fields (JSON, advanced)object{"Name":"Ada","Tags":["A","B"],"Done":true}
TypecastbooleanCoerce string values to the field's type / create missing select options

Returns: id, fields, record, tool_result, success, error

Record: Create or Update

airtable/record_upsert · Action

Upsert a record: Airtable updates the record whose Match Fields equal the given values, or creates a new one if none match. Returns the record and whether it was created.

FieldTypeDetails
Base IDstringRequiredappXXXXXXXXXXXXXX
Table (ID or name)stringRequiredtblXXXXXXXXXXXXXX or Table 1
Match FieldsstringRequiredComma-separated field names to match on, e.g. Email
Fieldskey_value_arrayField name = value (must include the Match Fields)
Fields (JSON, advanced)object{"Email":"a@b.com","Name":"Ada"}
TypecastbooleanCoerce string values to the field's type / create missing select options

Returns: id, created, fields, record, result, tool_result, success, error

04Triggers

Airtable Trigger

trigger/airtable_poll · Trigger

Triggers a flow when records are created or updated in an Airtable table. Polls the table on an interval using a Created Time or Last Modified Time field.

FieldTypeDetails
Base IDstringRequiredappXXXXXXXXXXXXXX
Table (ID or name)stringRequiredtblXXXXXXXXXXXXXX or Table 1
Trigger FieldstringRequiredA 'Created Time' or 'Last Modified Time' field name
Trigger Onstringchoices: Record created, Record updated, Record created or updated
ViewstringRestrict to a view name or ID (optional)
Filter by FormulatextExtra Airtable formula, ANDed with the timestamp filter (optional)
Poll Intervalstringe.g. 1m, 5m
Download AttachmentsbooleanDownload attachment fields as binary
Attachment FieldsstringComma-separated attachment field names (case sensitive)

Returns: record_id, created_time, fields, triggered_at

05Notes & Limitations

Behaviours and constraints worth knowing before you build with these nodes.