{ "openapi": "3.0.1", "info": { "title": "Pricing API", "description": "The target data for the Ancillary Services are the Market Clearing Price (MCP) related to the 5 products in this market: Regulation, Spin, Supplemental, Short-term-reserves (STR), and Ramp (up and down). Ancillary Market prices are published at the Reserve Zone level and there are 8 zones in the current Ancillary Services Market.", "version": "1.0", "x-provenance": { "harvestedBy": "API Evangelist", "fetchDate": "2026-07-27", "note": "Assembled verbatim from MISO's own anonymously served Azure API Management developer-portal data API. MISO's OpenAPI export endpoint returns a valid document whose paths object is EMPTY, so info, servers and components.securitySchemes were taken from that export, while paths, methods, operationIds, summaries, descriptions, parameters, response codes and response examples were taken from the portal operations endpoints, and components.schemas from the portal schemas endpoint. Nothing was invented, inferred or paraphrased.", "sources": [ "https://data-exchange.misoenergy.org/developer/apis/pricing-api?export=true&format=openapi%2Bjson&api-version=2022-04-01-preview (HTTP 200)", "https://data-exchange.misoenergy.org/developer/apis/pricing-api/operations?api-version=2022-04-01-preview (HTTP 200)", "https://data-exchange.misoenergy.org/developer/apis/pricing-api/operations/{operationId}?api-version=2022-04-01-preview (HTTP 200, all operations)", "https://data-exchange.misoenergy.org/developer/apis/pricing-api/schemas/6a63cd40fc41c6126471c3cd?api-version=2022-04-01-preview (HTTP 200)" ], "gatewayVerification": "Anonymous GET to the gateway returns HTTP 401 \"Access denied due to missing subscription key\"; unknown routes return HTTP 404 \"Resource not found\" (verified 2026-07-27)." } }, "servers": [ { "url": "https://apim.misoenergy.org/pricing" } ], "paths": { "/v1/aggregated-pnode": { "get": { "operationId": "get-v1-aggregated-pnode", "summary": "Aggregated Pnode", "description": "List of Aggregated Pnode with their types.", "parameters": [ { "name": "date", "in": "query", "required": false, "description": "Filter by date. Defaults to current date if not specified.", "schema": { "type": "string", "format": "date" } }, { "name": "node", "in": "query", "required": false, "description": "Filter to a specific Pricing Node.", "schema": { "type": "string" } }, { "name": "pageNumber", "in": "query", "required": false, "schema": { "type": "integer", "format": "int32", "default": 1 } } ], "responses": { "200": { "description": "Successful operation", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/200-OK-Aggregated-NodeResponse-json" }, "example": { "data": [ { "node": "ALTW.WELLS1", "nodeType": "Hubs" } ], "page": { "pageNumber": 0, "pageSize": 0, "totalElements": 0, "totalPages": 0, "lastPage": true } } } } }, "400": { "description": "Invalid date format", "content": { "application/json": {} } }, "401": { "description": "Invalid or missing Bearer Token in the Authorization header", "content": { "application/json": {} } }, "404": { "description": "Date not found", "content": { "application/json": {} } } } } }, "/v1/day-ahead/{date}/asm-exante": { "get": { "operationId": "get-v1-day-ahead-date-asm-exante", "summary": "Day-Ahead Ex-Ante MCP", "description": "Historical ex-ante market clearing prices (MCP) for the day-ahead (DA) ancillary services market (ASM), by reserve zone in hourly intervals. Available at 2pm EST the day before.", "parameters": [ { "name": "date", "in": "path", "required": true, "description": "Market date in the form: yyyy-mm-dd", "schema": { "type": "string", "format": "date" } }, { "name": "interval", "in": "query", "required": false, "description": "Filter to a specific time interval (ex. \"13:05\", \"13\"), in Eastern Standard Time (UTC\u221205:00).", "schema": { "type": "string" } }, { "name": "pageNumber", "in": "query", "required": false, "schema": { "type": "integer", "format": "int32", "default": 1 } }, { "name": "product", "in": "query", "required": false, "description": "Filter to a specific product (e.g. \"Regulation\", \"Spin\", \"Supplemental\", \"STR\", \"Ramp-up\", \"Ramp-down\").", "schema": { "type": "string", "enum": [ "Regulation", "Spin", "Supplemental", "STR", "Ramp-up", "Ramp-down" ] } }, { "name": "zone", "in": "query", "required": false, "description": "Filter to a specific Reserve Zone (e.g. \"Zone 1\", ..., \"Zone 8\").", "schema": { "type": "string" } } ], "responses": { "200": { "description": "Successful operation", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/200-OK-MCPResponse-json" }, "example": { "data": [ { "interval": "1", "timeInterval": { "resolution": "daily", "start": "2023-06-28 00:00:00.000", "end": "2023-06-29 00:00:00.000", "value": "2023-06-29" }, "product": "Regulation", "zone": "Zone 1", "mcp": 6.48 } ], "page": { "pageNumber": 0, "pageSize": 0, "totalElements": 0, "totalPages": 0, "lastPage": true } } } } }, "400": { "description": "Invalid date format", "content": { "application/json": {} } }, "401": { "description": "Invalid or missing Bearer Token in the Authorization header", "content": { "application/json": {} } }, "404": { "description": "Date not found", "content": { "application/json": {} } } } } }, "/v1/day-ahead/{date}/asm-expost": { "get": { "operationId": "get-v1-day-ahead-date-asm-expost", "summary": "Day-Ahead Ex-Post MCP", "description": "Historical ex-post market clearing prices (MCP) for the day-ahead (DA) ancillary services market (ASM), by reserve zone in hourly intervals. Available at 2pm EST the day before.", "parameters": [ { "name": "date", "in": "path", "required": true, "description": "Market date in the form: yyyy-mm-dd", "schema": { "type": "string", "format": "date" } }, { "name": "interval", "in": "query", "required": false, "description": "Filter to a specific time interval (ex. \"13:05\", \"13\"), in Eastern Standard Time (UTC\u221205:00).", "schema": { "type": "string" } }, { "name": "pageNumber", "in": "query", "required": false, "schema": { "type": "integer", "format": "int32", "default": 1 } }, { "name": "product", "in": "query", "required": false, "description": "Filter to a specific product (e.g. \"Regulation\", \"Spin\", \"Supplemental\", \"STR\", \"Ramp-up\", \"Ramp-down\").", "schema": { "type": "string", "enum": [ "Regulation", "Spin", "Supplemental", "STR", "Ramp-up", "Ramp-down" ] } }, { "name": "zone", "in": "query", "required": false, "description": "Filter to a specific Reserve Zone (e.g. \"Zone 1\", ..., \"Zone 8\").", "schema": { "type": "string" } } ], "responses": { "200": { "description": "Successful operation", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/200-OK-MCPResponse-json" }, "example": { "data": [ { "interval": "1", "timeInterval": { "resolution": "daily", "start": "2023-06-28 00:00:00.000", "end": "2023-06-29 00:00:00.000", "value": "2023-06-29" }, "product": "Regulation", "zone": "Zone 1", "mcp": 6.48 } ], "page": { "pageNumber": 0, "pageSize": 0, "totalElements": 0, "totalPages": 0, "lastPage": true } } } } }, "400": { "description": "Invalid date format", "content": { "application/json": {} } }, "401": { "description": "Invalid or missing Bearer Token in the Authorization header", "content": { "application/json": {} } }, "404": { "description": "Date not found", "content": { "application/json": {} } } } } }, "/v1/day-ahead/{date}/lmp-exante": { "get": { "operationId": "get-v1-day-ahead-date-lmp-exante", "summary": "Day-Ahead Ex-Ante LMP", "description": "Historical ex-ante locational marginal prices (LMP) for the day-ahead (DA) energy market, by commercial pricing node (CPNode) in hourly intervals. Available at 2pm EST the day before.", "parameters": [ { "name": "date", "in": "path", "required": true, "description": "Market date in the form: yyyy-mm-dd", "schema": { "type": "string", "format": "date" } }, { "name": "interval", "in": "query", "required": false, "description": "Filter to a specific time interval (ex. \"13:05\", \"13\"), in Eastern Standard Time (UTC\u221205:00).", "schema": { "type": "string" } }, { "name": "node", "in": "query", "required": false, "description": "Filter to a specific Commercial Pricing Node.", "schema": { "type": "string" } }, { "name": "pageNumber", "in": "query", "required": false, "schema": { "type": "integer", "format": "int32", "default": 1 } } ], "responses": { "200": { "description": "Successful operation", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/200-OK-LMPResponse-json" }, "example": { "data": [ { "interval": "1", "timeInterval": { "resolution": "daily", "start": "2023-06-28 00:00:00.000", "end": "2023-06-29 00:00:00.000", "value": "2023-06-29" }, "node": "ALTW.WELLS1", "lmp": 21.6, "mcc": 0.02, "mec": 20.94, "mlc": 0.64 } ], "page": { "pageNumber": 0, "pageSize": 0, "totalElements": 0, "totalPages": 0, "lastPage": true } } } } }, "400": { "description": "Invalid date format", "content": { "application/json": {} } }, "401": { "description": "Invalid or missing Bearer Token in the Authorization header", "content": { "application/json": {} } }, "404": { "description": "Date not found", "content": { "application/json": {} } } } } }, "/v1/day-ahead/{date}/lmp-expost": { "get": { "operationId": "get-v1-day-ahead-date-lmp-expost", "summary": "Day-Ahead Ex-Post LMP", "description": "Historical ex-post locational marginal prices (LMP) for the day-ahead (DA) energy market, by commercial pricing node (CPNode) in hourly intervals. Available at 2pm EST the day before.", "parameters": [ { "name": "date", "in": "path", "required": true, "description": "Market date in the form: yyyy-mm-dd", "schema": { "type": "string", "format": "date" } }, { "name": "interval", "in": "query", "required": false, "description": "Filter to a specific time interval (ex. \"13:05\", \"13\"), in Eastern Standard Time (UTC\u221205:00).", "schema": { "type": "string" } }, { "name": "node", "in": "query", "required": false, "description": "Filter to a specific Commercial Pricing Node.", "schema": { "type": "string" } }, { "name": "pageNumber", "in": "query", "required": false, "schema": { "type": "integer", "format": "int32", "default": 1 } } ], "responses": { "200": { "description": "Successful operation", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/200-OK-LMPResponse-json" }, "example": { "data": [ { "interval": "1", "timeInterval": { "resolution": "daily", "start": "2023-06-28 00:00:00.000", "end": "2023-06-29 00:00:00.000", "value": "2023-06-29" }, "node": "ALTW.WELLS1", "lmp": 21.6, "mcc": 0.02, "mec": 20.94, "mlc": 0.64 } ], "page": { "pageNumber": 0, "pageSize": 0, "totalElements": 0, "totalPages": 0, "lastPage": true } } } } }, "400": { "description": "Invalid date format", "content": { "application/json": {} } }, "401": { "description": "Invalid or missing Bearer Token in the Authorization header", "content": { "application/json": {} } }, "404": { "description": "Date not found", "content": { "application/json": {} } } } } }, "/v1/real-time/{date}/asm-exante": { "get": { "operationId": "get-v1-real-time-date-asm-exante", "summary": "Real-Time Ex-Ante MCP", "description": "Historical ex-ante market clearing prices (MCP) for the real-time (RT) ancillary services market (ASM), by reserve zone in 5-minute intervals. Available at 7am EST the day after. [On May 6, 2026 Changes Applied including historical dates] 5-minute interval labels corrected. The database stores end-of-interval timestamps. Previously, the API returned interval values misaligned with database storage. Now corrected: 'value', 'start', and 'end' fields correctly represent period START time (and end time in 'end' field). To update stored data: subtract 5 minutes from all three fields. Before (old stored data): {\"value\": \"2025-12-31T23:55:00\", \"start\": \"2025-12-31T23:55:00\", \"end\": \"2026-01-01T00:00:00\"}. After (corrected): {\"value\": \"2025-12-31T23:50:00\", \"start\": \"2025-12-31T23:50:00\", \"end\": \"2025-12-31T23:55:00\"}. Apply this offset to all stored 5-minute interval records. No re-fetch required.", "parameters": [ { "name": "date", "in": "path", "required": true, "description": "Market date in the form: yyyy-mm-dd", "schema": { "type": "string", "format": "date" } }, { "name": "interval", "in": "query", "required": false, "description": "Filter to a specific time interval (ex. \"13:05\", \"13\"), in Eastern Standard Time (UTC\u221205:00).", "schema": { "type": "string" } }, { "name": "pageNumber", "in": "query", "required": false, "schema": { "type": "integer", "format": "int32", "default": 1 } }, { "name": "product", "in": "query", "required": false, "description": "Filter to a specific product (e.g. \"Regulation\", \"Spin\", \"Supplemental\", \"STR\", \"Ramp-up\", \"Ramp-down\").", "schema": { "type": "string", "enum": [ "Regulation", "Spin", "Supplemental", "STR", "Ramp-up", "Ramp-down" ] } }, { "name": "zone", "in": "query", "required": false, "description": "Filter to a specific Reserve Zone (e.g. \"Zone 1\", ..., \"Zone 8\").", "schema": { "type": "string" } } ], "responses": { "200": { "description": "Successful operation", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/200-OK-MCPResponse-json" }, "example": { "data": [ { "interval": "1", "timeInterval": { "resolution": "daily", "start": "2023-06-28 00:00:00.000", "end": "2023-06-29 00:00:00.000", "value": "2023-06-29" }, "product": "Regulation", "zone": "Zone 1", "mcp": 6.48 } ], "page": { "pageNumber": 0, "pageSize": 0, "totalElements": 0, "totalPages": 0, "lastPage": true } } } } }, "400": { "description": "Invalid date format", "content": { "application/json": {} } }, "401": { "description": "Invalid or missing Bearer Token in the Authorization header", "content": { "application/json": {} } }, "404": { "description": "Date not found", "content": { "application/json": {} } } } } }, "/v1/real-time/{date}/asm-expost": { "get": { "operationId": "get-v1-real-time-date-asm-expost", "summary": "Real-Time Ex-Post MCP", "description": "Historical ex-post market clearing prices (MCP) for the real-time (RT) ancillary services market (ASM), by reserve zone in hourly or 5-minute intervals. Available at 7am EST the day after. It takes on average 3-5 days to finalize preliminary LMPs. [On May 6, 2026 Changes Applied including historical dates] Interval labels corrected. Database stores end-of-interval timestamps. Previously, API returned 5-minute values misaligned with storage. Now corrected: 'value', 'start', 'end' fields represent period START time. Hourly unchanged. To update stored 5-minute data: subtract 5 minutes from all three fields. Before (old): {\"value\": \"2025-12-31T23:55:00\", \"start\": \"2025-12-31T23:55:00\", \"end\": \"2026-01-01T00:00:00\"}. After (corrected): {\"value\": \"2025-12-31T23:50:00\", \"start\": \"2025-12-31T23:50:00\", \"end\": \"2025-12-31T23:55:00\"}. Apply offset to all stored 5-minute records. No re-fetch required.", "parameters": [ { "name": "date", "in": "path", "required": true, "description": "Market date in the form: yyyy-mm-dd", "schema": { "type": "string", "format": "date" } }, { "name": "interval", "in": "query", "required": false, "description": "Filter to a specific time interval (ex. \"13:05\", \"13\"), in Eastern Standard Time (UTC\u221205:00).", "schema": { "type": "string" } }, { "name": "pageNumber", "in": "query", "required": false, "schema": { "type": "integer", "format": "int32", "default": 1 } }, { "name": "preliminaryFinal", "in": "query", "required": false, "description": "When set, only return data if it's flagged as the given state.", "schema": { "type": "string", "enum": [ "Preliminary", "Final" ] } }, { "name": "product", "in": "query", "required": false, "description": "Filter to a specific product (ex. \"Regulation\", \"Spin\", etc).", "schema": { "type": "string", "enum": [ "Regulation", "Spin", "Supplemental", "STR", "Ramp-up", "Ramp-down" ] } }, { "name": "timeResolution", "in": "query", "required": false, "description": "Time resolution of data", "schema": { "type": "string", "enum": [ "5min", "hourly" ], "default": "hourly" } }, { "name": "zone", "in": "query", "required": false, "description": "Filter to a specific Reserve Zone (ex. \"Zone 1\").", "schema": { "type": "string" } } ], "responses": { "200": { "description": "Successful operation", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/200-OK-RTMCPResponse-json" }, "example": { "data": [ { "preliminaryFinal": "string", "product": "Regulation", "zone": "Zone 1", "mcp": 6.48, "timeInterval": { "resolution": "daily", "start": "2023-06-28 00:00:00.000", "end": "2023-06-29 00:00:00.000", "value": "2023-06-29" } } ], "page": { "pageNumber": 0, "pageSize": 0, "totalElements": 0, "totalPages": 0, "lastPage": true } } } } }, "400": { "description": "Invalid date format", "content": { "application/json": {} } }, "401": { "description": "Invalid or missing Bearer Token in the Authorization header", "content": { "application/json": {} } }, "404": { "description": "Date not found", "content": { "application/json": {} } } } } }, "/v1/real-time/{date}/asm-summary": { "get": { "operationId": "get-v1-real-time-date-asm-summary", "summary": "Real-Time MCP Summary", "description": "Historical ex-post market clearing prices (MCP) for the real-time (RT) ancillary services market (ASM), at the MISO level in hourly intervals. Available at 7am EST the day after.", "parameters": [ { "name": "date", "in": "path", "required": true, "description": "Market date in the form: yyyy-mm-dd", "schema": { "type": "string", "format": "date" } }, { "name": "interval", "in": "query", "required": false, "description": "Filter to a specific time interval (ex. \"13:05\", \"13\"), in Eastern Standard Time (UTC\u221205:00).", "schema": { "type": "string" } }, { "name": "pageNumber", "in": "query", "required": false, "schema": { "type": "integer", "format": "int32", "default": 1 } }, { "name": "product", "in": "query", "required": false, "description": "Filter to a specific product (ex. \"Regulation\", \"Spin\", etc).", "schema": { "type": "string", "enum": [ "Regulation", "Spin", "Supplemental", "SER", "Mileage" ] } }, { "name": "timeResolution", "in": "query", "required": false, "description": "Time resolution of data", "schema": { "type": "string", "enum": [ "hourly" ], "default": "hourly" } } ], "responses": { "200": { "description": "Successful operation", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/200-OK-RTMCPResponse-json" }, "example": { "data": [ { "preliminaryFinal": "string", "product": "Regulation", "zone": "Zone 1", "mcp": 6.48, "timeInterval": { "resolution": "daily", "start": "2023-06-28 00:00:00.000", "end": "2023-06-29 00:00:00.000", "value": "2023-06-29" } } ], "page": { "pageNumber": 0, "pageSize": 0, "totalElements": 0, "totalPages": 0, "lastPage": true } } } } }, "400": { "description": "Invalid date format", "content": { "application/json": {} } }, "401": { "description": "Invalid or missing Bearer Token in the Authorization header", "content": { "application/json": {} } }, "404": { "description": "Date not found", "content": { "application/json": {} } } } } }, "/v1/real-time/{date}/lmp-exante": { "get": { "operationId": "get-v1-real-time-date-lmp-exante", "summary": "Real-Time Ex-Ante LMP", "description": "Historical ex-ante locational marginal prices (LMP) for the real-time (RT) energy market, by commercial pricing node (CPNode) in 5-minute intervals. Available at 7am EST the day after. [On May 6, 2026 Changes Applied including historical dates] 5-minute interval labels corrected. The database stores end-of-interval timestamps. Previously, the API returned interval values misaligned with database storage. Now corrected: 'value', 'start', and 'end' fields correctly represent period START time (and end time in 'end' field). To update stored data: subtract 5 minutes from all three fields. Before (old stored data): {\"value\": \"2025-12-31T23:55:00\", \"start\": \"2025-12-31T23:55:00\", \"end\": \"2026-01-01T00:00:00\"}. After (corrected): {\"value\": \"2025-12-31T23:50:00\", \"start\": \"2025-12-31T23:50:00\", \"end\": \"2025-12-31T23:55:00\"}. Apply this offset to all stored 5-minute interval records. No re-fetch required.", "parameters": [ { "name": "date", "in": "path", "required": true, "description": "Market date in the form: yyyy-mm-dd", "schema": { "type": "string", "format": "date" } }, { "name": "interval", "in": "query", "required": false, "description": "Filter to a specific time interval (ex. \"13:05\", \"13\"), in Eastern Standard Time (UTC\u221205:00).", "schema": { "type": "string" } }, { "name": "node", "in": "query", "required": false, "description": "Filter to a specific Commercial Pricing Node.", "schema": { "type": "string" } }, { "name": "pageNumber", "in": "query", "required": false, "schema": { "type": "integer", "format": "int32", "default": 1 } } ], "responses": { "200": { "description": "Successful operation", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/200-OK-LMPResponse-json" }, "example": { "data": [ { "interval": "1", "timeInterval": { "resolution": "daily", "start": "2023-06-28 00:00:00.000", "end": "2023-06-29 00:00:00.000", "value": "2023-06-29" }, "node": "ALTW.WELLS1", "lmp": 21.6, "mcc": 0.02, "mec": 20.94, "mlc": 0.64 } ], "page": { "pageNumber": 0, "pageSize": 0, "totalElements": 0, "totalPages": 0, "lastPage": true } } } } }, "400": { "description": "Invalid date format", "content": { "application/json": {} } }, "401": { "description": "Invalid or missing Bearer Token in the Authorization header", "content": { "application/json": {} } }, "404": { "description": "Date not found", "content": { "application/json": {} } } } } }, "/v1/real-time/{date}/lmp-expost": { "get": { "operationId": "get-v1-real-time-date-lmp-expost", "summary": "Real-Time Ex-Post LMP", "description": "Historical ex-post locational marginal prices (LMP) for the real-time (RT) energy market, by commercial pricing node (CPNode) in hourly or 5-minute intervals. Available at 7am EST the day after. It takes on average 3-5 days to finalize preliminary LMPs. [On May 6, 2026 Changes Applied including historical dates - 5-MINUTE INTERVALS ONLY] Interval labels corrected. Database stores end-of-interval timestamps. Previously, API returned 5-minute values misaligned with storage. Now corrected: 'value', 'start', 'end' fields represent period START time. Hourly unchanged. To update stored 5-minute data: subtract 5 minutes from all three fields. Before (old): {\"value\": \"2025-12-31T23:55:00\", \"start\": \"2025-12-31T23:55:00\", \"end\": \"2026-01-01T00:00:00\"}. After (corrected): {\"value\": \"2025-12-31T23:50:00\", \"start\": \"2025-12-31T23:50:00\", \"end\": \"2025-12-31T23:55:00\"}. Apply offset to all stored 5-minute records. No re-fetch required.", "parameters": [ { "name": "date", "in": "path", "required": true, "description": "Market date in the form: yyyy-mm-dd", "schema": { "type": "string", "format": "date" } }, { "name": "interval", "in": "query", "required": false, "description": "Filter to a specific time interval (ex. \"13:05\", \"13\"), in Eastern Standard Time (UTC\u221205:00).", "schema": { "type": "string" } }, { "name": "node", "in": "query", "required": false, "description": "Filter to a specific Commercial Pricing Node.", "schema": { "type": "string" } }, { "name": "pageNumber", "in": "query", "required": false, "schema": { "type": "integer", "format": "int32", "default": 1 } }, { "name": "preliminaryFinal", "in": "query", "required": false, "description": "When set, only return data if it's flagged as the given state.", "schema": { "type": "string", "enum": [ "Preliminary", "Final" ] } }, { "name": "timeResolution", "in": "query", "required": false, "description": "Time resolution of data", "schema": { "type": "string", "enum": [ "5min", "hourly" ], "default": "hourly" } } ], "responses": { "200": { "description": "Successful operation", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/200-OK-RTLMPResponse-json" }, "example": { "data": [ { "timeInterval": { "resolution": "daily", "start": "2023-06-28 00:00:00.000", "end": "2023-06-29 00:00:00.000", "value": "2023-06-29" }, "preliminaryFinal": "string", "node": "ALTW.WELLS1", "lmp": 21.6, "mcc": 0.02, "mec": 20.94, "mlc": 0.64 } ], "page": { "pageNumber": 0, "pageSize": 0, "totalElements": 0, "totalPages": 0, "lastPage": true } } } } }, "400": { "description": "Invalid date format", "content": { "application/json": {} } }, "401": { "description": "Invalid or missing Bearer Token in the Authorization header", "content": { "application/json": {} } }, "404": { "description": "Date not found", "content": { "application/json": {} } } } } } }, "components": { "securitySchemes": { "apiKeyHeader": { "type": "apiKey", "name": "Ocp-Apim-Subscription-Key", "in": "header" }, "apiKeyQuery": { "type": "apiKey", "name": "subscription-key", "in": "query" } }, "schemas": { "AggregatedPnode": { "type": "object", "properties": { "node": { "type": "string", "description": "Pricing Node", "example": "ALTW.WELLS1" }, "nodeType": { "type": "string", "description": "Pricing Node Type", "example": "Hubs" } } }, "Geo-Res-Region-Zone": { "enum": [ "region", "localResourceZone" ], "type": "string", "default": "region" }, "LocalDate": { "type": "string", "format": "date", "example": "2022-03-10" }, "LocationalMarginalPrice": { "type": "object", "properties": { "interval": { "type": "string", "example": "1" }, "timeInterval": { "$ref": "#/components/schemas/TimeInterval" }, "node": { "type": "string", "description": "Commercial Pricing Node", "example": "ALTW.WELLS1" }, "lmp": { "type": "number", "description": "Locational Marginal Price", "example": 21.6 }, "mcc": { "type": "number", "description": "Marginal Congestion Component", "example": 0.02 }, "mec": { "type": "number", "description": "Marginal Energy Component", "example": 20.94 }, "mlc": { "type": "number", "description": "Marginal Losses Component", "example": 0.64 } } }, "MarketClearingPrice": { "type": "object", "properties": { "interval": { "type": "string", "example": "1" }, "timeInterval": { "$ref": "#/components/schemas/TimeInterval" }, "product": { "enum": [ "Regulation", "Spin", "Supplemental", "STR", "Ramp-up", "Ramp-down" ], "type": "string", "description": "Ancillary Market product" }, "zone": { "type": "string", "description": "Ancillary Services Reserve Zone", "example": "Zone 1" }, "mcp": { "type": "number", "description": "Market Clearing Price", "example": 6.48 } } }, "PageAggregatedPnode": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/AggregatedPnode" } }, "page": { "$ref": "#/components/schemas/PageInfo" } } }, "PageInfo": { "type": "object", "properties": { "pageNumber": { "type": "integer", "format": "int32" }, "pageSize": { "type": "integer", "format": "int32" }, "totalElements": { "type": "integer", "format": "int64" }, "totalPages": { "type": "integer", "format": "int64" }, "lastPage": { "type": "boolean" } } }, "PageLocationalMarginalPrice": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/LocationalMarginalPrice" } }, "page": { "$ref": "#/components/schemas/PageInfo" } } }, "PageMarketClearingPrice": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/MarketClearingPrice" } }, "page": { "$ref": "#/components/schemas/PageInfo" } } }, "PageRealTimeExPostLocationalMarginalPrice": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/RealTimeExPostLocationalMarginalPrice" } }, "page": { "$ref": "#/components/schemas/PageInfo" } } }, "PageRealTimeExPostMarketClearingPrice": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/RealTimeExPostMarketClearingPrice" } }, "page": { "$ref": "#/components/schemas/PageInfo" } } }, "PageRealTimeSummaryMarketClearingPrice": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/RealTimeSummaryMarketClearingPrice" } }, "page": { "$ref": "#/components/schemas/PageInfo" } } }, "PreliminaryFinalEnum": { "enum": [ "Preliminary", "Final" ], "type": "string" }, "RealTimeExPostLocationalMarginalPrice": { "type": "object", "properties": { "timeInterval": { "$ref": "#/components/schemas/TimeInterval" }, "preliminaryFinal": { "type": "string", "allOf": [ { "$ref": "#/components/schemas/PreliminaryFinalEnum" } ], "description": "Whether the price is preliminary or final" }, "node": { "type": "string", "description": "Commercial Pricing Node", "example": "ALTW.WELLS1" }, "lmp": { "type": "number", "description": "Locational Marginal Price", "example": 21.6 }, "mcc": { "type": "number", "description": "Marginal Congestion Component", "example": 0.02 }, "mec": { "type": "number", "description": "Marginal Energy Component", "example": 20.94 }, "mlc": { "type": "number", "description": "Marginal Losses Component", "example": 0.64 } } }, "RealTimeExPostMarketClearingPrice": { "type": "object", "properties": { "preliminaryFinal": { "type": "string", "allOf": [ { "$ref": "#/components/schemas/PreliminaryFinalEnum" } ], "description": "Whether the price is preliminary or final." }, "product": { "enum": [ "Regulation", "Spin", "Supplemental", "STR", "Ramp-up", "Ramp-down" ], "type": "string", "description": "Ancillary Market product" }, "zone": { "type": "string", "description": "Ancillary Services Reserve Zone", "example": "Zone 1" }, "mcp": { "type": "number", "description": "Market Clearing Price", "example": 6.48 }, "timeInterval": { "$ref": "#/components/schemas/TimeInterval" } } }, "RealTimeSummaryMarketClearingPrice": { "type": "object", "properties": { "interval": { "type": "string", "example": "1" }, "timeInterval": { "$ref": "#/components/schemas/TimeInterval" }, "product": { "enum": [ "Regulation", "Spin", "Supplemental", "SER", "Mileage" ], "type": "string", "description": "Ancillary Market product" }, "mcp": { "type": "number", "description": "Market Clearing Price", "example": 6.48 } } }, "Time-Res-5Min-Hourly": { "enum": [ "5min", "hourly" ], "type": "string", "default": "hourly" }, "Time-Res-Hourly": { "enum": [ "hourly" ], "type": "string", "default": "hourly" }, "Time-Res-Hourly-Daily": { "enum": [ "hourly", "daily" ], "type": "string", "default": "hourly" }, "TimeInterval": { "type": "object", "properties": { "resolution": { "enum": [ "5min", "hourly", "daily" ], "type": "string", "example": "daily" }, "start": { "pattern": "([0-9]{4})-([0-9]{2})-([0-9]{2}) ([0-9]{2}):([0-9]{2}):([0-9]{2}).([0-9]{3})", "type": "string", "description": "In Eastern Standard Time (UTC\u221205:00).", "example": "2023-06-28 00:00:00.000" }, "end": { "pattern": "([0-9]{4})-([0-9]{2})-([0-9]{2}) ([0-9]{2}):([0-9]{2}):([0-9]{2}).([0-9]{3})", "type": "string", "description": "In Eastern Standard Time (UTC\u221205:00).", "example": "2023-06-29 00:00:00.000" }, "value": { "type": "string", "description": "Short hand value for time interval. Can be timestamp for 5min resolution (ex: 2023-06-28 00:00:00.000), hour ending value for hourly resolution, 1-24 (ex: 21), or date string for daily (ex: 2023-06-28). In Eastern Standard Time (UTC\u221205:00).", "example": "2023-06-29" } } }, "V1Aggregated-pnodeGetRequest": { "type": "string", "x-apim-inline": true }, "V1Aggregated-pnodeGetRequest-1": { "type": "integer", "format": "int32", "default": 1, "x-apim-inline": true }, "V1Day-ahead-date-Asm-exanteGetRequest": { "type": "string", "x-apim-inline": true }, "V1Day-ahead-date-Asm-exanteGetRequest-1": { "type": "integer", "format": "int32", "default": 1, "x-apim-inline": true }, "V1Day-ahead-date-Asm-exanteGetRequest-2": { "enum": [ "Regulation", "Spin", "Supplemental", "STR", "Ramp-up", "Ramp-down" ], "type": "string", "x-apim-inline": true }, "V1Day-ahead-date-Asm-exanteGetRequest-3": { "type": "string", "x-apim-inline": true }, "V1Day-ahead-date-Asm-expostGetRequest": { "type": "string", "x-apim-inline": true }, "V1Day-ahead-date-Asm-expostGetRequest-1": { "type": "integer", "format": "int32", "default": 1, "x-apim-inline": true }, "V1Day-ahead-date-Asm-expostGetRequest-2": { "enum": [ "Regulation", "Spin", "Supplemental", "STR", "Ramp-up", "Ramp-down" ], "type": "string", "x-apim-inline": true }, "V1Day-ahead-date-Asm-expostGetRequest-3": { "type": "string", "x-apim-inline": true }, "V1Day-ahead-date-Lmp-exanteGetRequest": { "type": "string", "x-apim-inline": true }, "V1Day-ahead-date-Lmp-exanteGetRequest-1": { "type": "string", "x-apim-inline": true }, "V1Day-ahead-date-Lmp-exanteGetRequest-2": { "type": "integer", "format": "int32", "default": 1, "x-apim-inline": true }, "V1Day-ahead-date-Lmp-expostGetRequest": { "type": "string", "x-apim-inline": true }, "V1Day-ahead-date-Lmp-expostGetRequest-1": { "type": "string", "x-apim-inline": true }, "V1Day-ahead-date-Lmp-expostGetRequest-2": { "type": "integer", "format": "int32", "default": 1, "x-apim-inline": true }, "V1Real-time-date-Asm-exanteGetRequest": { "type": "string", "x-apim-inline": true }, "V1Real-time-date-Asm-exanteGetRequest-1": { "type": "integer", "format": "int32", "default": 1, "x-apim-inline": true }, "V1Real-time-date-Asm-exanteGetRequest-2": { "enum": [ "Regulation", "Spin", "Supplemental", "STR", "Ramp-up", "Ramp-down" ], "type": "string", "x-apim-inline": true }, "V1Real-time-date-Asm-exanteGetRequest-3": { "type": "string", "x-apim-inline": true }, "V1Real-time-date-Asm-expostGetRequest": { "type": "string", "x-apim-inline": true }, "V1Real-time-date-Asm-expostGetRequest-1": { "type": "integer", "format": "int32", "default": 1, "x-apim-inline": true }, "V1Real-time-date-Asm-expostGetRequest-2": { "enum": [ "Regulation", "Spin", "Supplemental", "STR", "Ramp-up", "Ramp-down" ], "x-apim-inline": true }, "V1Real-time-date-Asm-expostGetRequest-3": { "type": "string", "x-apim-inline": true }, "V1Real-time-date-Asm-summaryGetRequest": { "type": "string", "x-apim-inline": true }, "V1Real-time-date-Asm-summaryGetRequest-1": { "type": "integer", "format": "int32", "default": 1, "x-apim-inline": true }, "V1Real-time-date-Asm-summaryGetRequest-2": { "enum": [ "Regulation", "Spin", "Supplemental", "SER", "Mileage" ], "x-apim-inline": true }, "V1Real-time-date-Lmp-exanteGetRequest": { "type": "string", "x-apim-inline": true }, "V1Real-time-date-Lmp-exanteGetRequest-1": { "type": "string", "x-apim-inline": true }, "V1Real-time-date-Lmp-exanteGetRequest-2": { "type": "integer", "format": "int32", "default": 1, "x-apim-inline": true }, "V1Real-time-date-Lmp-expostGetRequest": { "type": "string", "x-apim-inline": true }, "V1Real-time-date-Lmp-expostGetRequest-1": { "type": "string", "x-apim-inline": true }, "V1Real-time-date-Lmp-expostGetRequest-2": { "type": "integer", "format": "int32", "default": 1, "x-apim-inline": true }, "Parameter-date": { "type": "string", "format": "date", "x-apim-inline": true }, "200-OK-Aggregated-NodeResponse-json": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/AggregatedPnode" } }, "page": { "$ref": "#/components/schemas/PageInfo" } }, "x-apim-inline": true }, "200-OK-LMPResponse-json": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/LocationalMarginalPrice" } }, "page": { "$ref": "#/components/schemas/PageInfo" } }, "x-apim-inline": true }, "200-OK-MCPResponse-json": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/MarketClearingPrice" } }, "page": { "$ref": "#/components/schemas/PageInfo" } }, "x-apim-inline": true }, "200-OK-RTLMPResponse-json": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/RealTimeExPostLocationalMarginalPrice" } }, "page": { "$ref": "#/components/schemas/PageInfo" } }, "x-apim-inline": true }, "200-OK-RTMCPResponse-json": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/RealTimeExPostMarketClearingPrice" } }, "page": { "$ref": "#/components/schemas/PageInfo" } }, "x-apim-inline": true } } }, "security": [ {}, { "apiKeyHeader": [] }, { "apiKeyQuery": [] } ] }