Filters
Filters allow applications to refine the charging stations returned by the Tile Service API. Beyond simply hiding non-matching results, certain filters also transform the station data to ensure the response is contextually relevant.
How filters affect data
When a request includes filters, the Tile service performs two distinct operations:
- Exclusion of non-matching stationsAny station that does not meet the specified filtering criteria is removed from the response entirely. This operation occurs when station-level filters or EVSE-level filters are used.
- Data transformationWhen particular filtering parameters are provided, the Tile Service recalculates some of the station’s dynamic properties. This operation occurs when EVSE-level filters are used.
Implementation
Filter parameters can be appended to the request URL as query strings to any of the Tile Service endpoints (MVT or JSON or Count). If no filters are applied, all available charging stations are returned, and no data transformations are done.
Levels
Filters can exist on two levels: EVSE level or station level, each with their own impact and results as described below.
Station level
Filters that evaluate the station’s global attributes. These filters are exclusion-only: exclude non-matching stations but never modify the returned data fields.
amenities·enum·https://api.chargetrip.io/v2/station/10/516/352/tile.mvt?amenities[]=HOTEL - Filter to include only stations that provide the specified amenities.
Possible values
HOTELSHOPPINGBATHROOMSUPERMARKETPLAYGROUNDPHARMACYMUSEUMCOFFEEPARKRESTAURANTpreferred_operators·boolean·https://api.chargetrip.io/v2/station/10/516/352/tile.mvt?preferred_operators=true - Filter to include only stations operated by operators configured as preferred. Preferred operators can be set in project settings within the dashboard.
Possible values
truefalsehide_excluded_operators·boolean·https://api.chargetrip.io/v2/station/10/516/352/tile.mvt?hide_excluded_operators=true - Filter to exclude stations operated by operators configured as excluded. Excluded operators can be set in project settings within the dashboard.
Possible values
truefalseoperator_ids·string·https://api.chargetrip.io/v2/station/10/516/352/tile.mvt?operator_ids[]=631834841e604d2273ffb2b5&operator_ids[]=64e6979d49ed0ae2316ec052 - Filter to include only stations operated by specific operator IDs. Accepts an array of operator IDs.
truck_dedicated·boolean·https://api.chargetrip.io/v2/station/10/516/352/tile.mvt?truck_dedicated=true - Filter to include only stations dedicated or primarily intended for truck charging. Only applicable if the Eco-Movement station database is used; otherwise, it is ignored.
Possible values
truefalsevehicle_types·enum·https://api.chargetrip.io/v2/station/10/516/352/tile.mvt?vehicle_types[]=VAN&vehicle_types[]=RIGID - Filter to include only stations supporting the specified OCPI vehicle types. All vehicle types are included by default. Only applicable if the Eco-Movement station database is used; otherwise, it is ignored.
Possible values
VANRIGIDTRUCK_WITH_TRAILER
EVSE level
Filters that evaluate the station’s specific charging capabilities. These filters perform exclusion and transformation: non-matching stations are excluded, and matching stations have their dynamic fields recalculated.
minimum_power·integer·https://api.chargetrip.io/v2/station/10/516/352/tile.mvt?minimum_power=50 - Filter to include only stations where at least one connector meets or exceeds the specified power value (in kW). Accepts an integer greater than 0.
maximum_power·integer·https://api.chargetrip.io/v2/station/10/516/352/tile.mvt?maximum_power=150 - Filter to include only stations where the maximum charging power of any connector does not exceed the specified power value (in kW). Accepts an integer greater than 0.
minimum_energy_price·number·Beta This filter is in beta and may change before it becomes stable. ·https://api.chargetrip.io/v2/station/10/516/352/tile.mvt?minimum_energy_price=0.2¤cy=EUR - Filter to include only stations whose compatible connectors have at least one active price greater than or equal to the specified value, evaluated in the currency set by
currency. See station pricing. maximum_energy_price·number·Beta This filter is in beta and may change before it becomes stable. ·https://api.chargetrip.io/v2/station/10/516/352/tile.mvt?maximum_energy_price=0.5¤cy=EUR - Filter to include only stations whose compatible connectors have at least one active price lower than or equal to the specified value, evaluated in the currency set by
currency. See station pricing. connectors·enum·https://api.chargetrip.io/v2/station/10/516/352/tile.mvt?connectors[]=CHADEMO - Filter to include only stations that have EVSEs with the specified connector types. Accepts an array of strings with any OCPI 2.2.1 connector values.
Possible values
CHADEMODOMESTIC_ADOMESTIC_BDOMESTIC_CDOMESTIC_DDOMESTIC_EDOMESTIC_FDOMESTIC_GDOMESTIC_HDOMESTIC_IDOMESTIC_JDOMESTIC_KDOMESTIC_LDOMESTIC_MDOMESTIC_NDOMESTIC_OIEC_60309_2_single_16IEC_60309_2_three_16IEC_60309_2_three_32IEC_60309_2_three_64IEC_62196_T1IEC_62196_T1_COMBOIEC_62196_T2IEC_62196_T2_COMBOIEC_62196_T3AIEC_62196_T3CPANTOGRAPH_BOTTOM_UPPANTOGRAPH_TOP_DOWNTESLA_RTESLA_SGB_TCHAOJINEMA_5_20NEMA_6_30NEMA_6_50NEMA_10_30NEMA_10_50NEMA_14_30NEMA_14_50evse_statuses·enum·https://api.chargetrip.io/v2/station/10/516/352/tile.mvt?evse_statuses[]=AVAILABLE&evse_statuses[]=CHARGING - Filter to include only stations with EVSEs that have the specified statuses.
Possible values
BLOCKEDPLANNEDAVAILABLECHARGINGUNKNOWNRESERVEDOUT_OF_ORDERINOPERATIVE
Currency conversion
The currency query parameter is supported across the Tile Service endpoint (tile.json, tile.mvt and count). It sets the currency of the energy prices that are returned and filtered on.
- When
currencyis omitted,connector_minimum_energy_priceandconnector_maximum_energy_priceare returned in EUR. - When
currencyis a valid ISO 4217 currency code, such asUSD,GBP,DKKorEUR:- The values returned in
connector_minimum_energy_priceandconnector_maximum_energy_priceare converted from their source currency into the requested currency on the server, using the active conversion rate. - The
minimum_energy_priceandmaximum_energy_pricefilters are evaluated against the converted prices in the requested currency, or in EUR ifcurrencyis omitted.
- The values returned in
- When the original currency is the same as the requested currency,
price_conversion_rateis returned as1.0. - When
currencyis not a valid ISO 4217 currency code, the tile service returns an error with these details:- Status:
400 Bad Request - Code:
TILE_INVALID_PARAMETER_VALUE - Message:
Invalid parameter 'currency': found string {invalid currency} but expected one of {supported currencies}.
- Status:
Examples
To display the behavior, examples have been provided for filtering and data transformations below.
Filter examples
Filters can exist on two levels: EVSE level or station level, each with their own impact and results as described below.
Same filter type, different values
| Station | Properties | Matches |
|---|---|---|
| A | 2x IEC_62196_T1_COMBO 1x CHAdeMO 1x TOILET 1x RESTAURANT | |
| B | 1x IEC_62196_T1_COMBO 1x IEC_62196_T2_COMBO 1x RESTAURANT | |
| C | 2x IEC_62196_T2_COMBO 1x TOILET |
Multiple different filter types
| Station | Properties | Matches |
|---|---|---|
| A | 2x IEC_62196_T1_COMBO 1x CHAdeMO 1x TOILET 1x RESTAURANT | |
| B | 1x IEC_62196_T1_COMBO 1x IEC_62196_T2_COMBO 1x RESTAURANT | |
| C | 2x IEC_62196_T2_COMBO 1x TOILET |
Data transformation examples
Some outputs are recalculated when EVSE-level filters are applied. These fields are “transformed” to ignore connectors that don’t match the user’s search criteria.
These “dynamic” output fields are connector_maximum_power, connector_minimum_energy_price, connector_maximum_energy_price and evse_status_*.
Same filter type, different values
The request includes a CHADEMO connector filter. The station is included because it has a CHADEMO connector, but the dynamic fields are transformed to ignore the Combo Type 1 chargers.
Price filters
The request includes a maximum_energy_price filter, optionally combined with other EVSE-level filters. A connector only matches when it meets all filters at once, and the dynamic price fields are recalculated for the matching connectors only.
Baseline station A
- EVSE 1: CCS • 150 kW • Available • 0.65 €
- EVSE 2: CCS • 50 kW • Available • 0.35 €
- EVSE 3: Type 2 • 22 kW • Available • 0.25 €
Scenario 1: price filter only
Match: EVSE 2 and 3 qualify. EVSE 1 is excluded.
Scenario 2: connector filter only
Match: EVSE 1 and 2 qualify.
Scenario 3: price and connector filter
Match:
- Evaluates on
connector == CCS AND price <= 0.30. - The CCS connectors (EVSE 1 and 2) cost 0.65 € and 0.35 €, so they fail the price filter.
- The Type 2 connector (EVSE 3) meets the price, but fails the connector filter.
Result: Excluded station (0 matching EVSEs).
Scenario 4: price and power filter
Match:
- Evaluates on
power >= 100 kW AND price <= 0.40 €on the same EVSE. - The 150 kW connector is too expensive (0.65 €).
- The cheaper connectors (0.25 € to 0.35 €) are too slow (50 kW or less).
Result: Excluded station (0 matching EVSEs).
Was this content helpful?