Skip to main content
A Transcription represents a single audio or video processing job. Its fields evolve as the job moves through its lifecycle.

Fields

FieldTypeDescription
transcription_idstringUnique identifier (UUID)
statusstringCurrent status: IN_PROGRESS, COMPLETED, FAILED — see Status Lifecycle
configuration_idstringID of the configuration used
configuration_tagstringTag of the configuration used
evaluator_idstringID of the evaluator used (null if none)
evaluator_tagstringTag of the evaluator used (null if none)
participant_idstringID of the participant associated (null if none)
participant_tagstringTag of the participant associated (null if none)
namestringCustom name (null if not set) — normalized to ASCII on creation
groupstringReview group (null if not set) — see Groups
durationnumberDuration in seconds
detailsobjectFull results — see Details Object

Status Lifecycle

1

IN_PROGRESS

The audio is being transcribed and analyzed.
2

COMPLETED

Processing finished. The details object contains all results.
3

FAILED

Processing failed. The details object contains message, code, and failed_at.

Groups

Use group to manage the review workflow for each transcription.
ValueDescription
PENDING_REVIEWNeeds manual review
UNDER_REVIEWCurrently being reviewed
ARCHIVEDCompleted and archived
nullNo group assigned
New transcriptions start with group = null. The typical workflow progression is: nullPENDING_REVIEWUNDER_REVIEWARCHIVED.
To remove a group, pass "" (empty string) as the group value when calling /update-transcription-group.

Details Object

The details object is always present but its structure depends on status.

When COMPLETED

FieldTypeDescription
languagestringDetected language code (see Supported Languages)
num_speakersnumberNumber of unique speakers identified
created_atstringISO 8601 — submission timestamp
completed_atstringISO 8601 — when processing finished
summaryobjectAI-generated summary (null if disabled in the configuration) — see Summary
conversationobjectFull transcript split into speaker segments — see Conversation
fieldsobjectExtracted structured data (null if no extraction fields configured) — see Fields (Extraction)
evaluationobjectQuality evaluation result (null if no evaluator was used) — see Evaluation

When FAILED

FieldTypeDescription
messagestringHuman-readable error description
codenumberInternal error code
failed_atstringISO 8601 — when the failure occurred

Conversation

details.conversation.segments is an array of speaker-separated transcript segments.
FieldTypeDescription
textstringTranscribed text for this segment
speakerstringSpeaker label (e.g. SPEAKER_00, SPEAKER_01)

Summary

details.summary is an object with the following field.
FieldTypeDescription
summarystringAI-generated summary text

Fields (Extraction)

details.fields.fields is an array of extracted values corresponding to the configuration’s extraction_fields.
FieldTypeDescription
namestringField name matching the configured extraction field
valueanyExtracted value — type matches the field’s configured type (string, number, boolean, array)

Evaluation

details.evaluation is present when an evaluator was used.
FieldTypeDescription
scorenumberOverall quality score (0–100)
critical_failbooleanWhether a strict criterion was triggered
statusstringPENDING, COMPLETED, or FAILED
breakdownobjectDetailed per-criterion analysis — see Breakdown

Breakdown

FieldTypeDescription
evaluator_idstringID of the evaluator used
evaluator_tagstringTag of the evaluator used
generated_atstringISO 8601 — when the evaluation was generated
language_usedstringLanguage used for evaluation
final_scorenumberFinal score (same as score)
critical_fail_triggeredbooleanWhether a strict criterion was triggered
summary_feedbackstringOverall narrative feedback (markdown)
resultsarrayPer-criterion results — see below

Criterion Results (breakdown.results)

FieldTypeDescription
criteria_idstringID of the criterion
namestringName of the criterion
typestringCriterion type: boolean, scale, or strict
max_weightnumberMaximum score this criterion can contribute
score_raw_ainumberRaw AI score (0 or 1 for boolean; 1–5 for scale)
score_obtainednumberActual score contribution to the total
statusstringPASS or FAIL
reasoningstringAI’s reasoning for this result
quotestringRelevant excerpt from the transcript (null if not applicable)
feedbackstringActionable improvement feedback (null if not applicable)

Example

{
  "transcription_id": "926f3be9-143e-4df6-8b10-64e4d781e203",
  "status": "COMPLETED",
  "configuration_id": "3b8006ad-b1a2-464b-9a6b-79dcd45c9433",
  "configuration_tag": "Pitch Analysis DEMO",
  "name": null,
  "group": null,
  "duration": 609.2,
  "participant_id": "580cc0e1-3a60-49d9-8e20-1745252f0aae",
  "evaluator_id": "2abb5563-dd64-47bb-bb17-94252e168b06",
  "participant_tag": "Sarah Johnson",
  "evaluator_tag": "Customer Service Standard",
  "details": {
    "language": "en",
    "num_speakers": 2,
    "created_at": "2025-01-15T10:00:00.123Z",
    "completed_at": "2025-01-15T10:03:45.789Z",
    "summary": {
      "summary": "A support call where the customer reported a billing issue that was resolved by the agent."
    },
    "conversation": {
      "segments": [
        { "text": "Good morning, this is Sarah from support.", "speaker": "SPEAKER_00" },
        { "text": "Hi, I have an issue with my subscription.", "speaker": "SPEAKER_01" }
      ]
    },
    "fields": {
      "fields": [
        { "name": "sentiment", "value": "POSITIVE" },
        { "name": "next_action", "value": "Send confirmation email" }
      ]
    },
    "evaluation": {
      "score": 90,
      "critical_fail": false,
      "status": "COMPLETED",
      "breakdown": {
        "evaluator_id": "2abb5563-dd64-47bb-bb17-94252e168b06",
        "evaluator_tag": "Customer Service Standard",
        "generated_at": "2025-01-15T10:03:44.000Z",
        "language_used": "en",
        "final_score": 90.0,
        "critical_fail_triggered": false,
        "summary_feedback": "Overall strong performance. The agent greeted the customer correctly and resolved the issue.",
        "results": [
          {
            "criteria_id": "c1d2e3f4-...",
            "name": "Greeting",
            "type": "boolean",
            "max_weight": 20.0,
            "score_raw_ai": 1,
            "score_obtained": 20.0,
            "status": "PASS",
            "reasoning": "The agent opened with the standard greeting phrase.",
            "quote": "SPEAKER_00: Good morning, this is Sarah from support.",
            "feedback": null
          },
          {
            "criteria_id": "d2e3f4g5-...",
            "name": "No offensive language",
            "type": "strict",
            "max_weight": 0.0,
            "score_raw_ai": 1,
            "score_obtained": 0.0,
            "status": "PASS",
            "reasoning": "No inappropriate language was detected throughout the call.",
            "quote": null,
            "feedback": null
          }
        ]
      }
    }
  }
}

Supported Languages

The following languages are supported for transcriptions, summaries (summary_language), and analytics reports (analytics_language).
Use "df" for automatic language detection. For summary_language, the summary is generated in the detected language of each individual file. For analytics_language, the report uses the majority language across all files in the configuration.
LanguageISO Code
Afrikaansaf
Albaniansq
Arabicar
Azerbaijaniaz
Basqueeu
Belarusianbe
Bengalibn
Bosnianbs
Bulgarianbg
Catalanca
Chinesezh
Croatianhr
Czechcs
Danishda
Dutchnl
Englishen
Estonianet
Finnishfi
Frenchfr
Galiciangl
Germande
Greekel
Gujaratigu