{"activeVersionTag":"latest","latestAvailableVersionTag":"latest","collection":{"info":{"_postman_id":"b706719b-01bf-4bcd-a779-bafe03b5cf45","name":"CDR Status and Outages API Reference","description":"# Purpose\n\nExplains the standards, rules, context, conventions, parameters, and methods for the Consumer Data Right (CDR) Status and Outage APIs.\n\nThis public API is used to monitor the health status and scheduled outages for CDR.\n\n# Audience\n\nConsumer Data Right for Energy Participants which includes Retailers and Accredited Data Recipients.\n\n# Status\n\nThis documentation presents the API evolving design. It is updated as the technical requirements are streamlined.\n\nThe design is not ready for participants’ builds.\n\n<h1>Related rules and procedures</h1>\n\n- [Meter Data File Format Specification](https://aemo.com.au/energy-systems/electricity/national-electricity-market-nem/market-operations/retail-and-metering/metering-procedures-guidelines-and-processes)\n- <a href=\"https://aemo.com.au/energy-systems/electricity/national-electricity-market-nem/market-operations/retail-and-metering/market-settlement-and-transfer-solutions-msats\">MSATS Procedures</a>\n    \n- <a href=\"https://www.legislation.sa.gov.au/lz?path=/c/r/national\">National Energy Retail Regulations</a>\n    \n- [Retail Electricity Market Glossary and Framework](https://aemo.com.au/-/media/files/electricity/nem/retail_and_metering/metering-procedures/2021/retail-electricity-market-procedures-glossary-and-framework-v331.pdf?la=en)\n    \n\n# Standards\n\nThe [Consumer Data Standards](https://consumerdatastandardsaustralia.github.io/standards) are developed, maintained, and owned by the Data Standards Body (DSB). Response payload specifications are included in this guide to provide additional context and commentary to assist with the interpretation and processing of returned data.\n\n**Where there are any discrepancies between this guide and the Consumer Data Standards, the Consumer Data Standards take precedence.**\n\n# Assumed knowledge\n\nAn understanding of the following is required:\n\n1. API and JSON fundamentals\n2. [API Reference](https://visualisations.aemo.com.au/aemo/web-help/Content/API_Reference/API_introduction.htm)\n3. RESTful programming architecture\n4. The [Consumer Data Standards](https://consumerdatastandardsaustralia.github.io/standards)\n5. The [MSATS Procedures](https://aemo.com.au/energy-systems/electricity/national-electricity-market-nem/market-operations/retail-and-metering/market-settlement-and-transfer-solutions-msats)\n6. The [operation of the NEM Retail Market](https://aemo.com.au/energy-systems/electricity/national-electricity-market-nem)\n7. [Standing Data for MSATS](https://aemo.com.au/energy-systems/electricity/national-electricity-market-nem/market-operations/retail-and-metering/market-settlement-and-transfer-solutions-msats)\n    \n\n# Prerequisites\n\nBefore you can use the Consumer Data Right (CDR) Status and Outages API, you should test your submission in the pre-production environment before submitting to production. AEMO encourages participants to use the pre-production environment to test procedures and train staff.\n\n# Resources\n\n- [Consumer Data Standards](https://consumerdatastandardsaustralia.github.io/standards)\n- [DER Register](https://aemo.com.au/energy-systems/electricity/der-register/data-der)\n- [API Reference](https://visualisations.aemo.com.au/aemo/web-help/Content/API_Reference/API_introduction.htm)\n- [Industry Terminology](https://visualisations.aemo.com.au/aemo/apps/web-glossary/Content/IndustryTerminology/IndustryTerminology.htm)\n- [Meter Data File Format Specification](https://aemo.com.au/energy-systems/electricity/national-electricity-market-nem/market-operations/retail-and-metering/metering-procedures-guidelines-and-processes)\n- <a href=\"https://aemo.com.au/energy-systems/electricity/national-electricity-market-nem/market-operations/retail-and-metering/market-settlement-and-transfer-solutions-msats\">MSATS Procedures</a>\n    \n- <a href=\"https://www.legislation.sa.gov.au/lz?path=/c/r/national\">National Energy Retail Regulations</a>\n    \n- [Operation of the NEM Retail Market](https://aemo.com.au/energy-systems/electricity/national-electricity-market-nem)\n- [Retail Electricity Market Glossary and Framework](https://aemo.com.au/-/media/files/electricity/nem/retail_and_metering/metering-procedures/2021/retail-electricity-market-procedures-glossary-and-framework-v331.pdf?la=en)\n- [Standing Data for MSATS](https://aemo.com.au/energy-systems/electricity/national-electricity-market-nem/market-operations/retail-and-metering/market-settlement-and-transfer-solutions-msats)\n- [Technical Guide to MSATS](https://visualisations.aemo.com.au/aemo/web-help/Content/MSATSTechnicalGuide/Technical_Guide_to_MSATS.htm)\n    \n\n# API access\n\nCDR Status and Outage APIs are accessible over the internet. For details, see the [API Reference](https://visualisations.aemo.com.au/aemo/web-help/Content/API_Reference/API_introduction.htm).\n\n# Authentication\n\n- All communications between AEMO’s API gateway and participants’ gateways use HTTPS. AEMO APIs do not support HTTP.\n    \n\n# AEMO API portal\n\nAt the scheduled release time, API details, including Swagger/OAS files are available from AEMO’s API Portal:\n\n- <a href=\"https://dev.preprod.aemo.com.au/\">Pre-production</a>\n    \n- <a href=\"https://dev.aemo.com.au/\">Production</a>\n    \n\n# Base URLs\n\nParticipants can connect to the AEMO API Gateway through the internet.\n\n| **Environment** | **Base URL** |\n| --- | --- |\n| Pre-production | [https://api.preprod.aemo.com.au/NEMRetail/cds-au/v1/](https://api.preprod.aemo.com.au/NEMRetail/cds-au/v1/) |\n| Production | [https://api.aemo.com.au/NEMRetail/cds-au/v1/](https://api.aemo.com.au/NEMRetail/cds-au/v1/) |\n\n# API format\n\nJSON\n\n# API naming\n\nThe CDR Status and Outage APIs follow the naming conventions as defined by the Consumer Data Standards body.\n\n# Compression\n\nAEMO APIs support HTTP protocol compression controlled by the HTTP request header attributes, allowing compression before sending and responding.\n\n# Throttling\n\nAEMO implements the following throttling on API calls:· 3600 requests per minute.\n\n# Response codes\n\n<table><tbody><tr><th><p>Code</p></th><th><p>Description</p></th><th><p>Scenario</p></th></tr><tr><td><div><p>200</p></div><div contenteditable=\"false\"><div><div><div></div></div></div><div></div></div></td><td><div><p>OK</p></div><div contenteditable=\"false\"><div><div><div></div></div></div><div></div></div></td><td><div><p>The request is processed</p><p>The data payload is included</p></div><div contenteditable=\"false\"><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div><p>400</p></div><div contenteditable=\"false\"><div><div><div></div></div></div><div></div></div></td><td><div>Missing required header</div><div contenteditable=\"false\"><div><div><div></div></div></div><div></div></div></td><td><div>A required field is missing from the request header. See Header parameters</div><div contenteditable=\"false\"><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div><p>400</p></div><div contenteditable=\"false\"><div><div><div></div></div></div><div></div></div></td><td><div>Invalid header</div><div contenteditable=\"false\"><div><div><div></div></div></div><div></div></div></td><td><div>An invalid field is provided in the request header. Either an unexpected field is included in the request or the value provided is improperly formed. See Header parameters</div><div contenteditable=\"false\"><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>400</div><div contenteditable=\"false\"><div><div><div></div></div></div><div></div></div></td><td><div>Invalid page size</div><div contenteditable=\"false\"><div><div><div></div></div></div><div></div></div></td><td><div>The page size provided is non-numeric or greater than the maximum allowed page size. See Query parameters</div><div contenteditable=\"false\"><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>400</div><div contenteditable=\"false\"><div><div><div></div></div></div><div></div></div></td><td><div>Invalid version</div><div contenteditable=\"false\"><div><div><div></div></div></div><div></div></div></td><td><div>An invalid version is requested. See Header parameters</div><div contenteditable=\"false\"><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div><p>404</p></div><div contenteditable=\"false\"><div><div><div></div></div></div><div></div></div></td><td><div><p>Not found</p></div><div contenteditable=\"false\"><div><div><div></div></div></div><div></div></div></td><td><div><p>The requested URL is not a valid API endpoint. See API endpoints and response details</p></div><div contenteditable=\"false\"><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div><p>405</p></div><div contenteditable=\"false\"><div><div><div></div></div></div><div></div></div></td><td><div><p>Method not allowed</p></div><div contenteditable=\"false\"><div><div><div></div></div></div><div></div></div></td><td><div><p>Expected a GET method and received a POST method</p></div><div contenteditable=\"false\"><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>406</div><div contenteditable=\"false\"><div><div><div></div></div></div><div></div></div></td><td><div>Unsupported version</div><div contenteditable=\"false\"><div><div><div></div></div></div><div></div></div></td><td><div>The version requested is not supported. See Header parameters</div><div contenteditable=\"false\"><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div>422</div><div contenteditable=\"false\"><div><div><div></div></div></div><div></div></div></td><td><div>Invalid page</div><div contenteditable=\"false\"><div><div><div></div></div></div><div></div></div></td><td><div>No data exists for the requested page. See Query parameters</div><div contenteditable=\"false\"><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div><p>429</p></div><div contenteditable=\"false\"><div><div><div></div></div></div><div></div></div></td><td><div><p>Too many requests</p></div><div contenteditable=\"false\"><div><div><div></div></div></div><div></div></div></td><td><div><p>The total number of inbound CDR API requests received within a minute have exceeded the Participant ID threshold. Wait 1 minute before resubmitting</p></div><div contenteditable=\"false\"><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div><p>500</p></div><div contenteditable=\"false\"><div><div><div></div></div></div><div></div></div></td><td><div><p>Unexpected error encountered or internal server error</p></div><div contenteditable=\"false\"><div><div><div></div></div></div><div></div></div></td><td><div><p>An unforeseen error occurred processing the request</p></div><div contenteditable=\"false\"><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div><p>503</p></div><div contenteditable=\"false\"><div><div><div></div></div></div><div></div></div></td><td><div><p>Service unavailable</p></div><div contenteditable=\"false\"><div><div><div></div></div></div><div></div></div></td><td><div><p>Service unavailable</p></div><div contenteditable=\"false\"><div><div><div></div></div></div><div></div></div></td></tr><tr><td><div><p>504</p></div><div contenteditable=\"false\"><div><div><div></div></div></div><div></div></div></td><td><div><p>Gateway Timeout</p></div><div contenteditable=\"false\"><div><div><div></div></div></div><div></div></div></td><td><div><p>Request timed out</p></div><div contenteditable=\"false\"><div><div><div></div></div></div><div></div></div></td></tr></tbody></table>\n\n# API endpoints and response details","schema":"https://schema.getpostman.com/json/collection/v2.0.0/collection.json","isPublicCollection":false,"owner":"26491644","collectionId":"b706719b-01bf-4bcd-a779-bafe03b5cf45","publishedId":"2s9YJXYjrV","public":true,"publicUrl":"https://documenter-api.postman.tech/view/26491644/2s9YJXYjrV","privateUrl":"https://go.postman.co/documentation/26491644-b706719b-01bf-4bcd-a779-bafe03b5cf45","customColor":{"top-bar":"FFFFFF","right-sidebar":"492249","highlight":"b766C2"},"documentationLayout":"classic-double-column","customisation":{"metaTags":[{"name":"description","value":""},{"name":"title","value":""}],"appearance":{"default":"light","themes":[{"name":"dark","logo":null,"colors":{"top-bar":"212121","right-sidebar":"492249","highlight":"B766C2"}},{"name":"light","logo":null,"colors":{"top-bar":"FFFFFF","right-sidebar":"492249","highlight":"b766C2"}}]}},"version":"8.10.1","publishDate":"2023-11-23T01:38:17.000Z","activeVersionTag":"latest","documentationTheme":"light","metaTags":{"title":"","description":""},"logos":{"logoLight":null,"logoDark":null}},"statusCode":200},"environments":[],"user":{"authenticated":false,"permissions":{"publish":false}},"run":{"button":{"js":"https://run.pstmn.io/button.js","css":"https://run.pstmn.io/button.css"}},"web":"https://www.getpostman.com/","team":{"logo":"https://res.cloudinary.com/postman/image/upload/t_team_logo_pubdoc/v1/team/768118b36f06c94b0306958b980558e6915839447e859fe16906e29d683976f0","favicon":""},"isEnvFetchError":false,"languages":"[{\"key\":\"csharp\",\"label\":\"C#\",\"variant\":\"HttpClient\"},{\"key\":\"csharp\",\"label\":\"C#\",\"variant\":\"RestSharp\"},{\"key\":\"curl\",\"label\":\"cURL\",\"variant\":\"cURL\"},{\"key\":\"dart\",\"label\":\"Dart\",\"variant\":\"http\"},{\"key\":\"go\",\"label\":\"Go\",\"variant\":\"Native\"},{\"key\":\"http\",\"label\":\"HTTP\",\"variant\":\"HTTP\"},{\"key\":\"java\",\"label\":\"Java\",\"variant\":\"OkHttp\"},{\"key\":\"java\",\"label\":\"Java\",\"variant\":\"Unirest\"},{\"key\":\"javascript\",\"label\":\"JavaScript\",\"variant\":\"Fetch\"},{\"key\":\"javascript\",\"label\":\"JavaScript\",\"variant\":\"jQuery\"},{\"key\":\"javascript\",\"label\":\"JavaScript\",\"variant\":\"XHR\"},{\"key\":\"c\",\"label\":\"C\",\"variant\":\"libcurl\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Axios\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Native\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Request\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Unirest\"},{\"key\":\"objective-c\",\"label\":\"Objective-C\",\"variant\":\"NSURLSession\"},{\"key\":\"ocaml\",\"label\":\"OCaml\",\"variant\":\"Cohttp\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"cURL\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"Guzzle\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"HTTP_Request2\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"pecl_http\"},{\"key\":\"powershell\",\"label\":\"PowerShell\",\"variant\":\"RestMethod\"},{\"key\":\"python\",\"label\":\"Python\",\"variant\":\"http.client\"},{\"key\":\"python\",\"label\":\"Python\",\"variant\":\"Requests\"},{\"key\":\"r\",\"label\":\"R\",\"variant\":\"httr\"},{\"key\":\"r\",\"label\":\"R\",\"variant\":\"RCurl\"},{\"key\":\"ruby\",\"label\":\"Ruby\",\"variant\":\"Net::HTTP\"},{\"key\":\"shell\",\"label\":\"Shell\",\"variant\":\"Httpie\"},{\"key\":\"shell\",\"label\":\"Shell\",\"variant\":\"wget\"},{\"key\":\"swift\",\"label\":\"Swift\",\"variant\":\"URLSession\"}]","languageSettings":[{"key":"csharp","label":"C#","variant":"HttpClient"},{"key":"csharp","label":"C#","variant":"RestSharp"},{"key":"curl","label":"cURL","variant":"cURL"},{"key":"dart","label":"Dart","variant":"http"},{"key":"go","label":"Go","variant":"Native"},{"key":"http","label":"HTTP","variant":"HTTP"},{"key":"java","label":"Java","variant":"OkHttp"},{"key":"java","label":"Java","variant":"Unirest"},{"key":"javascript","label":"JavaScript","variant":"Fetch"},{"key":"javascript","label":"JavaScript","variant":"jQuery"},{"key":"javascript","label":"JavaScript","variant":"XHR"},{"key":"c","label":"C","variant":"libcurl"},{"key":"nodejs","label":"NodeJs","variant":"Axios"},{"key":"nodejs","label":"NodeJs","variant":"Native"},{"key":"nodejs","label":"NodeJs","variant":"Request"},{"key":"nodejs","label":"NodeJs","variant":"Unirest"},{"key":"objective-c","label":"Objective-C","variant":"NSURLSession"},{"key":"ocaml","label":"OCaml","variant":"Cohttp"},{"key":"php","label":"PHP","variant":"cURL"},{"key":"php","label":"PHP","variant":"Guzzle"},{"key":"php","label":"PHP","variant":"HTTP_Request2"},{"key":"php","label":"PHP","variant":"pecl_http"},{"key":"powershell","label":"PowerShell","variant":"RestMethod"},{"key":"python","label":"Python","variant":"http.client"},{"key":"python","label":"Python","variant":"Requests"},{"key":"r","label":"R","variant":"httr"},{"key":"r","label":"R","variant":"RCurl"},{"key":"ruby","label":"Ruby","variant":"Net::HTTP"},{"key":"shell","label":"Shell","variant":"Httpie"},{"key":"shell","label":"Shell","variant":"wget"},{"key":"swift","label":"Swift","variant":"URLSession"}],"languageOptions":[{"label":"C# - HttpClient","value":"csharp - HttpClient - C#"},{"label":"C# - RestSharp","value":"csharp - RestSharp - C#"},{"label":"cURL - cURL","value":"curl - cURL - cURL"},{"label":"Dart - http","value":"dart - http - Dart"},{"label":"Go - Native","value":"go - Native - Go"},{"label":"HTTP - HTTP","value":"http - HTTP - HTTP"},{"label":"Java - OkHttp","value":"java - OkHttp - Java"},{"label":"Java - Unirest","value":"java - Unirest - Java"},{"label":"JavaScript - Fetch","value":"javascript - Fetch - JavaScript"},{"label":"JavaScript - jQuery","value":"javascript - jQuery - JavaScript"},{"label":"JavaScript - XHR","value":"javascript - XHR - JavaScript"},{"label":"C - libcurl","value":"c - libcurl - C"},{"label":"NodeJs - Axios","value":"nodejs - Axios - NodeJs"},{"label":"NodeJs - Native","value":"nodejs - Native - NodeJs"},{"label":"NodeJs - Request","value":"nodejs - Request - NodeJs"},{"label":"NodeJs - Unirest","value":"nodejs - Unirest - NodeJs"},{"label":"Objective-C - NSURLSession","value":"objective-c - NSURLSession - Objective-C"},{"label":"OCaml - Cohttp","value":"ocaml - Cohttp - OCaml"},{"label":"PHP - cURL","value":"php - cURL - PHP"},{"label":"PHP - Guzzle","value":"php - Guzzle - PHP"},{"label":"PHP - HTTP_Request2","value":"php - HTTP_Request2 - PHP"},{"label":"PHP - pecl_http","value":"php - pecl_http - PHP"},{"label":"PowerShell - RestMethod","value":"powershell - RestMethod - PowerShell"},{"label":"Python - http.client","value":"python - http.client - Python"},{"label":"Python - Requests","value":"python - Requests - Python"},{"label":"R - httr","value":"r - httr - R"},{"label":"R - RCurl","value":"r - RCurl - R"},{"label":"Ruby - Net::HTTP","value":"ruby - Net::HTTP - Ruby"},{"label":"Shell - Httpie","value":"shell - Httpie - Shell"},{"label":"Shell - wget","value":"shell - wget - Shell"},{"label":"Swift - URLSession","value":"swift - URLSession - Swift"}],"layoutOptions":[{"value":"classic-single-column","label":"Single Column"},{"value":"classic-double-column","label":"Double Column"}],"versionOptions":[],"environmentOptions":[{"value":"0","label":"No Environment"}],"canonicalUrl":"https://documenter.gw.postman.com/view/metadata/2s9YJXYjrV"}