canonical: https://jentic.com/apis/mercedes-benz.com/mercedes-benz-diagnostics

# Mercedes Benz Remote Diagnostic Support

The Mercedes-Benz Remote Diagnostic Support API lets authorised third parties pull on-board diagnostic data from a customer's Mercedes-Benz vehicle remotely, on the customer's consent. It returns Diagnostic Trouble Codes (DTCs), DTC snapshots from individual electronic control units (ECUs), ECU readouts, and resource readouts, scoped per vehicleId (VIN/FIN). It is built for partners such as roadside assistance providers and independent workshops who need fault data before sending a technician.

## For AI agents

Pull DTCs, ECU readouts, and DTC snapshots from a Mercedes-Benz vehicle by VIN/FIN across 4 POST endpoints designed for remote workshop diagnosis.

## Scope

Does not handle vehicle control, location, fuel, configuration, or imagery - use for reading DTCs, ECU readouts, and DTC snapshots from a Mercedes-Benz vehicle only.

## Capabilities

- Read all active Diagnostic Trouble Codes from a Mercedes-Benz vehicle by vehicleId
- Retrieve a DTC snapshot for a specific ECU and DTC combination to diagnose a fault
- Pull readouts from a vehicle's electronic control units for deeper analysis
- Fetch resource readouts to inspect raw diagnostic resources from the vehicle
- Power roadside-assistance triage by reading vehicle fault state before a technician arrives

## Use cases

### Roadside assistance pre-arrival triage

Roadside assistance providers (ADAC, ATU, RAC) use the Remote Diagnostic Support API to read a stranded driver's vehicle DTCs before dispatching a technician. POST `/vehicles/{vehicleId}/dtcReadouts` returns the active fault codes, which the dispatcher uses to send the right specialist with the right parts. This shortens the fix time and avoids second visits.

Example prompt: POST `/vehicles/{vehicleId}/dtcReadouts` with the customer's VIN to retrieve active DTCs, then summarise the top fault for the dispatcher.

### Independent workshop remote diagnosis

Authorised independent workshops use the API to pull ECU readouts and DTC snapshots from a customer's Mercedes-Benz vehicle remotely, before the customer drives in. POST `/vehicles/{vehicleId}/ecuReadouts` returns the ECU state and POST `/vehicles/{vehicleId}/ecuId/{ecuId}/dtcId/{dtcId}/dtcSnapshotReadouts` returns the snapshot conditions when a fault was logged, so the workshop can prepare parts and labour ahead of time.

Example prompt: POST `/vehicles/{vehicleId}/ecuReadouts` to capture the ECU state, then for each fault POST `/vehicles/{vehicleId}/ecuId/{ecuId}/dtcId/{dtcId}/dtcSnapshotReadouts` to retrieve snapshot data.

### Fleet health monitoring

Fleet operators with Mercedes-Benz vehicles run scheduled DTC readouts across the fleet to catch faults before they cause downtime. The API's vehicleId scoping lets the operator iterate VINs and consolidate fault data into a single dashboard, prioritising vehicles with active critical DTCs for service.

Example prompt: For each vehicleId in the fleet list, POST `/vehicles/{vehicleId}/dtcReadouts` and aggregate active DTCs, flagging any vehicle with critical fault codes for service scheduling.

### Agent-driven fault triage via Jentic

An AI assistant can use Jentic to triage a customer's car remotely: customer provides VIN, agent calls `/vehicles/{vehicleId}/dtcReadouts`, looks up the most severe DTC, and recommends an action. Jentic handles the OAuth credential and exposes each diagnostic operation by intent, so the agent does not need to manage tokens directly.

Example prompt: Search Jentic for 'read mercedes fault codes', load the /dtcReadouts operation schema, execute it with the customer's vehicleId, and return the active DTCs with severity.

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| POST | `/vehicles/{vehicleId}/dtcReadouts` | Read active DTCs from a vehicle |
| POST | `/vehicles/{vehicleId}/ecuReadouts` | Pull readouts from the vehicle's ECUs |
| POST | `/vehicles/{vehicleId}/ecuId/{ecuId}/dtcId/{dtcId}/dtcSnapshotReadouts` | Retrieve a DTC snapshot for an ECU+DTC pair |
| POST | `/vehicles/{vehicleId}/resourceReadouts` | Read raw resource data from a vehicle |

