airtable
Create, read, update, and delete records in Airtable bases. Use when you need to manage data in Airtable spreadsheets/databases, sync data, or automate workflows with Airtable as a data store.
Install via CLI (Recommended)
clawhub install openclaw/skills/skills/mrgoodb/airtableAirtable API
Manage Airtable bases, tables, and records via REST API.
Setup
- Get API key: https://airtable.com/create/tokens
- Create token with scopes:
data.records:read,data.records:write - Store token:
mkdir -p ~/.config/airtable
echo "patXXXXXXXXXXXXXX" > ~/.config/airtable/api_key
- Find Base ID: Open base → Help → API documentation (starts with
app)
List Records
AIRTABLE_KEY=$(cat ~/.config/airtable/api_key)
BASE_ID="appXXXXXXXXXXXXXX"
TABLE_NAME="Table%20Name" # URL-encoded
curl -s "https://api.airtable.com/v0/${BASE_ID}/${TABLE_NAME}" \
-H "Authorization: Bearer ${AIRTABLE_KEY}" | jq '.records'
Get Single Record
RECORD_ID="recXXXXXXXXXXXXXX"
curl -s "https://api.airtable.com/v0/${BASE_ID}/${TABLE_NAME}/${RECORD_ID}" \
-H "Authorization: Bearer ${AIRTABLE_KEY}" | jq
Create Record
curl -s -X POST "https://api.airtable.com/v0/${BASE_ID}/${TABLE_NAME}" \
-H "Authorization: Bearer ${AIRTABLE_KEY}" \
-H "Content-Type: application/json" \
-d '{
"records": [{
"fields": {
"Name": "New Item",
"Status": "Todo",
"Notes": "Created via API"
}
}]
}' | jq
Create Multiple Records
curl -s -X POST "https://api.airtable.com/v0/${BASE_ID}/${TABLE_NAME}" \
-H "Authorization: Bearer ${AIRTABLE_KEY}" \
-H "Content-Type: application/json" \
-d '{
"records": [
{"fields": {"Name": "Item 1", "Status": "Todo"}},
{"fields": {"Name": "Item 2", "Status": "Done"}}
]
}'
Max 10 records per request.
Update Record
curl -s -X PATCH "https://api.airtable.com/v0/${BASE_ID}/${TABLE_NAME}/${RECORD_ID}" \
-H "Authorization: Bearer ${AIRTABLE_KEY}" \
-H "Content-Type: application/json" \
-d '{
"fields": {
"Status": "Done",
"Notes": "Updated via API"
}
}' | jq
PATCH = partial update, PUT = replace all fields
Delete Record
curl -s -X DELETE "https://api.airtable.com/v0/${BASE_ID}/${TABLE_NAME}/${RECORD_ID}" \
-H "Authorization: Bearer ${AIRTABLE_KEY}" | jq
Filter Records
# filterByFormula parameter (URL-encoded)
FORMULA="Status%3D%27Todo%27" # Status='Todo'
curl -s "https://api.airtable.com/v0/${BASE_ID}/${TABLE_NAME}?filterByFormula=${FORMULA}" \
-H "Authorization: Bearer ${AIRTABLE_KEY}" | jq '.records'
Common formulas:
{Status}='Done'- Exact matchFIND('keyword', {Notes})- Contains text{Date} >= TODAY()- Date comparisonAND({Status}='Active', {Priority}='High')- Multiple conditions
Sort Records
curl -s "https://api.airtable.com/v0/${BASE_ID}/${TABLE_NAME}?sort%5B0%5D%5Bfield%5D=Created&sort%5B0%5D%5Bdirection%5D=desc" \
-H "Authorization: Bearer ${AIRTABLE_KEY}" | jq '.records'
Pagination
# First page
RESPONSE=$(curl -s "https://api.airtable.com/v0/${BASE_ID}/${TABLE_NAME}?pageSize=100" \
-H "Authorization: Bearer ${AIRTABLE_KEY}")
Metadata
Not sure this is the right skill?
Describe what you want to build — we'll match you to the best skill from 16,000+ options.
Find the right skillPaste this into your clawhub.json to enable this plugin.
{
"plugins": {
"official-mrgoodb-airtable": {
"enabled": true,
"auto_update": true
}
}
}Related Skills
adobe
Access Adobe Creative Cloud APIs - Photoshop, Lightroom, PDF Services, and Firefly AI. Automate creative workflows.
xero
Manage Xero accounting - invoices, contacts, bank transactions, and reports via Xero API.
statuspage
Manage Statuspage incidents and components via API. Update status and communicate outages.
fly-machines
Deploy and manage Fly.io Machines - create, start, stop, delete, and monitor containerized apps. Use for deploying containers, managing app instances, and orchestrating multi-tenant workloads.
gamma
Create presentations, documents, social posts, and websites using Gamma's AI API. Use when asked to create slides, presentations, decks, documents, or web content via Gamma.