Skip to content
Last updated

๐Ÿšง Step-by-Step โ€“ Build Your First Charging Station Request

This tutorial walks you through how to build a Charging Station API request step by step, to search for EV charging stations around a specific location.

๐Ÿงฑ Step 1 โ€“ Choose the Geoserver

The geoserver defines which geospatial dataset you want to use (e.g. OpenStreetMap or a custom dataset).

"geoserver": "osm"

Most users can keep "default".


๐Ÿข Step 2 โ€“ Select the Provider(s)

Choose one or more charging station providers. Always use:

"providers": ["ecoMovement"]

This ensures compatibility with our standard coverage.


๐Ÿง  Step 3 โ€“ Set the Search Mode

The mode controls whether the search uses local cache or provider APIs. Use the recommended setting:

"mode": "LOCAL_OR_REMOTE"

This mode will use local data if possible, or fall back to remote provider search when needed.


๐Ÿ“ Step 4 โ€“ Define the Center Coordinate

Pick the center point for your search. Use WGS84 coordinates (decimal degrees):

"coordinate": {
  "lon": 2.3412,
  "lat": 48.8569
}

๐Ÿ’ก Tip: You can use a map tool like Google Maps to find precise coordinates.


๐Ÿ“ Step 5 โ€“ Set the Search Radius

Define how far (in meters) around your coordinate the system should look:

"radius": 300

Here, 300 meters = 0.3 km around the selected point.


๐Ÿงช Optional โ€“ Add Options (Advanced) You can request extra detail using the options field. For example, to show connector-level info:

"options": ["PATH_POINT"]

See Charging Station Options for more.


๐Ÿ“ฆ Final Request Example

Here is a complete example combining all the above steps:

{
  "geoserver": "osm",
  "providers": ["ecoMovement"],
  "mode": "LOCAL_OR_REMOTE",
  "radius": 300,
  "coordinate": {
    "lon": 2.3412,
    "lat": 48.8569
  },
  "options": ["PATH_POINT"]
}

๐Ÿ”— Send this via POST to /bgis/service/chargingstation/search/1.0 Include header: Content-Type: application/json


๐Ÿ“ฅ Response Analysis

{
  "pools": [
    {
      "providerName": "ecoMovement",
      "providerMode": "LOCAL",
      "id": "8f709a26-466d-11e9-8601-42010a840003",
      "sourceProvider": "Tesla Destination",
      "updateDate": 1753672005588,
      "brand": "Tesla Destination",
      "nameOfPool": "Tesla Destination Charger Relais Christine",
      "accessibility": "RESTRICTED",
      "availabilityStatus": "NA",
      "longitude": 2.34014219,
      "latitude": 48.8543694,
      "countryCode": "FRA",
      "country": "FRA",
      "postalCode": "75006",
      "city": "6e Arrondissement",
      "street": "3 Rue Christine",
      "siteCategory": "ON_STREET",
      "phoneNumber": "+(33)-(9)-70730850",
      "chargingStations": [
        {
          "nature": "VGROUP",
          "availabilityStatus": "NA",
          "chargePasses": [
            {
              "id": "Tesla",
              "title": "Tesla",
              "networkName": "Tesla"
            }
          ],
          "bookable": false,
          "chargingPoints": [
            {
              "id": "491848_1",
              "availabilityStatus": "NA",
              "type": 32,
              "connectorTypes": [
                {
                  "id": 32,
                  "key": "TYPE_2-ATTACHED_CABLE",
                  "operatorId": "491848_1_0",
                  "deprecated": false,
                  "name": "Type 2",
                  "norm": "IEC 62196 Type 2 (Mennekes)",
                  "maxPower": 43,
                  "power": 11,
                  "voltage": 230,
                  "ampere": 16,
                  "acSingle": false,
                  "acThree": true,
                  "dc": false,
                  "cable": true
                }
              ],
              "currentType": "AC_THREE_PHASES",
              "voltage": 230,
              "ampere": 16,
              "power": 11
            }
          ]
        },
        {
          "nature": "VGROUP",
          "availabilityStatus": "NA",
          "chargePasses": [
            {
              "id": "Tesla",
              "title": "Tesla",
              "networkName": "Tesla"
            }
          ],
          "bookable": false,
          "chargingPoints": [
            {
              "id": "491848_0",
              "availabilityStatus": "NA",
              "type": 32,
              "connectorTypes": [
                {
                  "id": 32,
                  "key": "TYPE_2-ATTACHED_CABLE",
                  "operatorId": "491848_0_0",
                  "deprecated": false,
                  "name": "Type 2",
                  "norm": "IEC 62196 Type 2 (Mennekes)",
                  "maxPower": 43,
                  "power": 11,
                  "voltage": 230,
                  "ampere": 16,
                  "acSingle": false,
                  "acThree": true,
                  "dc": false,
                  "cable": true
                }
              ],
              "currentType": "AC_THREE_PHASES",
              "voltage": 230,
              "ampere": 16,
              "power": 11
            }
          ]
        },
        {
          "nature": "VGROUP",
          "availabilityStatus": "NA",
          "chargePasses": [
            {
              "id": "Tesla",
              "title": "Tesla",
              "networkName": "Tesla"
            }
          ],
          "bookable": false,
          "chargingPoints": [
            {
              "id": "491848_2",
              "availabilityStatus": "NA",
              "type": 32,
              "connectorTypes": [
                {
                  "id": 32,
                  "key": "TYPE_2-ATTACHED_CABLE",
                  "operatorId": "491848_2_0",
                  "deprecated": false,
                  "name": "Type 2",
                  "norm": "IEC 62196 Type 2 (Mennekes)",
                  "maxPower": 43,
                  "power": 11,
                  "voltage": 230,
                  "ampere": 16,
                  "acSingle": false,
                  "acThree": true,
                  "dc": false,
                  "cable": true
                }
              ],
              "currentType": "AC_THREE_PHASES",
              "voltage": 230,
              "ampere": 16,
              "power": 11
            }
          ]
        }
      ],
      "summaryOfConnectorTypeIds": [
        32
      ],
      "maxNominalPower": 11,
      "numberOfChargingPoint": 3
    }
  ]
}

