Skip to content

Enyaq/Elroq "Driving Data" from Myskoda app (8.13.0) #597

Description

@iDomi94

Summary

On an MEB vehicle (Škoda Enyaq) the trip statistics shown in the MySkoda app ("Driving Data" / trip view by day) are not reachable through the library. get_trip_statistics() calls the legacy /api/v1/trip-statistics/{vin} endpoint, which responds 403 Forbidden for this car — even though the vehicle advertises the capability TRIP_STATISTICS_MEB and the data is visible in the app.

All other endpoints for the same vehicle/token succeed (status, charging, driving_range, driving_score, health, …), so this is not an auth/consent problem on the account — it looks like the MEB platform uses a different endpoint than the legacy /api/v1/trip-statistics one, similar to how charging has a separate MEB/CARIAD path (CHARGING_MEB).

Environment

  • Library: myskoda==2.13.0
  • HA integration: homeassistant-myskoda 1.33.0
  • Home Assistant: 2026.6.3 (Home Assistant OS)

Vehicle

  • Model: Škoda Enyaq, trim 80, model year 2023
  • systemModelId: 5AZJJ2
  • Software version: 3.8 (ME3 — the version that exposes Driving Data in the app)
  • Platform: MEB
  • Advertised capability: TRIP_STATISTICS_MEB (note the _MEB suffix, not plain TRIP_STATISTICS)

What happens

get_trip_statistics() fails with:

aiohttp.client_exceptions.ClientResponseError: 403, message='Forbidden',
url='https://mysmob.api.connect.skoda-auto.cz/api/v1/trip-statistics/{vin}?offsetType=week&offset=0&timezone=Europe/Berlin'

Traceback originates in rest_api.py  get_trip_statistics()  _make_get_request()  response.raise_for_status().

Expected

Trip / driving statistics retrievable for MEB vehicles, matching what the MySkoda app shows for this car.

Evidence that it is endpoint-/platform-specific, not account-level

From the integration's diagnostics download (gen-fixtures, VIN anonymized), all 14 endpoints were probed with the same token and VIN. Only the trip endpoint is forbidden:

Endpoint Result
info ✅ 200
status ✅ 200
charging ✅ 200
driving_range ✅ 200
trip_statistics ❌ 403 Forbidden
departure_info ❌ 500 (separate issue)
driving_score ✅ 200

driving_score (capability DRIVING_SCORE_WITH_BONUS) returns full daily/weekly/monthly/quarterly data, so the account clearly has driving-data services active — only the trip-statistics path is gated.

Hypothesis

/api/v1/trip-statistics is the pre-MEB path and is rejected (403) for MEB cars. The MEB platform likely serves this data from a different endpoint (probably a v2 / CARIAD path, analogous to the separate charging-statistics endpoint). The library could branch on the TRIP_STATISTICS_MEB capability to use the MEB endpoint, the way it already distinguishes CHARGING_MEB.

Happy to help

  • I can attach the full anonymized diagnostics/fixtures (VIN already mocked).
  • I can capture the real request the app makes for this MEB car (mitmproxy) and post the exact URL/headers/payload.
  • I can test a branch/PR against the live car.

Just let me know which would be most useful.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions