AEMO RCM Operations
AEMO RCM Operations from AEMO — 47 path(s) described in OpenAPI.
AEMO RCM Operations from AEMO — 47 path(s) described in OpenAPI.
openapi: 3.0.1
info:
title: RCM Operations
version: '3.0'
x-origin:
- format: openapi
source: AEMO API Management developer portal
url: https://dev.aemo.com.au/developer/apis/rcm-ops-external-v1/operations?api-version=2022-04-01-preview
servers:
- url: https://api-prd.aemo.local/WEM/RCM
paths:
/api/v1/CapacityYears/Facilities/SeparatelyCertifiedComponents/{tradingDay}:
get:
operationId: apiV1CapacityYearsFacilitiesSeparatelyCertifiedComponentsTradingDayGET
summary: /api/v1/CapacityYears/Facilities/SeparatelyCertifiedComponents/{tradingDay} - GET
tags:
- RCM Operations
description: /api/v1/CapacityYears/Facilities/SeparatelyCertifiedComponents/{tradingDay} - GET
parameters:
- name: tradingDay
in: path
required: true
schema:
type: string
description: Format - date-time (as date-time in RFC3339).
- name: participantId
in: query
required: false
schema:
type: string
- name: x-initiatingParticipantId
in: header
required: true
schema:
type: string
description: The id of the Initiating Participant
- name: x-market
in: header
required: true
schema:
type: string
description: The id of the market
responses:
'200':
description: Success
content:
application/json:
example:
data:
facilities:
- facilityId: string
indicativeFacilityClass: string
separatelyCertifiedComponentsViewModels:
- sccCode: string
technologyType: string
'400':
description: Bad request
content:
application/json:
examples:
missingHeader:
summary: Missing mandatory HTTP header parameter
value:
transactionId: 61361d96-f20d-43a7-bkdf-59b35fab9b13
data: {}
errors:
- code: '400'
title: Missing mandatory HTTP header parameter
detail: Mandatory HTTP header <headerName> is missing
source: ''
'401':
description: Unauthorized
content:
application/json:
examples:
unauthorized:
summary: Unauthorized
value:
transactionId: 9a8e902a-ed40-45f3-b075-7a644b12947f
data: {}
errors:
- code: '401'
title: Unauthorized
detail: Unauthorized
source: ''
initiatingParticipantIdMismatch:
summary: x-initiatingParticipantId does not match with participant id associated with
certificate
value:
transactionId: 9a8e902a-ed40-45f3-u475-7a644b12947f
data: {}
errors:
- code: '401'
title: Unauthorized
detail: x-initiatingParticipantId does not match with participant id associated
with certificate
source: ''
'403':
description: Forbidden
'404':
description: Not Found
content:
application/json:
examples:
resourceNotFound:
summary: Resource Not Found
value:
transactionId: 61361d96-f09d-43a7-babf-59b35fab9b13
data: {}
errors:
- code: '404'
title: Not Found
detail: Resources for the endpoint URI not found. Endpoint URI:<URI>
source: ''
'405':
description: Method not allowed
content:
application/json:
examples:
methodNotAllowed:
summary: Method Not Allowed
value:
transactionId: 61361d96-z20d-43a7-babf-59b35fab9b13
data: {}
errors:
- code: '405'
title: Method Not Allowed
detail: 'Input request HTTP method is <invokedMethod> but operation <operationURI>
accepts only: [<operationMethod>]'
source: ''
'413':
description: Payload Too Large
content:
application/json:
examples:
payloadTooLarge:
summary: Payload Too Large
value:
transactionId: dc6826bc-1c0d-498b-b474-2b231910860c
data: {}
errors:
- code: '413'
title: Payload Too Large
detail: Maximum allowed size for the <request/response> body is <payload size limit>
bytes (<size limit> MB). This <request/response> has size of <number of bytes>
bytes
source: ''
'429':
description: Too many request
content:
application/json:
examples:
tooManyRequests:
summary: Too Many Requests
value:
transactionId: 63361d96-f20d-43a7-babf-59b35fab9b13
data: {}
errors:
- code: '429'
title: Too Many Requests
detail: Number of inbound requests exceeded the throttling limits; try after sometime
source: ''
'500':
description: Application unavailable
content:
application/json:
examples:
applicationUnavailable:
summary: Application Unavailable
value: ''
/api/v1/RelevantDemand/{capacityYearId}/TwoHundredPeakHours:
get:
operationId: aListOfTwoHundredHoursWithTheHighestGeneration
summary: A list of two hundred hours with the highest generation
tags:
- RCM Operations
description: "This returns a CSV with a header and two hundred subsequent rows, representing the\
\ intervals of the highest periods of generation in the capacity market and the corresponding\
\ generation quantity (in MW). Eg:\r\n \r\n \r\n Hour Interval,Value\r\
\n 12/01/2016 14:30,35037.00\r\n 15/01/2016 13:00,35033.00\r\n ..."
parameters:
- name: capacityYearId
in: path
required: true
schema:
type: integer
description: Format - int32. ID of the capacity year to query (eg 2017)
- name: x-initiatingParticipantId
in: header
required: true
schema:
type: string
description: The id of the Initiating Participant
- name: x-market
in: header
required: true
schema:
type: string
description: The id of the market
responses:
'400':
description: Bad request
content:
application/json:
examples:
missingHeader:
summary: Missing mandatory HTTP header parameter
value:
transactionId: 61361d96-f20d-43a7-bkdf-59b35fab9b13
data: {}
errors:
- code: '400'
title: Missing mandatory HTTP header parameter
detail: Mandatory HTTP header <headerName> is missing
source: ''
'401':
description: Unauthorized
content:
application/json:
examples:
unauthorized:
summary: Unauthorized
value:
transactionId: 9a8e902a-ed40-45f3-b075-7a644b12947f
data: {}
errors:
- code: '401'
title: Unauthorized
detail: Unauthorized
source: ''
initiatingParticipantIdMismatch:
summary: x-initiatingParticipantId does not match with participant id associated with
certificate
value:
transactionId: 9a8e902a-ed40-45f3-u475-7a644b12947f
data: {}
errors:
- code: '401'
title: Unauthorized
detail: x-initiatingParticipantId does not match with participant id associated
with certificate
source: ''
'403':
description: Forbidden
'404':
description: Not Found
content:
application/json:
examples:
resourceNotFound:
summary: Resource Not Found
value:
transactionId: 61361d96-f09d-43a7-babf-59b35fab9b13
data: {}
errors:
- code: '404'
title: Not Found
detail: Resources for the endpoint URI not found. Endpoint URI:<URI>
source: ''
'405':
description: Method not allowed
content:
application/json:
examples:
methodNotAllowed:
summary: Method Not Allowed
value:
transactionId: 61361d96-z20d-43a7-babf-59b35fab9b13
data: {}
errors:
- code: '405'
title: Method Not Allowed
detail: 'Input request HTTP method is <invokedMethod> but operation <operationURI>
accepts only: [<operationMethod>]'
source: ''
'413':
description: Payload Too Large
content:
application/json:
examples:
payloadTooLarge:
summary: Payload Too Large
value:
transactionId: dc6826bc-1c0d-498b-b474-2b231910860c
data: {}
errors:
- code: '413'
title: Payload Too Large
detail: Maximum allowed size for the <request/response> body is <payload size limit>
bytes (<size limit> MB). This <request/response> has size of <number of bytes>
bytes
source: ''
'429':
description: Too many request
content:
application/json:
examples:
tooManyRequests:
summary: Too Many Requests
value:
transactionId: 63361d96-f20d-43a7-babf-59b35fab9b13
data: {}
errors:
- code: '429'
title: Too Many Requests
detail: Number of inbound requests exceeded the throttling limits; try after sometime
source: ''
'500':
description: Application unavailable
content:
application/json:
examples:
applicationUnavailable:
summary: Application Unavailable
value: ''
/api/v4/capacityCreditAllocations/flexible/{capacityYear}/standing:
get:
operationId: retrievesAFlexibleCCAStandingSubmissionListForACapacityYear
summary: Retrieves a Flexible CCA Standing Submission List for a Capacity Year.
tags:
- RCM Operations
description: "This method allows a Market Participant to retrieve their Flexible Capacity Credit\
\ Allocation Standing Submission List for the given Capacity Year.\r\n<br /><br />\r\nNote: This\
\ method is only available from Capacity Year 2027."
parameters:
- name: capacityYear
in: path
required: true
schema:
type: integer
description: 'Format - int32. The Capacity Year associated with the request (Format: YYYY, e.g.
2027)'
- name: participantCode
in: query
required: false
schema:
type: string
description: The code of the Market Participant associated with the request
- name: X-transactionId
in: header
required: false
schema:
type: string
description: The unique identifier for the request
- name: x-initiatingParticipantId
in: header
required: true
schema:
type: string
description: The id of the Initiating Participant
- name: x-market
in: header
required: true
schema:
type: string
description: The id of the market
responses:
'200':
description: Success
content:
text/plain:
example: ''
application/json:
example:
transactionId: {}
data:
standingSubmissions:
- capacityYear: 0
participantCode: string
standingSubmissionItems:
- entityCode: string
entityType: string
targetParticipantCode: string
flexibleCapacityCredits: 0
order: 0
text/json:
example:
transactionId: {}
data:
standingSubmissions:
- capacityYear: 0
participantCode: string
standingSubmissionItems:
- entityCode: string
entityType: string
targetParticipantCode: string
flexibleCapacityCredits: 0
order: 0
'400':
description: Bad Request
content:
text/plain:
example: ''
application/json:
example:
transactionId: string
data: {}
errors:
- code: 0
title: string
detail: string
source: string
text/json:
example:
transactionId: string
data: {}
errors:
- code: 0
title: string
detail: string
source: string
'401':
description: Unauthorized
content:
application/json:
examples:
unauthorized:
summary: Unauthorized
value:
transactionId: 9a8e902a-ed40-45f3-b075-7a644b12947f
data: {}
errors:
- code: '401'
title: Unauthorized
detail: Unauthorized
source: ''
initiatingParticipantIdMismatch:
summary: x-initiatingParticipantId does not match with participant id associated with
certificate
value:
transactionId: 9a8e902a-ed40-45f3-u475-7a644b12947f
data: {}
errors:
- code: '401'
title: Unauthorized
detail: x-initiatingParticipantId does not match with participant id associated
with certificate
source: ''
'403':
description: Forbidden
content:
text/plain:
example: ''
application/json:
example:
transactionId: string
data: {}
errors:
- code: 0
title: string
detail: string
source: string
text/json:
example:
transactionId: string
data: {}
errors:
- code: 0
title: string
detail: string
source: string
'404':
description: Not Found
content:
application/json:
examples:
resourceNotFound:
summary: Resource Not Found
value:
transactionId: 61361d96-f09d-43a7-babf-59b35fab9b13
data: {}
errors:
- code: '404'
title: Not Found
detail: Resources for the endpoint URI not found. Endpoint URI:<URI>
source: ''
'405':
description: Method not allowed
content:
application/json:
examples:
methodNotAllowed:
summary: Method Not Allowed
value:
transactionId: 61361d96-z20d-43a7-babf-59b35fab9b13
data: {}
errors:
- code: '405'
title: Method Not Allowed
detail: 'Input request HTTP method is <invokedMethod> but operation <operationURI>
accepts only: [<operationMethod>]'
source: ''
'413':
description: Payload Too Large
content:
application/json:
examples:
payloadTooLarge:
summary: Payload Too Large
value:
transactionId: dc6826bc-1c0d-498b-b474-2b231910860c
data: {}
errors:
- code: '413'
title: Payload Too Large
detail: Maximum allowed size for the <request/response> body is <payload size limit>
bytes (<size limit> MB). This <request/response> has size of <number of bytes>
bytes
source: ''
'422':
description: Client Error
content:
text/plain:
example: ''
application/json:
example:
transactionId: string
data: {}
errors:
- code: 0
title: string
detail: string
source: string
text/json:
example:
transactionId: string
data: {}
errors:
- code: 0
title: string
detail: string
source: string
'429':
description: Too many request
content:
application/json:
examples:
tooManyRequests:
summary: Too Many Requests
value:
transactionId: 63361d96-f20d-43a7-babf-59b35fab9b13
data: {}
errors:
- code: '429'
title: Too Many Requests
detail: Number of inbound requests exceeded the throttling limits; try after sometime
source: ''
'500':
description: Application unavailable
content:
application/json:
examples:
applicationUnavailable:
summary: Application Unavailable
value: ''
post:
operationId: submitsAFlexibleCCAStandingSubmissionListForACapacityYear
summary: Submits a Flexible CCA Standing Submission List for a Capacity Year.
tags:
- RCM Operations
description: "This method allows a Market Participant to submit a Flexible Capacity Credit Allocation\
\ Standing Submission for a Capacity Year.\r\n<br /><br />\r\nNote: This method is only available\
\ from Capacity Year 2027."
parameters:
- name: capacityYear
in: path
required: true
schema:
type: integer
description: 'Format - int32. The Capacity Year associated with the request (Format: YYYY, e.g.
2027)'
- name: X-transactionId
in: header
required: false
schema:
type: string
description: The unique identifier for the request
- name: x-initiatingParticipantId
in: header
required: true
schema:
type: string
description: The id of the Initiating Participant
- name: x-market
in: header
required: true
schema:
type: string
description: The id of the market
requestBody:
content:
application/json:
example:
- entityCode: string
entityType: string
targetParticipantCode: string
flexibleCapacityCredits: 0
order: 0
text/json:
example:
- entityCode: string
entityType: string
targetParticipantCode: string
flexibleCapacityCredits: 0
order: 0
application/*+json:
example:
- entityCode: string
entityType: string
targetParticipantCode: string
flexibleCapacityCredits: 0
order: 0
description: JSON object containing the details to submit the standing submission
responses:
'200':
description: Success
content:
text/plain:
example: ''
application/json:
example:
transactionId: {}
data: {}
text/json:
example:
transactionId: {}
data: {}
'400':
description: Bad Request
content:
text/plain:
example: ''
application/json:
example:
transactionId: string
data: {}
errors:
- code: 0
title: string
detail: string
source: string
text/json:
example:
transactionId: string
data: {}
errors:
- code: 0
title: string
detail: string
source: string
'401':
description: Unauthorized
content:
application/json:
examples:
unauthorized:
summary: Unauthorized
value:
transactionId: 9a8e902a-ed40-45f3-b075-7a644b12947f
data: {}
errors:
- code: '401'
title: Unauthorized
detail: Unauthorized
source: ''
initiatingParticipantIdMismatch:
summary: x-initiatingParticipantId does not match with participant id associated with
certificate
value:
transactionId: 9a8e902a-ed40-45f3-u475-7a644b12947f
data: {}
errors:
- code: '401'
title: Unauthorized
detail: x-initiatingParticipantId does not match with participant id associated
with certificate
source: ''
'403':
description: Forbidden
content:
text/plain:
example: ''
application/json:
example:
transactionId: string
data: {}
errors:
- code: 0
title: string
detail: string
source: string
text/json:
example:
transactionId: string
data: {}
errors:
- code: 0
title: string
detail: string
source: string
'404':
description: Not Found
content:
application/json:
examples:
resourceNotFound:
summary: Resource Not Found
value:
transactionId: 61361d96-f09d-43a7-babf-59b35fab9b13
data: {}
errors:
- code: '404'
title: Not Found
detail: Resources for the endpoint URI not found. Endpoint URI:<URI>
source: ''
'405':
description: Method not allowed
content:
application/json:
examples:
methodNotAllowed:
summary: Method Not Allowed
value:
transactionId: 61361d96-z20d-43a7-babf-59b35fab9b13
data: {}
errors:
- code: '405'
title: Method Not Allowed
detail: 'Input request HTTP method is <invokedMethod> but operation <operationURI>
accepts only: [<operationMethod>]'
source: ''
'413':
description: Payload Too Large
content:
application/json:
examples:
payloadTooLarge:
summary: Payload Too Large
value:
transactionId: dc6826bc-1c0d-498b-b474-2b231910860c
data: {}
errors:
- code: '413'
title: Payload Too Large
detail: Maximum allowed size for the <request/response> body is <payload size limit>
bytes (<size limit> MB). This <request/response> has size of <number of bytes>
bytes
source: ''
'422':
description: Client Error
content:
text/plain:
example: ''
application/json:
example:
transactionId: string
data: {}
errors:
- code: 0
title: string
detail: string
source: string
text/json:
example:
transactionId: string
data: {}
errors:
- code: 0
title: string
detail: string
source: string
'429':
description: Too many request
content:
application/json:
examples:
tooManyRequests:
summary: Too Many Requests
value:
transactionId: 63361d96-f20d-43a7-babf-59b35fab9b13
data: {}
errors:
- code: '429'
title: Too Many Requests
detail: Number of inbound requests exceeded the throttling limits; try after sometime
source: ''
'500':
description: Application unavailable
content:
application/json:
examples:
applicationUnavailable:
summary: Application Unavailable
value: ''
/api/v4/capacityCreditAllocations/flexible/received:
get:
operationId: retrievesAListOfApprovedFlexibleCCAsReceivedByAMarketParticipantForARangeOfTradingDays
summary: Retrieves a list of approved Flexible CCAs received by a Market Participant for a range
of Trading Days.
tags:
- RCM Operations
description: "This method retrieves a list of Flexible Capacity Credit Allocation received by a\
\ Market Participant for a range of Trading Days.\r\n<br /><br />\r\nNote: This method is only\
\ available from Capacity Year 2027."
parameters:
- name: tradingDayFrom
in: query
required: false
schema:
type: string
description: 'Format - date-time (as date-time in RFC3339). The Trading Day at the start of the
range in the request (inclusive) (Format: YYYY-MM-DD, e.g. 2027-10-01)'
- name: tradingDayTo
in: query
required: false
schema:
type: string
description: 'Format - date-time (as date-time in RFC3339). The Trading Day at the end of the
range in the request (inclusive) (Format: YYYY-MM-DD, e.g. 2027-10-31)'
- name: participantCode
in: query
required: false
schema:
type: string
description: The code of the Market Participant associated with the request
- name: X-transactionId
in: header
required: false
schema:
type: string
description: The unique identifier for the request
- name: x-initiatingParticipantId
in: header
required: true
schema:
type: string
description: The id of the Initiating Participant
- name: x-market
in: header
required: true
schema:
type: string
description: The id of the market
responses:
'200':
description: Success
content:
text/plain:
example: ''
application/json:
example:
transactionId: {}
data:
allocations:
- id: 0
capacityYear: 0
tradingDay: string
participantCode: string
entityCode: string
entityType: string
targetParticipantCode: string
flexibleCapacityCredits: 0
status: string
lastActionResult: string
text/json:
example:
transactionId: {}
data:
allocations:
- id: 0
capacityYear: 0
tradingDay: string
participantCode: string
entityCode: string
entityType: string
targetParticipantCode: string
flexibleCapacityCredits: 0
status: string
lastActionResult: string
'400':
description: Bad Request
content:
text/plain:
example: ''
application/json:
example:
transactionId: string
data: {}
errors:
- code: 0
title: string
detail: string
source: string
text/json:
example:
transactionId: string
data: {}
errors:
- code: 0
title: string
detail: string
source: string
'401':
description: Unauthorized
content:
application/json:
examples:
unauthorized:
summary: Unauthorized
value:
transactionId: 9a8e902a-ed40-45f3-b075-7a644b12947f
data: {}
errors:
- code: '401'
title: Unauthorized
detail: Unauthorized
source: ''
initiatingParticipantIdMismatch:
summary: x-initiatingParticipantId does not match with participant id associated with
cer
# --- truncated at 32 KB (349 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/aemo/refs/heads/main/openapi/aemo-rcm-ops-external-v1-openapi.yml