Resources · n8n integration

Airtable n8n integrationAutomate Airtable with n8n.

A base is only worth the workflows that keep it current. The Airtable n8n integration exposes 8 operations across 2 resources, records and bases, plus a trigger that checks a table at the interval you pick. It suits teams whose pipeline, stock list or content calendar already lives in Airtable.

Verified Trustpilot reviews · AI, automation & growth agency

Why automate

What does the Airtable n8n integration cover?

Airtable is a spreadsheet-database hybrid: a table looks like a spreadsheet, but every field carries a type such as checkbox, phone number or drop-down list, and can reference file attachments like images. The Airtable node reads, writes, updates and deletes that data from inside a workflow, and the Airtable Trigger starts a workflow when new rows show up in a table you point it at.

The first pattern is intake. A form, a scraper or an email parser drops a lead into the table, the trigger picks it up on its next pass, and record.search checks whether that address already sits in the base. A match routes the workflow to record.update, no match routes it to record.create, and the list stops filling up with near-duplicates. Teams that used to keep the same list in Google Sheets gain typed fields and attachments along the way.

The second pattern runs the other direction. Airtable holds the reference data and something else needs a copy of it: a scheduled workflow calls record.search with Return All switched on, then writes each row into Supabase for the app that reads it. The same shape backs a weekly digest, where the rows selected by a formula become the body of a message.

The third pattern never leaves Airtable. A row changes state, the workflow reads it with record.get, pulls down the attachment it carries, does something with the file, then writes the outcome back with record.update. Content calendars and client deliverables tend to run exactly like this.

The node covers records and bases: create, get, search, update, upsert and delete on one side, the list of bases and the schema of a base on the other. When the Airtable API exposes something outside those 8 operations, the HTTP Request node calls the endpoint directly and reuses the same credential through its predefined authentication, so no key gets stored twice.

Two limits belong in the plan. Airtable answers with a 429 error past 5 requests per second on a single base, the same ceiling applies past 50 requests across all bases for one access token, and a workflow that loops over a long table needs 30 seconds of patience rather than raw speed. The trigger, for its part, will not work correctly without a Created Time or Last Modified Time field to sort on. The n8n review looks at where the tool fits overall, and the n8n training walks through building this kind of workflow end to end.

Connect

How do you connect Airtable to n8n?

  1. 01

    Create a personal access token

    Open the Personal access tokens page of the Airtable Builder Hub and select + Create new token. Give it a Name such as n8n credential, then add the three scopes n8n recommends: data.records:read, data.records:write and schema.bases:read. Set the Access to one base, to several bases, or to every base in a workspace you own, then select Create token.

  2. 02

    Paste the token into the n8n credential

    In n8n, open the Credentials menu and create an Airtable credential of the Access Token kind. Airtable displays the token once, in a modal, so copy it straight into the Access Token field. A credential is created once and then offered in the dropdown of every Airtable node and of the trigger, in any workflow on the instance.

  3. 03

    Switch to OAuth2 when several people share the instance

    On a self-hosted n8n, OAuth2 is the other supported method. Copy the OAuth Redirect URL from the n8n credential into the OAuth integrations page of the Builder Hub, register the integration, then bring back the Client ID and the Client Secret generated there. Grant the same three scopes, start the connection from the n8n credential, then choose the base and confirm with Grant access.

Triggers

What starts an Airtable workflow?

Airtable Trigger is the node that starts a workflow when something changes in Airtable. n8n checks your account on the schedule you set and runs the workflow once per new item it finds.

What you see in n8n

Configuration notes

01Airtable TriggerThere is no list of events to tick here. The trigger polls, which means n8n queries the Airtable API at a chosen interval and sends out one item per record it has not seen before. Nothing gets registered on the Airtable side, and the cost of that simplicity is a delay equal to the interval.

There is no list of events to tick here. The trigger polls, which means n8n queries the Airtable API at a chosen interval and sends out one item per record it has not seen before. Nothing gets registered on the Airtable side, and the cost of that simplicity is a delay equal to the interval.

Key parameters

  • Base and Table: the table to watch, given by its URL or by its ID, or picked from the list once the credential is connected.
  • Trigger Field: a Created Time or Last Modified Time field, used to sort the records and work out what is new since the last check. Without such a field in the schema, the trigger will not work correctly, so create one first.
  • Poll Times: Every Minute, Every Hour, Every Day, Every Week, Every Month, Every X for a number of minutes or hours, or Custom for a cron expression. Add Poll Time adds a second schedule.
