Airtable
Service domainSPREADSHEETS
Arcade Optimized
Arcade tools designed for LLMs to interact with Airtable bases and records
9tools
Arcade's Airtable toolkit lets LLMs read and write Airtable bases, tables, and records through a structured set of tools built on the Airtable REST API.
Capabilities
- Discovery & schema inspection — list accessible bases with permission levels, and retrieve full column definitions (names, types, select options, linked-record targets, views) before writing to avoid field-mismatch errors.
- Record retrieval — fetch a single record by ID or list records with filtering, sorting, and column limiting; use formula-based listing for multi-column or numeric/date conditions.
- Text search — search rows by matching a single column against a plain-text term with safe escaping; complements formula-based listing for simple lookups.
- Record creation & modification — create up to 10 rows per call (repeating adds rows, not overwrites), and update existing rows by supplying only the columns to change (others are left untouched); both operations report unconfirmed IDs for safe retry.
- Record deletion — delete up to 10 rows per call with permanent removal; unconfirmed IDs are surfaced for re-verification before retrying.
- Identity & authorization introspection — confirm which Airtable account and granted scopes the current token represents.
OAuth
This toolkit authenticates via OAuth 2.0 with Airtable as the provider. See the Arcade Airtable auth provider docs for setup details.
Available tools(9)
9 of 9 tools
Operations
Behavior
| Tool name | Description | Secrets | |
|---|---|---|---|
Create rows in an Airtable table, up to 10 per call.
Repeating this call creates additional rows rather than replacing the first set.
`count` and `requested_count` are equal on success, and `record_ids` names the rows.
If Airtable confirms fewer rows than requested, this call raises instead of reporting
an incomplete success, because new rows do not have caller-known IDs to reconcile. | |||
Delete rows from an Airtable table, up to 10 per call.
Deleted rows are removed from the table and cannot be restored through the API.
`record_ids` holds only the rows Airtable confirmed deleted. When `count` is lower than
`requested_count`, `unconfirmed_record_ids` names the rest; re-read those before
deleting again. | |||
Get the column names, column types and select options inside an Airtable base.
Read this before writing records: writes key on column names, a select column
rejects values outside the options reported here, and a linked-record column only
accepts record IDs from the table it names.
`views_included` is false whenever a table's views were not returned: include_views
was false, or they were left out to fit the response (then `truncated` is true). An
empty views list with `views_included` true means the table has no saved views.
Narrow with `table` when only one table matters. Airtable returns the whole base,
so leaving it empty on a wide base costs the context the records themselves need.
`truncated` says detail was left out to keep the response usable: descriptions and
views go first, then columns from the end of a table. Ask for one named table to give
it the whole response; a table still too wide returns its leading columns in order,
always at least its first, whose select options may be cut from the end. | |||
Get a single Airtable row by its record ID.
Returns every column unless fields narrows it. Long cell values are clipped the same
way they are in a listing, and `truncated` says when that happened. A record ID that
does not exist, or was deleted, comes back as a refusal that does not distinguish
the two. | |||
List the Airtable bases this authorization can reach, with permission levels.
Returns bases in Airtable's default order. | |||
List rows from an Airtable table, optionally filtered, sorted and column-limited.
Use this when the condition combines columns, or compares numbers or dates. To match
one column against plain text, use the record search tool instead.
Returns records in the view's order, or Airtable's default order when no view is
given, unless sort_field overrides it. | |||
Find rows in an Airtable table whose column matches a search term.
Use this to match one column against text: quotes and backslashes in the search term
are escaped, so arbitrary text is safe to pass. Use the formula-based listing instead
when the condition combines columns or compares numbers or dates.
Returns records in the table's order unless sort_field is given. | |||
Change columns on existing Airtable rows, up to 10 per call.
Only the columns supplied are written; every other column is left untouched.
`count` is how many rows Airtable confirmed. When it is lower than `requested_count`,
`unconfirmed_record_ids` names the rest; re-read those before updating them again. | |||
Get the Airtable account this authorization belongs to, and its granted scopes.
Useful for confirming whose bases are being read or changed. |
Last updated on