Displaying Prices on your Pylon

About

On this page we are outlining how you integrate with Monta to display prices of your charge points, ie on your site on a pylon.

Example

  • You want to display your prices on a pylon at your site (ie. a gas station with EV charging)
  • You have two different kind of chargers available there, each with different pricing (ie. DC400 vs DC150)

Pre-requisites

Required Scopes

Depending on the level of integration you are going to need access to these scopes:

ScopeDescriptionRequired
charge-points:readGives you read-access to all charge points within your operator. You can use this to query for charge points or sites and their states.
prices-forecast:readThis gives you access to read price forecasts
💡

Read more about Scopes here: Scopes

Step 1: Retrieve relevant charge point(s)

You can utilize the GET /charge-points or GET /sites APIs to retrieve your charge points. This is recommended when you start your API integration.

Get charge points for your site

  1. Call GET /charge-points with siteId query param to retrieve all chargers on that site (api reference)
  2. Utilize the maxKw in the response to figure out 2 different charge point ids (we need them for next step), ie:
    1. Charge Point 1, ID: 42, maxKw: 400, type: dc
    2. Charge Point 2, ID: 99, maxKw: 150, type: dc
💡

This assumes that you have the same prices set up for charge points sharing some criteria, such as maxKw.

Get price forecasts for these two charge point samples

  1. Call GET /prices/forecast using the chargePointId query filter, for each of the relevant charge point ids - 42 and 99 in our example (api reference)
  2. This will return you a hourly forecast of the price for the next 24 hours - especially useful when you have prices that change based on time of the day or energy market prices.
  3. Based on time of day, use the forecasts entry pricePerKwh (or name) for your display purposes.

Example Output:

{
  "operator": {
    "id": 14,
    "name": "Monta",
    "identifier": "monta",
    "partnerId": 1,
    "vatNumber": "FOO-123-ABC"
  },
  "currency": {
    "identifier": "dkk",
    "name": "Danish krone",
    "decimals": 2
  },
  "priceGroup": {
    // ...
  },
  "forecasts": [
    {
      "time": "2025-10-22T13:00:00Z",
      "pricePerKwh": 5978,
      "name": "0.60 DKK/kWh"
    },
    {
      "time": "2025-10-22T14:00:00Z",
      "pricePerKwh": 3921,
      "name": "0.39 DKK/kWh"
    },
		// ...
    {
      "time": "2025-10-22T22:00:00Z",
      "pricePerKwh": 2100,
      "name": "0.21 DKK/kWh"
    },
    {
      "time": "2025-10-22T23:00:00Z",
      "pricePerKwh": 2040,
      "name": "0.20 DKK/kWh"
    }
  ]
}

Implementation Notes

  • Charge Points rarely change - store the relevant charge point ids for your site in cache or local database
  • The price forecasts are valid for up to 24 hours. It is good practice to cache the results and only retrieve them every x hours (ie. 24) or when you run out of forecast entries to display.
  • Very often you are only displaying 1-2 prices on a site (ie. on a pylon). There is no need to fetch forecasts for all charge points on that site, just use relevant samples (as we did in this guide).


What’s Next