Working with Airtable’s API as a developer has been frustrating because users want to rename columns and tables, but every time they do it breaks integration code. They are either restricted in the changes they can make to their user interface, or dependent on developers to make changes simultaneously.
Unique IDs for fields and tables have started to be introduced, but they cannot be used in queries and data is returned with the field names not the ids, so they can’t be used consistently in code. More importantly they are meaningless to anyone reading them, so they require more code and more complex abstractions and make the code harder to understand.
This problem has been effectively solved in other systems for years using API names and display names. The API name is a valid JSON key that is used in the API. When the display name (used in the UI) is changed the API name stays the same, so no code breaks. This would substantially reduce the fragility and frustration of working with Airtable through the API.