---
title: "Read the telemetry of a single request"
method: GET
path: "/api/v1/requests/{requestId}"
tags: ["Discovery"]
---

# Read the telemetry of a single request

`GET /api/v1/requests/{requestId}`

## Request

- Base URL: `https://legal.nexusquantum.legal`
- URL: `https://legal.nexusquantum.legal/api/v1/requests/{requestId}`
- Auth: HTTP bearer

Returns the telemetry record (`api_usage_stats`) for a `request_id`. The id is CLIENT-SUPPLIED (echo of the `X-Request-Id` header) and therefore NOT unique across tenants, so the query is ALWAYS scoped to the keys the caller owns:
- **child**: its own `api_key_id` only.
- **master**: the key set of its organization.
- **solo/legacy**: the keys of the caller's own `user_id`.

The MOST RECENT owned row (`created_at DESC`) is returned as the main object, with `occurrences` = number of owned matches. Uniform 404 (anti-enumeration): a nonexistent `request_id` and one that «exists but is not yours» return exactly the same `NOT_FOUND`, so one tenant cannot probe another's ids.

## Path parameters

- `requestId` string, required

## Response `200`

Telemetry record (most recent owned match).

- RequestRecord: Telemetry of one request read from `api_usage_stats`, scoped to the caller's own keys (see `GET /api/v1/requests/{requestId}`).
  - `request_id` string, required: Request identifier (echo of `X-Request-Id`).
  - `endpoint` string, required
  - `status_code` integer, required
  - `ok` boolean, required: status_code < 400.
  - `latency_ms` integer, nullable
  - `model` string, nullable: Label of the engine that ANSWERED, not a stable model identifier. It is the chain's own label — 'DeepSeek V4-Pro', 'Opus 4.8 · OpenRouter' — or, when the firm brings its own engine, that engine's model id. In mode=deep it is composed as '<analyst>+<auditor>'. `unknown` means nobody could be named: the value is never guessed. Under partner or neutral branding it is replaced by a neutral label. Do NOT key logic on this string: which engine answers is a deployment decision and the chain falls back on its own.
  - `provider_id` string, nullable: Id of the BYO provider (llm_provider_configs.id) that served the request; null = platform chain. Additive (v1.30.0).
  - `routing_policy` 'own_only' | 'own_then_platform' | 'platform', nullable: Effective routing policy. Additive (v1.30.0).
  - `error_code` string, nullable
  - `tokens_used` integer, nullable
  - `input_chars` integer, nullable
  - `api_key_id` string, nullable
  - `key_prefix` string, nullable: Prefix of the matching key (join with `api_keys`).
  - `created_at` string, date-time, required
  - `occurrences` integer, required: Number of your own rows sharing this `request_id`.
  - `requestId` string: Id of this endpoint call itself (`X-Request-Id` header).

## Other responses

- `401`: INVALID_API_KEY.
- `404`: NOT_FOUND — no row for that `request_id`, or no row owned by the caller (indistinguishable by design).
- `429`: RATE_LIMITED — API key/organization RPM exceeded.

---

[API](https://skmtc.dev/nexusquantum/apis/nexus-legal-api.md) · [All operations](https://skmtc.dev/nexusquantum/apis/nexus-legal-api/llms.txt) · [OpenAPI document](https://skmtc.dev/nexusquantum/apis/nexus-legal-api/revisions/4084d8d4eb0b?raw)
