airtable

Manage Airtable bases, tables, and records via REST API curl commands.

Updated Jul 10, 2026
One-click install
npx skills add https://github.com/AvaTar-ArTs/.Agent-skills --skill airtable-avatar-arts
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: airtable
Source: https://github.com/AvaTar-ArTs/.Agent-skills/tree/main/skills/productivity/airtable
Command: npx skills add https://github.com/AvaTar-ArTs/.Agent-skills --skill airtable-avatar-arts

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Working with Airtable data from an AI agent or terminal normally requires an SDK, OAuth setup, or manual UI clicks. This Skill provides direct REST API access via curl so you can read, create, update, upsert, and delete Airtable records with nothing more than a personal access token. ## Core Features & Use Cases - Full Records CRUD: Create, read, update (PATCH), upsert by merge field, and delete records, including batch operations of up to 10 records per request. - Filtering, Sorting & Views: Query records with URL-encoded filterByFormula expressions, server-side sorting, field selection, and named views. - Schema Inspection: List accessible bases and table schemas before mutating data to confirm exact field names, IDs, and select options. - Use Case: Sync a list of customer emails into an Airtable CRM table idempotently using performUpsert on the Email field, without creating duplicates. ## Quick Start Ask the agent to list the records in your Airtable table or add a new row to a specific base and table using your configured AIRTABLE_API_KEY.

Frequently Asked Questions about airtable

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I create or update Airtable records via the REST API?

Send a POST request to /v0/{baseId}/{table} with a JSON body containing a fields object to create records, or a PATCH request with the record ID to update. Add performUpsert with fieldsToMergeOn to insert-or-update based on a key field like Email.

How do I filter Airtable records with filterByFormula?

Pass a URL-encoded Airtable formula such as {Status}='Todo' as the filterByFormula query parameter. Encode it with Python's urllib.parse.quote rather than hand-escaping, since field names with spaces or special characters break unencoded URLs.

What authentication does the Airtable API require?

Airtable requires a personal access token starting with pat, sent as a Bearer token in the Authorization header. The token needs data.records:read and data.records:write scopes, and each target base must be added to the token's Access list.

Why does the Airtable API return a 403 error on one base but not another?

A 403 on a specific base means the personal access token's Access list does not include that base, not that the token is invalid. Open https://airtable.com/create/tokens and add the missing base to the token's access scope.

What are the Airtable API rate limits and batch size limits?

The API allows 5 requests per second per base and returns 429 with a Retry-After header when exceeded. Batch create and delete endpoints accept a maximum of 10 records per request, and list endpoints return at most 100 records per page.

Should I use PATCH or PUT to update Airtable records?

Use PATCH for updates because it merges only the supplied fields and preserves everything else. PUT replaces the entire record and clears any field you did not include, which can silently delete data.