Dispatch Event Polling (v1.1)
Receiving dispatches via the webhook push notification is the recommended method as it enables participation in real-time programs that provide minimal advance notice periods, however, if that is not possible this guide provides information on polling the Leap API endpoints to retrieve this information. If you haven’t already, check out the Dispatch Automation guide for more details on automating and processing these dispatch events.
Endpoints
Choose the appropriate endpoint depending on whether you are dispatching at the meter or group level:
- Search Dispatches - Retrieve events broken out at an individual meter-level
- Search Group Dispatches - Retrieve events aggregated at the market group-level
Polling Frequency
Make sure to poll frequently enough to capture any new dispatches with enough time to process those and push them out to your end customer devices prior to the event start time. Different markets and programs have different advance notice periods for dispatch event notices to be available so take into account current and upcoming markets/programs you will be enrolling in. If required, these endpoints can handle polling as frequently as once per minute without triggering any rate limits.
Dispatch Event Processing
Querying for or filtering based on the market_type
field is important when polling for dispatch events as you may see events for markets you are not participating in.
For example, in CAISO:
- For the day-ahead market, you need to look for both the
day-ahead
andhour-ahead
market_type values as it is possible that your day-ahead dispatch awards could get updated in the hour-ahead market or you could get entirely new timeslot awards in the hour-ahead market. - You may see real-time events (e.g. 15m, 5m) which you can ignore if you are not participating in these markets.
For event processing considerations refer back to the Dispatch Event Processing section of the Dispatch Automation guide.
Example Responses
Meter Dispatch Response
{
"results": [
{
"meter_id": "11111111-1111-1111-1111-111111111111",
"timeslots": [
{
"start_time": "2022-11-19T17:00:00Z",
"end_time": "2022-11-19T18:00:00Z",
"test_event": false,
"energy_kw": 1444.000,
"market_type": "day-ahead",
"cancelled": false,
"programs": [
"NYISO-SCR"
]
},
{
"start_time": "2022-11-21T17:00:00Z",
"end_time": "2022-11-21T18:00:00Z",
"test_event": false,
"energy_kw": 1444.000,
"market_type": "day-ahead",
"cancelled": false,
"programs": [
"NYISO-SCR"
]
}
]
}
],
"next_page_token": null
}
Group Dispatch Response
{
"results": [
{
"meter_ids": [
"2c55f35c-70c3-493d-8168-f05ec5e81010",
"788e0e6d-65a7-4a18-83a6-eb0fd3605b53"
],
"timeslots": [
{
"start_time": "2022-11-09T02:00:00Z",
"end_time": "2022-11-09T03:00:00Z",
"test_event": false,
"energy_kw": 8.400,
"market_type": "hour-ahead",
"cancelled": false,
"programs": [
"CCA"
]
},
{
"start_time": "2022-11-09T03:00:00Z",
"end_time": "2022-11-09T04:00:00Z",
"test_event": false,
"energy_kw": 8.400,
"market_type": "hour-ahead",
"cancelled": false,
"programs": [
"CCA"
]
}
],
"market_group_id": "2c8b2f59-a90d-4867-8231-fcce20efd044"
}
],
"next_page_token": null
}
Updated 2 months ago