What the model is told
Find a customer's record in Airtable by the exact email address they give you. Returns at most one record with its record ID, Name and Status. Use the record ID with the update tool. If nothing is returned, tell the customer you could not find a record and ask them to check the address.
Request
POSThttps://api.airtable.com/v0/YOUR_AIRTABLE_BASE_ID/YOUR_AIRTABLE_TABLE/listRecords
Headers
Content-Typeapplication/jsonAuthorizationBearer YOUR_AIRTABLE_TOKEN
Body
{
"filterByFormula": "{Email} = '{{email}}'",
"maxRecords": 1,
"fields": [
"Name",
"Status"
]
}Parameters
email stringThe exact email address to look up.
Engage payload
{
"source": "VOICE_AI",
"tool": {
"id": "c9fb8fde-e661-41e8-9179-426f0bd94a0e",
"type": "HTTP_REQUEST",
"label": "Find Airtable Record by Email",
"name": "find_airtable_record_by_email",
"customName": false,
"description": "Find a customer's record in Airtable by the exact email address they give you. Returns at most one record with its record ID, Name and Status. Use the record ID with the update tool. If nothing is returned, tell the customer you could not find a record and ask them to check the address.",
"parameters": [
{
"name": "email",
"type": "string",
"description": "The exact email address to look up."
}
],
"config": {
"endpoint": {
"method": "POST",
"url": "https://api.airtable.com/v0/YOUR_AIRTABLE_BASE_ID/YOUR_AIRTABLE_TABLE/listRecords"
},
"headers": [
{
"name": "Content-Type",
"value": "application/json"
},
{
"name": "Authorization",
"value": "Bearer YOUR_AIRTABLE_TOKEN"
}
],
"body": "{\n \"filterByFormula\": \"{Email} = '{{email}}'\",\n \"maxRecords\": 1,\n \"fields\": [\n \"Name\",\n \"Status\"\n ]\n}",
"timeout": null
}
}
}IDs are regenerated on every copy.