Skip to main content
GET
/
v1
/
retrieve-simulation-result
/
{test_result_id}
Retrieve Simulation Result
curl --request GET \
  --url https://api.getbluejay.ai/v1/retrieve-simulation-result/{test_result_id} \
  --header 'X-API-Key: <x-api-key>'
{
  "simulation_result": {
    "id": 123,
    "digital_human_id": 123,
    "result": {},
    "duration": 123,
    "start_time": "2023-11-07T05:31:56Z",
    "end_time": "2023-11-07T05:31:56Z",
    "custom_metrics": {},
    "status": "<string>",
    "latency": {},
    "events": [
      {
        "title": "<string>",
        "start_offset_ms": 123,
        "description": "<string>",
        "end_offset_ms": 123,
        "tags": [
          "<string>"
        ],
        "metadata": {}
      }
    ],
    "transcript_url": "<string>",
    "audio_url": "<string>",
    "evaluations": [
      {
        "agent_speak_percentage": 123,
        "avg_agent_latency": 123,
        "id": "<string>",
        "created_at": "2023-11-07T05:31:56Z",
        "hallucination": true,
        "hallucination_reasoning": "<string>",
        "redundancy": true,
        "redundancy_reasoning": "<string>",
        "latency": {
          "avg_agent_latency": 0,
          "max_agent_latency": 0,
          "p50_agent_latency": 0,
          "p90_agent_latency": 0,
          "p95_agent_latency": 0,
          "p99_agent_latency": 0
        },
        "filler_ignored_latency": {
          "avg_filler_ignored_latency": 0,
          "p50_filler_ignored_latency": 0,
          "p90_filler_ignored_latency": 0,
          "p95_filler_ignored_latency": 0,
          "p99_filler_ignored_latency": 0
        },
        "num_turns": 123,
        "call_summary": "<string>",
        "custom_evals": [
          "<unknown>"
        ],
        "custom_evals_success_rate": 123,
        "goal_success": true,
        "goal_reasoning": "<string>",
        "pronunciation_score": 123,
        "pronunciation_reasoning": "<string>",
        "sentiment_label": "<string>",
        "sentiment_score": 123,
        "sentiment_scores": {},
        "custom_metrics": [
          {
            "name": "<string>",
            "description": "<string>",
            "response_type": "<string>",
            "response_value": "<string>",
            "reasoning": "<string>",
            "min_value": 123,
            "max_value": 123,
            "category": "<string>",
            "tags": [
              "<string>"
            ],
            "scoring_guidance": "<string>",
            "enum_options": [
              "<string>"
            ]
          }
        ]
      }
    ],
    "tool_calls": [
      {
        "name": "<string>",
        "expected": [
          {
            "parameters": {},
            "output": "<unknown>"
          }
        ],
        "actual": [
          {
            "parameters": {},
            "output": "<unknown>",
            "start_offset_ms": 123
          }
        ]
      }
    ]
  },
  "status": "200"
}
Integration Prompt for AI Agents
# Bluejay — Testing & Monitoring Platform for Conversational AI Agents

You are a senior backend engineer integrating the Bluejay API. Think step-by-step: first understand the endpoint, then plan the integration, then implement with minimal changes.

## Retrieve Simulation Result — GET /v1/retrieve-simulation-result/{test_result_id}

> **What this endpoint does:** Retrieve a single test result and its associated custom metrics. Args: test_result_id: the ID of the test result to retrieve. Returns: the test result along with its custom metric results.

**Endpoint:** GET `https://api.getbluejay.ai/v1/retrieve-simulation-result/{test_result_id}`
**Auth:** `X-API-Key` header

### Required Parameters
| Name | Type | Description |
|------|------|-------------|
| test_result_id | string |  |
| X-API-Key | string | API key required to authenticate requests. |

### Example
**Simple GET:**
```python
import requests

def retrieve_simulation_result(test_result_id: str, api_key: str) -> dict:
    url = f"https://api.getbluejay.ai/v1/retrieve-simulation-result/{test_result_id}"
    headers = {"X-API-Key": api_key}
    response = requests.get(url, headers=headers)
    response.raise_for_status()
    return response.json()
```

### Constraints
- Minimal changes — only add/change files needed for this integration.
- Match existing codebase patterns (naming, file structure, error handling).
- Include error handling for 422: Validation Error.

### Integration Checklist
Before writing code, verify:
1. Which module/service owns this API domain in the codebase?
2. What HTTP client and error-handling patterns does the project use?
3. Are there existing types/interfaces to extend?

Then implement the integration, export it, and confirm it compiles/passes lint.
Retrieves a single simulation result and its associated custom metrics by test_result_id.

Headers

X-API-Key
string
required

API key required to authenticate requests.

Path Parameters

test_result_id
string
required

Response

Successful Response

simulation_result
SimulationResultResponse · object
required

The requested simulation result

status
string
default:200

Status of the response