Skip to content
Proaction
TelematicsAPI v1
DocumentationVehicle images

Enrichment / API reference

Vehicle images

Read cached vehicle enrichment through the unified API, with independent availability for each product.

GET/v1/connections/{id}/vehicles/{vehicleId}/images

Authentication: Bearer consumer API key with an explicit connection grant.

Preview contract. Availability depends on the deployed release, authorized connection and asset.

How to use this endpoint

  • Implementation pending rollout. These routes require migration 008 and reviewed API deployment; enrichment starts only after this connection is explicitly enabled. Public docs deployment alone does not enable an API route.
  • Uses the same connection-scoped consumer key as telemetry. A VIN is an identity attribute, never permission to access another fleet's data.
  • New VINs automatically enter a background queue. GET reads cached results without calling suppliers. pending means work remains; missing means a completed lookup found no data; failed and blocked include a safe error code.
  • images: data.images contains url, kind and source. vin_listing means dealer/auction photos associated with this VIN; it does not establish current condition. Generic stock-image support is not verified yet. No image is a normal missing result.
  • Specifications and factory build are independently enabled after account entitlement is confirmed. Missing or malformed VINs return missing_vin or invalid_vin without making a supplier call. Profiles are scoped to the asset's current VIN.
  • fetchedAt is enrichment retrieval time, not a live vehicle observation. No periodic paid refresh is enabled; supplier corrections or image changes require an operator-managed refresh until a refresh API is added.

Parameters

NameWhereRequiredType and behavior
idpathYesstring
vehicleIdpathYesstring

Request example

bash
curl "$TELEMATICS_ORIGIN/v1/connections/$CONNECTION_ID/vehicles/$VEHICLE_ID/images" \
  --header "Authorization: Bearer $TELEMATICS_CONSUMER_KEY"

Response fields

HTTP 200 returns ImagesSection. Fields listed as required are guaranteed by this contract; optional fields may be absent.

FieldTypeRequired
statusdisabled | pending | available | missing | failed | blocked | missing_vin | invalid_vinYes
dataVehicleImages | nullYes
sourcestringYes
adapterVersionstring | nullYes
fetchedAtstring | nullYes
errorCodestring | nullYes
vehicleIdstringYes
vinstring | nullYes
product"images"Yes

Nested field shapes and constraints are defined in the OpenAPI contract. For latest telemetry values, see normalized units and availability.

Response example

Synthetic values; this is a shape example, not a live customer response.

json
{
  "vehicleId": "asset-001",
  "vin": "1TEST000000000001",
  "product": "images",
  "status": "available",
  "data": {
    "images": [
      {
        "url": "https://images.example.test/asset.jpg",
        "kind": "vin_listing",
        "source": "example-source"
      }
    ]
  },
  "source": "auto.dev",
  "adapterVersion": "1.0.0",
  "fetchedAt": "2026-10-01T00:00:00Z",
  "errorCode": null
}

Errors and retries

HTTP statusMeaning
401Consumer authentication denied
404Resource missing or connection access denied
503Service or database unavailable

Errors return {"error":"reason_code"}. Honor Retry-After when a 429 includes it. Permission and provider failures never become zero-valued telemetry. Connection health and reading status provide separate signals.

Response schema
{
  "type": "object",
  "properties": {
    "status": {
      "type": "string",
      "enum": [
        "disabled",
        "pending",
        "available",
        "missing",
        "failed",
        "blocked",
        "missing_vin",
        "invalid_vin"
      ]
    },
    "data": {
      "anyOf": [
        {
          "$ref": "#/components/schemas/VehicleImages"
        },
        {
          "type": "null"
        }
      ]
    },
    "source": {
      "type": "string"
    },
    "adapterVersion": {
      "type": [
        "string",
        "null"
      ]
    },
    "fetchedAt": {
      "type": [
        "string",
        "null"
      ],
      "format": "date-time"
    },
    "errorCode": {
      "type": [
        "string",
        "null"
      ]
    },
    "vehicleId": {
      "type": "string"
    },
    "vin": {
      "type": [
        "string",
        "null"
      ]
    },
    "product": {
      "const": "images"
    }
  },
  "required": [
    "status",
    "data",
    "source",
    "adapterVersion",
    "fetchedAt",
    "errorCode",
    "vehicleId",
    "vin",
    "product"
  ]
}

← API overview · Download OpenAPI

Proaction TelematicsOne API for your fleet data.

Search documentation