<obDisclaimer>
I've been an Airtable user for all of half an hour, and everything I know about JSON has come from the KM Wiki, so there's probably better ways to do this. A large number (100s) of returned records would be better processed in a JXA Action and not one-by-one in a "For Each", for example.
</obDisclaimer>
Anyone who wants to play along at home can set up a free Airtable account at https://www.airtable.com -- AFAIK, API keys are available with a free account, but I got bumped on first sign-in to an Enterprise that I didn't even know my organisation had!
This demo assumes you have an Airtable app (mine's called "KM Demo") with a table called "people", and you want to get the value of the field "Name" for all records:
The easiest way to get the values needed for the curl command is to go to Airtable Web API, where you can select your app and see example commands complete with table and field IDs for that app.
You can create your API token at https://airtable.com/create/tokens.
For convenience the app ID, table, field and API keys are set in the first four, green, Actions of the demo macro and those variables used in the shell script. Copy the values from the app's API page and they'll be URL encoded for you if needed -- that saves us from having to do it in the macro 
The JSON returned will be the "compact" version of:
{
"records" : [
{
"createdTime" : "2026-07-16T10:27:55.000Z",
"fields" : {
"Name" : "Alice"
},
"id" : "rec5Lw3wZxDkRedb9"
},
{
"createdTime" : "2026-07-16T10:27:55.000Z",
"fields" : {
"Name" : "Bob"
},
"id" : "recalqPAiFXhZeo41"
},
{
"createdTime" : "2026-07-16T10:27:55.000Z",
"fields" : {
"Name" : "Charles"
},
"id" : "recddQpdWORjHwHZR"
},
{
"createdTime" : "2026-07-16T10:27:55.000Z",
"fields" : {
"Name" : "Diana"
},
"id" : "recivuyTfj3oTYvtp"
}
]
}
...but the "pretty" format should help you see how:
%JSONValue%Local_theJSON.records[Local_i].fields.Name%
...extracts the value of Name for each increment of i.
Enough! Demo:
Airtable Column to KM Prompt.kmmacros (6.9 KB)
Image