Skip to main content
An uploaded conversation is a production voice call or chat submitted to Coval for evaluation. The name describes its source, not its file format: conversations submitted through the UI, API, CLI, SDK, or an integration are all uploaded conversations.

Submit a conversation

Send a post-call transcript with optional audio and metadata. Transcript metrics begin after submission; audio metrics begin when audio is available.

Audio channels

  • Stereo recommended: channel 0 is the agent and channel 1 is the user, so roles are assigned deterministically.
  • Mono supported: speaker roles are inferred from the transcript and may be less reliable.
See Uploading Conversations for accepted transcript and audio formats.

Evaluate production behavior

Metrics can be selected explicitly, applied by rules, or inherited from your organization’s default uploaded-conversation metrics. Send OpenTelemetry traces when the behavior you need to evaluate is not present in the transcript. Uploaded conversations can be searched in Trace Search, charted in dashboards, and added to Human Review. A production failure can also become a test case so future simulated conversations catch the same regression before release.

Filter uploaded conversations

On the Uploaded Conversations page, open the filter menu to narrow the list by agent, tags, metric results, or custom metadata. For metadata filters, the Key and Value fields suggest existing values from your workspace as you type; you can still enter a key or value by hand. Choose Exact match or Contains for the value, then add the filter. Changing the key clears the value, since values are suggested for the selected key.

Rerun metrics

To apply updated metrics to historical conversations:
  1. Open Uploaded in the sidebar.
  2. Select one or more rows.
  3. Choose Rerun Metrics.
  4. Select the metrics and confirm.
Rerunning metrics evaluates the existing transcript, audio, and traces. It does not submit or simulate the conversation again. Rerunning a metric adds a new result rather than overwriting the old one; the conversation’s metrics list returns the most recent result for each metric, and passing include_superseded=true to the list metrics endpoint returns the full history.

See also