Elexon BMRS Datasets API

Raw datasets as received from the National Grid, with associated metadata. The output in JSON format matches IRIS, and can be used interchangeably with IRIS output.

OpenAPI Specification

elexon-bmrs-datasets-api-openapi.yml Raw ↑
openapi: 3.0.4
info:
  title: Insights.Api Balancing Mechanism Dynamic BMRS Datasets API
  version: '1.0'
  description: Dynamic data.
servers:
- url: https://data.elexon.co.uk/bmrs/api/v1
tags:
- name: BMRS Datasets
  description: Raw datasets as received from the National Grid, with associated metadata. The output in JSON format matches IRIS, and can be used interchangeably with IRIS output.
paths:
  /datasets/NONBM:
    get:
      tags:
      - BMRS Datasets
      summary: Non-BM STOR (NONBM)
      description: "This endpoint provides data about the Short Term Operating Reserves (STOR) that have been made use of\nby NGESO. This is activity that is outside of the Balancing Mechanism and takes place to meet the need to\nincrease generation or decrease demand.\n            \nTo retrieve data from a particular time window, use the optional start and end time parameters.\nThese times should be expressed as defined within\n<a href=\"https://datatracker.ietf.org/doc/html/rfc3339#section-5.6\" target=\"_blank\">RFC 3339</a>.\nIf no time window is chosen, the default output will be the latest published data."
      parameters:
      - name: from
        in: query
        description: The start of the data publish time window.
        schema:
          type: string
          format: date-time
          example: 2022-06-25T13:15Z
        example: 2022-06-25T13:15Z
      - name: to
        in: query
        description: The end of the data publish time window.
        schema:
          type: string
          format: date-time
          example: 2022-06-27T19:45Z
        example: 2022-06-27T19:45Z
      - name: format
        in: query
        description: Response data format. Use json/xml to include metadata.
        schema:
          enum:
          - json
          - xml
          - csv
          type: string
      responses:
        '200':
          description: Data retrieved
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/Insights.Api.Models.Responses.DatasetResponse-1_Insights.Api.Models.Responses.Generation.DatasetRows.NonBmStorData'
            application/json:
              schema:
                $ref: '#/components/schemas/Insights.Api.Models.Responses.DatasetResponse-1_Insights.Api.Models.Responses.Generation.DatasetRows.NonBmStorData'
            text/json:
              schema:
                $ref: '#/components/schemas/Insights.Api.Models.Responses.DatasetResponse-1_Insights.Api.Models.Responses.Generation.DatasetRows.NonBmStorData'
            application/xml:
              schema:
                $ref: '#/components/schemas/Insights.Api.Models.Responses.DatasetResponse-1_Insights.Api.Models.Responses.Generation.DatasetRows.NonBmStorData'
            text/xml:
              schema:
                $ref: '#/components/schemas/Insights.Api.Models.Responses.DatasetResponse-1_Insights.Api.Models.Responses.Generation.DatasetRows.NonBmStorData'
            text/csv:
              schema:
                $ref: '#/components/schemas/Insights.Api.Models.Responses.DatasetResponse-1_Insights.Api.Models.Responses.Generation.DatasetRows.NonBmStorData'
        '429':
          description: Too many requests
        '400':
          description: Error with query parameters - see response for details
        '500':
          description: Server error - please try again later
  /datasets/NONBM/stream:
    get:
      tags:
      - BMRS Datasets
      summary: Non-BM STOR (NONBM) stream
      description: "This endpoint provides data about the Short Term Operating Reserves (STOR) that have been made use of\nby NGESO. This is activity that is outside of the Balancing Mechanism and takes place to meet the need to\nincrease generation or decrease demand.\n            \nTo retrieve data from a particular time window, use the optional start and end time parameters.\nThese times should be expressed as defined within\n<a href=\"https://datatracker.ietf.org/doc/html/rfc3339#section-5.6\" target=\"_blank\">RFC 3339</a>.\nIf no time window is chosen, the default output will be the latest published data.\n            \nThis endpoint has an optimised JSON payload and is aimed at frequent requests for the Non-BM STOR data."
      parameters:
      - name: from
        in: query
        description: The start of the data publish time window.
        schema:
          type: string
          format: date-time
          example: 2022-06-25T13:15Z
        example: 2022-06-25T13:15Z
      - name: to
        in: query
        description: The end of the data publish time window.
        schema:
          type: string
          format: date-time
          example: 2022-06-27T19:45Z
        example: 2022-06-27T19:45Z
      responses:
        '200':
          description: Data retrieved
          content:
            text/plain:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Insights.Api.Models.Responses.Generation.DatasetRows.NonBmStorData'
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Insights.Api.Models.Responses.Generation.DatasetRows.NonBmStorData'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Insights.Api.Models.Responses.Generation.DatasetRows.NonBmStorData'
        '429':
          description: Too many requests
        '400':
          description: Error with query parameters - see response for details
        '500':
          description: Server error - please try again later
  /datasets/PN:
    get:
      tags:
      - BMRS Datasets
      summary: Physical Notifications (PN)
      description: "This endpoint provides Physical Notification data received from NGESO. It returns the data valid for a single settlement period.\nA Physical Notification is the best estimate of the level of generation or demand that a participant in the BM expects a BM Unit to export or import, respectively, in a Settlement Period.\n            \nPhysical Notifications are submitted as a series of point MW values.\n            \nThe settlement period to query must be specified as a date and settlement period. The date should be provided in the format yyyy-MM-dd."
      parameters:
      - name: settlementDate
        in: query
        description: The settlement date to query. This must be in the format yyyy-MM-dd.
        required: true
        schema:
          type: string
          format: date
          example: '2022-07-01'
        example: '2022-07-01'
      - name: settlementPeriod
        in: query
        description: The settlement period to query. This should be an integer from 1-50 inclusive.
        required: true
        schema:
          type: integer
          format: int32
          example: 5
        example: 5
      - name: bmUnit
        in: query
        description: The BM units to query. Add each unit separately. If no BM unit is selected all BM units will be displayed.
        schema:
          type: array
          items:
            type: string
          example:
          - T_ABRBO-1
        example:
        - T_ABRBO-1
      - name: format
        in: query
        description: Response data format. Use json/xml to include metadata.
        schema:
          enum:
          - json
          - xml
          - csv
          type: string
      responses:
        '200':
          description: Data retrieved
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/Insights.Api.Models.Responses.DatasetResponse-1_Insights.Api.Models.Responses.Balancing.Physical.DatasetRows.PhysicalNotificationData'
            application/json:
              schema:
                $ref: '#/components/schemas/Insights.Api.Models.Responses.DatasetResponse-1_Insights.Api.Models.Responses.Balancing.Physical.DatasetRows.PhysicalNotificationData'
            text/json:
              schema:
                $ref: '#/components/schemas/Insights.Api.Models.Responses.DatasetResponse-1_Insights.Api.Models.Responses.Balancing.Physical.DatasetRows.PhysicalNotificationData'
            application/xml:
              schema:
                $ref: '#/components/schemas/Insights.Api.Models.Responses.DatasetResponse-1_Insights.Api.Models.Responses.Balancing.Physical.DatasetRows.PhysicalNotificationData'
            text/xml:
              schema:
                $ref: '#/components/schemas/Insights.Api.Models.Responses.DatasetResponse-1_Insights.Api.Models.Responses.Balancing.Physical.DatasetRows.PhysicalNotificationData'
            text/csv:
              schema:
                $ref: '#/components/schemas/Insights.Api.Models.Responses.DatasetResponse-1_Insights.Api.Models.Responses.Balancing.Physical.DatasetRows.PhysicalNotificationData'
        '429':
          description: Too many requests
        '400':
          description: Error with query parameters - see response for details
        '500':
          description: Server error - please try again later
  /datasets/PN/stream:
    get:
      tags:
      - BMRS Datasets
      summary: Physical Notifications (PN) stream
      description: "This endpoint provides Physical Notification data received from NGESO.\nA Physical Notification is the best estimate of the level of generation or demand that a participant in the BM expects a BM Unit to export or import, respectively, in a Settlement Period.\n            \nPhysical Notifications are submitted as a series of point MW values.\n            \nThe settlement period to query can be specified as a date and settlement period, or as a datetime\nwhich will resolve to the settlement period that time falls within.\nIf a settlement period is provided, it will take precedence over the time portion of the datetime.\n\nSome examples of date parameter combinations are shown below.\n            \nFiltering from settlement datetime to settlement datetime:\n            \n     /datasets/PN/stream?from=2022-07-01T00:00Z&to=2022-07-03T06:00Z\n            \nFiltering from settlement datetime to settlement date and period:\n            \n     /datasets/PN/stream?from=2022-07-01T00:00Z&to=2022-07-03&settlementPeriodTo=15\n            \nFiltering from settlement date and period to settlement datetime:\n            \n     /datasets/PN/stream?from=2022-07-01&settlementPeriodFrom=3&to=2022-07-03T06:00Z\n            \nFiltering from settlement date and period to settlement date and period:\n            \n    /datasets/PN/stream?from=2022-07-01&settlementPeriodFrom=3&to=2022-07-03&settlementPeriodTo=15\n\nThis endpoint has an optimised JSON payload and is aimed at frequent requests for PN data."
      parameters:
      - name: from
        in: query
        description: The settlement date to query from.
        required: true
        schema:
          type: string
          format: date-time
          example: '2022-07-01'
        example: '2022-07-01'
      - name: to
        in: query
        description: The settlement date to query up to.
        required: true
        schema:
          type: string
          format: date-time
          example: '2022-07-03'
        example: '2022-07-03'
      - name: settlementPeriodFrom
        in: query
        description: The "from" settlement period for the filter. This should be an integer from 1-50 inclusive.
        schema:
          type: integer
          format: int32
          example: 3
        example: 3
      - name: settlementPeriodTo
        in: query
        description: The "to" settlement period for the filter. This should be an integer from 1-50 inclusive.
        schema:
          type: integer
          format: int32
          example: 15
        example: 15
      - name: bmUnit
        in: query
        description: The BM units to query. Add each unit separately. If no BM unit is selected all BM units will be displayed.
        schema:
          type: array
          items:
            type: string
          example:
          - T_ABRBO-1
        example:
        - T_ABRBO-1
      responses:
        '200':
          description: Data retrieved
          content:
            text/plain:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Insights.Api.Models.Responses.Balancing.Physical.DatasetRows.PhysicalNotificationData'
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Insights.Api.Models.Responses.Balancing.Physical.DatasetRows.PhysicalNotificationData'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Insights.Api.Models.Responses.Balancing.Physical.DatasetRows.PhysicalNotificationData'
        '429':
          description: Too many requests
        '400':
          description: Error with query parameters - see response for details
        '500':
          description: Server error - please try again later
  /datasets/QPN:
    get:
      tags:
      - BMRS Datasets
      summary: Quiescent Physical Notifications (QPN)
      description: "This endpoint provides Quiescent Physical Notification data received from NGESO. It returns the data valid for a single settlement period.\nQuiescent Physical Notifications describe the MW levels to be deducted from the Physical Notification of a BM Unit to determine a resultant operating level.\n            \nThe settlement period to query must be specified as a date and settlement period. The date should be provided in the format yyyy-MM-dd."
      parameters:
      - name: settlementDate
        in: query
        description: The settlement date to query. This must be in the format yyyy-MM-dd.
        required: true
        schema:
          type: string
          format: date
          example: '2022-07-01'
        example: '2022-07-01'
      - name: settlementPeriod
        in: query
        description: The settlement period to query. This should be an integer from 1-50 inclusive.
        required: true
        schema:
          type: integer
          format: int32
          example: 5
        example: 5
      - name: bmUnit
        in: query
        description: The BM units to query. Add each unit separately. If no BM unit is selected all BM units will be displayed.
        schema:
          type: array
          items:
            type: string
          example:
          - T_ABRBO-1
        example:
        - T_ABRBO-1
      - name: format
        in: query
        description: Response data format. Use json/xml to include metadata.
        schema:
          enum:
          - json
          - xml
          - csv
          type: string
      responses:
        '200':
          description: Data retrieved
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/Insights.Api.Models.Responses.DatasetResponse-1_Insights.Api.Models.Responses.Balancing.Physical.DatasetRows.PhysicalNotificationData'
            application/json:
              schema:
                $ref: '#/components/schemas/Insights.Api.Models.Responses.DatasetResponse-1_Insights.Api.Models.Responses.Balancing.Physical.DatasetRows.PhysicalNotificationData'
            text/json:
              schema:
                $ref: '#/components/schemas/Insights.Api.Models.Responses.DatasetResponse-1_Insights.Api.Models.Responses.Balancing.Physical.DatasetRows.PhysicalNotificationData'
            application/xml:
              schema:
                $ref: '#/components/schemas/Insights.Api.Models.Responses.DatasetResponse-1_Insights.Api.Models.Responses.Balancing.Physical.DatasetRows.PhysicalNotificationData'
            text/xml:
              schema:
                $ref: '#/components/schemas/Insights.Api.Models.Responses.DatasetResponse-1_Insights.Api.Models.Responses.Balancing.Physical.DatasetRows.PhysicalNotificationData'
            text/csv:
              schema:
                $ref: '#/components/schemas/Insights.Api.Models.Responses.DatasetResponse-1_Insights.Api.Models.Responses.Balancing.Physical.DatasetRows.PhysicalNotificationData'
        '429':
          description: Too many requests
        '400':
          description: Error with query parameters - see response for details
        '500':
          description: Server error - please try again later
  /datasets/QPN/stream:
    get:
      tags:
      - BMRS Datasets
      summary: Quiescent Physical Notifications (QPN) stream
      description: "This endpoint provides Quiescent Physical Notification data received from NGESO.\nQuiescent Physical Notifications describe the MW levels to be deducted from the Physical Notification of a BM Unit to determine a resultant operating level.\n            \nThe settlement period to query can be specified as a date and settlement period, or as a datetime\nwhich will resolve to the settlement period that time falls within.\nIf a settlement period is provided, it will take precedence over the time portion of the datetime.\n\nSome examples of date parameter combinations are shown below.\n            \nFiltering from settlement datetime to settlement datetime:\n            \n     /datasets/QPN/stream?from=2022-07-01T00:00Z&to=2022-07-03T06:00Z\n            \nFiltering from settlement datetime to settlement date and period:\n            \n     /datasets/QPN/stream?from=2022-07-01T00:00Z&to=2022-07-03&settlementPeriodTo=15\n            \nFiltering from settlement date and period to settlement datetime:\n            \n     /datasets/QPN/stream?from=2022-07-01&settlementPeriodFrom=3&to=2022-07-03T06:00Z\n            \nFiltering from settlement date and period to settlement date and period:\n            \n    /datasets/QPN/stream?from=2022-07-01&settlementPeriodFrom=3&to=2022-07-03&settlementPeriodTo=15\n\nThis endpoint has an optimised JSON payload and is aimed at frequent requests for QPN data."
      parameters:
      - name: from
        in: query
        description: The settlement date to query from.
        required: true
        schema:
          type: string
          format: date-time
          example: '2022-07-01'
        example: '2022-07-01'
      - name: to
        in: query
        description: The settlement date to query up to.
        required: true
        schema:
          type: string
          format: date-time
          example: '2022-07-03'
        example: '2022-07-03'
      - name: settlementPeriodFrom
        in: query
        description: The "from" settlement period for the filter. This should be an integer from 1-50 inclusive.
        schema:
          type: integer
          format: int32
          example: 3
        example: 3
      - name: settlementPeriodTo
        in: query
        description: The "to" settlement period for the filter. This should be an integer from 1-50 inclusive.
        schema:
          type: integer
          format: int32
          example: 15
        example: 15
      - name: bmUnit
        in: query
        description: The BM units to query. Add each unit separately. If no BM unit is selected all BM units will be displayed.
        schema:
          type: array
          items:
            type: string
          example:
          - T_ABRBO-1
        example:
        - T_ABRBO-1
      responses:
        '200':
          description: Data retrieved
          content:
            text/plain:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Insights.Api.Models.Responses.Balancing.Physical.DatasetRows.PhysicalNotificationData'
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Insights.Api.Models.Responses.Balancing.Physical.DatasetRows.PhysicalNotificationData'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Insights.Api.Models.Responses.Balancing.Physical.DatasetRows.PhysicalNotificationData'
        '429':
          description: Too many requests
        '400':
          description: Error with query parameters - see response for details
        '500':
          description: Server error - please try again later
  /datasets/MELS:
    get:
      tags:
      - BMRS Datasets
      summary: Maximum Export Limit (MELS)
      description: "This endpoint provides Maximum Export Limit data received from NGESO.\n\nThe Maximum Export Limit is the maximum power export level of a particular BM Unit at a particular time.\nThe data is updated every 30 minutes and within 15 minutes of the end of the effective Settlement Period.\nMELs are submitted as a series of MW values and associated times in UTC.\n\nBy default, the from and to parameters filter the data by time inclusively. If the settlementPeriodFrom or\nsettlementPeriodTo parameters are provided, the corresponding from or to parameter instead filters on settlement\ndate, allowing for searching by a combination of time and/or settlement date & settlement period.\nNote: When filtering via settlement date, from/to are treated as Dates only, with the time being ignored. For\nexample, 2022-06-01T00:00Z and 2022-06-01T11:11Z are both treated as the settlement date 2022-06-01.\n            \nAll Dates and DateTimes should be expressed as defined within\n<a href=\"https://datatracker.ietf.org/doc/html/rfc3339#section-5.6\" target=\"_blank\">RFC 3339</a>.\n            \nSome examples of date parameter combinations are shown below.\n            \nFiltering from start time to start time:\n            \n    /datasets/mels?from=2022-06-01T00:00Z&to=2022-07-01T00:00Z\n            \nFiltering from start time to settlement date and period:\n            \n    /datasets/mels?from=2022-06-01T00:00Z&to=2022-07-01T00:00Z&settlementPeriodTo=1\n            \nFiltering from settlement date and period to start time:\n            \n    /datasets/mels?from=2022-06-01T00:00Z&to=2022-07-01T00:00Z&settlementPeriodFrom=1\n            \nFiltering from settlement date and period to settlement date and period:\n            \n    /datasets/mels?from=2022-06-01T00:00Z&to=2022-07-01T00:00Z&settlementPeriodFrom=1&settlementPeriodTo=1"
      parameters:
      - name: from
        in: query
        description: The "from" start time or settlement date for the filter.
        required: true
        schema:
          type: string
          format: date-time
          example: 2022-10-12T00:00Z
        example: 2022-10-12T00:00Z
      - name: to
        in: query
        description: The "to" start time or settlement date for the filter.
        required: true
        schema:
          type: string
          format: date-time
          example: 2022-10-12T01:00Z
        example: 2022-10-12T01:00Z
      - name: settlementPeriodFrom
        in: query
        description: The "from" settlement period for the filter. This should be an integer from 1-50 inclusive.
        schema:
          type: integer
          format: int32
      - name: settlementPeriodTo
        in: query
        description: The "to" settlement period for the filter. This should be an integer from 1-50 inclusive.
        schema:
          type: integer
          format: int32
      - name: bmUnit
        in: query
        description: The BM units to query. Add each unit separately. If no BM unit is selected all BM units will be displayed.
        schema:
          type: array
          items:
            type: string
          example:
          - T_DRAXX-1
        example:
        - T_DRAXX-1
      - name: format
        in: query
        description: Response data format. Use json/xml to include metadata.
        schema:
          enum:
          - json
          - xml
          - csv
          type: string
      responses:
        '200':
          description: Data retrieved
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/Insights.Api.Models.Responses.DatasetResponse-1_Insights.Api.Models.Responses.Balancing.Physical.DatasetRows.DeliveryLimitMaxData'
            application/json:
              schema:
                $ref: '#/components/schemas/Insights.Api.Models.Responses.DatasetResponse-1_Insights.Api.Models.Responses.Balancing.Physical.DatasetRows.DeliveryLimitMaxData'
            text/json:
              schema:
                $ref: '#/components/schemas/Insights.Api.Models.Responses.DatasetResponse-1_Insights.Api.Models.Responses.Balancing.Physical.DatasetRows.DeliveryLimitMaxData'
            application/xml:
              schema:
                $ref: '#/components/schemas/Insights.Api.Models.Responses.DatasetResponse-1_Insights.Api.Models.Responses.Balancing.Physical.DatasetRows.DeliveryLimitMaxData'
            text/xml:
              schema:
                $ref: '#/components/schemas/Insights.Api.Models.Responses.DatasetResponse-1_Insights.Api.Models.Responses.Balancing.Physical.DatasetRows.DeliveryLimitMaxData'
            text/csv:
              schema:
                $ref: '#/components/schemas/Insights.Api.Models.Responses.DatasetResponse-1_Insights.Api.Models.Responses.Balancing.Physical.DatasetRows.DeliveryLimitMaxData'
        '429':
          description: Too many requests
        '400':
          description: Error with query parameters - see response for details
        '500':
          description: Server error - please try again later
  /datasets/MELS/stream:
    get:
      tags:
      - BMRS Datasets
      summary: Maximum Export Limit (MELS) stream
      description: "This endpoint provides Maximum Export Limit data received from NGESO.\n\nThe Maximum Export Limit is the maximum power export level of a particular BM Unit at a particular time.\nThe data is updated every 30 minutes and within 15 minutes of the end of the effective Settlement Period.\nMELs are submitted as a series of MW values and associated times in UTC.\n\nBy default, the from and to parameters filter the data by time inclusively. If the settlementPeriodFrom or\nsettlementPeriodTo parameters are provided, the corresponding from or to parameter instead filters on settlement\ndate, allowing for searching by a combination of time and/or settlement date & settlement period.\nNote: When filtering via settlement date, from/to are treated as Dates only, with the time being ignored. For\nexample, 2022-06-01T00:00Z and 2022-06-01T11:11Z are both treated as the settlement date 2022-06-01.\n            \nAll Dates and DateTimes should be expressed as defined within\n<a href=\"https://datatracker.ietf.org/doc/html/rfc3339#section-5.6\" target=\"_blank\">RFC 3339</a>.\n            \nSome examples of date parameter combinations are shown below.\n            \nFiltering from start time to start time:\n            \n    /datasets/mels/stream?from=2022-06-01T00:00Z&to=2022-07-01T00:00Z\n            \nFiltering from start time to settlement date and period:\n            \n    /datasets/mels/stream?from=2022-06-01T00:00Z&to=2022-07-01T00:00Z&settlementPeriodTo=1\n            \nFiltering from settlement date and period to start time:\n            \n    /datasets/mels/stream?from=2022-06-01T00:00Z&to=2022-07-01T00:00Z&settlementPeriodFrom=1\n            \nFiltering from settlement date and period to settlement date and period:\n            \n    /datasets/mels/stream?from=2022-06-01T00:00Z&to=2022-07-01T00:00Z&settlementPeriodFrom=1&settlementPeriodTo=1\nThis endpoint has an optimised JSON payload and is aimed at frequent requests for MELS data."
      parameters:
      - name: from
        in: query
        description: The "from" start time or settlement date for the filter.
        required: true
        schema:
          type: string
          format: date-time
          example: 2022-10-12T00:00Z
        example: 2022-10-12T00:00Z
      - name: to
        in: query
        description: The "to" start time or settlement date for the filter.
        required: true
        schema:
          type: string
          format: date-time
          example: 2022-10-12T01:00Z
        example: 2022-10-12T01:00Z
      - name: settlementPeriodFrom
        in: query
        description: The "from" settlement period for the filter. This should be an integer from 1-50 inclusive.
        schema:
          type: integer
          format: int32
      - name: settlementPeriodTo
        in: query
        description: The "to" settlement period for the filter. This should be an integer from 1-50 inclusive.
        schema:
          type: integer
          format: int32
      - name: bmUnit
        in: query
        description: The BM units to query. Add each unit separately. If no BM unit is selected all BM units will be displayed.
        schema:
          type: array
          items:
            type: string
          example:
          - T_DRAXX-1
        example:
        - T_DRAXX-1
      responses:
        '200':
          description: Data retrieved
          content:
            text/plain:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Insights.Api.Models.Responses.Balancing.Physical.DatasetRows.DeliveryLimitMaxData'
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Insights.Api.Models.Responses.Balancing.Physical.DatasetRows.DeliveryLimitMaxData'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Insights.Api.Models.Responses.Balancing.Physical.DatasetRows.DeliveryLimitMaxData'
        '429':
          description: Too many requests
        '400':
          description: Error with query parameters - see response for details
        '500':
          description: Server error - please try again later
  /datasets/MILS:
    get:
      tags:
      - BMRS Datasets
      summary: Maximum Import Limit (MILS)
      description: "This endpoint provides Maximum Import Limit data received from NGESO.\n\nThe maximum power import level of a particular BM Unit at a particular time.\nThe data is updated every 30 minutes and within 15 minutes of the end of the effective Settlement Period.\nMILs are submitted as a series of MW values and associated times in UTC.\n\nBy default, the from and to parameters filter the data by time inclusively. If the settlementPeriodFrom or\nsettlementPeriodTo parameters are provided, the corresponding from or to parameter instead filters on settlement\ndate, allowing for searching by a combination of time and/or settlement date & settlement period.\nNote: When filtering via settlement date, from/to are treated as Dates only, with the time being ignored. For\nexample, 2022-06-01T00:00Z and 2022-06-01T11:11Z are both treated as the settlement date 2022-06-01.\n            \nAll Dates and DateTimes should be expressed as defined within\n<a href=\"https://datatracker.ietf.org/doc/html/rfc3339#section-5.6\" target=\"_blank\">RFC 3339</a>.\n            \nSome examples of date parameter combinations are shown below.\n            \nFiltering from start time to start time:\n            \n    /datasets/mils?from=2022-06-01T00:00Z&to=2022-07-01T00:00Z\n            \nFiltering from start time to settlement date and period:\n            \n    /datasets/mils?from=2022-06-01T00:00Z&to=2022-07-01T00:00Z&settlementPeriodTo=1\n            \nFiltering from settlement date and period to start time:\n            \n    /datasets/mils?from=2022-06-01T00:00Z&to=2022-07-01T00:00Z&settlementPeriodFrom=1\n            \nFiltering from settlement date and period to settlement date and period:\n            \n    /datasets/mils?from=2022-06-01T00:00Z&to=2022-07-01T00:00Z&settlementPeriodFrom=1&settlementPeriodTo=1"
      parameters:
      - name: from
        in: query
        description: The "from" start time or settlement date for the filter.
        required: true
        schema:
          type: string
          format: date-time
          example: 2022-10-12T00:00Z
        example: 2022-10-12T00:00Z
      - name: to
        in: query
        description: The "to" start time or settlement date for the filter.
        required: true
        schema:
          type: string
          format: date-time
          example: 2022-10-12T01:00Z
        example: 2022-10-12T01:00Z
      - name: settlementPeriodFrom
        in: query
        description: The "from" settlement period for the filter. This should be an integer fro

# --- truncated at 32 KB (568 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/elexon/refs/heads/main/openapi/elexon-bmrs-datasets-api-openapi.yml