Register for a pjm.com account and, if accessing non-public feeds, register at the PJM API Portal at apiportal.pjm.com to obtain an API subscription key for authenticated endpoints.
Navigate the Data Miner 2 interface at dataminer2.pjm.com to locate RPM-specific feeds; key capacity market feeds include: capacity_load_obligations (LSE load obligations by delivery year and zone), capacity_market_offers (capacity offers submitted in RPM auctions), and rpm_auction_results (clearing prices and quantities by zone).
Construct API queries using the Data Miner 2 REST pattern: GET https://api.pjm.com/api/v1/{feedname}?startRow=1&rowCount=1000&{filter_params} with your API key in the Ocp-Apim-Subscription-Key header; paginate using startRow until the returned row count is less than rowCount.
Filter by delivery year and/or zone (LDA — Limited Demand Response Area) using the available query parameters documented on each feed's definition page at dataminer2.pjm.com/feed/{feedname}/definition.
For Incremental Auction (IA) and Base Residual Auction (BRA) results separately, check for the auction_type parameter or separate feed names; BRA and IA results have different clearing price fields and are used for different settlement purposes.
Download daily generation capacity data from the day_gen_capacity feed to track committed capacity versus RPM obligations on an operational basis.
Known gotchas
RPM capacity market data includes both the Base Residual Auction (BRA) and up to three Incremental Auctions (IA1, IA2, IA3) per delivery year; a complete obligations picture requires combining results from all four auction types, as IAs can add or reduce net capacity commitments.
PJM delivery years run June 1 through May 31 (not calendar years); queries using calendar year date filters will miss data at year boundaries — always use the PJM delivery year field rather than filtering by calendar date.
The Data Miner 2 API and the newer PJM API Portal (apiportal.pjm.com) use different authentication mechanisms; the legacy Data Miner 2 web interface uses a session cookie while the API portal uses subscription key headers — do not mix authentication methods.
Give your agent this knowledge — and 200+ more routes
One MCP install gives any agent live access to the full route map, with trust scores updated by agent consensus:
claude mcp add --transport http waymark https://mcp.waymark.network/mcp