## Key resources

- **Diagnostic Trouble Codes** — Active DTCs read from the vehicle, scoped per vehicleId
- **DTC Snapshots** — Snapshot conditions captured when a specific DTC was logged on a specific ECU
- **Electronical Control Units** — ECU readouts revealing module state and identifiers
- **Resources** — Raw resource readouts available from the vehicle

## Why Jentic

- **Setup:** Wiring Mercedes-Benz Remote Diagnostic Support by hand means running its OAuth 2.0 client-credentials and customer-token flow and hand-coding each DTC, ECU, and snapshot readout against the tryout host. Through Jentic you install once, import the Remote Diagnostic Support API from the API Directory, store the OAuth client once, and your agent calls it.
- **Permission scoping:** Remote Diagnostic Support puts the vehicle id in the URL path (`/vehicles/{vehicleId}/...`), so a rule can pin your agent to one vehicle: it can read that vehicle's DTC, ECU, and snapshot readouts and nothing else. You choose the operations it may call, and these endpoints only read diagnostic data, so no vehicle control is exposed.
- **Credential handling:** Your Mercedes-Benz OAuth 2.0 client and customer access tokens are stored once, encrypted, by your own Jentic One instance and injected when a diagnostic call executes. They never enter the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'read Mercedes fault codes' or 'get an ECU readout', and Jentic returns the matching POST operation with its vehicleId and ecuId parameter schema so the agent calls the right endpoint without browsing the reference docs.

## Related APIs

- **Remote Diagnostic Support** — An equivalent diagnostics spec entry under a different api_slug; same operations, same base URL.
- **Smartcar** — Multi-brand remote vehicle data API covering many manufacturers but with shallower DTC support.
- **Tesla Fleet API** — Fleet operators with mixed marques use the Tesla Fleet API alongside Mercedes diagnostics for cross-brand fleet health.

## FAQ

### What authentication does the Remote Diagnostic Support API use?

The API uses OAuth 2.0 with customer consent - the Mercedes-Benz vehicle owner must explicitly authorise the third-party application before a partner can pull diagnostic data. Through Jentic the OAuth client credentials are vaulted and access tokens are exchanged at execution time.

### Can I read DTCs from a vehicle without the owner's consent?

No. Every diagnostic call is keyed to a vehicleId (VIN/FIN) and requires an OAuth flow that the vehicle owner has authorised. The API is designed for legitimate partners (ADAC, ATU, authorised workshops) operating with the customer's permission.

### What are the rate limits for the Remote Diagnostic Support API?

The spec does not publish a fixed limit. Production rate limits are negotiated per Mercedes-Benz developer portal contract, with the tryout host throttled for evaluation volumes.

### How do I read fault codes for a customer's vehicle through Jentic?

Search Jentic for 'read mercedes fault codes', load the POST `/vehicles/{vehicleId}/dtcReadouts` schema, and execute it with the customer's VIN. Jentic handles the OAuth exchange and returns the active DTC list.

### Can I capture the conditions when a fault occurred?

Yes. POST `/vehicles/{vehicleId}/ecuId/{ecuId}/dtcId/{dtcId}/dtcSnapshotReadouts` returns the DTC snapshot recorded by the specified ECU at the moment the fault was logged, which a workshop can use to reproduce the issue.

### Why is every operation a POST instead of a GET?

DTC and ECU readouts are remote commands that cause the vehicle to perform an active diagnostic operation, so they are modelled as POSTs rather than idempotent GETs.

### Can I limit what my agent is allowed to do with the Remote Diagnostic Support API?

Yes. Because you run Jentic One yourself, your own rules decide which operations and credentials the agent may use, and this API puts the vehicle id in the URL path (`/vehicles/{vehicleId}/...`), so you can pin the agent to a single vehicle. You choose whether it may call the DTC readout, ECU readout, resource readout, and DTC snapshot operations, or only a subset of them. Every one of these endpoints reads diagnostic data only, so no vehicle control is ever exposed to the agent. The stored OAuth client and customer tokens are injected at execution time and never reach the agent's prompt or logs.
