Documentation Index
Fetch the complete documentation index at: https://docs.vocobase.com/llms.txt
Use this file to discover all available pages before exploring further.
Post-call Extraction
Post-call extraction lets you define a Custom Analysis schema (a free-form prompt + typed keys) once on the agent. After every completed call, the platform runs a structured-output LLM over the transcript and ships the extracted values inline in the samesession.completed webhook — no second webhook to handle.
Partner API (v2) only for the endpoints below.
1. Define the Custom Analysis schema
extraction_config: null to disable extraction.
Supported types
| Type | Maps to | Notes |
|---|---|---|
string | text | Default. |
number | float | |
integer | int | |
boolean | true / false | |
array | string[] | v1: array of strings. |
date | ISO 8601 date | YYYY-MM-DD |
datetime | ISO 8601 timestamp | YYYY-MM-DDTHH:MM:SSZ |
null for that key so partners receive a consistent object shape.
2. Receive results in the webhook
After every completed call where the agent has anextraction_config, Vocobase runs extraction and ships the result inline in session.completed:
3. Read results via the API
extraction object on data.session.extraction. Useful for partners that prefer polling over webhooks, or for backfilling values into a CRM after the fact.
4. Replay extraction against past calls
Edited the prompt or added a new key? Backfill any past session by replaying the extractor:dry_run: true returns the values without persisting and without re-firing the partner webhook (useful for prompt iteration). The replay always uses the agent’s current extraction_config, not the config at original-call time. Returns 400 when the agent has no extraction_config defined.
Failure semantics
Extraction failures never block webhook delivery. Thesession.completed payload always ships, with extraction.status indicating outcome:
| Status | Meaning |
|---|---|
success | Extraction completed; values is present and typed per keys. |
failed | Extraction could not be completed; error field describes what broke. |
skipped | No transcript available (e.g., no-answer call, instant disconnect). |
status === 'success'; partners that just need transcript + recording can ignore the field entirely.
Next steps
Pre-call Variables
Template the agent’s prompt and greeting with per-call values via
{{name}} placeholders.Webhook Payloads
Full reference for the
session.completed payload, including the extraction block.