# 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:

| Scope                  | Description                                                                                                                             | Required |
| :--------------------- | :-------------------------------------------------------------------------------------------------------------------------------------- | :------- |
| `charge-points:read`   | Gives 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:read` | This gives you access to read price forecasts                                                                                           | ✅        |

:::note

**Read more about Scopes here: [Scopes](/reference/permission-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](/api/charge-points#retrieve-a-list-of-charge-points))
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

:::note

**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](/api/prices-forecast#retrieve-prices-forecast))
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).

<br />
