Closed CDR-API-Stream closed 2 years ago
Guidance to energy sector at this point is indicating a June(ish) testing initiation. Not having a functional SSA until end of August provides 4 weeks before the currently mandated compliance date. Suggest the ACCC align its obligations with the intended start time of its testing. Vendors currently serving other markets may be unable (or unwilling) to "hack" an SSA in to support the Regulators desires.
The instigator of the Register API changes in v1.15.0 (#424 and #425) was to ensure the Register would support multiple sectors. The ACCC proposes that the Future Dated Obligations for the v1.15.0 Register API changes be updated to 15 November 2022. This would align the obligation date with the commencement date for consumer data sharing within the Energy sector, which is effectively the date the CDR becomes multi-sector.
It is important to distinguish between obligation dates and release dates. While these dates need to be coordinated for non-backwards compatible changes, this is not the case in this instance and it would be preferable to separate these concepts in future GitHub issues. While the ACCC is proposing that the obligation date be moved to 15 November, the Register API changes may be released earlier and the ACCC will keep the community informed of future releases to the Register.
In regards to testing, the ACCC offers tools to participants to support the development and testing of their solutions. The enhancement of these tools to support the energy sector have planned release dates for Q2 of 2022.
For further information on these tools please refer to the following pages:
For these reasons, the ACCC does not see testing as a reason to move the obligation date forward. Additionally, the ACCC proposes moving the obligation date backwards to the 15th November 2022 to maintain alignment with the consumer data sharing obligation date for Energy.
It is important to distinguish between obligation dates and release dates. While these dates need to be coordinated for non-backwards compatible changes, this is not the case in this instance and it would be preferable to separate these concepts in future GitHub issues. While the ACCC is proposing that the obligation date be moved to 15 November, the Register API changes may be released earlier and the ACCC will keep the community informed of future releases to the Register.
The bolded statement above appears to be factually incorrect in the following areas:
1) GetDataRecipientsStatus, which had it's structure fundamentally changed by attribute name changes, had x-v
set to Mandatory when previously it was Optional. If implemented as specified this will immediately cause all implementations not specifying x-v
to be rejected. Currently there is no transitionary state specified for the Register to retain historical behaviour.
2) GetDataRecipientsStatus, which had it's structure fundamentally changed by attribute name changes, had x-v
set to Mandatory when previously it was Optional. If implemented as specified this will immediately cause all implementations not specifying x-v
to be rejected. Currently there is no transitionary state specified for the Register to retain historical behaviour.
3) GetSoftwareStatementAssertion, which had scopes added, had x-v
set to Mandatory when previously it was Optional. If implemented as specified this will immediately cause all implementations not specifying x-v
to be rejected. Currently there is no transitionary state specified for the Register to retain historical behaviour. There is also precedence available regarding SSA modifications with the addition of profile
and openid
scopes being set as a FDO in 2021
4) cdr-register:read
was added as a required scope (the Standards language is a plural "must be authenticated and authorised with the following scopes") for Recipients to authenticate with.
I can confirm the following with regards to the existing ecosystem:
x-v
at this stage. Should they receive a new formatted payload they may either fail to receive timely software product status updates or in more than one case cascade this into a missing software product and execute client (and therefore arrangement) revocationsx-v
headercdr-register:read
scopeIn regards to testing, the ACCC offers tools to participants to support the development and testing of their solutions. The enhancement of these tools to support the energy sector have planned release dates for Q2 of 2022. For further information on these tools please refer to the following pages:
Firstly, if there are "planned release dates" can the ACCC please publish them. Given the use of taxpayer funds it is unclear why there isn't transparency on this.
Beyond this all these pages say is "anticipated release in the coming months" and it is unclear if this Sandbox will:
1) Support multi mode behaviour of both new and old Register behaviours concurrently - which, as stated, is impossible if x-v
is mandated as specified
2) Be tested for interoperability between participants rather than be a closed loop of a single vendors implementation
3) Not be buggy itself. There is some precedence here with the Register having a broken Admin Metrics implementation for nearly 3 months and the ACCC CTS, even now, failing to meet the Register specification in both how it manages the removal of software products and its availability even with a loaded Test Plan. Forgive those of us who perhaps have a relatively low confidence in the Regulators ability to deliver software that is actually compliant.
Somewhat related to the Sandbox is the question of when the CTS will support the new Register behaviours. That seems relatively important to have some comms on too so that Energy organisations are tested with the launch date state.
For these reasons, the ACCC does not see testing as a reason to move the obligation date forward. Additionally, the ACCC proposes moving the obligation date backwards to the 15th November 2022 to maintain alignment with the consumer data sharing obligation date for Energy.
It seems there should probably be two (possibly three) obligation dates:
1) When ACCC will introduce a multi-mode Register that works with both old and new clients (in essence not enforcing x-v
header and returning old payloads when they are absent or specified as x-v
=1). It seems logical to expect this by August 2022.
2) When Holders must upgrade their installations by, probably before energy to ensure ADRs don't have embarrassing interoperability issues on launch day. November 2022 would align with the prescribed Holder upgrade schedule.
3) (Possibly) A deprecation date for Version 1. February 2023 would align here.
@perlboy Thanks for raising these issues.
Regarding Points 1,2 and 3, this highlights that flipping the x-v
header value to Mandatory is mutually exclusive to being able to keep banking and energy versions of the APIs available in parallel. We require a default value version value to be maintained for the banking sector which is no longer possible for a mandatory x-v
header..
I see two impacts from these points:
x-v
can't be mandatory if we are to maintain no impact on the banking sectorx-v
optional during this transition period, a default value for the version would need to be specified when the x-v
header is not supplied. Initial thinking is this should align to the minimum supported value of the API.The intent is to maintain a transitionary period between both sets of APIs and this needs to be addressed.
Regarding Point 4, this is a defect of the scopes assignment.
The intent has been that original versions of the APIs use the authorisation scope cdr-register:bank:read
while the new versions proposed to use the more generic scope cdr-register:read
. This would allow clients to change the scope used when they transition to the new version of the API. A union of the two scopes was not intended.
Issue #498 has been raised to track this issue
Issue #501 has been raised to track the concerns raised with x-v
headers moving to mandatory
To simplify tracking, based on the feedback we have received this issue has been broken into 3 separate issues, all covered through maintenance iteration 10.
cdr-register:read
and cdr-register:bank:read
scopes being required for new Register API versions. - To be tracked under issue #498 x-v
headers for the new versions of the Register APIs impacts banking implementations. - To be tracked under issue #501Collaboration on this issue through maintenance iteration 10, has resulted in the following DSB proposal, expanding off @ACCC-CDR's initial proposal.
The future-dated obligation binding dates for the following Register API versions will move to 15th November 2022 to align with the Energy rollout.
API Name | Endpoint | Method | Version |
---|---|---|---|
Get Data Holder Brands | /{industry}/data-holders/brands | GET | V2 |
Get Software Statement Assertion (SSA) | /{industry}/data-recipients/ brands/{dataRecipientBrandId}/ software-products/{softwareProductId}/ssa | GET | V3 |
Get Software Products Statuses | /{industry}/data-recipients/ brands/software-products/status | GET | V2 |
Get Data Recipient Statuses | /{industry}/data-recipients/status | GET | V2 |
Get Data Recipients | /{industry}/data-recipients | GET | V3 |
Get Data Holder Statuses | /{industry}/data-holders/status | GET | V1 |
As described in issue #424 and #425, these APIs are expected to be used by participants entering the Energy sector. Other participants will be free to migrate to the latest versions however the previous versions will remain in effect to avoid impact to the Banking sector.
Actual release timings on the CDR Register and any related CTS impacts are in the ACCC's domain and will not be articulated through the standards.
This change was incorporated into release v1.17.0.
Please refer to Decision 237 for further details.
Concern was raised by industry that this change does not articulate when these APIs will be available in testing or released to production. The actual release timings on the CDR Register and any related Conformance Test Suite (CTS) impacts are in the ACCC's domain and will not be articulated through the standards. The standards seek to define what the logical latest date is for the ACCC to release these APIs and not impact the obligations of the participants. The community has requested the ACCC make their release schedule known.
Description
As part of V1.15.0, new versions of the Register APIs were defined to accommodate multiple sectors in the regime. As part of this change, Future Dated Obligations were tentatively set for 30th Aug 2022 with further consultation required with the ACCC to confirm this obligation date
This issue has been raised to facilitate this further consultation
Area Affected
Future Dated Obligations - Register APIs
Change Proposed
Define the future dated obligation for Register API versionss delivered in 2022