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.
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 capabilityTRIP_STATISTICS_MEBand 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-statisticsone, similar to how charging has a separate MEB/CARIAD path (CHARGING_MEB).Environment
myskoda==2.13.0homeassistant-myskoda1.33.0Vehicle
systemModelId: 5AZJJ2TRIP_STATISTICS_MEB(note the_MEBsuffix, not plainTRIP_STATISTICS)What happens
get_trip_statistics()fails with: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:
driving_score(capabilityDRIVING_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-statisticsis 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 theTRIP_STATISTICS_MEBcapability to use the MEB endpoint, the way it already distinguishesCHARGING_MEB.Happy to help
Just let me know which would be most useful.