Skip to main content

Add the Support for soc and range from the new Škoda b2c api

Allow users to integrate with škoda b2c api for soc and range

Status: Awaiting Clarification4 comments

Log in to comment and vote

Comments4

  • Mahde - ABRP changed status to Awaiting Clarification
    Team•

    Sep 9

    Pinned

    Hello @ABRP User #595517,

    Do you request Enode or OBD connection for the Skoda?

    • ABRP User #2335716

      •

      Sep 10

      Škoda recently announced an official API for consumers to get their car data into apps (HomeAssistants MySkoda integration among other worked on this). https://public.api.connect.skoda-auto.cz/docs

      For ABRP usage, it would be relatively simple: You would need to ask for an API key (the user can create up to 4, I think) and the vehicle VIN. With that, you send a GET query to https://public.api.connect.skoda-auto.cz/api/v1/vehicles/<VIN> with a request head “X-API-Key: <API_KEY>”.

      What you get back is a JSON (formatted and redacted some irrelevant parts, this is for my vehicle):

      Most notable parts: result[“vehicle”][“charging”][“status”] with the battery sub-key giving both current estimated range (from the car, not necessarily the same as ABRP would calculate) and the SoC in percent as well as the “chargePowerInKw” and “state” subkeys to determine if the car is currently charing and how fast.

      result[“vehicle”][“charging”][“settings”][“targetStateOfChargeInPercent”] gives you the maximum charge in percent that the car currently would accept before stopping the charging process.

      result[“vehicle”][“renderUrl”] gives you a link to a nice image of the car (as configured by the original buyer)

      {
         "vehicle" : {
            "airConditioning" : {
               "airConditioningAtUnlock" : false,
               "carCapturedTimestamp" : "2026-09-10T08:38:29Z",
               "state" : "OFF",
               "targetTemperature" : {
                  "unit" : "CELSIUS",
                  "value" : 21.5
               },
               "windowHeating" : {
                  "enabled" : false, 
                  "front" : "OFF",
                  "rear" : "OFF"
               }
            },
            "charging" : {
               "carCapturedTimestamp" : "2026-09-10T08:38:32Z",
               "isVehicleInSavedLocation" : false,
               "settings" : {
                  "autoUnlockPlugWhenCharged" : "OFF",
                  "availableChargeModes" : [
                     "MANUAL"
                  ],
                  "batteryCareModeTargetValueInPercent" : 80,
                  "chargingCareMode" : "ACTIVATED",
                  "maxChargeCurrentAc" : "MAXIMUM",
                  "preferredChargeMode" : "MANUAL",
                  "targetStateOfChargeInPercent" : 80
               },
               "status" : {
                  "battery" : {
                     "remainingCruisingRangeInMeters" : 161000,
                     "stateOfChargeInPercent" : 37
                  },
                  "chargePowerInKw" : 0,
                  "state" : "CHARGING_INTERRUPTED"
               }
            }, 
            "chargingProfiles" : {
      […]
            },
            "name" : "Enyaq",
            "odometer" : {
               "carCapturedTimestamp" : "2026-09-10T08:38:34.639Z",
               "mileageInKm" : 99999 
            },
            "operations" : [
      […]
            ],
            "parkingPosition" : {
               "formattedAddress" : "SOMESTREET 15, 99999 SOMEWHERE, Germany",
               "gpsCoordinates" : {
                  "latitude" : 47.0,
                  "longitude" : 12.0 
               },
               "state" : "PARKED"
            }, 
            "renderUrl" : "https://iprenders.blob.core.windows.net/base5azv26200005/8X8Xu.LjdmygJhp72FT48o-AGkrWYoUKvbdzOe8m5pQ2hHS0.E_-nbJ79OVXBTZcRF31-BJPDHAG-19201080dayvext_side1080.png",
            "status" : {
               "carCapturedTimestamp" : "2026-09-10T08:38:34.596Z",
               "detail" : {
                  "bonnet" : "CLOSED",
                  "sunroof" : "UNSUPPORTED",
                  "trunk" : "CLOSED"
               },
               "overall" : {
                  "doors" : "CLOSED",
                  "doorsLocked" : "YES",
                  "lights" : "OFF",
                  "locked" : "YES",
                  "reliableLockStatus" : "LOCKED",
                  "windows" : "CLOSED"
               }
            },
            "vin" : "XXXXXXXXXXXXXXX"
         }
      }
      • Mahde - ABRP

        Team•

        Sep 10

        You can create API keys yourself via ABRP if that is needed for your connection via Skoda and you can do this here: https://abetterrouteplanner.com/resources/api

        • ABRP User #2335716

          •

          Sep 10

          That would be for the other way around. The request is for ABRP to pull the current SoC from the Skoda API, not for the Skoda servers to pull data from ABRP. So I don’t see how the ABRP API would be useful.