When you send the request above, you receive a response containing a list of charging station pools. Below is a detailed breakdown of a typical response entry:

๐Ÿ”น Root Object: pools

The root object is a list of pools, each representing a group of charging stations at a physical location. In this example, only one pool was returned.


๐Ÿงพ Pool Information

FieldDescription
idUnique ID of the pool
providerNameName of the data provider (e.g., ecoMovement)
sourceProviderReal-world provider (e.g., Tesla Destination)
brandBrand associated with the pool
nameOfPoolDisplay name of the location
accessibilityWhether the location is public or restricted (e.g., RESTRICTED)
updateDateLast update timestamp (Unix format)
siteCategoryCategory of the site (e.g., ON_STREET)
countryCode, city, street, postalCodeAddress details
phoneNumberContact number for the location

๐Ÿ”Œ Charging Stations (chargingStations)

Each pool contains one or more charging stations, represented by the chargingStations array.

Each station includes:

  • nature: Always "VGROUP" (grouped station)

  • availabilityStatus: May be "NA" if real-time data is not available

  • chargePasses: Accepted charge passes (e.g., Tesla)

  • bookable: Whether the station is reservable

  • chargingPoints: One or more charging points available at this station


โšก Charging Points

Each station includes one or more charging points, each with technical details:

FieldDescription
idUnique ID for the charging point
availabilityStatusReal-time availability (if available)
typeInternal connector type ID (e.g., 32)
currentTypeAC or DC type (e.g., AC_THREE_PHASES)
voltage, ampere, powerElectrical specifications
connectorTypesArray with detailed connector specs (standard, cable, deprecated flag, etc.)

โžก๏ธ In this example, all charging points are Type 2 (IEC 62196), with 11 kW power and three-phase AC.


๐Ÿงฎ Summary Fields

FieldDescription
summaryOfConnectorTypeIdsList of unique connector type IDs in the pool (e.g., [32])
maxNominalPowerMaximum power across all charging points
numberOfChargingPointTotal number of charging points in the pool

โœ… In Summary

This response tells you:

  • There is one Tesla Destination charging location nearby.

  • It offers 3 Type 2 connectors, all rated at 11 kW.

  • The location is restricted access.

  • No real-time availability info is provided (availabilityStatus: NA).

You can now use this structure to interpret any search results and optionally display them on a map or in your UI.