ConsumerDataStandardsAustralia / standards-maintenance

This repository houses the interactions, consultations and work management to support the maintenance of baselined components of the Consumer Data Right API Standards and Information Security profile.
41 stars 9 forks source link

Make corrections to Register base URLs and indicate the base URL for all endpoints #552

Open nils-work opened 1 year ago

nils-work commented 1 year ago

Description

Two Register APIs do not have their correct location defined currently. While correcting these, it may be helpful to extend the way the base URIs are presented for all endpoints, particularly to provide clarity to new users.

The base URI and TLS/MTLS requirements for endpoints are only described in summary tables that are separate to the actual endpoint definitions.

For example -

Area Affected

Change Proposed

Update the existing Register APIs table to include the respective base in each row, but also consider specifying the relevant Base URI alongside each endpoint definition in the Standards.

Changes to the Register APIs table (name and base value) Current name Proposed name Current base value Actual base value
Production TLS RegisterPublicBaseUri https://api.cdr.gov.au https://api.cdr.gov.au/cdr-register/v1
(not defined) RegisterInfoSecBaseUri (not defined) https://api.cdr.gov.au/idp
Production MTLS RegisterResourceBaseUri https://secure.api.cdr.gov.au https://secure.api.cdr.gov.au/cdr-register/v1

Sample of Register endpoints affected

Sample of other participant endpoints that could benefit from an equivalent change

perlboy commented 1 year ago

It pains me to say it but it isn't that easy @nils-work. I'm not particularly bothered about the examples so do whatever however when referencing the Register openapi spec:

Further the default server url in the spec is <register-base-url> which is actually wrong cause of the above assumed base uris. The main challenge actually lies in that base uri for servers because, if it is changed to /cdr-register/v1 (which would align with the Holder specs) all of the api endpoints would now have their paths changed (which will break a large chunk of codegen). Additionally /idp will be abandoned although, maybe that's not a bad thing and it should simply be defined as a token auth security scheme instead šŸ¤· .

Anyways, alignment seems like a good idea but it seems unlikely to be a "simple" documentation fix, I'm unsure how it could be staged effectively.

nils-work commented 1 year ago

Related issue - https://github.com/ConsumerDataStandardsAustralia/standards-maintenance/issues/516

ACCC-CDR commented 1 year ago

The ACCC requests that this change be confined to documentation updates, specifically:

We contend that making substantive changes to base URIs is a breaking change, as others have already mentioned. Insofar as this is desirable (a question we express no view on at present), it should be considered separately to the abovementioned corrections, which are strictly documentation changes and will not impact existing implementations in any way.