BM Data by Day Range

This endpoint returns BM data for a given date range. It can return all accepted bids and offers as well as all bids and offers on the table, with optional filters for plants and fuels. Data is returned in daily increments with the cursor keeping track of the day with which to get data. Each day of data returned corresponds to one API call.


Using the LCPDelta Python Package

Synchronous

from lcp_delta import enact
from datetime import date

enact_api_helper = enact.APIHelper(username, public_api_key)

#bm acceptances, table bids and offers for a given date
response_dictionary = enact_api_helper.get_bm_data_by_day_range(
  	date(2025, 7, 23), # start date to return data for
		date(2025, 7, 30), # end date to return data for
    option="all", # optional filter, defaults to 'all'
    include_accepted_times=True, # option to include accepted times for accepted bids/offers
    include_on_table=True # option to include all bids and offers
)

accepted_bids = response_dictionary[(response_dictionary['isAccepted']) & (response_dictionary['isBid'])]
accepted_offers = response_dictionary[(response_dictionary['isAccepted']) & (~response_dictionary['isBid'])]

table_bids = response_dictionary[(~response_dictionary['isAccepted']) & (response_dictionary['isBid'])]
table_offers = response_dictionary[(~response_dictionary['isAccepted']) & (~response_dictionary['isBid'])]

Asynchronous (package version 1.3.0 and later)

from lcp_delta import enact
from datetime import date
import asyncio

async def main():
    enact_api_helper = enact.APIHelper(username, public_api_key)

    #bm acceptances, table bids and offers for a given date
    response_dictionary = await enact_api_helper.get_bm_data_by_day_range_async(
      	date(2025, 7, 18), # start date to return data for
				date(2025, 7, 30), # end date to return data for
        option="all", # optional filter, defaults to 'all'
        include_accepted_times=True, # option to include accepted times for accepted bids/offers
        include_on_table=True # option to include all bids and offers
    )


asyncio.run(main())

Return Types

This method returns a data object as well as the value of the next cursor representing the next day of data to get. If there is no more days of data to get then the cursor is null.

The data objects returned are as described in BM Data by Day.

Language
Credentials
OAuth2
Click Try It! to start a request and see the response here!