Analysis runs once when a call ends. You can run it again later: on a single call, on calls you select in Call History, or in bulk over a date range. Typical reasons are a new custom field you want filled on old calls, a changed Call Successful prompt, or an analysis that failed because the LLM provider was down.
Which settings are used#
Re-runs and backfills use the extraction settings of the agent version that handled the call: its post_call_analysis_data, post_call_analysis_model and preset prompts. The current transcript and disconnection reason are read again.
- Editing an agent changes its draft version in place. Calls handled by that draft version (for example test calls from the agent editor) pick up your new fields on the next re-run.
- Calls handled by an older published version keep that version's fields. Adding a field to a newer draft does not add it to those calls.
A field you add to a newer draft or version does not reach calls handled by older versions. To get values for a new field on past calls, those calls must have been handled by a version that has the field.
Re-run one call#
In the call detail drawer, click Rerun next to Conversation Analysis. It is enabled only for calls with call_status: ended. The drawer updates with the new result.
The API equivalent is POST /rerun-call-analysis/:call_id. It returns the updated call object, or 400 "Call analysis can only be rerun on ended calls".
A re-run on one call:
- Replaces
call_analysis, and the stored sentiment and success used by filters and charts. - Adjusts the batch's successful count if
call_successfulchanged. - Sends
call_analyzedagain in the background. - Scores the call again in matching AI QA cohorts, runs the post-call workflow, and runs contact field mappings, contact memory and CRM sync.
Contact memory is billed once per conversation, so a re-run does not charge or rewrite memory a second time for the same call.
Re-run selected calls#
In Call history, tick calls and click Re-run analysis in the selection bar (or Actions > Backfill analysis). In the Backfill call analysis dialog, Selected calls is chosen. Run backfill re-runs each selected call the same way as Rerun in the drawer, and reports how many succeeded. Calls that are not ended fail and are counted out.
Backfill a date range#
In the same dialog, choose Every ended call in the date range (up to 500). It uses the page's date range and any Agent filter. Optionally fill Only calls missing these analysis fields with field names separated by commas: only calls where at least one of those custom fields has no value are re-analysed.
From the agent editor, Backfill in Post-Call Extraction opens Backfill from post-call data for that agent:
| Option | Values |
|---|---|
| Calls from the last | 7 days, 30 days, 90 days |
| Only calls missing a field | On by default: skip calls that already have every custom field of the agent |
Run backfill queues the work and shows "Re-analysing N of M calls", or "No calls need backfilling" when every matching call already has its fields.
A backfill:
- Only touches calls with
call_status: ended, newest first. - Runs in the background, one call at a time.
- Does not send webhooks, and does not run contact mappings, memory or CRM sync.
- Does score the calls again in AI QA cohorts and runs the post-call workflow.
Backfill API#
POST /backfill-call-analysis returns 202.
| Field | Type | Default | Description |
|---|---|---|---|
agent_ids |
string[] | [] (all agents) |
Limit to these agents. |
from |
number | none | Calls created at or after this epoch ms. |
to |
number | none | Calls created at or before this epoch ms. |
only_missing |
string[] | [] |
Only calls missing at least one of these custom fields. Empty means every matching call. |
limit |
integer | 500 | 1 to 2000. Calls considered, newest first. |
curl -X POST https://api.tried.com.au/backfill-call-analysis \
-H "Authorization: Bearer $TRIED_API_KEY" \
-H "Content-Type: application/json" \
-d '{"agent_ids":["agent_3f9c0a1b2c3d4e5f6a7b8c9d"],"from":1758240000000,"only_missing":["call_reason"],"limit":1000}'{ "queued": 212, "matched": 640 }matched is how many ended calls fit the filters (up to limit); queued is how many will be re-analysed after only_missing. The response comes back before the work is done. Watch the calls in Call History, or poll get-call, to see results arrive.
Chats#
POST /rerun-chat-analysis/:chat_id re-runs analysis on an ended chat with the chat agent's current settings and sends chat_analyzed again. There is no bulk backfill for chats.
Costs#
Each re-run is a new LLM request to the analysis model's provider. Re-scored AI QA results are not charged again for the same result. See AI QA overview.