Skip to main content
After every call, Nixflex runs an analysis pass over the transcript. You get a summary, the caller’s sentiment, whether the call succeeded, and any custom fields you’ve defined — automatically. No setup required for the defaults.

What you get out of the box

Every call record has these fields populated automatically: These are the field names on the call record returned by GET /v1/calls/:id and GET /v1/calls. In the webhook payload the same data is delivered under flat, renamed keys: summary, sentiment, successful, and extracted.

Custom data extraction

Beyond the defaults, you define exactly which fields to pull from each call. Set data_extraction_fields on the agent — an array of field definitions:
For each call, the agent reads the transcript and fills in what it can. Missing fields come back as null — the agent won’t invent data.

Field types

Field properties

The result lands in extracted_data:
On the API, your custom fields are keyed under extracted_data. In the webhook payload the same fields arrive under extracted.

When analysis runs

  • Inbound, outbound, and batch calls — all directions, always.
  • Calls with real conversation — if the caller spoke fewer than 2 turns or fewer than 10 words total (hang-ups, voicemail), the AI pass is skipped to save cost. Defaults fall back to a short summary and call_successful: false.
  • Asynchronously, after the call ends — by the time your webhook fires (~60s later), all fields are populated.

How extraction works under the hood

Analysis runs in two stages:
  1. Base analysis — always runs. One AI call returns call_summary, caller_sentiment, call_successful.
  2. Custom extraction — only runs if the agent has data_extraction_fields. A second AI call returns your custom fields.
Both stages use the AI and add roughly $0.001 to the call cost. It’s included in the per-minute price — no extra charge.

Configuring in the dashboard

Open your agent’s Post-Call Data Extraction panel. Add fields with the + Add button — pick a type, give it a name and description, and save. Extracted fields are delivered to your webhook after each call. No code required.

Reading analysis programmatically

Each call object includes the analysis inline — there’s no separate endpoint. See Get call for the full schema, or receive it via webhook.