Rueda Lens

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

ParameterTypeRequiredDescription
idstringYesThe 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

FieldTypeDescription
successbooleanWhether the retrieval was successful
data.idstringUnique request identifier
data.statusstringRequest status: "success" or "error"
data.createdAtstringISO 8601 timestamp of when the request was originally submitted
data.resultobject|nullFull analysis result (same structure as data from POST /v1/analyze). null if the request failed
data.metrics.executionTimeMsnumberServer-side processing time in milliseconds
data.vehicleobject|nullDenormalized vehicle summary for convenience. null if no vehicle was identified
data.vehicle.brandstring|nullVehicle manufacturer
data.vehicle.modelstring|nullVehicle model
data.vehicle.trimsstring[]Available trim levels
data.vehicle.yearstring|nullFirst production year for this generation
data.vehicle.tireSizestring|nullFormatted tire size string
data.vehicle.confidencenumber|nullAI confidence score (0.0 to 1.0)
data.errorobject|nullError details if the request failed. null on success
data.error.codestringError code (e.g., "RECOGNITION_FAILED")
data.error.messagestringHuman-readable error description
timestampstringISO 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 requestId from 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.