Add new changes for Sync26 (geohashlist+Commonalities & ICM)#123
Open
albertoramosmonagas wants to merge 7 commits into
Open
Add new changes for Sync26 (geohashlist+Commonalities & ICM)#123albertoramosmonagas wants to merge 7 commits into
albertoramosmonagas wants to merge 7 commits into
Conversation
|
population-density-data-API-Readiness-Checklist.md - file should be deleted for Sync26 - release automation takes care about all needed information |
|
For asynchronous responses CloudEvents format is not recommended now, see detailed guidelines: |
…eleted for Sync26 - release automation takes care about all needed information
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What type of PR is this?
Add one of the following kinds:
What this PR does / why we need it:
This PR extends the Population Density Data API with support for a new optional area type:
GEOHASHLIST.POLYGONremains the mandatory area type for all MNO implementations, whileGEOHASHLISTis introduced as an optional area representation for providers that can support geohash-based requests. Changes included:GEOHASHLISTvalue toareaType.GeohashListandGeohashschemas.^[0-9bcdefghjkmnpqrstuvwxyz]{1,12}$precisionfield toPOLYGONrequests only. Ifprecisionis provided together withGEOHASHLIST, the API returns400 INVALID_ARGUMENT.422error:POPULATION_DENSITY_DATA.UNSUPPORTED_AREA_TYPEto indicate that the requestedareaTypeis valid in the API specification but not supported by the MNO.CellPopulationDensityData.geohashto reference the commonGeohashschema, ensuring the same geohash definition is reused in both request and response models.GEOHASHLISTbehaviour:NO_DATA;AREA_NOT_SUPPORTED.This PR also clarifies the behaviour for unsupported precision values:
1–12, the request is rejected with400 INVALID_ARGUMENT.422 POPULATION_DENSITY_DATA.UNSUPPORTED_PRECISIONThis applies both to the
precisionfield forPOLYGONrequests and to the length of each geohash inGEOHASHLISTrequests.Alignment with CAMARA Commonalities
This PR also aligns the API definition with the updated CAMARA Commonalities requirements.
Commonalities version update (
Comm-Spring26-005)x-camara-commonalitiesfrom0.6to the full semantic version0.8.0.Notification credentials (
Comm-Spring26-004)The
sinkCredentialmodel has been aligned with the updated CAMARA notification credential model:PLAINandREFRESHTOKENcredential types.PRIVATE_KEY_JWTcredential type, which supports token renewal through an authorization server.ACCESSTOKENPRIVATE_KEY_JWTImplementation note: the Nexo platform does not currently support
PRIVATE_KEY_JWT. It has been included in the API specification for forward compatibility. For the current one-time callback use case, the credential type used in practice remainsACCESSTOKEN.Reinforced input validation (
Comm-Spring26-006)Validation constraints have been added to string, array and integer fields in accordance with the CAMARA OWASP-oriented validation guidelines. These constraints do not invalidate any value that was already valid under the previous API definition.
For Population Density Data, the following limits have been added:
Geohash:maxLength: 12;sink:maxLength: 2048; request and intervalstartTime/endTime:maxLength: 64;OperationId:maxLength: 256;statusInfo:maxLength: 512geohashes:maxItems: 1000;timedPopulationDensityData:maxItems: 168;CellPopulationDensityDataArray:maxItems: 10000precision:format: int32;maxPplDensity,minPplDensityandpplDensity:format: int32,minimum: 0,maximum: 2147483647Error model and traceability
The standard CAMARA validation constraints have also been applied to the shared error and tracing fields:
ErrorInfoincludes the standard description and constraints:status:format: int32, with values restricted to the range100–599;codeandmessage: standardmaxLengthconstraints.x-correlatorincludes the standard CAMARA description andmaxLengthconstraint.Backwards compatibility
All Commonalities-related changes are backwards compatible, except for the removal of the deprecated
PLAINandREFRESHTOKENnotification credential types. No practical impact is expected, as the previous API specification already required the use ofACCESSTOKEN.Which issue(s) this PR fixes:
Fixes #110, #109, #105
Special notes for reviewers:
This PR is based on conversations that can be followed at #110.
Changelog input
Additional documentation
This section can be blank.