From 6121ce21b641453deed12ee0a3ab3dd90bec9645 Mon Sep 17 00:00:00 2001 From: Hemang Rathod Date: Fri, 2 Sep 2022 11:30:55 +1000 Subject: [PATCH 1/4] Decision Proposal 260: Updated get energy accounts and get energy account details with changes from DP260 --- swagger-gen/api/cds_energy.json | 43 +++++++++++++++++++++++++++++---- 1 file changed, 38 insertions(+), 5 deletions(-) diff --git a/swagger-gen/api/cds_energy.json b/swagger-gen/api/cds_energy.json index 36840abb..06dfb75b 100644 --- a/swagger-gen/api/cds_energy.json +++ b/swagger-gen/api/cds_energy.json @@ -2514,7 +2514,9 @@ "EnergyAccountBase": { "type": "object", "required": [ - "accountId", + "accountId" + ], + "x-conditional": [ "creationDate" ], "properties": { @@ -2530,8 +2532,17 @@ "description": "An optional display name for the account if one exists or can be derived. The content of this field is at the discretion of the data holder", "type": "string" }, + "openStatus": { + "type": "string", + "description": "Open or closed status for the account. If not present then OPEN is assumed", + "default": "OPEN", + "enum": [ + "CLOSED", + "OPEN" + ] + }, "creationDate": { - "description": "The date that the account was created or opened", + "description": "The date that the account was created or opened. Mandatory if openStatus is OPEN", "type": "string", "x-cds-type": "DateString" } @@ -2555,7 +2566,9 @@ "items": { "type": "object", "required": [ - "servicePointIds", + "servicePointIds" + ], + "x-conditional": [ "planOverview" ], "properties": { @@ -2571,6 +2584,7 @@ } }, "planOverview": { + "description": "Mandatory if openStatus is OPEN", "type": "object", "required": [ "startDate" @@ -2617,7 +2631,9 @@ "items": { "type": "object", "required": [ - "servicePointIds", + "servicePointIds" + ], + "x-conditional": [ "planOverview", "planDetail" ], @@ -2634,6 +2650,7 @@ } }, "planOverview": { + "description": "Mandatory if openStatus is OPEN", "type": "object", "required": [ "startDate" @@ -2656,7 +2673,7 @@ } }, "planDetail": { - "description": "Detail on the plan applicable to this account", + "description": "Detail on the plan applicable to this account. Mandatory if openStatus is OPEN", "type": "object", "required": [ "fuelType" @@ -4004,6 +4021,16 @@ "type": "string" } }, + "open-status": { + "name": "open-status", + "in": "query", + "description": "Used to filter results according to open/closed status. Values can be OPEN, CLOSED or ALL. If absent then ALL is assumed", + "schema": { + "type": "string", + "default": "ALL", + "enum": ["ALL", "CLOSED","OPEN"] + } + }, "interval-reads": { "name": "interval-reads", "description": "Type of interval reads. Any one of the valid values for this field can be supplied. If absent defaults to NONE", @@ -5632,6 +5659,9 @@ ], "x-version": "1", "parameters": [{ + "$ref": "#/components/parameters/open-status" + }, + { "$ref": "#/components/parameters/page" }, { @@ -5733,6 +5763,9 @@ "parameters": [{ "$ref": "#/components/parameters/accountId" }, + { + "$ref": "#/components/parameters/open-status" + }, { "$ref": "#/components/parameters/x-v" }, From c453abe869fea9739c08bfbbed68df7dcc56fce6 Mon Sep 17 00:00:00 2001 From: Mark Verstege <2514377+markverstege@users.noreply.github.com> Date: Fri, 2 Sep 2022 12:27:19 +1000 Subject: [PATCH 2/4] Added obsolete v1 versions for Get Energy Accounts and Get Energy Account Detail. Updated Energy OAS object versions accordingly --- slate/source/includes/_banking_apis.md.erb | 8 - .../get-energy-account-detail-v1.html.md | 1461 +++++++++++++++++ .../obsolete/get-energy-account-v1.html.md | 353 ++++ swagger-gen/api/cds_energy.json | 30 +- 4 files changed, 1829 insertions(+), 23 deletions(-) create mode 100644 slate/source/includes/obsolete/get-energy-account-detail-v1.html.md create mode 100644 slate/source/includes/obsolete/get-energy-account-v1.html.md diff --git a/slate/source/includes/_banking_apis.md.erb b/slate/source/includes/_banking_apis.md.erb index 67eb25da..050faef2 100644 --- a/slate/source/includes/_banking_apis.md.erb +++ b/slate/source/includes/_banking_apis.md.erb @@ -4,10 +4,6 @@ This specification defines the APIs for Data Holders exposing Banking endpoints. -```diff -Fixed error code documentation for Get Transaction Detail to show the appropriate HTTP status code in the Responses list -``` -
@@ -15,10 +11,6 @@ Fixed error code documentation for Get Transaction Detail to show the appropriat
Banking OpenAPI Specification (JSON)
-```diff -Corrected description for `x-fapi-auth-date` references -``` - <%= partial "includes/cds_banking.md" %> <%= partial "includes/banking/_product_categories.md" %> <%= partial "includes/banking/_product_components.md" %> diff --git a/slate/source/includes/obsolete/get-energy-account-detail-v1.html.md b/slate/source/includes/obsolete/get-energy-account-detail-v1.html.md new file mode 100644 index 00000000..e834edc7 --- /dev/null +++ b/slate/source/includes/obsolete/get-energy-account-detail-v1.html.md @@ -0,0 +1,1461 @@ +--- +title: Get Energy Accounts v1 + +#language_tabs: # must be one of https://git.io/vQNgJ +# - shell +# - javascript + +toc_footers: + - Consumer Data Standards + +search: false +--- + +# Get Energy Account Detail V1 +This page documents version 1 of the Get Energy Account Detail end point. + +* Data Holders **MAY** go-live on November 15 2022 with this version. +* Data Holders **SHOULD** implement Get Energy Account Detail v2 as soon as possible. +* Data Holders **MAY** decommission Get Energy Account Detail v1 as soon as Get Energy Accounts v2 is supported. +* Data Holders **MUST** provide values for all mandatory fields and select reasonable default values if the data is not available for closed accounts + +This version is to be ceased to be called by data recipients when the Data Holder supports Get Energy Account Detail v2. + +## Get Energy Account Detail + + + +> Code samples + +```http +GET /energy/accounts/{accountId} HTTP/1.1 + +Accept: application/json +x-v: string +x-min-v: string +x-fapi-interaction-id: string +x-fapi-auth-date: string +x-fapi-customer-ip-address: string +x-cds-client-headers: string + +``` + +```javascript +var headers = { + 'Accept':'application/json', + 'x-v':'string', + 'x-min-v':'string', + 'x-fapi-interaction-id':'string', + 'x-fapi-auth-date':'string', + 'x-fapi-customer-ip-address':'string', + 'x-cds-client-headers':'string' + +}; + +$.ajax({ + url: '/energy/accounts/{accountId}', + method: 'get', + + headers: headers, + success: function(data) { + console.log(JSON.stringify(data)); + } +}) + +``` + +`GET /energy/accounts/{accountId}` + +Obtain detailed information for a specific energy account + +###Endpoint Version +| | | +|---|--| +|Version|**1** + +

Parameters

+ +|Name|In|Type|Required|Description| +|---|---|---|---|---| +|accountId|path|string|mandatory|ID of a specific account to obtain data for. This is a tokenised ID previous obtained from the Account List end point.| +|x-v|header|string|mandatory|Version of the API end point requested by the client. Must be set to a positive integer. The data holder should respond with the highest supported version between [x-min-v](#request-headers) and [x-v](#request-headers). If the value of [x-min-v](#request-headers) is equal to or higher than the value of [x-v](#request-headers) then the [x-min-v](#request-headers) header should be treated as absent. If all versions requested are not supported then the data holder must respond with a 406 Not Acceptable. See [HTTP Headers](#request-headers)| +|x-min-v|header|string|optional|Minimum version of the API end point requested by the client. Must be set to a positive integer if provided. The data holder should respond with the highest supported version between [x-min-v](#request-headers) and [x-v](#request-headers). If all versions requested are not supported then the data holder must respond with a 406 Not Acceptable.| +|x-fapi-interaction-id|header|string|optional|An **[[RFC4122]](#nref-RFC4122)** UUID used as a correlation id. If provided, the data holder must play back this value in the x-fapi-interaction-id response header. If not provided a **[[RFC4122]](#nref-RFC4122)** UUID value is required to be provided in the response header to track the interaction.| +|x-fapi-auth-date|header|string|conditional|The time when the customer last logged in to the Data Recipient Software Product as described in **[[FAPI-R-Draft]](#nref-FAPI-R-Draft)**. Required for all resource calls (customer present and unattended). Not required for unauthenticated calls.| +|x-fapi-customer-ip-address|header|string|optional|The customer's original IP address if the customer is currently logged in to the data recipient. The presence of this header indicates that the API is being called in a customer present context. Not to be included for unauthenticated calls.| +|x-cds-client-headers|header|[Base64](#common-field-types)|conditional|The customer's original standard http headers [Base64](#common-field-types) encoded, including the original User Agent header, if the customer is currently logged in to the data recipient. Mandatory for customer present calls. Not required for unattended or unauthenticated calls.| + +> Example responses + +> 200 Response + +```json +{ + "data": { + "accountId": "string", + "accountNumber": "string", + "displayName": "string", + "creationDate": "string", + "plans": [ + { + "nickname": "string", + "servicePointIds": [ + "string" + ], + "planOverview": { + "displayName": "string", + "startDate": "string", + "endDate": "string" + }, + "planDetail": { + "fuelType": "ELECTRICITY", + "isContingentPlan": false, + "meteringCharges": [ + { + "displayName": "string", + "description": "string", + "minimumValue": "string", + "maximumValue": "string", + "period": "string" + } + ], + "gasContract": { + "additionalFeeInformation": "string", + "pricingModel": "SINGLE_RATE", + "timeZone": "LOCAL", + "isFixed": true, + "variation": "string", + "onExpiryDescription": "string", + "paymentOption": [ + "PAPER_BILL" + ], + "intrinsicGreenPower": { + "greenPercentage": "string" + }, + "controlledLoad": [ + { + "displayName": "string", + "rateBlockUType": "singleRate", + "startDate": "string", + "endDate": "string", + "singleRate": { + "displayName": "string", + "description": "string", + "dailySupplyCharge": "string", + "rates": [ + {} + ] + }, + "timeOfUseRates": [ + { + "displayName": "string", + "description": "string", + "dailySupplyCharge": "string", + "rates": [], + "timeOfUse": [], + "type": "PEAK" + } + ] + } + ], + "incentives": [ + { + "displayName": "string", + "description": "string", + "category": "GIFT", + "eligibility": "string" + } + ], + "discounts": [ + { + "displayName": "string", + "description": "string", + "type": "CONDITIONAL", + "category": "PAY_ON_TIME", + "endDate": "string", + "methodUType": "percentOfBill", + "percentOfBill": { + "rate": "string" + }, + "percentOfUse": { + "rate": "string" + }, + "fixedAmount": { + "amount": "string" + }, + "percentOverThreshold": { + "rate": "string", + "usageAmount": "string" + } + } + ], + "greenPowerCharges": [ + { + "displayName": "string", + "description": "string", + "scheme": "GREENPOWER", + "type": "FIXED_PER_DAY", + "tiers": [ + { + "percentGreen": "string", + "rate": "string", + "amount": "string" + } + ] + } + ], + "eligibility": [ + { + "type": "EXISTING_CUST", + "information": "string", + "description": "string" + } + ], + "fees": [ + { + "type": "EXIT", + "term": "FIXED", + "amount": "string", + "rate": "string", + "description": "string" + } + ], + "solarFeedInTariff": [ + { + "displayName": "string", + "description": "string", + "scheme": "PREMIUM", + "payerType": "GOVERNMENT", + "tariffUType": "singleTariff", + "singleTariff": { + "amount": "string" + }, + "timeVaryingTariffs": { + "type": "PEAK", + "amount": "string", + "timeVariations": [ + {} + ] + } + } + ], + "tariffPeriod": [ + { + "type": "ENVIRONMENTAL", + "displayName": "string", + "startDate": "string", + "endDate": "string", + "dailySupplyCharges": "string", + "timeZone": "LOCAL", + "rateBlockUType": "singleRate", + "singleRate": { + "displayName": "string", + "description": "string", + "generalUnitPrice": "string", + "rates": [ + {} + ], + "period": "string" + }, + "timeOfUseRates": [ + { + "displayName": "string", + "description": "string", + "rates": [], + "timeOfUse": [], + "type": "PEAK" + } + ], + "demandCharges": [ + { + "displayName": "string", + "description": "string", + "amount": "string", + "measureUnit": "KWH", + "startTime": "string", + "endTime": "string", + "days": [], + "minDemand": "string", + "maxDemand": "string", + "measurementPeriod": "DAY", + "chargePeriod": "DAY" + } + ] + } + ] + }, + "electricityContract": { + "additionalFeeInformation": "string", + "pricingModel": "SINGLE_RATE", + "timeZone": "LOCAL", + "isFixed": true, + "variation": "string", + "onExpiryDescription": "string", + "paymentOption": [ + "PAPER_BILL" + ], + "intrinsicGreenPower": { + "greenPercentage": "string" + }, + "controlledLoad": [ + { + "displayName": "string", + "rateBlockUType": "singleRate", + "startDate": "string", + "endDate": "string", + "singleRate": { + "displayName": "string", + "description": "string", + "dailySupplyCharge": "string", + "rates": [ + {} + ] + }, + "timeOfUseRates": [ + { + "displayName": "string", + "description": "string", + "dailySupplyCharge": "string", + "rates": [], + "timeOfUse": [], + "type": "PEAK" + } + ] + } + ], + "incentives": [ + { + "displayName": "string", + "description": "string", + "category": "GIFT", + "eligibility": "string" + } + ], + "discounts": [ + { + "displayName": "string", + "description": "string", + "type": "CONDITIONAL", + "category": "PAY_ON_TIME", + "endDate": "string", + "methodUType": "percentOfBill", + "percentOfBill": { + "rate": "string" + }, + "percentOfUse": { + "rate": "string" + }, + "fixedAmount": { + "amount": "string" + }, + "percentOverThreshold": { + "rate": "string", + "usageAmount": "string" + } + } + ], + "greenPowerCharges": [ + { + "displayName": "string", + "description": "string", + "scheme": "GREENPOWER", + "type": "FIXED_PER_DAY", + "tiers": [ + { + "percentGreen": "string", + "rate": "string", + "amount": "string" + } + ] + } + ], + "eligibility": [ + { + "type": "EXISTING_CUST", + "information": "string", + "description": "string" + } + ], + "fees": [ + { + "type": "EXIT", + "term": "FIXED", + "amount": "string", + "rate": "string", + "description": "string" + } + ], + "solarFeedInTariff": [ + { + "displayName": "string", + "description": "string", + "scheme": "PREMIUM", + "payerType": "GOVERNMENT", + "tariffUType": "singleTariff", + "singleTariff": { + "amount": "string" + }, + "timeVaryingTariffs": { + "type": "PEAK", + "amount": "string", + "timeVariations": [ + {} + ] + } + } + ], + "tariffPeriod": [ + { + "type": "ENVIRONMENTAL", + "displayName": "string", + "startDate": "string", + "endDate": "string", + "dailySupplyCharges": "string", + "timeZone": "LOCAL", + "rateBlockUType": "singleRate", + "singleRate": { + "displayName": "string", + "description": "string", + "generalUnitPrice": "string", + "rates": [ + {} + ], + "period": "string" + }, + "timeOfUseRates": [ + { + "displayName": "string", + "description": "string", + "rates": [], + "timeOfUse": [], + "type": "PEAK" + } + ], + "demandCharges": [ + { + "displayName": "string", + "description": "string", + "amount": "string", + "measureUnit": "KWH", + "startTime": "string", + "endTime": "string", + "days": [], + "minDemand": "string", + "maxDemand": "string", + "measurementPeriod": "DAY", + "chargePeriod": "DAY" + } + ] + } + ] + } + }, + "authorisedContacts": [ + { + "firstName": "string", + "lastName": "string", + "middleNames": [ + "string" + ], + "prefix": "string", + "suffix": "string" + } + ] + } + ] + }, + "links": { + "self": "string" + }, + "meta": {} +} +``` + +

Responses

+ +|Status|Meaning|Description|Schema| +|---|---|---|---| +|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|Successful response|[EnergyAccountDetailResponse](#schemacdr-energy-apienergyaccountdetailresponse)| +|400|[Bad Request](https://tools.ietf.org/html/rfc7231#section-6.5.1)|The following error codes MUST be supported:
|[ErrorListResponse](#schemacdr-energy-apierrorlistresponse)| +|404|[Not Found](https://tools.ietf.org/html/rfc7231#section-6.5.4)|The following error codes MUST be supported:
|[ErrorListResponse](#schemacdr-energy-apierrorlistresponse)| +|406|[Not Acceptable](https://tools.ietf.org/html/rfc7231#section-6.5.6)|The following error codes MUST be supported:
|[ErrorListResponse](#schemacdr-energy-apierrorlistresponse)| + +### Response Headers + +|Status|Header|Type|Format|Description| +|---|---|---|---|---| +|200|x-v|string||none| +|200|x-fapi-interaction-id|string||none| +|400|x-fapi-interaction-id|string||none| +|404|x-fapi-interaction-id|string||none| +|406|x-fapi-interaction-id|string||none| + + + + + +

EnergyAccountDetailResponse

+ + + +```json +{ + "data": { + "accountId": "string", + "accountNumber": "string", + "displayName": "string", + "creationDate": "string", + "plans": [ + { + "nickname": "string", + "servicePointIds": [ + "string" + ], + "planOverview": { + "displayName": "string", + "startDate": "string", + "endDate": "string" + }, + "planDetail": { + "fuelType": "ELECTRICITY", + "isContingentPlan": false, + "meteringCharges": [ + { + "displayName": "string", + "description": "string", + "minimumValue": "string", + "maximumValue": "string", + "period": "string" + } + ], + "gasContract": { + "additionalFeeInformation": "string", + "pricingModel": "SINGLE_RATE", + "timeZone": "LOCAL", + "isFixed": true, + "variation": "string", + "onExpiryDescription": "string", + "paymentOption": [ + "PAPER_BILL" + ], + "intrinsicGreenPower": { + "greenPercentage": "string" + }, + "controlledLoad": [ + { + "displayName": "string", + "rateBlockUType": "singleRate", + "startDate": "string", + "endDate": "string", + "singleRate": { + "displayName": "string", + "description": "string", + "dailySupplyCharge": "string", + "rates": [ + {} + ] + }, + "timeOfUseRates": [ + { + "displayName": "string", + "description": "string", + "dailySupplyCharge": "string", + "rates": [], + "timeOfUse": [], + "type": "PEAK" + } + ] + } + ], + "incentives": [ + { + "displayName": "string", + "description": "string", + "category": "GIFT", + "eligibility": "string" + } + ], + "discounts": [ + { + "displayName": "string", + "description": "string", + "type": "CONDITIONAL", + "category": "PAY_ON_TIME", + "endDate": "string", + "methodUType": "percentOfBill", + "percentOfBill": { + "rate": "string" + }, + "percentOfUse": { + "rate": "string" + }, + "fixedAmount": { + "amount": "string" + }, + "percentOverThreshold": { + "rate": "string", + "usageAmount": "string" + } + } + ], + "greenPowerCharges": [ + { + "displayName": "string", + "description": "string", + "scheme": "GREENPOWER", + "type": "FIXED_PER_DAY", + "tiers": [ + { + "percentGreen": "string", + "rate": "string", + "amount": "string" + } + ] + } + ], + "eligibility": [ + { + "type": "EXISTING_CUST", + "information": "string", + "description": "string" + } + ], + "fees": [ + { + "type": "EXIT", + "term": "FIXED", + "amount": "string", + "rate": "string", + "description": "string" + } + ], + "solarFeedInTariff": [ + { + "displayName": "string", + "description": "string", + "scheme": "PREMIUM", + "payerType": "GOVERNMENT", + "tariffUType": "singleTariff", + "singleTariff": { + "amount": "string" + }, + "timeVaryingTariffs": { + "type": "PEAK", + "amount": "string", + "timeVariations": [ + {} + ] + } + } + ], + "tariffPeriod": [ + { + "type": "ENVIRONMENTAL", + "displayName": "string", + "startDate": "string", + "endDate": "string", + "dailySupplyCharges": "string", + "timeZone": "LOCAL", + "rateBlockUType": "singleRate", + "singleRate": { + "displayName": "string", + "description": "string", + "generalUnitPrice": "string", + "rates": [ + {} + ], + "period": "string" + }, + "timeOfUseRates": [ + { + "displayName": "string", + "description": "string", + "rates": [], + "timeOfUse": [], + "type": "PEAK" + } + ], + "demandCharges": [ + { + "displayName": "string", + "description": "string", + "amount": "string", + "measureUnit": "KWH", + "startTime": "string", + "endTime": "string", + "days": [], + "minDemand": "string", + "maxDemand": "string", + "measurementPeriod": "DAY", + "chargePeriod": "DAY" + } + ] + } + ] + }, + "electricityContract": { + "additionalFeeInformation": "string", + "pricingModel": "SINGLE_RATE", + "timeZone": "LOCAL", + "isFixed": true, + "variation": "string", + "onExpiryDescription": "string", + "paymentOption": [ + "PAPER_BILL" + ], + "intrinsicGreenPower": { + "greenPercentage": "string" + }, + "controlledLoad": [ + { + "displayName": "string", + "rateBlockUType": "singleRate", + "startDate": "string", + "endDate": "string", + "singleRate": { + "displayName": "string", + "description": "string", + "dailySupplyCharge": "string", + "rates": [ + {} + ] + }, + "timeOfUseRates": [ + { + "displayName": "string", + "description": "string", + "dailySupplyCharge": "string", + "rates": [], + "timeOfUse": [], + "type": "PEAK" + } + ] + } + ], + "incentives": [ + { + "displayName": "string", + "description": "string", + "category": "GIFT", + "eligibility": "string" + } + ], + "discounts": [ + { + "displayName": "string", + "description": "string", + "type": "CONDITIONAL", + "category": "PAY_ON_TIME", + "endDate": "string", + "methodUType": "percentOfBill", + "percentOfBill": { + "rate": "string" + }, + "percentOfUse": { + "rate": "string" + }, + "fixedAmount": { + "amount": "string" + }, + "percentOverThreshold": { + "rate": "string", + "usageAmount": "string" + } + } + ], + "greenPowerCharges": [ + { + "displayName": "string", + "description": "string", + "scheme": "GREENPOWER", + "type": "FIXED_PER_DAY", + "tiers": [ + { + "percentGreen": "string", + "rate": "string", + "amount": "string" + } + ] + } + ], + "eligibility": [ + { + "type": "EXISTING_CUST", + "information": "string", + "description": "string" + } + ], + "fees": [ + { + "type": "EXIT", + "term": "FIXED", + "amount": "string", + "rate": "string", + "description": "string" + } + ], + "solarFeedInTariff": [ + { + "displayName": "string", + "description": "string", + "scheme": "PREMIUM", + "payerType": "GOVERNMENT", + "tariffUType": "singleTariff", + "singleTariff": { + "amount": "string" + }, + "timeVaryingTariffs": { + "type": "PEAK", + "amount": "string", + "timeVariations": [ + {} + ] + } + } + ], + "tariffPeriod": [ + { + "type": "ENVIRONMENTAL", + "displayName": "string", + "startDate": "string", + "endDate": "string", + "dailySupplyCharges": "string", + "timeZone": "LOCAL", + "rateBlockUType": "singleRate", + "singleRate": { + "displayName": "string", + "description": "string", + "generalUnitPrice": "string", + "rates": [ + {} + ], + "period": "string" + }, + "timeOfUseRates": [ + { + "displayName": "string", + "description": "string", + "rates": [], + "timeOfUse": [], + "type": "PEAK" + } + ], + "demandCharges": [ + { + "displayName": "string", + "description": "string", + "amount": "string", + "measureUnit": "KWH", + "startTime": "string", + "endTime": "string", + "days": [], + "minDemand": "string", + "maxDemand": "string", + "measurementPeriod": "DAY", + "chargePeriod": "DAY" + } + ] + } + ] + } + }, + "authorisedContacts": [ + { + "firstName": "string", + "lastName": "string", + "middleNames": [ + "string" + ], + "prefix": "string", + "suffix": "string" + } + ] + } + ] + }, + "links": { + "self": "string" + }, + "meta": {} +} + +``` + +### Properties + +|Name|Type|Required|Description| +|---|---|---|---| +|data|[EnergyAccountDetail](#schemacdr-energy-apienergyaccountdetail)|mandatory|none| +|links|[Links](#schemacdr-energy-apilinks)|mandatory|none| +|meta|[Meta](#schemacdr-energy-apimeta)|mandatory|none| + +

EnergyAccountDetail

+ + + +```json +{ + "accountId": "string", + "accountNumber": "string", + "displayName": "string", + "creationDate": "string", + "plans": [ + { + "nickname": "string", + "servicePointIds": [ + "string" + ], + "planOverview": { + "displayName": "string", + "startDate": "string", + "endDate": "string" + }, + "planDetail": { + "fuelType": "ELECTRICITY", + "isContingentPlan": false, + "meteringCharges": [ + { + "displayName": "string", + "description": "string", + "minimumValue": "string", + "maximumValue": "string", + "period": "string" + } + ], + "gasContract": { + "additionalFeeInformation": "string", + "pricingModel": "SINGLE_RATE", + "timeZone": "LOCAL", + "isFixed": true, + "variation": "string", + "onExpiryDescription": "string", + "paymentOption": [ + "PAPER_BILL" + ], + "intrinsicGreenPower": { + "greenPercentage": "string" + }, + "controlledLoad": [ + { + "displayName": "string", + "rateBlockUType": "singleRate", + "startDate": "string", + "endDate": "string", + "singleRate": { + "displayName": "string", + "description": "string", + "dailySupplyCharge": "string", + "rates": [ + { + "unitPrice": "string", + "measureUnit": "KWH", + "volume": 0 + } + ] + }, + "timeOfUseRates": [ + { + "displayName": "string", + "description": "string", + "dailySupplyCharge": "string", + "rates": [ + {} + ], + "timeOfUse": [ + {} + ], + "type": "PEAK" + } + ] + } + ], + "incentives": [ + { + "displayName": "string", + "description": "string", + "category": "GIFT", + "eligibility": "string" + } + ], + "discounts": [ + { + "displayName": "string", + "description": "string", + "type": "CONDITIONAL", + "category": "PAY_ON_TIME", + "endDate": "string", + "methodUType": "percentOfBill", + "percentOfBill": { + "rate": "string" + }, + "percentOfUse": { + "rate": "string" + }, + "fixedAmount": { + "amount": "string" + }, + "percentOverThreshold": { + "rate": "string", + "usageAmount": "string" + } + } + ], + "greenPowerCharges": [ + { + "displayName": "string", + "description": "string", + "scheme": "GREENPOWER", + "type": "FIXED_PER_DAY", + "tiers": [ + { + "percentGreen": "string", + "rate": "string", + "amount": "string" + } + ] + } + ], + "eligibility": [ + { + "type": "EXISTING_CUST", + "information": "string", + "description": "string" + } + ], + "fees": [ + { + "type": "EXIT", + "term": "FIXED", + "amount": "string", + "rate": "string", + "description": "string" + } + ], + "solarFeedInTariff": [ + { + "displayName": "string", + "description": "string", + "scheme": "PREMIUM", + "payerType": "GOVERNMENT", + "tariffUType": "singleTariff", + "singleTariff": { + "amount": "string" + }, + "timeVaryingTariffs": { + "type": "PEAK", + "amount": "string", + "timeVariations": [ + { + "days": [], + "startTime": "string", + "endTime": "string" + } + ] + } + } + ], + "tariffPeriod": [ + { + "type": "ENVIRONMENTAL", + "displayName": "string", + "startDate": "string", + "endDate": "string", + "dailySupplyCharges": "string", + "timeZone": "LOCAL", + "rateBlockUType": "singleRate", + "singleRate": { + "displayName": "string", + "description": "string", + "generalUnitPrice": "string", + "rates": [ + { + "unitPrice": "string", + "measureUnit": "KWH", + "volume": 0 + } + ], + "period": "string" + }, + "timeOfUseRates": [ + { + "displayName": "string", + "description": "string", + "rates": [ + {} + ], + "timeOfUse": [ + {} + ], + "type": "PEAK" + } + ], + "demandCharges": [ + { + "displayName": "string", + "description": "string", + "amount": "string", + "measureUnit": "KWH", + "startTime": "string", + "endTime": "string", + "days": [ + "SUN" + ], + "minDemand": "string", + "maxDemand": "string", + "measurementPeriod": "DAY", + "chargePeriod": "DAY" + } + ] + } + ] + }, + "electricityContract": { + "additionalFeeInformation": "string", + "pricingModel": "SINGLE_RATE", + "timeZone": "LOCAL", + "isFixed": true, + "variation": "string", + "onExpiryDescription": "string", + "paymentOption": [ + "PAPER_BILL" + ], + "intrinsicGreenPower": { + "greenPercentage": "string" + }, + "controlledLoad": [ + { + "displayName": "string", + "rateBlockUType": "singleRate", + "startDate": "string", + "endDate": "string", + "singleRate": { + "displayName": "string", + "description": "string", + "dailySupplyCharge": "string", + "rates": [ + { + "unitPrice": "string", + "measureUnit": "KWH", + "volume": 0 + } + ] + }, + "timeOfUseRates": [ + { + "displayName": "string", + "description": "string", + "dailySupplyCharge": "string", + "rates": [ + {} + ], + "timeOfUse": [ + {} + ], + "type": "PEAK" + } + ] + } + ], + "incentives": [ + { + "displayName": "string", + "description": "string", + "category": "GIFT", + "eligibility": "string" + } + ], + "discounts": [ + { + "displayName": "string", + "description": "string", + "type": "CONDITIONAL", + "category": "PAY_ON_TIME", + "endDate": "string", + "methodUType": "percentOfBill", + "percentOfBill": { + "rate": "string" + }, + "percentOfUse": { + "rate": "string" + }, + "fixedAmount": { + "amount": "string" + }, + "percentOverThreshold": { + "rate": "string", + "usageAmount": "string" + } + } + ], + "greenPowerCharges": [ + { + "displayName": "string", + "description": "string", + "scheme": "GREENPOWER", + "type": "FIXED_PER_DAY", + "tiers": [ + { + "percentGreen": "string", + "rate": "string", + "amount": "string" + } + ] + } + ], + "eligibility": [ + { + "type": "EXISTING_CUST", + "information": "string", + "description": "string" + } + ], + "fees": [ + { + "type": "EXIT", + "term": "FIXED", + "amount": "string", + "rate": "string", + "description": "string" + } + ], + "solarFeedInTariff": [ + { + "displayName": "string", + "description": "string", + "scheme": "PREMIUM", + "payerType": "GOVERNMENT", + "tariffUType": "singleTariff", + "singleTariff": { + "amount": "string" + }, + "timeVaryingTariffs": { + "type": "PEAK", + "amount": "string", + "timeVariations": [ + { + "days": [], + "startTime": "string", + "endTime": "string" + } + ] + } + } + ], + "tariffPeriod": [ + { + "type": "ENVIRONMENTAL", + "displayName": "string", + "startDate": "string", + "endDate": "string", + "dailySupplyCharges": "string", + "timeZone": "LOCAL", + "rateBlockUType": "singleRate", + "singleRate": { + "displayName": "string", + "description": "string", + "generalUnitPrice": "string", + "rates": [ + { + "unitPrice": "string", + "measureUnit": "KWH", + "volume": 0 + } + ], + "period": "string" + }, + "timeOfUseRates": [ + { + "displayName": "string", + "description": "string", + "rates": [ + {} + ], + "timeOfUse": [ + {} + ], + "type": "PEAK" + } + ], + "demandCharges": [ + { + "displayName": "string", + "description": "string", + "amount": "string", + "measureUnit": "KWH", + "startTime": "string", + "endTime": "string", + "days": [ + "SUN" + ], + "minDemand": "string", + "maxDemand": "string", + "measurementPeriod": "DAY", + "chargePeriod": "DAY" + } + ] + } + ] + } + }, + "authorisedContacts": [ + { + "firstName": "string", + "lastName": "string", + "middleNames": [ + "string" + ], + "prefix": "string", + "suffix": "string" + } + ] + } + ] +} + +``` + +### Properties + +*allOf* + +|Name|Type|Required|Description| +|---|---|---|---| +|*anonymous*|[EnergyAccountBase](#schemacdr-energy-apienergyaccountbase)|mandatory|none| + +*and* + +|Name|Type|Required|Description| +|---|---|---|---| +|*anonymous*|object|mandatory|The array of plans containing service points and associated plan details| +|» plans|[object]|mandatory|The array of plans containing service points and associated plan details| +|»» nickname|string|optional|Optional display name for the plan provided by the customer to help differentiate multiple plans| +|»» servicePointIds|[string]|mandatory|An array of servicePointIds, representing NMIs, that this account is linked to| +|»» planOverview|object|mandatory|none| +|»»» displayName|string|optional|The name of the plan if one exists| +|»»» startDate|[DateString](#common-field-types)|mandatory|The start date of the applicability of this plan| +|»»» endDate|[DateString](#common-field-types)|optional|The end date of the applicability of this plan| +|»» planDetail|object|mandatory|Detail on the plan applicable to this account| +|»»» fuelType|string|mandatory|The fuel types covered by the plan| +|»»» isContingentPlan|boolean|optional|Flag that indicates that the plan is contingent on the customer taking up an alternate fuel plan from the same retailer (for instance, if the fuelType is ELECTRICITY then a GAS plan from the same retailer must be taken up). Has no meaning if the plan has a fuelType of DUAL. If absent the value is assumed to be false| +|»»» meteringCharges|[object]|optional|Charges for metering included in the plan| +|»»»» displayName|string|mandatory|Display name of the charge| +|»»»» description|string|optional|Description of the charge| +|»»»» minimumValue|[AmountString](#common-field-types)|mandatory|Minimum value of the charge if the charge is a range or the absolute value of the charge if no range is specified| +|»»»» maximumValue|[AmountString](#common-field-types)|optional|The upper limit of the charge if the charge could occur in a range| +|»»»» period|[ExternalRef](#common-field-types)|optional|The charges that occur on a schedule indicates the frequency. Formatted according to [ISO 8601 Durations](https://en.wikipedia.org/wiki/ISO_8601#Durations) (excludes recurrence syntax)| +|»»» gasContract|[EnergyPlanContract](#schemacdr-energy-apienergyplancontract)|conditional|The details of the terms for the supply of electricity under this plan. Is mandatory if fuelType is set to GAS or DUAL| +|»»» electricityContract|[EnergyPlanContract](#schemacdr-energy-apienergyplancontract)|conditional|The details of the terms for the supply of electricity under this plan. Is mandatory if fuelType is set to ELECTRICITY or DUAL| +|»» authorisedContacts|[object]|optional|An array of additional contacts that are authorised to act on this account| +|»»» firstName|string|optional|For people with single names this field need not be present. The single name should be in the lastName field| +|»»» lastName|string|mandatory|For people with single names the single name should be in this field| +|»»» middleNames|[string]|optional|Field is mandatory but array may be empty| +|»»» prefix|string|optional|Also known as title or salutation. The prefix to the name (e.g. Mr, Mrs, Ms, Miss, Sir, etc)| +|»»» suffix|string|optional|Used for a trailing suffix to the name (e.g. Jr)| + +#### Enumerated Values + +|Property|Value| +|---|---| +|fuelType|ELECTRICITY| +|fuelType|GAS| +|fuelType|DUAL| + +

EnergyAccountBase

+ + + +```json +{ + "accountId": "string", + "accountNumber": "string", + "displayName": "string", + "creationDate": "string" +} + +``` + +### Properties + +|Name|Type|Required|Description| +|---|---|---|---| +|accountId|string|mandatory|The ID of the account. To be created in accordance with CDR ID permanence requirements| +|accountNumber|string|optional|Optional identifier of the account as defined by the data holder. This must be the value presented on physical statements (if it exists) and must not be used for the value of accountId| +|displayName|string|optional|An optional display name for the account if one exists or can be derived. The content of this field is at the discretion of the data holder| +|creationDate|[DateString](#common-field-types)|mandatory|The date that the account was created or opened| + + + + + +```json +{ + "self": "string" +} + +``` + +### Properties + +|Name|Type|Required|Description| +|---|---|---|---| +|self|[URIString](#common-field-types)|mandatory|Fully qualified link that generated the current response document| + +

Meta

+ + + +```json +{} + +``` + +### Properties + +*None* + +

LinksPaginated

+ + + +```json +{ + "self": "string", + "first": "string", + "prev": "string", + "next": "string", + "last": "string" +} + +``` + +### Properties + +|Name|Type|Required|Description| +|---|---|---|---| +|self|[URIString](#common-field-types)|mandatory|Fully qualified link that generated the current response document| +|first|[URIString](#common-field-types)|conditional|URI to the first page of this set. Mandatory if this response is not the first page| +|prev|[URIString](#common-field-types)|conditional|URI to the previous page of this set. Mandatory if this response is not the first page| +|next|[URIString](#common-field-types)|conditional|URI to the next page of this set. Mandatory if this response is not the last page| +|last|[URIString](#common-field-types)|conditional|URI to the last page of this set. Mandatory if this response is not the last page| + +

MetaPaginated

+ + + +```json +{ + "totalRecords": 0, + "totalPages": 0 +} + +``` + +### Properties + +|Name|Type|Required|Description| +|---|---|---|---| +|totalRecords|[NaturalNumber](#common-field-types)|mandatory|The total number of records in the full set. See [pagination](#pagination).| +|totalPages|[NaturalNumber](#common-field-types)|mandatory|The total number of pages in the full set. See [pagination](#pagination).| diff --git a/slate/source/includes/obsolete/get-energy-account-v1.html.md b/slate/source/includes/obsolete/get-energy-account-v1.html.md new file mode 100644 index 00000000..98d6c6d2 --- /dev/null +++ b/slate/source/includes/obsolete/get-energy-account-v1.html.md @@ -0,0 +1,353 @@ +--- +title: Get Energy Accounts v1 + +#language_tabs: # must be one of https://git.io/vQNgJ +# - shell +# - javascript + +toc_footers: + - Consumer Data Standards + +search: false +--- + +# Get Energy Accounts V1 +This page documents version 1 of the Get Energy Account end point. + +* Data Holders **MAY** go-live on November 15 2022 with this version. +* Data Holders **SHOULD** implement Get Energy Accounts v2 as soon as possible. +* Data Holders **MAY** decommission Get Energy Accounts v1 as soon as Get Energy Accounts v2 is supported. +* Data Holders **MUST** provide values for all mandatory fields and select reasonable default values if the data is not available for closed accounts + +This version is to be ceased to be called by data recipients when the Data Holder supports Get Energy Accounts v2. + +## Get Energy Accounts + + + +> Code samples + +```http +GET /energy/accounts HTTP/1.1 + +Accept: application/json +x-v: string +x-min-v: string +x-fapi-interaction-id: string +x-fapi-auth-date: string +x-fapi-customer-ip-address: string +x-cds-client-headers: string + +``` + +```javascript +var headers = { + 'Accept':'application/json', + 'x-v':'string', + 'x-min-v':'string', + 'x-fapi-interaction-id':'string', + 'x-fapi-auth-date':'string', + 'x-fapi-customer-ip-address':'string', + 'x-cds-client-headers':'string' + +}; + +$.ajax({ + url: '/energy/accounts', + method: 'get', + + headers: headers, + success: function(data) { + console.log(JSON.stringify(data)); + } +}) + +``` + +`GET /energy/accounts` + +Obtain the list of energy accounts available under the authorised consent + +###Endpoint Version +| | | +|---|--| +|Version|**1** + +

Parameters

+ +|Name|In|Type|Required|Description| +|---|---|---|---|---| +|page|query|[PositiveInteger](#common-field-types)|optional|Page of results to request (standard pagination)| +|page-size|query|[PositiveInteger](#common-field-types)|optional|Page size to request. Default is 25 (standard pagination)| +|x-v|header|string|mandatory|Version of the API end point requested by the client. Must be set to a positive integer. The data holder should respond with the highest supported version between [x-min-v](#request-headers) and [x-v](#request-headers). If the value of [x-min-v](#request-headers) is equal to or higher than the value of [x-v](#request-headers) then the [x-min-v](#request-headers) header should be treated as absent. If all versions requested are not supported then the data holder must respond with a 406 Not Acceptable. See [HTTP Headers](#request-headers)| +|x-min-v|header|string|optional|Minimum version of the API end point requested by the client. Must be set to a positive integer if provided. The data holder should respond with the highest supported version between [x-min-v](#request-headers) and [x-v](#request-headers). If all versions requested are not supported then the data holder must respond with a 406 Not Acceptable.| +|x-fapi-interaction-id|header|string|optional|An **[[RFC4122]](#nref-RFC4122)** UUID used as a correlation id. If provided, the data holder must play back this value in the x-fapi-interaction-id response header. If not provided a **[[RFC4122]](#nref-RFC4122)** UUID value is required to be provided in the response header to track the interaction.| +|x-fapi-auth-date|header|string|conditional|The time when the customer last logged in to the Data Recipient Software Product as described in **[[FAPI-R-Draft]](#nref-FAPI-R-Draft)**. Required for all resource calls (customer present and unattended). Not required for unauthenticated calls.| +|x-fapi-customer-ip-address|header|string|optional|The customer's original IP address if the customer is currently logged in to the data recipient. The presence of this header indicates that the API is being called in a customer present context. Not to be included for unauthenticated calls.| +|x-cds-client-headers|header|[Base64](#common-field-types)|conditional|The customer's original standard http headers [Base64](#common-field-types) encoded, including the original User Agent header, if the customer is currently logged in to the data recipient. Mandatory for customer present calls. Not required for unattended or unauthenticated calls.| + +> Example responses + +> 200 Response + +```json +{ + "data": { + "accounts": [ + { + "accountId": "string", + "accountNumber": "string", + "displayName": "string", + "creationDate": "string", + "plans": [ + { + "nickname": "string", + "servicePointIds": [ + "string" + ], + "planOverview": { + "displayName": "string", + "startDate": "string", + "endDate": "string" + } + } + ] + } + ] + }, + "links": { + "self": "string", + "first": "string", + "prev": "string", + "next": "string", + "last": "string" + }, + "meta": { + "totalRecords": 0, + "totalPages": 0 + } +} +``` + +

Responses

+ +|Status|Meaning|Description|Schema| +|---|---|---|---| +|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|Successful response|[EnergyAccountListResponse](#schemacdr-energy-apienergyaccountlistresponse)| +|400|[Bad Request](https://tools.ietf.org/html/rfc7231#section-6.5.1)|The following error codes MUST be supported:
|[ErrorListResponse](#schemacdr-energy-apierrorlistresponse)| +|406|[Not Acceptable](https://tools.ietf.org/html/rfc7231#section-6.5.6)|The following error codes MUST be supported:
|[ErrorListResponse](#schemacdr-energy-apierrorlistresponse)| +|422|[Unprocessable Entity](https://tools.ietf.org/html/rfc2518#section-10.3)|The following error codes MUST be supported:
|[ErrorListResponse](#schemacdr-energy-apierrorlistresponse)| + +### Response Headers + +|Status|Header|Type|Format|Description| +|---|---|---|---|---| +|200|x-v|string||none| +|200|x-fapi-interaction-id|string||none| +|400|x-fapi-interaction-id|string||none| +|406|x-fapi-interaction-id|string||none| +|422|x-fapi-interaction-id|string||none| + + + + +

EnergyAccountListResponse

+ + + +```json +{ + "data": { + "accounts": [ + { + "accountId": "string", + "accountNumber": "string", + "displayName": "string", + "creationDate": "string", + "plans": [ + { + "nickname": "string", + "servicePointIds": [ + "string" + ], + "planOverview": { + "displayName": "string", + "startDate": "string", + "endDate": "string" + } + } + ] + } + ] + }, + "links": { + "self": "string", + "first": "string", + "prev": "string", + "next": "string", + "last": "string" + }, + "meta": { + "totalRecords": 0, + "totalPages": 0 + } +} + +``` + +### Properties + +|Name|Type|Required|Description| +|---|---|---|---| +|data|object|mandatory|none| +|» accounts|[[EnergyAccount](#schemacdr-energy-apienergyaccount)]|mandatory|Array of accounts| +|links|[LinksPaginated](#schemacdr-energy-apilinkspaginated)|mandatory|none| +|meta|[MetaPaginated](#schemacdr-energy-apimetapaginated)|mandatory|none| + +

EnergyAccount

+ + + +```json +{ + "accountId": "string", + "accountNumber": "string", + "displayName": "string", + "creationDate": "string", + "plans": [ + { + "nickname": "string", + "servicePointIds": [ + "string" + ], + "planOverview": { + "displayName": "string", + "startDate": "string", + "endDate": "string" + } + } + ] +} + +``` + +### Properties + +*allOf* + +|Name|Type|Required|Description| +|---|---|---|---| +|*anonymous*|[EnergyAccountBase](#schemacdr-energy-apienergyaccountbase)|mandatory|none| + +*and* + +|Name|Type|Required|Description| +|---|---|---|---| +|*anonymous*|object|mandatory|The array of plans containing service points and associated plan details| +|» plans|[object]|mandatory|The array of plans containing service points and associated plan details| +|»» nickname|string|optional|Optional display name for the plan provided by the customer to help differentiate multiple plans| +|»» servicePointIds|[string]|mandatory|An array of servicePointIds, representing NMIs, that this plan is linked to. If there are no service points allocated to this plan then an empty array would be expected| +|»» planOverview|object|mandatory|none| +|»»» displayName|string|optional|The name of the plan if one exists| +|»»» startDate|[DateString](#common-field-types)|mandatory|The start date of the applicability of this plan| +|»»» endDate|[DateString](#common-field-types)|optional|The end date of the applicability of this plan| + +

EnergyAccountBase

+ + + +```json +{ + "accountId": "string", + "accountNumber": "string", + "displayName": "string", + "creationDate": "string" +} + +``` + +### Properties + +|Name|Type|Required|Description| +|---|---|---|---| +|accountId|string|mandatory|The ID of the account. To be created in accordance with CDR ID permanence requirements| +|accountNumber|string|optional|Optional identifier of the account as defined by the data holder. This must be the value presented on physical statements (if it exists) and must not be used for the value of accountId| +|displayName|string|optional|An optional display name for the account if one exists or can be derived. The content of this field is at the discretion of the data holder| +|creationDate|[DateString](#common-field-types)|mandatory|The date that the account was created or opened| + + + + + +```json +{ + "self": "string" +} + +``` + +### Properties + +|Name|Type|Required|Description| +|---|---|---|---| +|self|[URIString](#common-field-types)|mandatory|Fully qualified link that generated the current response document| + +

Meta

+ + + +```json +{} + +``` + +### Properties + +*None* + +

LinksPaginated

+ + + +```json +{ + "self": "string", + "first": "string", + "prev": "string", + "next": "string", + "last": "string" +} + +``` + +### Properties + +|Name|Type|Required|Description| +|---|---|---|---| +|self|[URIString](#common-field-types)|mandatory|Fully qualified link that generated the current response document| +|first|[URIString](#common-field-types)|conditional|URI to the first page of this set. Mandatory if this response is not the first page| +|prev|[URIString](#common-field-types)|conditional|URI to the previous page of this set. Mandatory if this response is not the first page| +|next|[URIString](#common-field-types)|conditional|URI to the next page of this set. Mandatory if this response is not the last page| +|last|[URIString](#common-field-types)|conditional|URI to the last page of this set. Mandatory if this response is not the last page| + +

MetaPaginated

+ + + +```json +{ + "totalRecords": 0, + "totalPages": 0 +} + +``` + +### Properties + +|Name|Type|Required|Description| +|---|---|---|---| +|totalRecords|[NaturalNumber](#common-field-types)|mandatory|The total number of records in the full set. See [pagination](#pagination).| +|totalPages|[NaturalNumber](#common-field-types)|mandatory|The total number of pages in the full set. See [pagination](#pagination).| diff --git a/swagger-gen/api/cds_energy.json b/swagger-gen/api/cds_energy.json index 06dfb75b..ce3f76aa 100644 --- a/swagger-gen/api/cds_energy.json +++ b/swagger-gen/api/cds_energy.json @@ -3,7 +3,7 @@ "info": { "title": "CDR Energy API", "description": "Consumer Data Right end points and payloads for the Energy sector", - "version": "1.18.0" + "version": "1.19.0" }, "components": { "schemas": { @@ -185,7 +185,7 @@ } } }, - "EnergyAccountListResponse": { + "EnergyAccountListResponseV2": { "type": "object", "required": [ "data", @@ -203,7 +203,7 @@ "description": "Array of accounts", "type": "array", "items": { - "$ref": "#/components/schemas/EnergyAccount" + "$ref": "#/components/schemas/EnergyAccountV2" } } } @@ -216,7 +216,7 @@ } } }, - "EnergyAccountDetailResponse": { + "EnergyAccountDetailResponseV2": { "type": "object", "required": [ "data", @@ -225,7 +225,7 @@ ], "properties": { "data": { - "$ref": "#/components/schemas/EnergyAccountDetail" + "$ref": "#/components/schemas/EnergyAccountDetailV2" }, "links": { "$ref": "#/components/schemas/Links" @@ -2548,7 +2548,7 @@ } } }, - "EnergyAccount": { + "EnergyAccountV2": { "allOf": [ { "$ref": "#/components/schemas/EnergyAccountBase" @@ -2613,7 +2613,7 @@ } ] }, - "EnergyAccountDetail": { + "EnergyAccountDetailV2": { "allOf": [ { "$ref": "#/components/schemas/EnergyAccountBase" @@ -4391,7 +4391,7 @@ } } }, - "accountList": { + "accountListV2": { "description": "Successful response", "headers": { "x-v": { @@ -4410,12 +4410,12 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/EnergyAccountListResponse" + "$ref": "#/components/schemas/EnergyAccountListResponseV2" } } } }, - "accountDetail": { + "accountDetailV2": { "description": "Successful response", "headers": { "x-v": { @@ -4434,7 +4434,7 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/EnergyAccountDetailResponse" + "$ref": "#/components/schemas/EnergyAccountDetailResponseV2" } } } @@ -5657,7 +5657,7 @@ "Energy", "Energy Accounts" ], - "x-version": "1", + "x-version": "2", "parameters": [{ "$ref": "#/components/parameters/open-status" }, @@ -5688,7 +5688,7 @@ ], "responses": { "200": { - "$ref": "#/components/responses/accountList" + "$ref": "#/components/responses/accountListV2" }, "400": { "description": "The following error codes MUST be supported:
", @@ -5759,7 +5759,7 @@ "Energy", "Energy Accounts" ], - "x-version": "1", + "x-version": "2", "parameters": [{ "$ref": "#/components/parameters/accountId" }, @@ -5787,7 +5787,7 @@ ], "responses": { "200": { - "$ref": "#/components/responses/accountDetail" + "$ref": "#/components/responses/accountDetailV2" }, "400": { "description": "The following error codes MUST be supported:
", From ceed4e33f8c9db433ab694f2a4235f40baf86e40 Mon Sep 17 00:00:00 2001 From: Hemang Rathod Date: Fri, 2 Sep 2022 17:27:15 +1000 Subject: [PATCH 3/4] Decision Proposal #260: Updated changelog, releasenotes, fdo, energy api version schedule. Renamed get-energy-account-v1.html.md to get-energy-accounts-v1.html.md --- slate/source/includes/_energy_apis.md.erb | 26 ++++++++++ slate/source/includes/changelog.md | 2 +- .../includes/_energy-dh.md | 6 ++- slate/source/includes/introduction/_fdo.md | 5 +- .../get-energy-account-detail-v1.html.md | 48 +------------------ ...html.md => get-energy-accounts-v1.html.md} | 32 +------------ .../releasenotes/releasenotes.1.19.0.html.md | 3 +- swagger-gen/api/cds_energy.json | 10 ++-- 8 files changed, 45 insertions(+), 87 deletions(-) rename slate/source/includes/obsolete/{get-energy-account-v1.html.md => get-energy-accounts-v1.html.md} (96%) diff --git a/slate/source/includes/_energy_apis.md.erb b/slate/source/includes/_energy_apis.md.erb index 8c8f2e92..15ed51c1 100644 --- a/slate/source/includes/_energy_apis.md.erb +++ b/slate/source/includes/_energy_apis.md.erb @@ -10,5 +10,31 @@ This specification defines the APIs for Data Holders exposing Energy endpoints. Energy OpenAPI Specification (YAML) +```diff +Added the following to v2 of Get Energy Accounts and v2 of Get Energy Account Detail APIs ++ open-status (query parameter) +Updated the following structures +from: + - EnergyAccount + - EnergyAccountBase + - EnergyAccountListResponse + - EnergyAccountDetailResponse + - EnergyAccountDetail +to: ++ EnergyAccountV2 ++ EnergyAccountBaseV2 ++ EnergyAccountListResponseV2 ++ EnergyAccountDetailResponseV2 ++ EnergyAccountDetailV2 + +Added the following fields to EnergyAccountBaseV2 ++ openStatus + +Made the following changes to EnergyAccountV2 + made planOverview conditional + +Made the following changes to EnergyAccountDetailV2 + made planOverview and planDetail conditional +``` <%= partial "includes/cds_energy.md" %> diff --git a/slate/source/includes/changelog.md b/slate/source/includes/changelog.md index 45303096..dcd56b49 100644 --- a/slate/source/includes/changelog.md +++ b/slate/source/includes/changelog.md @@ -4,7 +4,7 @@ The following table lists the changes made to these standards in reverse date or |Change Date|Version|Description|Detail Of change| |-----------|-------|-----------|----------------| -|TBA| 1.19.0 | Changes arising from Decision 259 (Maintenance iteration 12) | See [release notes](includes/releasenotes/releasenotes.1.19.0.html) and [Decision 259](https://github.com/ConsumerDataStandardsAustralia/standards/issues/259) for details | +|TBA| 1.19.0 | Changes arising from Decision 260 (Energy Closed Accoutns) | See [release notes](includes/releasenotes/releasenotes.1.19.0.html) and [Decision 260](https://github.com/ConsumerDataStandardsAustralia/standards/issues/260) for details | |11/08/2022| 1.18.0 | Changes arising from Decision 249 (Maintenance iteration 11) | See [release notes](includes/releasenotes/releasenotes.1.18.0.html) and [Decision 249](https://github.com/ConsumerDataStandardsAustralia/standards/issues/249) for details | |23/05/2022| 1.17.0 | Changes arising from Decision 237 (Maintenance Iteration 10) | See [release notes](includes/releasenotes/releasenotes.1.17.0.html) and [Decision 237](https://github.com/ConsumerDataStandardsAustralia/standards/issues/237) for details | |22/03/2022| 1.16.1 | Minor errata and documentation fixes. Update of swagger files to OAS3 | See [release notes](includes/releasenotes/releasenotes.1.16.1.html) for details | diff --git a/slate/source/includes/endpoint-version-schedule/includes/_energy-dh.md b/slate/source/includes/endpoint-version-schedule/includes/_energy-dh.md index c8fa7423..c03bb12d 100644 --- a/slate/source/includes/endpoint-version-schedule/includes/_energy-dh.md +++ b/slate/source/includes/endpoint-version-schedule/includes/_energy-dh.md @@ -4,8 +4,10 @@ |-----------------|-------------------------------------------|----------------------------------------------------------|--------|---------|----------------|-----------------|--------------------|---------------------| | Energy APIs | Get Generic Plans | ``/energy/plans`` | GET | V1 | 2022-10-01 | N/A | 2021-10-29, V1.14.0| N/A | | Energy APIs | Get Generic Plan Detail | ``/energy/plans/{planId}`` | GET | V1 | 2022-10-01 | N/A | 2021-10-29, V1.14.0| N/A | -| Energy APIs | Get Energy Accounts | ``/energy/accounts`` | GET | V1 | 2022-11-15 | N/A | 2021-10-29, V1.14.0| N/A | -| Energy APIs | Get Energy Account Detail | ``/energy/accounts/{accountId}`` | GET | V1 | 2022-11-15 | N/A | 2021-10-29, V1.14.0| N/A | +| Energy APIs | Get Energy Accounts | ``/energy/accounts`` | GET | V1 | 2022-11-15 | 2023-04-07 | 2021-10-29, V1.14.0| TBC, V1.19.0 | +| Energy APIs | Get Energy Accounts | ``/energy/accounts`` | GET | V2 | 2023-04-07 | N/A | TBC, V1.19.0 | N/A | +| Energy APIs | Get Energy Account Detail | ``/energy/accounts/{accountId}`` | GET | V1 | 2022-11-15 | 2023-04-07 | 2021-10-29, V1.14.0| TBC, V1.19.0 | +| Energy APIs | Get Energy Account Detail | ``/energy/accounts/{accountId}`` | GET | V2 | 2022-04-07 | N/A | TBC, V1.19.0 | N/A | | Energy APIs | Get Agreed Payment Schedule | ``/energy/accounts/{accountId}/payment-schedule`` | GET | V1 | 2022-11-15 | N/A | 2021-10-29, V1.14.0| N/A | | Energy APIs | Get Concessions | ``/energy/accounts/{accountId}/concessions`` | GET | V1 | 2022-11-15 | N/A | 2021-10-29, V1.14.0| N/A | | Energy APIs | Get Balance For Energy Account | ``/energy/accounts/{accountId}/balance`` | GET | V1 | 2022-11-15 | N/A | 2021-10-29, V1.14.0| N/A | diff --git a/slate/source/includes/introduction/_fdo.md b/slate/source/includes/introduction/_fdo.md index 37c6a07b..943985e0 100644 --- a/slate/source/includes/introduction/_fdo.md +++ b/slate/source/includes/introduction/_fdo.md @@ -36,4 +36,7 @@ The table below highlights these areas of the standards. |[Get Product Detail V3](#get-product-detail)|Data holders may obsolete version 3 of this end point from February 28th 2023. Data recipients must upgrade their implementations to use version 4 by this time|February 28th 2023| |[Get Customer Detail V1](#get-customer-detail)|Data holders may obsolete version 1 of this end point from February 28th 2023. Data recipients must upgrade their implementations to use version 2 by this time|February 28th 2023| |[Information Security profile](#security-profile) | FAPI 1.0 adoption is introduced across three phases.
Phase 3: Retire Hybrid Flow includes, amongst other changes: | April 7th 2023 | - +|[Get Energy Accounts V1](#get-energy-accounts)| +|[Get Energy Account Detail V1](#get-energy-account-detail)| +|[Get Energy Accounts V2](#get-energy-accounts)|Data Holder **MUST** implement v2 of this endpoint by **April 7th 2023** +|[Get Energy Account Detail V2](#get-energy-account-detail)|Data Holder **MUST** implement v2 of this endpoint by **April 7th 2023** \ No newline at end of file diff --git a/slate/source/includes/obsolete/get-energy-account-detail-v1.html.md b/slate/source/includes/obsolete/get-energy-account-detail-v1.html.md index e834edc7..82ef698e 100644 --- a/slate/source/includes/obsolete/get-energy-account-detail-v1.html.md +++ b/slate/source/includes/obsolete/get-energy-account-detail-v1.html.md @@ -14,8 +14,8 @@ search: false # Get Energy Account Detail V1 This page documents version 1 of the Get Energy Account Detail end point. -* Data Holders **MAY** go-live on November 15 2022 with this version. -* Data Holders **SHOULD** implement Get Energy Account Detail v2 as soon as possible. +* Data Holders **MAY** go-live on November 15th 2022 with this version. +* Data Holder **MUST** implement Get Energy Account Detail v2 by **April 7th 2023**. * Data Holders **MAY** decommission Get Energy Account Detail v1 as soon as Get Energy Accounts v2 is supported. * Data Holders **MUST** provide values for all mandatory fields and select reasonable default values if the data is not available for closed accounts @@ -1415,47 +1415,3 @@ To perform this operation, you must be authenticated and authorised with the fol ### Properties *None* - -

LinksPaginated

- - - -```json -{ - "self": "string", - "first": "string", - "prev": "string", - "next": "string", - "last": "string" -} - -``` - -### Properties - -|Name|Type|Required|Description| -|---|---|---|---| -|self|[URIString](#common-field-types)|mandatory|Fully qualified link that generated the current response document| -|first|[URIString](#common-field-types)|conditional|URI to the first page of this set. Mandatory if this response is not the first page| -|prev|[URIString](#common-field-types)|conditional|URI to the previous page of this set. Mandatory if this response is not the first page| -|next|[URIString](#common-field-types)|conditional|URI to the next page of this set. Mandatory if this response is not the last page| -|last|[URIString](#common-field-types)|conditional|URI to the last page of this set. Mandatory if this response is not the last page| - -

MetaPaginated

- - - -```json -{ - "totalRecords": 0, - "totalPages": 0 -} - -``` - -### Properties - -|Name|Type|Required|Description| -|---|---|---|---| -|totalRecords|[NaturalNumber](#common-field-types)|mandatory|The total number of records in the full set. See [pagination](#pagination).| -|totalPages|[NaturalNumber](#common-field-types)|mandatory|The total number of pages in the full set. See [pagination](#pagination).| diff --git a/slate/source/includes/obsolete/get-energy-account-v1.html.md b/slate/source/includes/obsolete/get-energy-accounts-v1.html.md similarity index 96% rename from slate/source/includes/obsolete/get-energy-account-v1.html.md rename to slate/source/includes/obsolete/get-energy-accounts-v1.html.md index 98d6c6d2..9b47393c 100644 --- a/slate/source/includes/obsolete/get-energy-account-v1.html.md +++ b/slate/source/includes/obsolete/get-energy-accounts-v1.html.md @@ -15,7 +15,7 @@ search: false This page documents version 1 of the Get Energy Account end point. * Data Holders **MAY** go-live on November 15 2022 with this version. -* Data Holders **SHOULD** implement Get Energy Accounts v2 as soon as possible. +* Data Holder **MUST** implement Get Energy Accounts v2 by **April 7th 2023**. * Data Holders **MAY** decommission Get Energy Accounts v1 as soon as Get Energy Accounts v2 is supported. * Data Holders **MUST** provide values for all mandatory fields and select reasonable default values if the data is not available for closed accounts @@ -278,36 +278,6 @@ To perform this operation, you must be authenticated and authorised with the fol |displayName|string|optional|An optional display name for the account if one exists or can be derived. The content of this field is at the discretion of the data holder| |creationDate|[DateString](#common-field-types)|mandatory|The date that the account was created or opened| - - - - -```json -{ - "self": "string" -} - -``` - -### Properties - -|Name|Type|Required|Description| -|---|---|---|---| -|self|[URIString](#common-field-types)|mandatory|Fully qualified link that generated the current response document| - -

Meta

- - - -```json -{} - -``` - -### Properties - -*None* -

LinksPaginated

diff --git a/slate/source/includes/releasenotes/releasenotes.1.19.0.html.md b/slate/source/includes/releasenotes/releasenotes.1.19.0.html.md index 77e73869..fb7fb48f 100644 --- a/slate/source/includes/releasenotes/releasenotes.1.19.0.html.md +++ b/slate/source/includes/releasenotes/releasenotes.1.19.0.html.md @@ -25,6 +25,7 @@ This release addresses the following change requests raised on [Standards Mainte This release addresses the following Decision Proposals published on [Standards](https://github.com/ConsumerDataStandardsAustralia/standards/issues): +- [Decision Proposal 260 - Energy Closed Accounts](https://github.com/ConsumerDataStandardsAustralia/standards/issues/260) ## Introduction @@ -43,7 +44,7 @@ This release addresses the following Decision Proposals published on [Standards] |Change|Description|Link| |------|-----------|----| -| | | | +| Energy schema | [**Decision Proposal #260**](https://github.com/ConsumerDataStandardsAustralia/standards/issues/260): Introduced v2 of Get Energy Accounts and v2 of Get Energy Account Details APIs | [Energy Schema](../../#energy-apis) | ## Information Security Profile diff --git a/swagger-gen/api/cds_energy.json b/swagger-gen/api/cds_energy.json index ce3f76aa..23b8aca4 100644 --- a/swagger-gen/api/cds_energy.json +++ b/swagger-gen/api/cds_energy.json @@ -2511,7 +2511,7 @@ } } }, - "EnergyAccountBase": { + "EnergyAccountBaseV2": { "type": "object", "required": [ "accountId" @@ -2551,7 +2551,7 @@ "EnergyAccountV2": { "allOf": [ { - "$ref": "#/components/schemas/EnergyAccountBase" + "$ref": "#/components/schemas/EnergyAccountBaseV2" }, { "description": "The array of plans containing service points and associated plan details", @@ -2616,7 +2616,7 @@ "EnergyAccountDetailV2": { "allOf": [ { - "$ref": "#/components/schemas/EnergyAccountBase" + "$ref": "#/components/schemas/EnergyAccountBaseV2" }, { "description": "The array of plans containing service points and associated plan details", @@ -5649,7 +5649,7 @@ "get": { "summary": "Get Energy Accounts", "operationId": "listAccounts", - "description": "Obtain the list of energy accounts available under the authorised consent", + "description": "Obtain the list of energy accounts available under the authorised consent\n\nOther Versions: [v1](includes/obsolete/get-energy-accounts-v1.html)", "x-scopes": [ "energy:accounts.basic:read" ], @@ -5751,7 +5751,7 @@ "get": { "summary": "Get Energy Account Detail", "operationId": "getAccount", - "description": "Obtain detailed information for a specific energy account", + "description": "Obtain detailed information for a specific energy account\n\nOther Versions: [v1](includes/obsolete/get-energy-account-detail-v1.html)", "x-scopes": [ "energy:accounts.detail:read" ], From 8c2aa1f042d5adabddc8aafd1c9012b79db47278 Mon Sep 17 00:00:00 2001 From: Hemang Rathod Date: Tue, 6 Sep 2022 15:03:18 +1000 Subject: [PATCH 4/4] fixed typos in changelog and get energy account v1 --- slate/source/includes/changelog.md | 2 +- slate/source/includes/obsolete/get-energy-accounts-v1.html.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/slate/source/includes/changelog.md b/slate/source/includes/changelog.md index dcd56b49..06686b4c 100644 --- a/slate/source/includes/changelog.md +++ b/slate/source/includes/changelog.md @@ -4,7 +4,7 @@ The following table lists the changes made to these standards in reverse date or |Change Date|Version|Description|Detail Of change| |-----------|-------|-----------|----------------| -|TBA| 1.19.0 | Changes arising from Decision 260 (Energy Closed Accoutns) | See [release notes](includes/releasenotes/releasenotes.1.19.0.html) and [Decision 260](https://github.com/ConsumerDataStandardsAustralia/standards/issues/260) for details | +|TBA| 1.19.0 | Changes arising from Decision 260 (Energy Closed Accounts) | See [release notes](includes/releasenotes/releasenotes.1.19.0.html) and [Decision 260](https://github.com/ConsumerDataStandardsAustralia/standards/issues/260) for details | |11/08/2022| 1.18.0 | Changes arising from Decision 249 (Maintenance iteration 11) | See [release notes](includes/releasenotes/releasenotes.1.18.0.html) and [Decision 249](https://github.com/ConsumerDataStandardsAustralia/standards/issues/249) for details | |23/05/2022| 1.17.0 | Changes arising from Decision 237 (Maintenance Iteration 10) | See [release notes](includes/releasenotes/releasenotes.1.17.0.html) and [Decision 237](https://github.com/ConsumerDataStandardsAustralia/standards/issues/237) for details | |22/03/2022| 1.16.1 | Minor errata and documentation fixes. Update of swagger files to OAS3 | See [release notes](includes/releasenotes/releasenotes.1.16.1.html) for details | diff --git a/slate/source/includes/obsolete/get-energy-accounts-v1.html.md b/slate/source/includes/obsolete/get-energy-accounts-v1.html.md index 9b47393c..d5353004 100644 --- a/slate/source/includes/obsolete/get-energy-accounts-v1.html.md +++ b/slate/source/includes/obsolete/get-energy-accounts-v1.html.md @@ -15,7 +15,7 @@ search: false This page documents version 1 of the Get Energy Account end point. * Data Holders **MAY** go-live on November 15 2022 with this version. -* Data Holder **MUST** implement Get Energy Accounts v2 by **April 7th 2023**. +* Data Holders **MUST** implement Get Energy Accounts v2 by **April 7th 2023**. * Data Holders **MAY** decommission Get Energy Accounts v1 as soon as Get Energy Accounts v2 is supported. * Data Holders **MUST** provide values for all mandatory fields and select reasonable default values if the data is not available for closed accounts