openapi: 3.2.0 info: title: B2 M Messaging Pull API description: "## Introduction\n The B2MMessagingPull push-pull API supports inbound submitMessages, submitMessageAcknowledgements, getMessages, and getQueueMetaData endpoints and suits low volume exchange of messages. \n\n Participants using B2MMessagingPull are responsible for implementing the polling logic to poll their Participant Hub Queue to retrieve new messages, similar to batch programs used to poll their outbox using FTP. \n\n Implementation of a Participant API Gateway is not required for B2MMessagingPull but the speed of message delivery is slower compared to the B2BMessagingAsync API.\n\n The response is sent in the calling thread." version: '3.0' x-origin: - format: openapi source: AEMO API Management developer portal url: https://dev.aemo.com.au/developer/apis/b2mmessaging-pull-v1/operations?api-version=2022-04-01-preview servers: - url: https://api-prd.aemo.local/NEMRetail/B2MMessagingPull security: - {} - apiKeyHeader: [] - apiKeyQuery: [] tags: - name: B2MMessagingPull description: Introduction paths: /getMessages: get: operationId: getMessages summary: Get Messages tags: - B2MMessagingPull description: Retrieve messages queued in the Participant Hub Queue parameters: - name: messageContextID in: query required: true schema: type: string description: message Context ID - name: transactionGroup in: query required: false schema: type: string description: Transaction Group - 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 - name: Authorization in: header required: true schema: type: string description: basic auth responses: '200': description: Success response with aseXml response payload content: application/xml: example: <_x0032_00APIResponseResponse-xml> '400': description: This response is provided when Mandatory HTTP header {missing Header Name} is missing. No response paylaod. '401': description: This response is provided when Authorisation is missing from the header OR user/password is incorrect OR user account is locked out. No response paylaod. '404': description: This response is provided when the requested resource for the endpoint URI is not found. No response paylaod. '405': description: This response is provided when the requested method/verb on a resource is invalid. No response paylaod. '429': description: This response is provided when number of inbound requests exceeded the throttling limits. No response paylaod. '500': description: This response is provided when any unforeseen error is encountered,such as; Certificate/key do not match or incorrect or downstream service is not available. /getQueueMetaData: get: operationId: getQueueMetaData summary: Get Queue MetaData tags: - B2MMessagingPull description: Retrieve details of messages queued in the Participant Hub Queue parameters: - name: transactionGroup in: query required: false schema: type: string description: Transaction Group - 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 - name: Authorization in: header required: true schema: type: string responses: '200': description: Success response with aseXml response payload content: application/xml: example: <_x0032_00APIResponseResponse-xml> '400': description: This response is provided when Mandatory HTTP header {missing Header Name} is missing. No response paylaod. '401': description: This response is provided when Authorisation is missing from the header OR user/password is incorrect OR user account is locked out. No response paylaod. '404': description: This response is provided when the requested resource for the endpoint URI is not found. No response paylaod. '405': description: This response is provided when the requested method/verb on a resource is invalid. No response paylaod. '429': description: This response is provided when number of inbound requests exceeded the throttling limits. No response paylaod. '500': description: This response is provided when any unforeseen error is encountered,such as; Certificate/key do not match or incorrect or downstream service is not available. /submitMessageAcknowledgements: post: operationId: submitMessageAcknowledgements summary: Submit Message Acknowledgements tags: - B2MMessagingPull description: Submit messages acknowledgements to AEMO’s market systems parameters: - name: messageContextID in: header required: true schema: type: string description: Format - [TransactionGroup 0-9_a-z]{1,4} +[Priority h|m|l] + "_"+[FromParticipantID]{1,10} + "_" + [0-9_a-z]{1,18}. - name: X-initiatingParticipantID in: header required: true schema: type: string description: The ID of the Initiating Participant - name: X-market in: header required: false schema: type: string description: The ID of the Market - name: Accept in: header required: true schema: type: string description: Requird response format - name: Authorization in: header required: true schema: type: string description: Basic Auth requestBody: content: application/xml: example: description: Payload responses: '200': description: Success response with aseXml response payload content: application/xml: example: <_x0032_00APIResponseResponse-xml> '400': description: This response is provided when Mandatory HTTP header {missing Header Name} is missing. No response paylaod. '401': description: This response is provided when Authorisation is missing from the header OR user/password is incorrect OR user account is locked out. No response paylaod. '404': description: This response is provided when the requested resource for the endpoint URI is not found. No response paylaod. '405': description: This response is provided when the requested method/verb on a resource is invalid. No response paylaod. '429': description: This response is provided when number of inbound requests exceeded the throttling limits. No response paylaod. '500': description: This response is provided when any unforeseen error is encountered,such as; Certificate/key do not match or incorrect or downstream service is not available. /submitMessages: post: operationId: submitMessages summary: Submit Messages tags: - B2MMessagingPull description: Submit messages and transaction acknowledgements to AEMO’s market systems parameters: - name: messageContextID in: header required: true schema: type: string description: Format - [TransactionGroup 0-9_a-z]{1,4} +[Priority h|m|l] + "_"+[FromParticipantID]{1,10} + "_" + [0-9_a-z]{1,18}. - 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 - name: Accept in: header required: true schema: type: string description: Requird response format - name: Authorization in: header required: true schema: type: string description: Basic Auth requestBody: content: application/xml: example: description: Payload responses: '200': description: Success response with aseXml response payload content: application/xml: example: <_x0032_00APIResponseResponse-xml> '400': description: This response is provided when Mandatory HTTP header {missing Header Name} is missing. No response paylaod. '401': description: This response is provided when Authorisation is missing from the header OR user/password is incorrect OR user account is locked out. No response paylaod. '404': description: This response is provided when the requested resource for the endpoint URI is not found. No response paylaod. '405': description: This response is provided when the requested method/verb on a resource is invalid. No response paylaod. '429': description: This response is provided when number of inbound requests exceeded the throttling limits. No response paylaod. '500': description: This response is provided when any unforeseen error is encountered,such as; Certificate/key do not match or incorrect or downstream service is not available. components: securitySchemes: apiKeyHeader: type: apiKey name: Ocp-Apim-Subscription-Key in: header apiKeyQuery: type: apiKey name: subscription-key in: query