Airtable · sdk · fg-0436

Renaming an Airtable field breaks integration code that reads fields by name

Field silently reads as undefined after someone renames a column

Verified 2026-10-15 · Confirmed by 0 builders · Trust 50/100

Cause

Responses are keyed by field name by default, so any rename in the UI changes the keys your code reads. The REST API can key by field ID, but airtable.js only passes returnFieldsByFieldId through select().

Fix

Read and write by field ID. In airtable.js, use select() with returnFieldsByFieldId, or call base.makeRequest for single-record reads.

Apply

const rows = await base("tblXXXXXXXXXXXXXX").select({ returnFieldsByFieldId: true }).all();
const email = rows[0].fields["fldXXXXXXXXXXXXXX"];

Affects: Airtable Web API; airtable.js 0.12.2 and earlier

Sources

Have your agent know this before it fails

claude mcp add --transport http footgun https://getfootgun.com/api/mcp