We can only update the name and description of a field directly at this time I’m afraid (https://airtable.com/developers/web/api/update-field)
We can create new field options by updating records directly with ‘typecast: true’ though (https://airtable.com/developers/web/api/update-record), and so a workaround could be that you create a record with that value and then delete the record, or update a record with that value then clear it
Here’s the URL one might use and the payload if we were creating a new option by updating a record:
https://api.airtable.com/v0/{baseId}/{tableIdOrName}/{recordId}
{
"fields": {
"Select": "New value"
},
"typecast": true
}
Hello,
You're on the right track with using HTTP calls to interact with the Airtable API. However, you cannot directly update the structure of your Airtable base (like adding a new choice to a single-select or multi-select field) using the standard record update API.
The Airtable API allows you to update the values of existing fields for specific records. To modify the available options within a single-select or multi-select field, you would typically need to use the Airtable API's Schema endpoint, which has different authentication and usage patterns compared to the data/record endpoint.
Here's a breakdown of what you CAN do with the standard record update API and how to approach your specific need:
What you CAN do with the Record Update API:
You can update the value of a single-select or multi-select field for an existing record. For example:
Single Select: If your "singleselect" field already has options like "Option A", "Option B", you can update a record to have the value "Option A" or "Option B".
Multi Select: If your "multiselect" field has options like "Choice 1", "Choice 2", "Choice 3", you can update a record to have the values "Choice 1", "Choice 3"]
Best Regards
The answer above from @laura563 is missing the key piece of information that you can’t add brand new options to a field without enabling the “typecast” function. (In Make, they call this option “Smart Links”.)
- ScottWorld, Expert Airtable Consultant
Hey there thank you.
Got this fixed through using this
{
"records": :
{
"fields": {
"Name": "Ferry Building",
"Visited": false,
"Visited_testsing": "test4"
}
}
],
"typecast": true
}