AEMO Prudentials API

This API supports the various operations performed on Prudentials dashboard

Operations 10

GET /getBankGuarantees getBankGuarantees #
GET /getCumulativePrice getCumulativePrice #
GET /getForecastCompanySummary getForecastCompanySummary #
GET /getForecastRegionalPrice getForecastRegionalPrice #
GET /getForecastRevenue getForecastRevenue #
GET /getForecastRunVersion getForecastRunVersion #
GET /getPrudentialCalendar getPrudentialCalendar #
GET /getPrudentialCompanyAttributes getPrudentialCompanyAttributes #
GET /getPrudentialCompanySummary getPrudentialCompanySummary #
GET /getPrudentialRunVersion getPrudentialRunVersion #

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/aemo-prudentials-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

aemo-prudentials-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Prudentials API
  description: This API supports the various operations performed on Prudentials dashboard
  version: '3.0'
  x-origin:
  - format: openapi
    source: AEMO API Management developer portal
    url: https://dev.aemo.com.au/developer/apis/prudentials-v1/operations?api-version=2022-04-01-preview
servers:
- url: https://api-prd.aemo.local/NEMWholesale/Prudentials
security:
- {}
- apiKeyHeader: []
- apiKeyQuery: []
tags:
- name: Prudentials
  description: This API supports the various operations performed on Prudentials dashboard