Use cases
a table fed by a public form, checked every minute during business hours, where each new row has to reach the sales channel before anyone refreshes the page.
02Download AttachmentsAirtable fields can hold files, and the trigger can bring them along instead of handing over a bare link. Switch Download Attachments on and the files arrive as binary data on the item, ready for the next node.

Airtable fields can hold files, and the trigger can bring them along instead of handing over a bare link. Switch Download Attachments on and the files arrive as binary data on the item, ready for the next node.

Key parameters

  • Download Attachments: the toggle that turns the behavior on. Left off, the workflow only gets the field values.
  • Download Fields: the names of the attachment fields to download, separated by commas. The names are case sensitive, so a field called Invoice PDF has to be written exactly that way.
When to use it
a table where each row carries a signed document or a product photo, and the workflow has to move that file somewhere else rather than link to it.
03Additional FieldsBy default the output of a poll stays minimal: only the Trigger Field comes back. Three optional settings shape what each item contains and which rows make it through at all.

By default the output of a poll stays minimal: only the Trigger Field comes back. Three optional settings shape what each item contains and which rows make it through at all.

Key parameters

  • Fields: a comma-separated list of the columns to include in the output, for example name, id.
  • Formula: an Airtable formula that filters the rows further. Worth knowing before a test session: formula values are ignored during manual executions and only apply to production polling.
  • View ID: the name or the ID of a view. Once set, only the records available in that view come back.
Use cases
a shared table where one view already isolates the rows marked as ready, so the workflow reacts to those and leaves drafts alone.
Actions

What can the Airtable node do?

The Airtable node exposes 8 operations across 2 resources. For each one: the node as you configure it in n8n, the required fields, and our field notes.

Resources × operations matrix
ResourceCreateGetUpdateDeleteGet ManyGet SchemaSearchCreate or Update
Base✓✓
Record✓✓✓✓✓✓

Base

2 operations
01

Get many bases

base.getMany

What you see in n8n

Notes & use cases

Lists all the bases the credential can reach, so a workflow can work out where to write instead of carrying a hard-coded base.

Key parameters

  • Return All: switched on, n8n walks through every page of the list; switched off, it stops at Limit.
  • Limit: the maximum number of bases returned while Return All stays off.
  • Permission Level: keeps only the bases matching one or more levels, among comment, create, edit, none and read.
Use cases
an internal tool that offers ops a list of the bases they can actually edit, filtered on edit, before the workflow writes anything.
02

Get base schema

base.getSchema

What you see in n8n

Notes & use cases

Returns the schema of the tables held in one base: which tables exist, and which fields they carry. It answers the question every mapping step runs into, namely how a column is spelled exactly.

Key parameters

  • Base: the base whose schema you want, chosen from the list or set by an expression such as {{ $json.baseId }} when the id comes from an earlier node.
Use cases
before a bulk import, read the schema and compare it with the incoming payload, so a renamed column surfaces as a clear error instead of a column that silently stays empty.

Record

6 operations
03

Create a record

record.create

What you see in n8n

Notes & use cases

Adds a new row to the table and returns it, record id included, ready to be reused further down the workflow.

Key parameters

  • Base and Table: where the row lands.
  • Columns: the mapper that lists the fields of the table; each one takes a fixed value or an expression such as {{ $json.email }}.
  • Typecast: lets the Airtable API map string values onto linked records and select options instead of refusing them.
Use cases
a webinar signup that becomes a row in the attendees table, with Typecast on so the source label lands in an existing select option.
04

Create or update a record

record.upsert

What you see in n8n

Notes & use cases

One call with two outcomes: the row is updated when it already exists, created when it does not. This is the upsert that keeps a nightly import from doubling every line.

Key parameters

  • Columns: the field mapping, plus the column used to match an existing record.
  • Update All Matches: switched on, every record matching the value in the Column to Match On gets updated; left off, only the first match does.
  • Ignore Fields From Input: a comma-separated list of incoming fields to leave out of the update, handy for a timestamp that should never overwrite the original one.
Use cases
a daily catalogue export where each product either refreshes its price or joins the table.
05

Delete a record

