AESO Load Outage Forecast API

Load outages submitted to the AESO, served from /loadOutageReport — the demand-side counterpart to the generation outage feed, used to model expected load reductions.

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/aeso-load-outage-forecast-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

aeso-loadoutageforecast-api-v1-openapi.json Raw ↑
{
  "openapi": "3.0.1",
  "info": {
    "title": "Load Outage Forecast API",
    "description": "Load outages submitted to the AESO.",
    "version": "v1"
  },
  "servers": [
    {
      "url": "https://apimgw.aeso.ca/public/loadoutageforecast-api"
    },
    {
      "url": "https://gateway-apim.aeso.ca/public/loadoutageforecast-api"
    }
  ],
  "paths": {
    "/loadOutageReport": {
      "get": {
        "operationId": "getLoadOutageRangeReport",
        "summary": "Fetch hourly load outages submitted to AESO",
        "description": "Fetch hourly load outage forecast for a given date or date range. \r\nIf only the startDate is provided, data will only be provided for that day. \r\n",
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LoadOutageVO"
                },
                "examples": {
                  "default": {
                    "value": {
                      "loadOutagePerHourVO": [
                        {
                          "begin_datetime_utc": "string",
                          "begin_datetime_mpt": "string",
                          "load_outage_forecast (in MW)": 0
                        }
                      ]
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found"
          },
          "405": {
            "description": "Invalid method"
          },
          "500": {
            "description": "Internal server error"
          },
          "503": {
            "description": "Service unavailable"
          }
        },
        "parameters": [
          {
            "name": "startDate",
            "in": "query",
            "required": true,
            "description": "Date (yyyy-mm-dd) from 2013-09-22, and up to 24 months in the future.",
            "schema": {
              "$ref": "#/components/schemas/LoadOutageReportGetRequest"
            }
          },
          {
            "name": "endDate",
            "in": "query",
            "required": false,
            "description": "Date (yyyy-mm-dd) equal or after startDate, and up to 24 months in the future. If blank, data for the startDate will be returned.",
            "schema": {
              "$ref": "#/components/schemas/LoadOutageReportGetRequest-1"
            }
          }
        ]
      }
    }
  },
  "components": {
    "securitySchemes": {
      "apiKeyHeader": {
        "type": "apiKey",
        "name": "API-KEY",
        "in": "header"
      },
      "apiKeyQuery": {
        "type": "apiKey",
        "name": "subscription-key",
        "in": "query"
      }
    },
    "schemas": {
      "LoadOutagePerHourVO": {
        "type": "object",
        "properties": {
          "begin_datetime_utc": {
            "type": "string",
            "description": "Begin timestamp of the hour for the load outage, in UTC."
          },
          "begin_datetime_mpt": {
            "type": "string",
            "description": "Begin timestamp of the hour for the load outage, in MPT (Mountain Prevailing Time)."
          },
          "load_outage_forecast (in MW)": {
            "type": "number",
            "description": "Aggregated forecasted value of Load Outages for the hour, in MW.\r\n",
            "format": "double"
          }
        }
      },
      "LoadOutageVO": {
        "type": "object",
        "properties": {
          "loadOutagePerHourVO": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/LoadOutagePerHourVO"
            }
          }
        }
      },
      "HealthComponent": {
        "type": "object",
        "properties": {
          "description": {
            "type": "string"
          },
          "status": {
            "type": "string"
          }
        }
      },
      "SystemHealth": {
        "type": "object",
        "properties": {
          "description": {
            "type": "string"
          },
          "status": {
            "type": "string"
          },
          "components": {
            "type": "object",
            "additionalProperties": {
              "$ref": "#/components/schemas/HealthComponent"
            }
          },
          "details": {
            "type": "object",
            "additionalProperties": {
              "$ref": "#/components/schemas/HealthComponent"
            }
          },
          "groups": {
            "uniqueItems": true,
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        }
      },
      "LoadOutageReportGetRequest": {
        "pattern": "^\\d{4}\\-(0[1-9]|1[012])\\-(0[1-9]|[12][0-9]|3[01])$",
        "type": "string",
        "x-apim-inline": true
      },
      "LoadOutageReportGetRequest-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/loadoutageforecast-api-v1?api-version=2022-04-01-preview",
        "status": 200,
        "note": "API metadata"
      },
      {
        "url": "https://developer-apim.aeso.ca/developer/apis/loadoutageforecast-api-v1?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/loadoutageforecast-api-v1/operations?api-version=2022-04-01-preview",
        "status": 200,
        "note": "operation list"
      },
      {
        "url": "https://developer-apim.aeso.ca/developer/apis/loadoutageforecast-api-v1/schemas?api-version=2022-04-01-preview",
        "status": 200,
        "note": "schema list"
      },
      {
        "url": "https://developer-apim.aeso.ca/developer/apis/loadoutageforecast-api-v1/operations/getLoadOutageRangeReport?api-version=2022-04-01-preview",
        "status": 200,
        "note": "operation detail"
      },
      {
        "url": "https://developer-apim.aeso.ca/developer/apis/loadoutageforecast-api-v1/schemas/68347a95445a9615c44eeb17?api-version=2022-04-01-preview",
        "status": 200,
        "note": "schema document"
      }
    ]
  }
}