---
title: "Retrieve Simulation Result V2"
method: GET
path: "/v2/retrieve-simulation-result/{test_result_id}"
tags: ["Retrieve Simulation Results v2"]
---

# Retrieve Simulation Result V2

`GET /v2/retrieve-simulation-result/{test_result_id}`

## Request

- Base URL: `https://api.getbluejay.ai`
- URL: `https://api.getbluejay.ai/v2/retrieve-simulation-result/{test_result_id}`
- Auth: `HTTPBearer` (a scheme the document does not define)

## Path parameters

- `test_result_id` integer, required

## Headers

- `X-Organization-Id` string
- `X-API-Key` string, required

## Response `200`

Successful Response

- SingleSimulationResultResponseV2
  - `simulation_result` SimulationResultResponseV2, required
    - `id` integer, required: ID of the simulation result
    - `digital_human_id` integer, nullable: ID of the digital human associated with the simulation result
    - `result` object, nullable: Result of the simulation run
    - `duration` integer, nullable: Duration of the simulation result in seconds
    - `start_time` string, date-time, nullable: Start time of the simulation run
    - `end_time` string, date-time, nullable: End time of the simulation run
    - `custom_metrics` union: Custom metrics associated with the simulation result
      - object
      - unknown[]
        - unknown
    - `status` string, nullable: Current status of the simulation result
    - `latency` union: Average latency of the simulation run
      - object
      - unknown[]
        - unknown
    - `events` Event[], nullable: Events of the simulation run
      - `title` string, required: Title of the event
      - `start_offset_ms` integer, required: Start offset of the event in milliseconds
      - `description` string, nullable: Description of the event
      - `end_offset_ms` integer, nullable: End offset of the event in milliseconds
      - `tags` string[], nullable: List of tags associated with the event
      - `metadata` object, nullable: Additional metadata associated with the event
    - `transcript` object[], nullable: What was said, in spoken order, read from the database
    - `transcript_url` string, nullable: URL to the transcript file of the simulation run. Only set when the transcript is not stored in the database
    - `audio_url` string, nullable: URL to the audio file of the simulation run
    - `evaluations` EvaluationV2[], nullable: Evaluations of the simulation result
      - `id` string: Unique identifier for the evaluation result
      - `created_at` string, date-time: When this evaluation result was created (defaults to now in UTC)
      - `hallucination` boolean, nullable: Whether the agent exhibited hallucination during the call
      - `hallucination_reasoning` string, nullable: Reasoning behind the hallucination, if applicable
      - `redundancy` boolean, nullable: Whether the agent exhibited redundancy during the call
      - `redundancy_reasoning` string, nullable: Reasoning behind the redundancy, if applicable
      - `agent_speak_percentage` number, nullable, required: Percentage of the call where the agent was speaking
      - `avg_agent_latency` number, nullable, required: Average latency of the agent's responses during the call
      - `latency` Latency
        - `avg_agent_latency` number, nullable: Average latency
        - `max_agent_latency` number, nullable: Maximum latency
        - `p50_agent_latency` number, nullable: 50th percentile latency
        - `p90_agent_latency` number, nullable: 90th percentile latency
        - `p95_agent_latency` number, nullable: 95th percentile latency
        - `p99_agent_latency` number, nullable: 99th percentile latency
      - `filler_ignored_latency` FillerIgnoredLatency
        - `avg_filler_ignored_latency` number, nullable: Average filler ignored latency
        - `p50_filler_ignored_latency` number, nullable: 50th percentile filler ignored latency
        - `p90_filler_ignored_latency` number, nullable: 90th percentile filler ignored latency
        - `p95_filler_ignored_latency` number, nullable: 95th percentile filler ignored latency
        - `p99_filler_ignored_latency` number, nullable: 99th percentile filler ignored latency
      - `num_turns` integer, nullable: Total number of turns taken by the agent during the call
      - `call_summary` string, nullable: Summary of the call, if applicable
      - `custom_evals` union: List of custom evaluations performed during the call
        - unknown[]
          - unknown
        - object
      - `custom_evals_success_rate` number, nullable: Success rate of the custom evaluations performed during the call
      - `goal_success` boolean, nullable: Whether the goal was successfully achieved during the call
      - `goal_reasoning` string, nullable: Reasoning behind the goal success, if applicable
      - `success_criteria_results` unknown[], nullable: Per-bullet grade snapshot [{id, text, passed, reasoning}]
        - unknown
      - `criteria_pass_rate` number, nullable: Share of success-criteria bullets that passed, 0–100
      - `pronunciation_score` number, nullable: Pronunciation score of the agent during the call
      - `pronunciation_reasoning` string, nullable: Reasoning behind the pronunciation score, if applicable
      - `sentiment_label` string, nullable: Overall sentiment label for customer utterances
      - `sentiment_score` number, nullable: Overall sentiment score for customer utterances
      - `sentiment_scores` object, nullable: Per-label sentiment scores for customer utterances
      - `custom_metrics` CustomMetric[], nullable: Custom metrics associated with the evaluation
        - `name` string, required: The name of the custom metric
        - `description` string, required: The description of the custom metric
        - `response_type` string, required: The response type of the custom metric
        - `response_value` string, required: The response value of the custom metric
        - `reasoning` string, nullable: The reasoning of the custom metric
        - `min_value` number, nullable: The minimum value of the custom metric
        - `max_value` number, nullable: The maximum value of the custom metric
        - `category` string, nullable: The category of the custom metric
        - `tags` string[], nullable: The tags of the custom metric
        - `scoring_guidance` string, nullable: The scoring guidance of the custom metric
        - `enum_options` string[], nullable: The enum options of the custom metric
        - `human_edited` boolean, nullable: Whether this metric result was manually overridden by a human
        - `human_response_value` string, nullable: Human-overridden response_value; null when no override applied
        - `human_reasoning` string, nullable: Human-overridden reasoning; null when no override applied
        - `override_reason_code` string, nullable: Structured reason for the latest human override. One of: ai_hallucination, overly_strict_success_criteria, overly_strict_system_prompt, other.
        - `override_notes` string, nullable: Freeform notes from the human reviewer accompanying the latest override
        - `last_edited_by` string, nullable: User id of the most recent human reviewer
        - `last_edited_at` string, date-time, nullable: Timestamp of the most recent human override
      - `human_edited` boolean, nullable: Whether any result in this evaluation was manually overridden by a human
      - `human_goal_success` boolean, nullable: Human-overridden goal_success; null when no override applied
      - `human_goal_reasoning` string, nullable: Human-overridden goal_reasoning; null when no override applied
      - `human_hallucination` boolean, nullable: Human-overridden hallucination verdict; null when no override applied
      - `human_hallucination_reasoning` string, nullable: Human-overridden hallucination reasoning; null when no override applied
      - `human_redundancy` boolean, nullable: Human-overridden redundancy verdict; null when no override applied
      - `human_redundancy_reasoning` string, nullable: Human-overridden redundancy reasoning; null when no override applied
      - `human_pronunciation_score` number, nullable: Human-overridden pronunciation score; null when no override applied
      - `human_pronunciation_reasoning` string, nullable: Human-overridden pronunciation reasoning; null when no override applied
      - `override_goal_reason_code` string, nullable: Reason for the human override of goal_success.
      - `override_goal_notes` string, nullable: Freeform notes from the reviewer for the goal override.
      - `override_hallucination_reason_code` string, nullable: Reason for the human override of hallucination.
      - `override_hallucination_notes` string, nullable: Freeform notes from the reviewer for the hallucination override.
      - `override_redundancy_reason_code` string, nullable: Reason for the human override of redundancy.
      - `override_redundancy_notes` string, nullable: Freeform notes from the reviewer for the redundancy override.
      - `override_pronunciation_reason_code` string, nullable: Reason for the human override of pronunciation_score.
      - `override_pronunciation_notes` string, nullable: Freeform notes from the reviewer for the pronunciation override.
      - `last_edited_by` string, nullable: User id of the most recent human reviewer
      - `last_edited_at` string, date-time, nullable: Timestamp of the most recent human override
      - `predicted_age` number, nullable: Estimated age of the caller in years, from their audio
      - `customer_gender` string, nullable: Predicted gender of the caller: 'male', 'female', or 'indeterminate' when confidence is at or below 0.7
      - `gender_confidence` number, nullable: Confidence 0-1 behind customer_gender; null when the prediction is 'indeterminate'
      - `detected_language` string, nullable: Language detected on the call
      - `language_confidence` number, nullable: Confidence 0-1 behind detected_language
      - `agent_audio_clarity` number, nullable: Agent audio: audio clarity score 0-100 (higher better)
      - `user_audio_clarity` number, nullable: User audio: audio clarity score 0-100 (higher better)
    - `tool_calls` ToolCallComparisonGroup[], nullable: Expected vs actual tool calls grouped by tool name
      - `name` string, required: Tool name
      - `expected` ExpectedToolCallDetail[]: Expected invocations of this tool
        - `parameters` object, nullable: Expected parameters
        - `output` unknown
      - `actual` ActualToolCallDetail[]: Actual invocations of this tool during the simulation
        - `parameters` object, nullable: Parameters passed to the tool
        - `output` unknown
        - `start_offset_ms` integer, nullable: When the tool was called relative to conversation start, in milliseconds
    - `trace_ids` string[], nullable: Trace IDs associated with this simulation result
    - `metrics` MetricResultItem[], nullable: All computed metric results for this conversation (builtin and custom), e.g. answer_latency, duration, avg_agent_latency
      - `metric_id` string, required: Stable UUID of the metric definition
      - `name` string, required: Metric name, e.g. answer_latency, duration, num_turns
      - `type` string, required: Value type: int, float, boolean, enum, qualitative, json, pass_fail or yes_no
      - `value` unknown
      - `max_value` integer, nullable: Upper bound for this result. On success_score: how many criteria existed on this conversation.
      - `not_applicable` boolean: True when the metric could not be computed for this conversation
      - `reasoning` string, nullable: Grader reasoning, when the metric is LLM-judged
    - `criteria_pass_rate` number, nullable: Share of current bullets that passed, 0–100. Computed on read.
    - `criteria` CriterionResultItem[]: Per-bullet pass/fail from the current grade
      - `id` string, required: Stable id of this success-criteria bullet
      - `text` string, required: The criterion text that was graded
      - `passed` boolean, required: Whether this bullet passed
      - `reasoning` string, required: One-line reason for this bullet
  - `credits_used` number, nullable: Credits burned by this simulation result. Null until usage has landed and can be priced.
  - `status` string: Status of the response

## Other responses

- `422`: Validation Error

## Changes

- **2026-10-27** `54d5bd5ab0bc`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/getbluejay/apis/bluejay-api/changes/v2/retrieve-simulation-result/:test_result_id/get.md)

---

[API](https://skmtc.dev/getbluejay/apis/bluejay-api.md) - [All operations](https://skmtc.dev/getbluejay/apis/bluejay-api/llms.txt) - [OpenAPI document](https://skmtc.dev/getbluejay/apis/bluejay-api/revisions/f1b6a6db5733?raw)