record.deleteRecord

What you see in n8n

Notes & use cases

Removes one row from the table, identified by its record id. The operation takes a single record, so a cleanup over many rows runs it once per item.

Key parameters

  • Base and Table: where the row lives.
  • Record ID: the id of the record to delete, in the recf7EaZp707CEc8g shape, most often taken from a previous search with an expression like {{ $json.id }}.
Use cases
a monthly cleanup where Search finds the rows flagged as duplicates and this operation removes them one by one, after a manual approval step.
06

Get a record

record.get

What you see in n8n

Notes & use cases

Retrieves a single row when the workflow already knows its id, with every field of that row.

Key parameters

  • Record ID: the id of the record to get, for example recf7EaZp707CEc8g, often carried over from the item that triggered the run.
  • Download Attachments: the attachment fields to download with the row, which turns the files into binary data instead of a reference.
Use cases
someone pastes a record id into a chat channel, the workflow fetches the row and posts back the fields that matter, with the attached brief ready to open.
08

Update record

record.update

What you see in n8n

Notes & use cases

Writes new values onto a row that already exists, leaving the fields you do not map untouched.

Key parameters

  • Columns: the fields to overwrite, and the column that identifies the record to update.
  • Ignore Fields From Input: the incoming fields to skip, so an enrichment step does not flatten a value typed by hand.
  • Typecast: same mapping help as on creation, for linked records and select options arriving as plain text.
Use cases
a deal moves to signed in the CRM, and the workflow writes the new status and the signature date onto the matching row.
Need help

Need help automating Airtable with n8n?

A person reads every message.

FAQ

Airtable and n8n, common questions

01Is the Airtable n8n integration free?
On the n8n side, yes. The Airtable node and the Airtable Trigger ship with n8n, so there is nothing to install and nothing extra to pay, on n8n Cloud as well as on a self-hosted instance under the Community Edition and its Sustainable Use licence. A workflow built on one runs the same on the other, which matters when a proof of concept starts on Cloud and moves in-house later. The credential is created once and reused everywhere, so a second or third workflow costs nothing more than picking it in a dropdown. What an Airtable plan costs on its own is a separate question this page does not cover.
02What credentials or scopes does the Airtable node need?
Two methods work: a personal access token, or OAuth2. n8n recommends the token. The old API key method is gone, since Airtable fully deprecated those keys as of February 2024, so an old credential has to be replaced rather than repaired. A token carries its own scopes, and three of them cover the whole node: data.records:read, data.records:write and schema.bases:read. It also carries an access level, from a single base to every base in a workspace you own, which is the simplest way to keep a workflow away from data it has no reason to read. OAuth2 asks for a redirect URL, a client id and a client secret, and fits a self-hosted instance shared by several people.
03What are the limits of the Airtable node in n8n?
The node exposes 8 operations over 2 resources, records and bases. Anything else in the Airtable API goes through the HTTP Request node, which reuses the same credential, so the gap costs a node rather than a second authentication. The real ceiling is the rate limit: past 5 requests per second on one base, Airtable answers 429 and expects 30 seconds of silence before the next call, and the same applies past 50 requests across all bases for one access token. A long export therefore relies on Return All, which pages through the results, rather than on a loop that fires one call per row as fast as it can.
04How fast does the Airtable Trigger see a new record?
As fast as its interval, and no faster. The trigger polls, meaning n8n asks the Airtable API what is new at the frequency set in Poll Times: Every Minute, Every Hour, Every Day, Every Week, Every Month, Every X minutes or hours, or a cron expression under Custom. Nothing has to be configured on the Airtable side, which makes setup short, but a row created just after a check waits for the next one. Two details save time later: the Trigger Field has to be a Created Time or Last Modified Time field, and a Formula set in Additional Fields only applies to production polling, not to manual executions.
05n8n or Make for Airtable?
It depends on where the data is allowed to live and how you want to pay. Make is hosted by Make, with no self-hosting option, and bills per operation, so a workflow that loops over a large table has a cost that grows with the table. n8n runs on Cloud or on your own server, which keeps the base content and the token inside infrastructure you control, and its editor mixes visual nodes with code when a step gets specific. Make offers a visual logic many teams find quicker to read at first. Both connect to Airtable with a token, so the deciding factors are hosting, data control and the cost model rather than the connector itself.