curl --request PATCH \
--url https://app.thinnest.ai/api/v1/agents/{id}/post-call \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"summariseCalls": true,
"recordCalls": true,
"collectFields": [
{
"name": "budget",
"type": "number",
"description": "Budget in rupees"
},
{
"name": "interest",
"choices": [
"Hot",
"Warm",
"Cold"
]
}
]
}
'const options = {
method: 'PATCH',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
summariseCalls: true,
recordCalls: true,
collectFields: [
{name: 'budget', type: 'number', description: 'Budget in rupees'},
{name: 'interest', choices: ['Hot', 'Warm', 'Cold']}
]
})
};
fetch('https://app.thinnest.ai/api/v1/agents/{id}/post-call', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://app.thinnest.ai/api/v1/agents/{id}/post-call"
payload = {
"summariseCalls": True,
"recordCalls": True,
"collectFields": [
{
"name": "budget",
"type": "number",
"description": "Budget in rupees"
},
{
"name": "interest",
"choices": ["Hot", "Warm", "Cold"]
}
]
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text){
"agent": "ag_5c4a5f93-2b1e-4d7a-9f60-8e2d1c3b4a71",
"takesCalls": true,
"summariseCalls": true,
"recordCalls": true,
"recordingKeptDays": 49,
"collectFields": [
{
"name": "budget",
"type": "number",
"description": "Budget in rupees",
"choices": null
},
{
"name": "interest",
"type": "text",
"description": null,
"choices": [
"Hot",
"Warm",
"Cold"
]
}
],
"collectMode": "parser"
}Update Post-call Settings
Changes what an agent does after each call; send only what you are changing. collectFields replaces the whole list, and an empty list stops collecting (details already collected are kept). Any other key is refused — the rest of the agent belongs to Update Agent. Answers with the settings as they now stand. A build key may do this.
curl --request PATCH \
--url https://app.thinnest.ai/api/v1/agents/{id}/post-call \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"summariseCalls": true,
"recordCalls": true,
"collectFields": [
{
"name": "budget",
"type": "number",
"description": "Budget in rupees"
},
{
"name": "interest",
"choices": [
"Hot",
"Warm",
"Cold"
]
}
]
}
'const options = {
method: 'PATCH',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
summariseCalls: true,
recordCalls: true,
collectFields: [
{name: 'budget', type: 'number', description: 'Budget in rupees'},
{name: 'interest', choices: ['Hot', 'Warm', 'Cold']}
]
})
};
fetch('https://app.thinnest.ai/api/v1/agents/{id}/post-call', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://app.thinnest.ai/api/v1/agents/{id}/post-call"
payload = {
"summariseCalls": True,
"recordCalls": True,
"collectFields": [
{
"name": "budget",
"type": "number",
"description": "Budget in rupees"
},
{
"name": "interest",
"choices": ["Hot", "Warm", "Cold"]
}
]
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text){
"agent": "ag_5c4a5f93-2b1e-4d7a-9f60-8e2d1c3b4a71",
"takesCalls": true,
"summariseCalls": true,
"recordCalls": true,
"recordingKeptDays": 49,
"collectFields": [
{
"name": "budget",
"type": "number",
"description": "Budget in rupees",
"choices": null
},
{
"name": "interest",
"type": "text",
"description": null,
"choices": [
"Hot",
"Warm",
"Cold"
]
}
],
"collectMode": "parser"
}Authorizations
Your API key (ta_live_…) from Settings → API keys, sent as Authorization: Bearer <key>. Keep it on a server: it can message every customer you have. A key is full, build or read-only; a request its level does not allow is refused with 403.
Headers
Developers only: the customer workspace this request acts in — its org_… id from POST /customers. Leave it out to act in your own workspace.
"org_3fKq9TzQ1mN8vB2xR7cLpA"
Path Parameters
The agent's ag_… id.
"ag_5c4a5f93-2b1e-4d7a-9f60-8e2d1c3b4a71"
Body
The post-call settings to change. At least one; nothing else is accepted.
Response
The agent's post-call settings, after the change.
The agent's ag_… id.
False when the agent takes no calls — the two switches then do nothing.
Writes a short summary after each call.
Records each call.
How long your plan keeps a recording before deleting it.
The details filled from every call.
Show child attributes
Show child attributes
Read only. parser reads the transcript after the call; tool has the agent save the details as it goes. Null when nothing is collected. Chosen in the console on the agent's Actions page.
parser, tool, null