paths:
  /getBankGuarantees:
    get:
      operationId: getBankGuarantees
      summary: getBankGuarantees
      tags:
      - Prudentials
      description: getBankGuarantees
      parameters:
      - name: toDate
        in: query
        required: false
        schema:
          type: string
      - name: fromDate
        in: query
        required: true
        schema:
          type: string
      - name: X-initiatingParticipantId
        in: header
        required: true
        schema:
          type: string
      - name: Authorization
        in: header
        required: true
        schema:
          type: string
      responses:
        '200':
          description: '200'
          content:
            application/json:
              example: "{\n  \"transactionId\": \"string\",\n  \"data\": {\n    \"companyName\": \"string\",\n    \"companyId\": \"string\",\n    \"bankGuarantees\": [\n      {\n        \"guaranteeId\": \"string\",\n        \"creditProviderId\": \"string\",\n        \"creditProviderName\": \"string\",\n        \"commencementDate\": \"string\",\n        \"terminationDate\": \"string\",\n        \"returnDate\": \"string\",\n        \"lastChanged\": \"string\",\n        \"guaranteeAmount\": 0\n      }\n    ]\n  },\n  \"errors\": [\n    {\n      \"code\": \"string\",\n      \"title\": \"string\",\n      \"detail\": \"string\",\n      \"source\": \"string\"\n    }\n  ],\n  \"warnings\": [\n    \"string\"\n  ]\n}"
        '400':
          description: Mandatory HTTP header {missing Header Name} is missing. No response payload.
          content:
            application/json:
              schema: {}
        '401':
          description: Unauthorized. No response payload.
          content:
            application/json:
              schema: {}
        '404':
          description: Resources for the endpoint URI not found. Endpoint URI:{requested URI path suffix}. No response payload.
          content:
            application/json:
              schema: {}
        '405':
          description: Method Not Allowed. Input request HTTP method {requested verb} is not allowed for this resource. No response payload.
          content:
            application/json:
              schema: {}
        '429':
          description: Too Many Requests. Number of inbound requests exceeded the throttling limits; try after sometime. No response payload.
          content:
            application/json:
              schema: {}
        '500':
          description: Internal Server Error. Exception from backend system. No response payload.
          content:
            application/json:
              schema: {}
  /getCumulativePrice:
    get:
      operationId: getCumulativePrice
      summary: getCumulativePrice
      tags:
      - Prudentials
      description: getCumulativePrice
      parameters:
      - name: X-initiatingParticipantId
        in: header
        required: true
        schema:
          type: string
      - name: Authorization
        in: header
        required: true
        schema:
          type: string
      responses:
        '200':
          description: '200'
          content:
            application/json:
              example:
                transactionId: string
                data:
                  cumulativePrices:
                  - regionId: string
                    cumulativePrice: 0
                    averagePrice: 0
                errors:
                - code: string
                  title: string
                  detail: string
                  source: string
                warnings:
                - string
        '400':
          description: Mandatory HTTP header {missing Header Name} is missing. No response payload.
          content:
            application/json:
              schema: {}
        '401':
          description: Unauthorized. No response payload.
          content:
            application/json:
              schema: {}
        '404':
          description: Resources for the endpoint URI not found. Endpoint URI:{requested URI path suffix}. No response payload.
          content:
            application/json:
              schema: {}
        '405':
          description: Method Not Allowed. Input request HTTP method {requested verb} is not allowed for this resource. No response payload.
          content:
            application/json:
              schema: {}
        '429':
          description: Too Many Requests. Number of inbound requests exceeded the throttling limits; try after sometime. No response payload.
          content:
            application/json:
              schema: {}
        '500':
          description: Internal Server Error. Exception from backend system. No response payload.
          content:
            application/json:
              schema: {}
  /getForecastCompanySummary:
    get:
      operationId: getForecastCompanySummary
      summary: getForecastCompanySummary
      tags:
      - Prudentials
      description: getForecastCompanySummary
      parameters:
      - name: forecastDate
        in: query
        required: true
        schema:
          type: string
      - name: forecastRunNo
        in: query
        required: false
        schema:
          type: integer
      - name: X-initiatingParticipantId
        in: header
        required: true
        schema:
          type: string
      - name: Authorization
        in: header
        required: true
        schema:
          type: string
      responses:
        '200':
          description: '200'
          content:
            application/json:
              example: "{\n  \"transactionId\": \"string\",\n  \"data\": {\n    \"companyId\": \"TEST\",\n    \"companyName\": \"TEST\",\n    \"currentTradingMargin\": 3015609.47153,\n    \"currentOustandings\": -7944609.47153,\n    \"poe10TradingMargin\": 3253272.27005786,\n    \"poe10Outstandings\": -8182272.27005786,\n    \"poe50TradingMargin\": 3224503.41462999,\n    \"poe50Outstandings\": -8153503.41462999,\n    \"poe90TradingMargin\": 3208560.76105293,\n    \"poe90Outstandings\": -8137560.76105293\n  },\n  \"errors\": [\n    {\n      \"code\": \"string\",\n      \"title\": \"string\",\n      \"detail\": \"string\",\n      \"source\": \"string\"\n    }\n  ],\n  \"warnings\": [\n    \"string\"\n  ]\n}"
        '400':
          description: Mandatory HTTP header {missing Header Name} is missing. No response payload.
          content:
            application/json:
              schema: {}
        '401':
          description: Unauthorized. No response payload.
          content:
            application/json:
              schema: {}
        '404':
          description: Resources for the endpoint URI not found. Endpoint URI:{requested URI path suffix}. No response payload.
          content:
            application/json:
              schema: {}
        '405':
          description: Method Not Allowed. Input request HTTP method {requested verb} is not allowed for this resource. No response payload.
          content:
            application/json:
              schema: {}
        '429':
          description: Too Many Requests. Number of inbound requests exceeded the throttling limits; try after sometime. No response payload.
          content:
            application/json:
              schema: {}
        '500':
          description: Internal Server Error. Exception from backend system. No response payload.
          content:
            application/json:
              schema: {}
  /getForecastRegionalPrice:
    get:
      operationId: getForecastRegionalPrice
      summary: getForecastRegionalPrice
      tags:
      - Prudentials
      description: getForecastRegionalPrice
      parameters:
      - name: forecastDate
        in: query
        required: true
        schema:
          type: string
      - name: forecastRunNo
        in: query
        required: true
        schema:
          type: integer
      - name: X-initiatingParticipantId
        in: header
        required: true
        schema:
          type: string
      - name: Authorization
        in: header
        required: true
        schema:
          type: string
      responses:
        '200':
          description: '200'
          content:
            application/json:
              example: "{\n  \"transactionId\": \"string\",\n  \"data\": {\n    \"regions\": [\n      {\n        \"highestPriceInterval\": \"string\",\n        \"highestRRP\": 0,\n        \"cumulativeRRP\": 0,\n        \"totalCurrentCumulativeDemand\": 0,\n        \"totalPOE10ForecastDemand\": 0,\n        \"totalPOE50ForecastDemand\": 0,\n        \"totalPOE90ForecastDemand\": 0,\n        \"regionId\": \"string\",\n        \"intervals\": [\n          {\n            \"intervalDateTime\": \"2020-01-13T00:00:00+00:00\",\n            \"forecastDemand\": 6509.71,\n            \"forecastRRP\": 39.36\n          }\n        ]\n      }\n    ]\n  },\n  \"errors\": [\n    {\n      \"code\": \"string\",\n      \"title\": \"string\",\n      \"detail\": \"string\",\n      \"source\": \"string\"\n    }\n  ],\n  \"warnings\": [\n    \"string\"\n  ]\n}"
        '400':
          description: Mandatory HTTP header {missing Header Name} is missing. No response payload.
          content:
            application/json:
              schema: {}
        '401':
          description: Unauthorized. No response payload.
          content:
            application/json:
              schema: {}
        '404':
          description: Resources for the endpoint URI not found. Endpoint URI:{requested URI path suffix}. No response payload.
          content:
            application/json:
              schema: {}
        '405':
          description: Method Not Allowed. Input request HTTP method {requested verb} is not allowed for this resource. No response payload.
          content:
            application/json:
              schema: {}
        '429':
          description: Too Many Requests. Number of inbound requests exceeded the throttling limits; try after sometime. No response payload.
          content:
            application/json:
              schema: {}
        '500':
          description: Internal Server Error. Exception from backend system. No response payload.
          content:
            application/json:
              schema: {}
  /getForecastRevenue:
    get:
      operationId: getForecastRevenue
      summary: getForecastRevenue
      tags:
      - Prudentials
      description: getForecastRevenue
      parameters:
      - name: forecastDate
        in: query
        required: true
        schema:
          type: string
      - name: forecastRunNo
        in: query
        required: true
        schema:
          type: integer
      - name: X-initiatingParticipantId
        in: header
        required: true
        schema:
          type: string
      - name: Authorization
        in: header
        required: true
        schema:
          type: string
      responses:
        '200':
          description: '200'
          content:
            application/json:
              example: "{\n  \"transactionId\": \"510ee0ba-7981-4027-be56-c9fde8f1105c\",\n  \"data\": {\n    \"revenueSinceMidnight\": -13164147.9206525,\n    \"revenueLastHour\": -1334346.27053747,\n    \"revenueForecastForToday\": -31460699.0432076\n  },\n  \"errors\": [],\n  \"warnings\": []\n}"
        '400':
          description: Mandatory HTTP header {missing Header Name} is missing. No response payload.
          content:
            application/json:
              schema: {}
        '401':
          description: Unauthorized. No response payload.
          content:
            application/json:
              schema: {}
        '404':
          description: Resources for the endpoint URI not found. Endpoint URI:{requested URI path suffix}. No response payload.
          content:
            application/json:
              schema: {}
        '405':
          description: Method Not Allowed. Input request HTTP method {requested verb} is not allowed for this resource. No response payload.
          content:
            application/json:
              schema: {}
        '429':
          description: Too Many Requests. Number of inbound requests exceeded the throttling limits; try after sometime. No response payload.
          content:
            application/json:
              schema: {}
        '500':
          description: Internal Server Error. Exception from backend system. No response payload.
          content:
            application/json:
              schema: {}
  /getForecastRunVersion:
    get:
      operationId: getForecastRunVersion
      summary: getForecastRunVersion
      tags:
      - Prudentials
      description: getForecastRunVersion
      parameters:
      - name: X-initiatingParticipantId
        in: header
        required: true
        schema:
          type: string
      - name: Authorization
        in: header
        required: true
        schema:
          type: string
      responses:
        '200':
          description: '200'
          content:
            application/json:
              example:
                transactionId: string
                data:
                  forecastDate: string
                  forecastRunNo: 0
                  prudentialDate: string
                  forecastRunDateTime: string
                  prudentialRunDateTime: string
                  forecastTradingStartInterval: string
                  forecastTradingEndInterval: string
                  forecastDispatchInterval: string
                  forecastP5MinStartInterval: string
                  forecastP5MinEndInterval: string
                  forecastPDStartInterval: string
                  forecastPDEndInterval: string
                  forecastPDSensStartInterval: string
                  forecastPDSensEndInterval: string
                  nextStatementDate: string
                errors:
                - code: string
                  title: string
                  detail: string
                  source: string
                warnings:
                - string
        '400':
          description: Mandatory HTTP header {missing Header Name} is missing. No response payload.
          content:
            application/json:
              schema: {}
        '401':
          description: Unauthorized. No response payload.
          content:
            application/json:
              schema: {}
        '404':
          description: Resources for the endpoint URI not found. Endpoint URI:{requested URI path suffix}. No response payload.
          content:
            application/json:
              schema: {}
        '405':
          description: Method Not Allowed. Input request HTTP method {requested verb} is not allowed for this resource. No response payload.
          content:
            application/json:
              schema: {}
        '429':
          description: Too Many Requests. Number of inbound requests exceeded the throttling limits; try after sometime. No response payload.
          content:
            application/json:
              schema: {}
        '500':
          description: Internal Server Error. Exception from backend system. No response payload.
          content:
            application/json:
              schema: {}
  /getPrudentialCalendar:
    get:
      operationId: getPrudentialCalendar
      summary: getPrudentialCalendar
      tags:
      - Prudentials
      description: getPrudentialCalendar
      parameters:
      - name: X-initiatingParticipantId
        in: header
        required: true
        schema:
          type: string
      - name: Authorization
        in: header
        required: true
        schema:
          type: string
      responses:
        '200':
          description: '200'
          content:
            application/json:
              example:
                transactionId: string
                data:
                  calendarEntries:
                  - billingPeriodId: string
                    contractYear: 0
                    weekNo: 0
                    nextDate: string
                errors:
                - code: string
                  title: string
                  detail: string
                  source: string
                warnings:
                - string
        '400':
          description: Mandatory HTTP header {missing Header Name} is missing. No response payload.
          content:
            application/json:
              schema: {}
        '401':
          description: Unauthorized. No response payload.
          content:
            application/json:
              schema: {}
        '404':
          description: Resources for the endpoint URI not found. Endpoint URI:{requested URI path suffix}. No response payload.
          content:
            application/json:
              schema: {}
        '405':
          description: Method Not Allowed. Input request HTTP method {requested verb} is not allowed for this resource. No response payload.
          content:
            application/json:
              schema: {}
        '429':
          description: Too Many Requests. Number of inbound requests exceeded the throttling limits; try after sometime. No response payload.
          content:
            application/json:
              schema: {}
        '500':
          description: Internal Server Error. Exception from backend system. No response payload.
          content:
            application/json:
              schema: {}
  /getPrudentialCompanyAttributes:
    get:
      operationId: getPrudentialCompanyAttributes
      summary: getPrudentialCompanyAttributes
      tags:
      - Prudentials
      description: getPrudentialCompanyAttributes
      parameters:
      - name: fromDate
        in: query
        required: false
        schema:
          type: string
      - name: toDate
        in: query
        required: false
        schema:
          type: string
      - name: X-initiatingParticipantId
        in: header
        required: true
        schema:
          type: string
      - name: Authorization
        in: header
        required: true
        schema:
          type: string
      responses:
        '200':
          description: '200'
          content:
            application/json:
              example:
                transactionId: string
                data:
                  companyId: string
                  effectiveDates:
                  - effectiveDate: string
                    calculatedMcl: 0
                    dailyTypicalAccrual: 0
                    prudentialMargin: 0
                    lastChanged: string
                errors:
                - code: string
                  title: string
                  detail: string
                  source: string
                warnings:
                - string
        '400':
          description: Mandatory HTTP header {missing Header Name} is missing. No response payload.
          content:
            application/json:
              schema: {}
        '401':
          description: Unauthorized. No response payload.
          content:
            application/json:
              schema: {}
        '404':
          description: Resources for the endpoint URI not found. Endpoint URI:{requested URI path suffix}. No response payload.
          content:
            application/json:
              schema: {}
        '405':
          description: Method Not Allowed. Input request HTTP method {requested verb} is not allowed for this resource. No response payload.
          content:
            application/json:
              schema: {}
        '429':
          description: Too Many Requests. Number of inbound requests exceeded the throttling limits; try after sometime. No response payload.
          content:
            application/json:
              schema: {}
        '500':
          description: Internal Server Error. Exception from backend system. No response payload.
          content:
            application/json:
              schema: {}
  /getPrudentialCompanySummary:
    get:
      operationId: getPrudentialCompanySummary
      summary: getPrudentialCompanySummary
      tags:
      - Prudentials
      description: getPrudentialCompanySummary
      parameters:
      - name: prudentialDate
        in: query
        required: false
        schema:
          type: string
      - name: prudentialRunNo
        in: query
        required: false
        schema:
          type: integer
      - name: X-initiatingParticipantId
        in: header
        required: true
        schema:
          type: string
      - name: Authorization
        in: header
        required: true
        schema:
          type: string
      responses:
        '200':
          description: '200'
          content:
            application/json:
              example:
                transactionId: string
                data:
                  prudentialDate: string
                  prudentialRunNo: 0
                  lastChanged: string
                  companySummary:
                    companyId: string
                    todayOutstandingsPercent: 0
                    maximumCreditLimit: 0
                    prudentialMargin: 0
                    tradingLimit: 0
                    tradingMargin: 0
                    outstandings: 0
                    typicalAccrual: 0
                    creditSupport: 0
                    expostReallocBalance: 0
                    securityDepositProvision: 0
                    securityDepositOffset: 0
                    securityDepositBalance: 0
                    outstandingsReallocations: 0
                    prudentialException: true
                    historicDays:
                    - calendarDate: string
                      runDateTime: string
                      historicOutstandings: 0
                      historicCreditSupport: 0
                      historicTradingLimit: 0
                    securityDeposits:
                    - securityDepositId: string
                      participantId: string
                      lodgeDate: string
                      maturityDate: string
                      interestRate: 0
                      interestAcctId: string
                      interestCalcType: string
                      amount: 0
                    reallocations:
                    - reallocationId: string
                      participantId: string
                      counterPartyId: string
                      startDate: string
                      endDate: string
                      reportStartDate: string
                      reportEndDate: string
                      amount: 0
                    outstandingsWeeks:
                    - contractYear: 0
                      weekNo: 0
                      billRunNo: string
                      runType: string
                      companyOutstandingsAmount: 0
                      participants:
                      - participantId: string
                        participantOutstandingsAmount: 0
                    earlyPaymentNominations:
                    - string
                    earlyPaymentAmount:
                    - string
                    sdaFloatingInterestRates:
                    - participantId: string
                      interestAcctId: string
                      effectiveDate: string
                      interestRate: 0
                errors:
                - code: string
                  title: string
                  detail: string
                  source: string
                warnings:
                - string
        '400':
          description: Mandatory HTTP header {missing Header Name} is missing. No response payload.
          content:
            application/json:
              schema: {}
        '401':
          description: Unauthorized. No response payload.
          content:
            application/json:
              schema: {}
        '404':
          description: Resources for the endpoint URI not found. Endpoint URI:{requested URI path suffix}. No response payload.
          content:
            application/json:
              schema: {}
        '405':
          description: Method Not Allowed. Input request HTTP method {requested verb} is not allowed for this resource. No response payload.
          content:
            application/json:
              schema: {}
        '429':
          description: Too Many Requests. Number of inbound requests exceeded the throttling limits; try after sometime. No response payload.
          content:
            application/json:
              schema: {}
        '500':
          description: Internal Server Error. Exception from backend system. No response payload.
          content:
            application/json:
              schema: {}
  /getPrudentialRunVersion:
    get:
      operationId: getPrudentialRunVersion
      summary: getPrudentialRunVersion
      tags:
      - Prudentials
      description: getPrudentialRunVersion
      parameters:
      - name: X-initiatingParticipantId
        in: header
        required: true
        schema:
          type: string
      - name: Authorization
        in: header
        required: true
        schema:
          type: string
      responses:
        '200':
          description: '200'
          content:
            application/json:
              example:
                transactionId: string
                data:
                  prudentialDate: string
                  prudentialRunNo: 0
                  latestTradingInterval: string
                  lastChanged: string
                errors:
                - code: string
                  title: string
                  detail: string
                  source: string
                warnings:
                - string
        '400':
          description: Mandatory HTTP header {missing Header Name} is missing. No response payload.
          content:
            application/json:
              schema: {}
        '401':
          description: Unauthorized. No response payload.
          content:
            application/json:
              schema: {}
        '404':
          description: Resources for the endpoint URI not found. Endpoint URI:{requested URI path suffix}. No response payload.
          content:
            application/json:
              schema: {}
        '405':
          description: Method Not Allowed. Input request HTTP method {requested verb} is not allowed for this resource. No response payload.
          content:
            application/json:
              schema: {}
        '429':
          description: Too Many Requests. Number of inbound requests exceeded the throttling limits; try after sometime. No response payload.
          content:
            application/json:
              schema: {}
        '500':
          description: Internal Server Error. Exception from backend system. No response payload.
          content:
            application/json:
              schema: {}
components:
  securitySchemes:
    apiKeyHeader:
      type: apiKey
      name: Ocp-Apim-Subscription-Key
      in: header
    apiKeyQuery:
      type: apiKey
      name: subscription-key
      in: query