Documentation
Documentation
https://developer.data.elexon.co.uk/
Documentation
https://bmrs.elexon.co.uk/api-documentation/guidance
openapi: 3.0.4
info:
title: Insights.Api Balancing Mechanism Dynamic REMIT API
version: '1.0'
description: Dynamic data.
servers:
- url: https://data.elexon.co.uk/bmrs/api/v1
tags:
- name: REMIT
description: REMIT messages, including previous revisions.
paths:
/remit:
get:
tags:
- REMIT
summary: Bulk fetch message details by IDs
description: This endpoint provides one or more REMIT messages based on the given message IDs.
parameters:
- name: messageId
in: query
required: true
schema:
type: array
items:
type: integer
format: int32
example:
- 1
- 2
- 3
- 4
example:
- 1
- 2
- 3
- 4
- name: format
in: query
description: Response data format. Use json/xml to include metadata.
schema:
enum:
- json
- xml
type: string
responses:
'200':
description: Data retrieved
content:
application/json:
schema:
$ref: '#/components/schemas/Insights.Api.Models.Responses.ResponseWithMetadata-1_Insights.Api.Models.Responses.Transparency.Remit.RemitMessageWithId'
application/xml:
schema:
$ref: '#/components/schemas/Insights.Api.Models.Responses.ResponseWithMetadata-1_Insights.Api.Models.Responses.Transparency.Remit.RemitMessageWithId'
'429':
description: Too many requests
'400':
description: Error with query parameters - see response for details
'404':
description: No data found for given query parameters
'500':
description: Server error - please try again later
/remit/{messageId}:
get:
tags:
- REMIT
summary: Fetch message details by ID
description: This endpoint provides a REMIT message based on a given message ID.
parameters:
- name: messageId
in: path
required: true
schema:
type: integer
format: int32
- name: format
in: query
description: Response data format. Use json/xml to include metadata.
schema:
enum:
- json
- xml
type: string
responses:
'200':
description: Data retrieved
content:
application/json:
schema:
$ref: '#/components/schemas/Insights.Api.Models.Responses.ResponseWithMetadata-1_Insights.Api.Models.Responses.Transparency.Remit.RemitMessageWithId'
application/xml:
schema:
$ref: '#/components/schemas/Insights.Api.Models.Responses.ResponseWithMetadata-1_Insights.Api.Models.Responses.Transparency.Remit.RemitMessageWithId'
'429':
description: Too many requests
'400':
description: Error with query parameters - see response for details
'404':
description: No data found for given id
'500':
description: Server error - please try again later
/remit/search:
get:
tags:
- REMIT
summary: Fetch message details by mRID
description: 'This endpoint provides one or more REMIT messages based on the given mRID and revision number. If none is given
it returns the REMIT message revision with the latest revision number.'
parameters:
- name: mrid
in: query
required: true
schema:
type: string
example: 48X000000000080X-NGET-RMT-00014669
example: 48X000000000080X-NGET-RMT-00014669
- name: revisionNumber
in: query
schema:
type: integer
format: int32
- name: format
in: query
description: Response data format. Use json/xml to include metadata.
schema:
enum:
- json
- xml
type: string
responses:
'200':
description: Data retrieved
content:
application/json:
schema:
$ref: '#/components/schemas/Insights.Api.Models.Responses.ResponseWithMetadata-1_Insights.Api.Models.Responses.Transparency.Remit.RemitMessageWithId'
application/xml:
schema:
$ref: '#/components/schemas/Insights.Api.Models.Responses.ResponseWithMetadata-1_Insights.Api.Models.Responses.Transparency.Remit.RemitMessageWithId'
'429':
description: Too many requests
'400':
description: Error with query parameters - see response for details
'404':
description: No data found for given query parameters
'500':
description: Server error - please try again later
/remit/revisions:
get:
tags:
- REMIT
summary: List all message revisions
description: 'This endpoint provides all revisions for a given REMIT message.
The message can be specified in two ways:
- the mRID
- the message ID of a specific revision, which will return the entire list of revisions for that message'
parameters:
- name: mrid
in: query
schema:
type: string
example: 48X000000000080X-NGET-RMT-00014669
example: 48X000000000080X-NGET-RMT-00014669
- name: messageId
in: query
schema:
type: integer
format: int32
example: 1
example: 1
- name: format
in: query
description: Response data format. Use json/xml to include metadata.
schema:
enum:
- json
- xml
type: string
responses:
'200':
description: Data retrieved
content:
application/json:
schema:
$ref: '#/components/schemas/Insights.Api.Models.Responses.ResponseWithMetadata-1_Insights.Api.Models.Responses.Transparency.Remit.RemitMessageIdentifierWithUrl'
application/xml:
schema:
$ref: '#/components/schemas/Insights.Api.Models.Responses.ResponseWithMetadata-1_Insights.Api.Models.Responses.Transparency.Remit.RemitMessageIdentifierWithUrl'
'429':
description: Too many requests
'400':
description: Error with query parameters - see response for details
'404':
description: No data found for given query parameters
'500':
description: Server error - please try again later
/remit/list/by-publish:
get:
tags:
- REMIT
summary: List messages by publish time
description: "This endpoint provides a list of REMIT message identifiers based on the publish time and other optional parameters.\n \n- Filtering by LatestRevisionOnly (default = true):\n if true, include only the latest revision of each message.\n \n- Filtering by ProfileOnly (default = false):\n if true, include only messages with an outage profile."
parameters:
- name: from
in: query
required: true
schema:
type: string
format: date-time
example: 2023/04/13 07:00
example: 2023/04/13 07:00
- name: to
in: query
required: true
schema:
type: string
format: date-time
example: 2023/04/14 07:00
example: 2023/04/14 07:00
- name: participantId
in: query
schema:
type: string
example: EECL
example: EECL
- name: assetId
in: query
schema:
type: string
example: T_RATSGT-2
example: T_RATSGT-2
- name: messageType
in: query
schema:
type: string
example: UnavailabilitiesOfElectricityFacilities
example: UnavailabilitiesOfElectricityFacilities
- name: unavailabilityType
in: query
schema:
type: string
example: Planned
example: Planned
- name: eventType
in: query
schema:
type: array
items:
type: string
example:
- Production Unavailability
- Transmission unavailability
example:
- Production Unavailability
- Transmission unavailability
- name: fuelType
in: query
schema:
type: array
items:
type: string
example:
- Fossil Hard coal
- Biomass
example:
- Fossil Hard coal
- Biomass
- name: latestRevisionOnly
in: query
schema:
type: boolean
example: true
example: true
- name: profileOnly
in: query
schema:
type: boolean
example: false
example: false
- name: format
in: query
description: Response data format. Use json/xml to include metadata.
schema:
enum:
- json
- xml
type: string
responses:
'200':
description: Data retrieved
content:
application/json:
schema:
$ref: '#/components/schemas/Insights.Api.Models.Responses.ResponseWithMetadata-1_Insights.Api.Models.Responses.Transparency.Remit.RemitMessageIdentifierWithUrl'
application/xml:
schema:
$ref: '#/components/schemas/Insights.Api.Models.Responses.ResponseWithMetadata-1_Insights.Api.Models.Responses.Transparency.Remit.RemitMessageIdentifierWithUrl'
'429':
description: Too many requests
'400':
description: Error with query parameters - see response for details
'500':
description: Server error - please try again later
/remit/list/by-publish/stream:
get:
tags:
- REMIT
summary: List messages by publish time (stream)
description: "This endpoint provides a list of REMIT message identifiers based on the publish time and other optional parameters.\n \n- Filtering by LatestRevisionOnly (default = true):\n if true, include only the latest revision of each message.\n \n- Filtering by ProfileOnly (default = false):\n if true, include only messages with an outage profile.\n \nThis endpoint has an optimised JSON payload and is aimed at frequent requests for this data."
parameters:
- name: from
in: query
required: true
schema:
type: string
format: date-time
example: 2023/04/13 07:00
example: 2023/04/13 07:00
- name: to
in: query
required: true
schema:
type: string
format: date-time
example: 2023/04/14 07:00
example: 2023/04/14 07:00
- name: participantId
in: query
schema:
type: string
example: EECL
example: EECL
- name: assetId
in: query
schema:
type: string
example: T_RATSGT-2
example: T_RATSGT-2
- name: messageType
in: query
schema:
type: string
example: UnavailabilitiesOfElectricityFacilities
example: UnavailabilitiesOfElectricityFacilities
- name: unavailabilityType
in: query
schema:
type: string
example: Planned
example: Planned
- name: eventType
in: query
schema:
type: array
items:
type: string
example:
- Production Unavailability
- Transmission unavailability
example:
- Production Unavailability
- Transmission unavailability
- name: fuelType
in: query
schema:
type: array
items:
type: string
example:
- Fossil Hard coal
- Biomass
example:
- Fossil Hard coal
- Biomass
- name: latestRevisionOnly
in: query
schema:
type: boolean
example: true
example: true
- name: profileOnly
in: query
schema:
type: boolean
example: false
example: false
responses:
'200':
description: Data retrieved
content:
text/plain:
schema:
type: array
items:
$ref: '#/components/schemas/Insights.Api.Models.Responses.Transparency.Remit.RemitMessageIdentifierWithUrl'
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/Insights.Api.Models.Responses.Transparency.Remit.RemitMessageIdentifierWithUrl'
text/json:
schema:
type: array
items:
$ref: '#/components/schemas/Insights.Api.Models.Responses.Transparency.Remit.RemitMessageIdentifierWithUrl'
'429':
description: Too many requests
'400':
description: Error with query parameters - see response for details
'500':
description: Server error - please try again later
/remit/list/by-event:
get:
tags:
- REMIT
summary: List messages by event time
description: "This endpoint provides a list of REMIT message identifiers based on the event start time, end time and other optional parameters.\n \n- Filtering by LatestRevisionOnly (default = true):\n if true, include only the latest revision of each message.\n \n- Filtering by ProfileOnly (default = false):\n if true, include only messages with an outage profile."
parameters:
- name: from
in: query
required: true
schema:
type: string
format: date-time
example: 2023/04/13 07:00
example: 2023/04/13 07:00
- name: to
in: query
required: true
schema:
type: string
format: date-time
example: 2023/04/14 07:00
example: 2023/04/14 07:00
- name: participantId
in: query
schema:
type: string
example: EECL
example: EECL
- name: assetId
in: query
schema:
type: string
example: T_RATSGT-2
example: T_RATSGT-2
- name: messageType
in: query
schema:
type: string
example: UnavailabilitiesOfElectricityFacilities
example: UnavailabilitiesOfElectricityFacilities
- name: unavailabilityType
in: query
schema:
type: string
example: Planned
example: Planned
- name: eventType
in: query
schema:
type: array
items:
type: string
example:
- Production Unavailability
- Transmission unavailability
example:
- Production Unavailability
- Transmission unavailability
- name: fuelType
in: query
schema:
type: array
items:
type: string
example:
- Fossil Hard coal
- Biomass
example:
- Fossil Hard coal
- Biomass
- name: latestRevisionOnly
in: query
schema:
type: boolean
example: true
example: true
- name: profileOnly
in: query
schema:
type: boolean
example: false
example: false
- name: format
in: query
description: Response data format. Use json/xml to include metadata.
schema:
enum:
- json
- xml
type: string
responses:
'200':
description: Data retrieved
content:
application/json:
schema:
$ref: '#/components/schemas/Insights.Api.Models.Responses.ResponseWithMetadata-1_Insights.Api.Models.Responses.Transparency.Remit.RemitMessageIdentifierWithUrl'
application/xml:
schema:
$ref: '#/components/schemas/Insights.Api.Models.Responses.ResponseWithMetadata-1_Insights.Api.Models.Responses.Transparency.Remit.RemitMessageIdentifierWithUrl'
'429':
description: Too many requests
'400':
description: Error with query parameters - see response for details
'500':
description: Server error - please try again later
/remit/list/by-event/stream:
get:
tags:
- REMIT
summary: List messages by event time (stream)
description: "This endpoint provides a list of REMIT message identifiers based on the event start, end time and other optional parameters.\n \n- Filtering by LatestRevisionOnly (default = true):\n if true, include only the latest revision of each message.\n \n- Filtering by ProfileOnly (default = false):\n if true, include only messages with an outage profile.\n \nThis endpoint has an optimised JSON payload and is aimed at frequent requests for this data."
parameters:
- name: from
in: query
required: true
schema:
type: string
format: date-time
example: 2023/04/13 07:00
example: 2023/04/13 07:00
- name: to
in: query
required: true
schema:
type: string
format: date-time
example: 2023/04/14 07:00
example: 2023/04/14 07:00
- name: participantId
in: query
schema:
type: string
example: EECL
example: EECL
- name: assetId
in: query
schema:
type: string
example: T_RATSGT-2
example: T_RATSGT-2
- name: messageType
in: query
schema:
type: string
example: UnavailabilitiesOfElectricityFacilities
example: UnavailabilitiesOfElectricityFacilities
- name: unavailabilityType
in: query
schema:
type: string
example: Planned
example: Planned
- name: eventType
in: query
schema:
type: array
items:
type: string
example:
- Production Unavailability
- Transmission unavailability
example:
- Production Unavailability
- Transmission unavailability
- name: fuelType
in: query
schema:
type: array
items:
type: string
example:
- Fossil Hard coal
- Biomass
example:
- Fossil Hard coal
- Biomass
- name: latestRevisionOnly
in: query
schema:
type: boolean
example: true
example: true
- name: profileOnly
in: query
schema:
type: boolean
example: false
example: false
responses:
'200':
description: Data retrieved
content:
text/plain:
schema:
type: array
items:
$ref: '#/components/schemas/Insights.Api.Models.Responses.Transparency.Remit.RemitMessageIdentifierWithUrl'
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/Insights.Api.Models.Responses.Transparency.Remit.RemitMessageIdentifierWithUrl'
text/json:
schema:
type: array
items:
$ref: '#/components/schemas/Insights.Api.Models.Responses.Transparency.Remit.RemitMessageIdentifierWithUrl'
'429':
description: Too many requests
'400':
description: Error with query parameters - see response for details
'500':
description: Server error - please try again later
components:
schemas:
Insights.Api.Models.Responses.Transparency.Remit.RemitMessageWithId:
type: object
properties:
dataset:
type: string
nullable: true
example: REMIT
mrid:
type: string
nullable: true
example: 11XINNOGY------2-NGET-RMT-00084421
revisionNumber:
type: integer
format: int32
example: 25
publishTime:
type: string
format: date-time
example: '2023-01-31T17:39:15Z'
createdTime:
type: string
format: date-time
example: '2023-01-31T17:39:15Z'
messageType:
type: string
nullable: true
example: UnavailabilitiesOfElectricityFacilities
messageHeading:
type: string
nullable: true
example: Planned Unavailability of Generation Unit
eventType:
type: string
nullable: true
example: Production unavailability
unavailabilityType:
type: string
nullable: true
example: Planned
participantId:
type: string
nullable: true
example: 11XINNOGY------2
registrationCode:
type: string
nullable: true
example: 11XINNOGY------2
assetId:
type: string
nullable: true
example: T_DIDCB5
assetType:
type: string
nullable: true
example: Production
affectedUnit:
type: string
nullable: true
example: DIDCB5
affectedUnitEIC:
type: string
nullable: true
example: 48W000000DIDCB5C
affectedArea:
type: string
nullable: true
example: N
biddingZone:
type: string
nullable: true
example: 10YGB----------A
fuelType:
type: string
nullable: true
example: Fossil Gas
normalCapacity:
type: number
format: double
nullable: true
example: 780
availableCapacity:
type: number
format: double
nullable: true
example: 320
unavailableCapacity:
type: number
format: double
nullable: true
example: 361
eventStatus:
type: string
nullable: true
example: Inactive
eventStartTime:
type: string
format: date-time
example: '2022-08-23T06:59:00Z'
eventEndTime:
type: string
format: date-time
nullable: true
example: '2022-08-25T05:20:30Z'
durationUncertainty:
type: string
nullable: true
example: +- 1 day
cause:
type: string
nullable: true
example: Other
relatedInformation:
type: string
nullable: true
example: Status changed to Completed
outageProfile:
type: array
items:
$ref: '#/components/schemas/Insights.Api.Models.Responses.Transparency.Remit.DatasetRows.OutageProfileData'
nullable: true
example:
- startTime: '2023-02-03T21:06:31.000Z'
endTime: '2023-02-03T21:10:00.000Z'
capacity: 436
id:
type: integer
format: int32
example: 1
additionalProperties: false
? Insights.Api.Models.Responses.ResponseWithMetadata-1_Insights.Api.Models.Responses.Transparency.Remit.RemitMessageIdentifierWithUrl
: type: object
properties:
data:
type: array
items:
$ref: '#/components/schemas/Insights.Api.Models.Responses.Transparency.Remit.RemitMessageIdentifierWithUrl'
nullable: true
metadata:
$ref: '#/components/schemas/Insights.Api.Models.Metadata.ApiResponseSourceMetadata'
additionalProperties: false
Insights.Api.Models.Responses.ResponseWithMetadata-1_Insights.Api.Models.Responses.Transparency.Remit.RemitMessageWithId:
type: object
properties:
data:
type: array
items:
$ref: '#/components/schemas/Insights.Api.Models.Responses.Transparency.Remit.RemitMessageWithId'
nullable: true
metadata:
$ref: '#/components/schemas/Insights.Api.Models.Metadata.ApiResponseSourceMetadata'
additionalProperties: false
Insights.Api.Models.Metadata.ApiResponseSourceMetadata:
type: object
properties:
datasets:
type: array
items:
type: string
nullable: true
example:
- DATASET
additionalProperties: false
Insights.Api.Models.Responses.Transparency.Remit.DatasetRows.OutageProfileData:
type: object
properties:
startTime:
type: string
format: date-time
endTime:
type: string
format: date-time
capacity:
type: number
format: double
additionalProperties: false
Insights.Api.Models.Responses.Transparency.Remit.RemitMessageIdentifierWithUrl:
type: object
properties:
id:
type: integer
format: int32
example: 24
mrid:
type: string
nullable: true
example: 11XINNOGY------2-NGET-RMT-00084421
revisionNumber:
type: integer
format: int32
example: 2
createdTime:
type: string
format: date-time
example: '2023-01-31T17:39:15Z'
publishTime:
type: string
format: date-time
example: '2023-01-31T17:15:31Z'
url:
type: string
nullable: true
example: https://data.elexon.co.uk/bmrs/api/v1/remit/24
additionalProperties: false