Closed CDR-API-Stream closed 1 year ago
The opening comment has been updated and the Decision Proposal is now attached.
The Data Standards Body welcomes your feedback.
In the recommended “consent metrics”, we can potentially look at splitting authorisation count for accounts between individual and non- individual entity. It can provide an indication of adoption among businesses
On behalf of the ABA, can we please request an extra week for our Members to respond. Thank you.
Of course, no problem. We'll extend the consultation until 7th April
We recommend making the “GET /admin/metrics” endpoint publicly accessible without any authentication or protection. This change would provide numerous benefits to the ecosystem.
Ref: https://consumerdatastandardsaustralia.github.io/standards/#get-metrics
It would increase transparency by allowing stakeholders to see what is working and what is not. Currently, the only way to determine whether a data holder is operational is by encountering errors or checking the CDR website that hosts a status report. With public access to metrics, stakeholders can easily access this information and make informed decisions.
Organisations would be able to incorporate these statistics into their consent flow, which would improve the consumer experience. By querying the API, organisations can determine which data holders are operational and avoid presenting options that may result in errors or unsuccessful experiences for the consumer.
Public access to metrics would encourage the development of tooling and reports that non-developers can use when working within the ecosystem. This would empower first line support personnel to field calls about potential issues with individual data holders and improve overall support within the ecosystem.
We believe that restricting access to the “GET /admin/metrics” endpoint only to the ACCC and individual data holders limits the potential benefits to the ecosystem. By allowing public access, ADRs and other stakeholders can make better-informed decisions and plan their approach to each data holder more effectively.
Hi @damircuca
Are you finding cases where the Get Status endpoint does not accurately represent implementation availability (i.e., because you encounter unexpected unavailability), or that there is not enough detail (on specific endpoint availability, for example) for it to be useful when initiating a series of requests?
Hi @damircuca
Are you finding cases where the Get Status endpoint does not accurately represent implementation availability (i.e., because you encounter unexpected unavailability), or that there is not enough detail (on specific endpoint availability, for example) for it to be useful when initiating a series of requests?
Hi @nils-work
If you are able, please take a look at https://cdrservicemanagement.atlassian.net/servicedesk/customer/portal/2/CDR-3328 to see an example of when the Get Status endpoint has not worked sufficiently.
You can see the failure reflected in the CDR performance dashboard screengrab below. Availability is apparently 100% but a 50% drop in API traffic is visible i.e. APIs are down. Specifically Error 500s on data retrieval APIs.
Thanks @jimbasiq, I'm not sure if I'll be able to access that ticket, but I'll check.
As a general comment, and it may not have been the case, but my initial thinking is that a scheduled outage may produce this effect (I note the drop in traffic appears to be over a weekend).
The Availability metric (at ~100%) would not be affected by a scheduled outage, but any invocations (resulting in 500s) may still be recorded and reported in Metrics (though there is not an expectation of this during an outage).
This makes it appear that either the Status SCHEDULED_OUTAGE
was ignored by clients and about 50% of the average invocations were still being received (perhaps only some endpoints were affected), or the status was incorrectly reported as OK
during an unexpected outage (of about 3 days) but only about 50% of invocations could actually be logged.
If it was an unexpected outage, the Status response should have been PARTIAL_FAILURE
or UNAVAILABLE
and Availability should have been about 90% for the month.
Hey @nils-work generally the more data that is available the more options we have on how to incorporate it within the delivery of CDR services.
The Get Status endpoint is very coarse, and doesn't provide enough depth for us. Whereas metrics has a lot more detail that can be used to better support customers, implement a more refined CDR CX flow, and also help with fault resolution.
Even now, whenever a support ticket is raised, we find ourselves going straight to the metrics report (available via CDR site) to see what the lay of the land looks like before we respond back to our customers.
Further to this, even with scraping we have bee surfacing metrics such as performance metrics, stability percentages and more, which we find valuable to drive decisions and future enhancements.
Realise it may be a big ask, but it will be valuable - and will also raise the transparency and accountability within the ecosystem which is equally important for making a success.
Rather than opening up the Get Metric endpoint to the public, I think it is worthwhile to allow the public to sign up and download raw data from Get Metrics that ACCC CDR collects, this will still place the responsibility of chasing non responding Data Holder Brands with CDR and wont flood the Data Holders brands with Get Metrics request.
As a side note stemming out of ADRs hitting Maximum TPS tresholds, I think it is also worthwhile to revisit batch CDR requests and whether there is a need for something like Get Bulk Transaction for banking if there is a use case for get fetch transaction periodically and for DSB to consider creating a best practice article on ZenDesk on ADR calling patterns, i.e. do you need to perform a get Customer Detail, get Account details every time you want to pull transactions down. Otherwise any increase in traffic threshold will be soaked up with "low value" calls and we will be forever chasing for more and more bandwidth.
In response to @ranjankg2000:
In the recommended “consent metrics”, we can potentially look at splitting authorisation count for accounts between individual and non- individual entity. It can provide an indication of adoption among businesses
Thank you for this feedback. This is a good idea to incorporate
In response to @damircuca:
Making the metrics API public is a very interesting idea. The DSB will discuss this internally with Treasury and the ACCC to identify any policy reasons why this would not be possible. There are real no technical reasons why this would be an issue provided there were low non-functional requirements that would ensure Data Holder implementations didn't need to be over-scaled.
The other option provided @CDRPhoenix, where the data is made available from the Register is also something that could be investigated.
One thing to consider which CDRPheonix touched on was to open up the data that ACCC collects vs forcing the Data Holders to make changes on their end. Sorry for stating the obvious your likely considering this already 🤷🏻♂️
The ACCC supports the changes outlined in Decision Proposal 288. These changes will improve the accuracy of the information captured through Get Metrics and better support the estimation of consumer uptake.
The ACCC suggests a further change to the PerformanceMetrics value. Currently, it is proposed that this value be split into unathenticated and authenticated metrics. The ACCC suggests that splitting this value by performance tier (i.e. Unauthenticated, High Priority, Low Priority, Unattended etc.) would better align these measures with the metrics reported for invocations and averageResponse. This change would assist the ACCC’s monitoring of Data Holder’s compliance with the performance requirements.
The ACCC notes suggestions by participants regarding the availability of Get Metrics data. As flagged by the DSB above, the ACCC will continue to collaborate with its regulatory partners to assess how Get Metrics data can most effectively enhance the CDR ecosystem but suggests that such measures should be considered separately from this decision.
Overall this will be a large-sized change for Great Southern Bank to implement. Given we have already planned work up until July 2023, it would be much appreciated if the obligation date for this change can be at least 6 months once the decision is made.
Issue: Error code mappings. Out of the 2 options proposed, we prefer option 1 - Split the error counter to http error code and corresponding counts. This will give better understanding on what all error codes application retuned. Currently all 5XX considering as same.
Issue: Lack of consent metrics We need clarification on historical records - are we looking for counts (authorisation/revocation) from beginning or the last 8 days? All other metrics data carrying last 8 days' data, but customer count and recipient count is not.
Issue: Scaling for large data holders. We prefer Option 2 - tiered TPS and Session count NFRs based on the number of active authorisations the data holder has. The customer base and the uptake of Open Banking at Great Southern Bank remain relatively small compared to the big banks. This option will help us reduce the cost of maintaining our infrastructure to meet the current TPS requirements. We can proactively manage the active authorisation and scale up slowly as required. Depending on the tiered threshold, potentially we can look at ensuring we meet the current tier plus the next tier up to cater for any sudden influx of registrations. Further consultation to define the tiered threshold will be much appreciated.
We are broadly supportive of proposal to uplift the CDR’s non-functional requirements as outlined in Decision proposal 288. This decision proposal describes a range of topics, and we suggest any proposed implementation schedule be priority driven with careful consideration given to improved consumer outcomes, ecosystem value and impact to data holders (i.e., cost, time, and complexity of implementation).
Specific points of feedback as follows: <html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:x="urn:schemas-microsoft-com:office:excel" xmlns="http://www.w3.org/TR/REC-html40">
Item | Feedback -- | -- Get Metrics Issues: authenticated and unauthenticated | We support the recommendation to "Split between authenticated and unauthenticated". Get Metrics Issues: Granularity alignment to NFRs | We are not clear on the benefit, consumer or otherwise, for reporting on an hourly basis. Suggest that the benefit is clearly articulated before changes are made. Get Metrics Issues: Lack of consent metrics | As above we suggest that the consumer benefit of this proposal be clearly articulated as the effort to implement is likely to be significant. NFR Issues: Scaling for large data holders | We support scaling at brand level and the uplift of the TPS ceiling in accordance with appropriate demand forecast. We have yet to see evidence that the current TPS ceiling is inadequate and/or adversely affecting consumer outcomes. We suggest an evidence-based approach to forecasting future demand, so that holders can plan implementations with sufficient lead time. We note that open banking digital channels are not like-for-like with existing banking channels, the CDR rules for entitlements mean that there are additional performance considerations for data holders. We welcome the opportunity to work with the DSB to review the current demand on the system. We do not support removing site wide NFRs. NFR Issues: NFRs for incident response | We are broadly supportive of NFRs for incident response and endorse a more transparent approach to tracking issues and resolution. NFRs for incident resolution are problematic as there is no easy way to guarantee resolution times, particularly with complex issues which require interactions between ADRs, consumers and data holders; these interactions can be laboured and transactional, owing to the limited information which can be exchanged outside of the CDR. We are also unclear how issues can be objectively and consistently classified in terms of severity and prioritisation without independent mediation. Implementation Considerations | Per earlier point, implementation should be priority-based with appropriate consideration given to the ecosystem’s capacity for change and demonstrable consumer benefit. A more predictable change cadence with sufficient lead time for implementation is recommended. Get Metrics changes:Errors | We recommend to count by HTTP status code rather than URN.
This decision proposal contains a proposal for changes to Non-Functional Requirements and the Get Metrics end point based on feedback received through various channels.
The decision proposal is embedded below: Decision Proposal 288 - Non-Functional Requirements Revision.pdf
Consultation on this proposal will close on the 7th April 2023.Note that the proposed changes have been republished in this comment and this comment
Consultation will be extended to obtain feedback on these updated changes until the
5th May 202312th May 202319th May 2023.