AESO Unit Commitment Data API

Unit commitment directives issued by the AESO, served from /unitCommitment — the instructions that bring generating units online ahead of dispatch.

OpenAPI Specification

aeso-unitcommitmentdata-api-v2-openapi.json Raw ↑
{
  "openapi": "3.0.1",
  "info": {
    "title": "Unit Commitment Data API",
    "description": "Get Unit Commitment Directives report data",
    "version": "v2"
  },
  "servers": [
    {
      "url": "https://apimgw.aeso.ca/public/unitcommitmentdata-api"
    },
    {
      "url": "https://gateway-apim.aeso.ca/public/unitcommitmentdata-api"
    }
  ],
  "paths": {
    "/unitCommitment": {
      "get": {
        "operationId": "getUnitCommitmentDataReportV11ForDateRange",
        "summary": "Fetch Unit Commitment Directive Data",
        "description": "Fetch generating unit commitment directive data for a date range",
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UnitCommitmentDataV2Report"
                },
                "examples": {
                  "default": {
                    "value": {
                      "unit_commitment": [
                        {
                          "asset_ID": "string",
                          "issued_time_utc": "string",
                          "issued_time_mpt": "string",
                          "begin_time_utc": "string",
                          "begin_time_mpt": "string",
                          "operation_start_time_utc": "string",
                          "operation_start_time_mpt": "string",
                          "operation_end_time_utc": "string",
                          "operation_end_time_mpt": "string"
                        }
                      ]
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request"
          },
          "500": {
            "description": "Internal server error"
          },
          "503": {
            "description": "Service unavailable"
          },
          "401": {
            "description": "Unauthorized"
          },
          "405": {
            "description": "Invalid method"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found"
          }
        },
        "parameters": [
          {
            "name": "startDate",
            "in": "query",
            "required": false,
            "description": "Unit Commitment End Date From. Any date from 2024-07-01. Default to current time if left blank (format: yyyy-MM-dd).)",
            "schema": {
              "$ref": "#/components/schemas/UnitCommitmentGetRequest"
            }
          },
          {
            "name": "endDate",
            "in": "query",
            "required": false,
            "description": "Unit Commitment End Date To. Any date from 2024-07-01 but after startDate. If left blank, return all the data from startDate. (format: yyyy-MM-dd).)",
            "schema": {
              "$ref": "#/components/schemas/UnitCommitmentGetRequest-1"
            }
          }
        ]
      }
    }
  },
  "components": {
    "securitySchemes": {
      "apiKeyHeader": {
        "type": "apiKey",
        "name": "API-KEY",
        "in": "header"
      },
      "apiKeyQuery": {
        "type": "apiKey",
        "name": "subscription-key",
        "in": "query"
      }
    },
    "schemas": {
      "UnitCommitmentDataV2Report": {
        "type": "object",
        "properties": {
          "unit_commitment": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/UnitCommitmentDataV2VO"
            }
          }
        }
      },
      "UnitCommitmentDataV2VO": {
        "type": "object",
        "properties": {
          "asset_ID": {
            "type": "string",
            "description": "Pool asset ID"
          },
          "issued_time_utc": {
            "type": "string",
            "description": "The time when the pool participant is issued the directive, in UTC."
          },
          "issued_time_mpt": {
            "type": "string",
            "description": "The time when the pool participant is issued the directive, in MPT."
          },
          "begin_time_utc": {
            "type": "string",
            "description": "The effective time of the directive when the pool participant is expected to begin responding to the directive, in UTC."
          },
          "begin_time_mpt": {
            "type": "string",
            "description": "The effective time of the directive when the pool participant is expected to begin responding to the directive, in MPT."
          },
          "operation_start_time_utc": {
            "type": "string",
            "description": "The time when the asset is instructed to synchronize to the interconnected electric system in response to the directive, in UTC."
          },
          "operation_start_time_mpt": {
            "type": "string",
            "description": "The time when the asset is instructed to synchronize to the interconnected electric system in response to the directive, in MPT."
          },
          "operation_end_time_utc": {
            "type": "string",
            "description": "The time when the asset is no longer required to operate in response to the directive, in UTC."
          },
          "operation_end_time_mpt": {
            "type": "string",
            "description": "The time when the asset is no longer required to operate in response to the directive, in MPT."
          }
        }
      },
      "UnitCommitmentGetRequest": {
        "pattern": "^\\d{4}\\-(0[1-9]|1[012])\\-(0[1-9]|[12][0-9]|3[01])$",
        "type": "string",
        "x-apim-inline": true
      },
      "UnitCommitmentGetRequest-1": {
        "pattern": "^\\d{4}\\-(0[1-9]|1[012])\\-(0[1-9]|[12][0-9]|3[01])$",
        "type": "string",
        "x-apim-inline": true
      }
    }
  },
  "security": [
    {},
    {
      "apiKeyHeader": []
    },
    {
      "apiKeyQuery": []
    }
  ],
  "x-provenance": {
    "harvestedBy": "API Evangelist",
    "harvestedOn": "2026-07-27",
    "sourcePortal": "https://developer-apim.aeso.ca/",
    "method": "Assembled verbatim from the AESO Azure API Management developer-portal data API, which is served anonymously. AESO's own OpenAPI export (?export=true&format=openapi) returns a valid document with an EMPTY paths object, so paths, parameters, responses, examples and component schemas were read from the portal's operations/ and schemas/ endpoints and reassembled without alteration. Nothing was invented.",
    "sources": [
      {
        "url": "https://developer-apim.aeso.ca/developer/apis/unitcommitmentdata-api-v2?api-version=2022-04-01-preview",
        "status": 200,
        "note": "API metadata"
      },
      {
        "url": "https://developer-apim.aeso.ca/developer/apis/unitcommitmentdata-api-v2?export=true&format=openapi%2Bjson&api-version=2022-04-01-preview",
        "status": 200,
        "note": "AESO OpenAPI export (empty paths) - basis for info/servers/security"
      },
      {
        "url": "https://developer-apim.aeso.ca/developer/apis/unitcommitmentdata-api-v2/operations?api-version=2022-04-01-preview",
        "status": 200,
        "note": "operation list"
      },
      {
        "url": "https://developer-apim.aeso.ca/developer/apis/unitcommitmentdata-api-v2/schemas?api-version=2022-04-01-preview",
        "status": 200,
        "note": "schema list"
      },
      {
        "url": "https://developer-apim.aeso.ca/developer/apis/unitcommitmentdata-api-v2/operations/getUnitCommitmentDataReportV11ForDateRange?api-version=2022-04-01-preview",
        "status": 200,
        "note": "operation detail"
      },
      {
        "url": "https://developer-apim.aeso.ca/developer/apis/unitcommitmentdata-api-v2/schemas/67ffcd503d594b079c1250cb?api-version=2022-04-01-preview",
        "status": 200,
        "note": "schema document"
      }
    ]
  }
}