API Reference
GET /v1/requests/:id
Retrieve details of a past analysis request by ID.
Retrieve the full details of a previously submitted analysis request, including vehicle identification results, metrics, and error information.
Endpoint
GET https://api.ruedalens.com/v1/requests/:id
Authentication
Requires a valid API key in the Authorization header. You can only retrieve requests that belong to your account.
Authorization: Bearer rdlns_sk_...
Path Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
id | string | Yes | The unique request identifier (returned as requestId from the analyze endpoint) |
Example Request
curl https://api.ruedalens.com/v1/requests/cmlecazi4000111qu590n9v6i \ -H "Authorization: Bearer rdlns_sk_your_api_key_here"
Response
Success — 200 OK
{ "success": true, "data": { "id": "cmlecazi4000111qu590n9v6i", "status": "success", "createdAt": "2026-02-08T22:54:03.962Z", "result": { "vehicles": [ { "confidence": 0.98, "brand": "Lexus", "model": "NX", "trims": ["300h", "300"], "start_year": 2017, "end_year": 2021, "current_tire": { "width": 225, "aspect_ratio": 60, "diameter": 18, "load_index": "100", "speed_index": "H", "structure": "R", "runflat": null, "xl": null, "3pmsf": null, "tire_size": "225/60R18 100H" }, "oe_front_tire": { "width": 225, "aspect_ratio": 60, "diameter": 18, "load_index": "100", "speed_index": "H", "structure": "R", "runflat": false, "xl": false, "tire_size": "225/60R18 100H" }, "oe_rear_tire": { "width": 225, "aspect_ratio": 60, "diameter": 18, "load_index": "100", "speed_index": "H", "structure": "R", "runflat": false, "xl": false, "tire_size": "225/60R18 100H" }, "pressure_front": 2.2, "pressure_rear": 2.2 } ] }, "metrics": { "executionTimeMs": 10364 }, "vehicle": { "brand": "Lexus", "model": "NX", "trims": ["300h", "300"], "year": "2017", "tireSize": "225/60R18 100H", "confidence": 0.98 }, "error": null }, "timestamp": "2026-02-22T10:30:00.000Z" }
Response Fields
| Field | Type | Description |
|---|---|---|
success | boolean | Whether the retrieval was successful |
data.id | string | Unique request identifier |
data.status | string | Request status: "success" or "error" |
data.createdAt | string | ISO 8601 timestamp of when the request was originally submitted |
data.result | object|null | Full analysis result (same structure as data from POST /v1/analyze). null if the request failed |
data.metrics.executionTimeMs | number | Server-side processing time in milliseconds |
data.vehicle | object|null | Denormalized vehicle summary for convenience. null if no vehicle was identified |
data.vehicle.brand | string|null | Vehicle manufacturer |
data.vehicle.model | string|null | Vehicle model |
data.vehicle.trims | string[] | Available trim levels |
data.vehicle.year | string|null | First production year for this generation |
data.vehicle.tireSize | string|null | Formatted tire size string |
data.vehicle.confidence | number|null | AI confidence score (0.0 to 1.0) |
data.error | object|null | Error details if the request failed. null on success |
data.error.code | string | Error code (e.g., "RECOGNITION_FAILED") |
data.error.message | string | Human-readable error description |
timestamp | string | ISO 8601 timestamp of this response |
Result vs. Vehicle
The result field contains the complete analysis output (identical to the data field from POST /v1/analyze), while vehicle provides a flat summary of the top match for quick access. Use result when you need full details (all vehicle matches, tire specs, pressure data) and vehicle for simple lookups.
Use Cases
This endpoint enables several common integration patterns:
- Asynchronous retrieval: Store the
requestIdfrom an analyze call and retrieve results later - Auditing: Programmatically review past analysis results for quality assurance
- Dashboard building: Fetch historical request data to display in custom dashboards
- Debugging: Reference specific request IDs when investigating issues
Data retention
Request data is retained for 30 days after submission. Requests older than 30 days may return a 404 response.
Error Responses
401 Unauthorized
Returned when the API key is missing or invalid.
{ "success": false, "error": { "code": "MISSING_API_KEY", "message": "Missing API key. Please provide a valid API key in the Authorization header." }, "timestamp": "2026-02-22T10:30:00.000Z" }
404 Not Found
Returned when the request ID does not exist or does not belong to your account.
{ "success": false, "error": { "code": "NOT_FOUND", "message": "Request not found." }, "timestamp": "2026-02-22T10:30:00.000Z" }
Billing
This endpoint does not count toward your monthly quota. Only POST /v1/analyze requests consume quota.