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
smartsheet
Manage sheets, rows, and columns via Smartsheet API. Automate spreadsheet workflows.
onelogin
Manage users and apps via OneLogin API. Handle SSO and identity management.
google-sheets
Read and write Google Sheets data. Create spreadsheets, update cells, and manage worksheets via Sheets API.
postmark
Send transactional emails with high deliverability via Postmark API. Manage templates, track bounces, and view analytics.
loom
Manage Loom video recordings - list, share, and get analytics via Loom API.