Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
22 commits
Select commit Hold shift + click to select a range
63fdcb3
Update device-data-volume-subscriptions.yaml
eric-murray Aug 22, 2025
ee24861
Update device-data-volume.yaml
eric-murray Aug 22, 2025
70e4b86
Update device-data-volume-checkDataVolume.feature
eric-murray Aug 22, 2025
9ab73ce
Update device-data-volume-retrieveDataVolume.feature
eric-murray Aug 22, 2025
792c0a6
Update device-data-volume-subscriptions.feature
eric-murray Aug 22, 2025
6765aad
Update device-data-volume-API-Readiness-Checklist.md
eric-murray Aug 22, 2025
979996c
Update device-data-volume-subscriptions-API-Readiness-Checklist.md
eric-murray Aug 22, 2025
4d8fa0d
Update CHANGELOG.md
eric-murray Aug 22, 2025
a724978
Update README.md
eric-murray Aug 22, 2025
0f33e41
Update device-data-volume-subscriptions.feature
eric-murray Aug 22, 2025
38e5db7
Delete code/Test_definitions/README.md
eric-murray Aug 22, 2025
d6757e7
Merge branch 'camaraproject:main' into eric-murray-patch-1
eric-murray Sep 4, 2025
86e4acd
Update README.md
sachinvodafone Sep 10, 2025
4337f9b
Update device-data-volume-subscriptions.yaml
sachinvodafone Sep 10, 2025
45a9c43
Update device-data-volume-checkDataVolume.feature
sachinvodafone Sep 10, 2025
0b7f8b5
Update device-data-volume-retrieveDataVolume.feature
sachinvodafone Sep 10, 2025
09cdd0c
Update device-data-volume-subscriptions.feature
sachinvodafone Sep 10, 2025
7360ac7
Update device-data-volume-subscriptions.feature
sachinvodafone Sep 10, 2025
6ed7cbc
Update device-data-volume-subscriptions.feature
sachinvodafone Sep 10, 2025
48e6117
Update device-data-volume-subscriptions.feature
sachinvodafone Sep 10, 2025
2e11abb
Update device-data-volume-subscriptions.feature
sachinvodafone Sep 10, 2025
d41652a
Update device-data-volume-subscriptions.yaml
sachinvodafone Sep 11, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
82 changes: 80 additions & 2 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
# Changelog DeviceDataVolume

## Table of Contents
- **[r1.2](#r12)**
- **[r1.3](#r13)**
- [r1.2](#r12)
- [r1.1](#r11)

**Please be aware that the project will have frequent updates to the main branch. There are no compatibility guarantees associated with code in any branch, including main, until it has been released. For example, changes may be reverted before a release is published. For the best results, use the latest published release.**
Expand All @@ -13,6 +14,84 @@ The below sections record the changes for each API version in each release as fo
* for subsequent release-candidate(s), only the delta to the previous release-candidate
* for a public release, the consolidated changes since the previous public release

# r1.3

## Release Notes

This initial public release contains the definition and documentation of
* device-data-volume v0.1.0
* device-data-volume-subscriptions v0.1.0

The API definition(s) are based on
* Commonalities [r3.3](https://github.com/camaraproject/Commonalities/releases/tag/r3.3)
* Identity and Consent Management [r3.3](https://github.com/camaraproject/IdentityAndConsentManagement/releases/tag/r3.3)

## device-data-volume v0.1.0
- API definition **with inline documentation**:
- [View it on ReDoc](https://redocly.github.io/redoc/?url=https://raw.githubusercontent.com/camaraproject/DeviceDataVolume/r1.3/code/API_definitions/device-data-volume.yaml&nocors)
- [View it on Swagger Editor](https://camaraproject.github.io/swagger-ui/?url=https://raw.githubusercontent.com/camaraproject/DeviceDataVolume/r1.3/code/API_definitions/device-data-volume.yaml)
- OpenAPI [YAML spec file](https://github.com/camaraproject/DeviceDataVolume/blob/r1.3/code/API_definitions/device-data-volume.yaml)

### Added
* Basic test specifications for both Device Data Volume and its Subscription by @sachinvodafone in https://github.com/camaraproject/DeviceDataVolume/pull/13
* Add response-component for `/check` - API incl. `thresholdExceeded` as property by @maxl2287 in https://github.com/camaraproject/DeviceDataVolume/pull/33
* Add gherkin-linting and update links in config by @maxl2287 in https://github.com/camaraproject/DeviceDataVolume/pull/37
* Documented Error Responses info.description section by @maxl2287 in https://github.com/camaraproject/DeviceDataVolume/pull/47

### Changed
* Migrate to centralized linting workflows by @hdamker-bot in https://github.com/camaraproject/DeviceDataVolume/pull/67
* Fix links to API description in API readiness checklists by @eric-murray in https://github.com/camaraproject/DeviceDataVolume/pull/65
* Reset version to wip following alpha release by @eric-murray in https://github.com/camaraproject/DeviceDataVolume/pull/17
* Update error codes and format by @maxl2287 in https://github.com/camaraproject/DeviceDataVolume/pull/19
* Alignment with Commonalities 0.5 by @maxl2287 in https://github.com/camaraproject/DeviceDataVolume/pull/28
* Update test-scenarios for device-data-volume- and subscription - APIs by @maxl2287 in https://github.com/camaraproject/DeviceDataVolume/pull/34
* Mark `device` as optional by adding support for 3-legged token by @maxl2287 in https://github.com/camaraproject/DeviceDataVolume/pull/35
* Update OAS and test definitions to remove IDENTIFIER_MISMATCH error code by @eric-murray in https://github.com/camaraproject/DeviceDataVolume/pull/52
* Update `x-correlator` pattern by @maxl2287 in https://github.com/camaraproject/DeviceDataVolume/pull/49

### Removed
* Remove AUTHENTICATION_REQUIRED error code by @eric-murray in https://github.com/camaraproject/DeviceDataVolume/pull/40

## device-data-volume-subscriptions v0.1.0
- API definition **with inline documentation**:
- [View it on ReDoc](https://redocly.github.io/redoc/?url=https://raw.githubusercontent.com/camaraproject/DeviceDataVolume/r1.3/code/API_definitions/device-data-volume-subscriptions.yaml&nocors)
- [View it on Swagger Editor](https://camaraproject.github.io/swagger-ui/?url=https://raw.githubusercontent.com/camaraproject/DeviceDataVolume/r1.3/code/API_definitions/device-data-volume-subscriptions.yaml)
- OpenAPI [YAML spec file](https://github.com/camaraproject/DeviceDataVolume/blob/r1.3/code/API_definitions/device-data-volume-subscriptions.yaml)

### Added
* Basic test specifications for both Device Data Volume and Its Subscription by @sachinvodafone in https://github.com/camaraproject/DeviceDataVolume/pull/13
* Add gherkin-linting and update links in config by @maxl2287 in https://github.com/camaraproject/DeviceDataVolume/pull/37
* Documented Error Responses info.description section by @maxl2287 in https://github.com/camaraproject/DeviceDataVolume/pull/47

### Changed
* Migrate to centralized linting workflows by @hdamker-bot in https://github.com/camaraproject/DeviceDataVolume/pull/67
* Fix links to API description in API readiness checklists by @eric-murray in https://github.com/camaraproject/DeviceDataVolume/pull/65
* Reset version to wip following alpha release by @eric-murray in https://github.com/camaraproject/DeviceDataVolume/pull/17
* Update error codes and format by @maxl2287 in https://github.com/camaraproject/DeviceDataVolume/pull/19
* Alignment with Commonalities 0.5 by @maxl2287 in https://github.com/camaraproject/DeviceDataVolume/pull/28
* Update test-scenarios for device-data-volume- and subscription - APIs by @maxl2287 in https://github.com/camaraproject/DeviceDataVolume/pull/34
* Mark `device` as optional by adding support for 3-legged token by @maxl2287 in https://github.com/camaraproject/DeviceDataVolume/pull/35
* Update OAS and test definitions to remove IDENTIFIER_MISMATCH error code by @eric-murray in https://github.com/camaraproject/DeviceDataVolume/pull/52
* Update the `sink` - pattern and set `id` in `SubscriptionAsync` to mandatory by @maxl2287 in https://github.com/camaraproject/DeviceDataVolume/pull/61
* [data-volume-subscriptions]: update `subscription-ends` to `subscription-ended` and add `subscription-started` and `subscription-updated` by @maxl2287 in https://github.com/camaraproject/DeviceDataVolume/pull/56
* Update `x-correlator` pattern by @maxl2287 in https://github.com/camaraproject/DeviceDataVolume/pull/49

### Fixed
* Add missing components and update Subscription types array items by @dfischer-tech in https://github.com/camaraproject/DeviceDataVolume/pull/24

### Removed
* Remove allof in sinkcredential by @ravindrapalaskar17 in https://github.com/camaraproject/DeviceDataVolume/pull/27
* Remove AUTHENTICATION_REQUIRED error code by @eric-murray in https://github.com/camaraproject/DeviceDataVolume/pull/40

## New Contributors
* @maxl2287 made their first contribution in https://github.com/camaraproject/DeviceDataVolume/pull/19
* @sachinvodafone made their first contribution in https://github.com/camaraproject/DeviceDataVolume/pull/13
* @dfischer-tech made their first contribution in https://github.com/camaraproject/DeviceDataVolume/pull/24
* @ravindrapalaskar17 made their first contribution in https://github.com/camaraproject/DeviceDataVolume/pull/27
* @hdamker-bot made their first contribution in https://github.com/camaraproject/DeviceDataVolume/pull/45

**Full Changelog**: https://github.com/camaraproject/DeviceDataVolume/commits/r1.3

# r1.2

## Release Notes
Expand Down Expand Up @@ -49,7 +128,6 @@ The API definition(s) are based on
* Update OAS and test definitions to remove IDENTIFIER_MISMATCH error code by @eric-murray in https://github.com/camaraproject/DeviceDataVolume/pull/52
* Update `x-correlator` pattern by @maxl2287 in https://github.com/camaraproject/DeviceDataVolume/pull/49


### Removed
* Remove AUTHENTICATION_REQUIRED error code by @eric-murray in https://github.com/camaraproject/DeviceDataVolume/pull/40

Expand Down
20 changes: 10 additions & 10 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,16 +24,16 @@ Sandbox API Repository to describe, develop, document, and test the DeviceDataVo

## Release Information

* **The latest pre-release is [r1.2](https://github.com/camaraproject/DeviceDataVolume/tree/r1.2) with the following API definitions:**

* **device-data-volume v0.1.0-rc.1**
[[YAML]](https://github.com/camaraproject/DeviceDataVolume/blob/r1.2/code/API_definitions/device-data-volume.yaml)
[[View it on ReDoc]](https://redocly.github.io/redoc/?url=https://raw.githubusercontent.com/camaraproject/DeviceDataVolume/r1.2/code/API_definitions/device-data-volume.yaml&nocors)
[[View it on Swagger Editor]](https://camaraproject.github.io/swagger-ui/?url=https://raw.githubusercontent.com/camaraproject/DeviceDataVolume/r1.2/code/API_definitions/device-data-volume.yaml)
* **device-data-volume-subscriptions v0.1.0-rc.1**
[[YAML]](https://github.com/camaraproject/DeviceDataVolume/blob/r1.2/code/API_definitions/device-data-volume-subscriptions.yaml)
[[View it on ReDoc]](https://redocly.github.io/redoc/?url=https://raw.githubusercontent.com/camaraproject/DeviceDataVolume/r1.2/code/API_definitions/device-data-volume-subscriptions.yaml&nocors)
[[View it on Swagger Editor]](https://camaraproject.github.io/swagger-ui/?url=https://raw.githubusercontent.com/camaraproject/DeviceDataVolume/r1.2/code/API_definitions/device-data-volume-subscriptions.yaml)
* **The new public release is [r1.3](https://github.com/camaraproject/DeviceDataVolume/tree/r1.3) with the following API definitions:**

* **device-data-volume v0.1.0**
[[YAML]](https://github.com/camaraproject/DeviceDataVolume/blob/r1.3/code/API_definitions/device-data-volume.yaml)
[[View it on ReDoc]](https://redocly.github.io/redoc/?url=https://raw.githubusercontent.com/camaraproject/DeviceDataVolume/r1.3/code/API_definitions/device-data-volume.yaml&nocors)
[[View it on Swagger Editor]](https://camaraproject.github.io/swagger-ui/?url=https://raw.githubusercontent.com/camaraproject/DeviceDataVolume/r1.3/code/API_definitions/device-data-volume.yaml)
* **device-data-volume-subscriptions v0.1.0**
[[YAML]](https://github.com/camaraproject/DeviceDataVolume/blob/r1.3/code/API_definitions/device-data-volume-subscriptions.yaml)
[[View it on ReDoc]](https://redocly.github.io/redoc/?url=https://raw.githubusercontent.com/camaraproject/DeviceDataVolume/r1.3/code/API_definitions/device-data-volume-subscriptions.yaml&nocors)
[[View it on Swagger Editor]](https://camaraproject.github.io/swagger-ui/?url=https://raw.githubusercontent.com/camaraproject/DeviceDataVolume/r1.3/code/API_definitions/device-data-volume-subscriptions.yaml)

- Current work-in-progress version is available within the [main branch](https://github.com/camaraproject/DeviceDataVolume)

Expand Down
14 changes: 5 additions & 9 deletions code/API_definitions/device-data-volume-subscriptions.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -88,15 +88,15 @@ info:
license:
name: Apache 2.0
url: https://www.apache.org/licenses/LICENSE-2.0.html
version: wip
version: 0.1.0
x-camara-commonalities: 0.6

externalDocs:
description: Project documentation at CAMARA
url: https://github.com/camaraproject/DeviceDataVolume

servers:
- url: "{apiRoot}/device-data-volume-subscriptions/vwip"
- url: "{apiRoot}/device-data-volume-subscriptions/v0.1"
variables:
apiRoot:
default: http://localhost:9091
Expand Down Expand Up @@ -421,18 +421,17 @@ components:
type: string
format: date-time
example: 2023-01-17T13:18:23.682Z
description: The subscription expiration time (in date-time format) requested by the API consumer. Up to API project decision to keep it.
description: The subscription expiration time (in date-time format) requested by the API consumer.
subscriptionMaxEvents:
type: integer
description: Identifies the maximum number of event reports to be generated (>=1) requested by the API consumer - Once this number is reached, the subscription ends. Up to API project decision to keep it.
description: Identifies the maximum number of event reports to be generated (>=1) requested by the API consumer - Once this number is reached, the subscription ends.
minimum: 1
example: 5
initialEvent:
type: boolean
description: |
Set to `true` by API consumer if consumer wants to get an event as soon as the subscription is created and current situation reflects event request.
Example: Consumer request Roaming event. If consumer sets initialEvent to true and device is in roaming situation, an event is triggered
Up to API project decision to keep it.
Example: Consumer request Roaming event. If consumer sets initialEvent to true and device is in roaming situation, an event is triggered.

SinkCredential:
description: A sink credential provides authentication or authorization information necessary to enable delivery of events to a target.
Expand Down Expand Up @@ -514,7 +513,6 @@ components:
In the case of an ACCESS_TOKEN_EXPIRED termination reason, implementation should notify the client before the expiration date.
If the access token is a JWT and registered "exp" (Expiration Time) claim is present, the two expiry times should match.
It must follow [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339#section-5.6) and must have time zone.
Recommended format is yyyy-MM-dd'T'HH:mm:ss.SSSZ (i.e. which allows 2023-07-03T14:27:08.312+02:00 or 2023-07-03T12:27:08.312Z)
example: "2023-07-03T12:27:08.312Z"
accessTokenType:
description: REQUIRED. Type of the access token (See [OAuth 2.0](https://tools.ietf.org/html/rfc6749#section-7.1)).
Expand Down Expand Up @@ -582,15 +580,13 @@ components:
description: |
Date when the event subscription will begin/began
It must follow [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339#section-5.6) and must have time zone.
Recommended format is yyyy-MM-dd'T'HH:mm:ss.SSSZ (i.e. which allows 2023-07-03T14:27:08.312+02:00 or 2023-07-03T12:27:08.312Z)
example: "2023-07-03T12:27:08.312Z"
expiresAt:
type: string
format: date-time
description: |
Date when the event subscription will expire. Only provided when `subscriptionExpireTime` is indicated by API client or Telco Operator has specific policy about that.
It must follow [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339#section-5.6) and must have time zone.
Recommended format is yyyy-MM-dd'T'HH:mm:ss.SSSZ (i.e. which allows 2023-07-03T14:27:08.312+02:00 or 2023-07-03T12:27:08.312Z)
status:
type: string
description: |-
Expand Down
4 changes: 2 additions & 2 deletions code/API_definitions/device-data-volume.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -61,15 +61,15 @@ info:
license:
name: Apache 2.0
url: https://www.apache.org/licenses/LICENSE-2.0.html
version: wip
version: 0.1.0
x-camara-commonalities: 0.6

externalDocs:
description: Project documentation at CAMARA
url: https://github.com/camaraproject/DeviceDataVolume

servers:
- url: "{apiRoot}/device-data-volume/vwip"
- url: "{apiRoot}/device-data-volume/v0.1"
variables:
apiRoot:
default: http://localhost:9091
Expand Down
1 change: 0 additions & 1 deletion code/Test_definitions/README.md

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
Feature: CAMARA Device Data Volume API, vwip - Operation checkDataVolume
Feature: CAMARA Device Data Volume API, v0.1.0 - Operation checkDataVolume

# Input to be provided by the implementation to the tester
#
Expand All @@ -12,7 +12,8 @@ Feature: CAMARA Device Data Volume API, vwip - Operation checkDataVolume
# References to OAS spec schemas refer to schemas specified in device-data-volume.yaml

Background: Common checkDataVolume setup
Given the resource "/device-data-volume/vwip/check"
Given an environment at "apiRoot"
And the resource "/device-data-volume/v0.1/check"
And the header "Authorization" is set to a valid access token
And the header "x-correlator" complies with the schema at "#/components/schemas/XCorrelator"
And the request body is set by default to a request body compliant with the schema "#/components/schemas/CheckDataVolumeRequest"
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
Feature: CAMARA Device Data Volume API, vwip - Operation retrieveDataVolume
Feature: CAMARA Device Data Volume API, v0.1.0 - Operation retrieveDataVolume

# Input to be provided by the implementation to the tester

Expand All @@ -13,7 +13,8 @@ Feature: CAMARA Device Data Volume API, vwip - Operation retrieveDataVolume
# References to OAS spec schemas refer to schemas specified in device-data-volume.yaml

Background: Common retrieveDataVolume setup
Given the resource "/device-data-volume/vwip/retrieve"
Given an environment at "apiRoot"
And the resource "/device-data-volume/v0.1/retrieve"
And the header "Authorization" is set to a valid access token
And the header "x-correlator" complies with the schema at "#/components/schemas/XCorrelator"
And the request body is set by default to a request body compliant with the schema "#/components/schemas/RetrieveDataVolumeRequest"
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
Feature: Device Data Volume Subscriptions API, vwip - Operation on subscriptions
Feature: Device Data Volume Subscriptions API, v0.1.0 - Operation on subscriptions

# Input to be provided by the implementation to the tester
#
Expand All @@ -12,9 +12,9 @@ Feature: Device Data Volume Subscriptions API, vwip - Operation on subscriptions
# The known device data volume status of the testing device
#
# References to OAS spec schemas refer to schemas specified in device-data-volume-subscriptions.yaml

Background: Common Device Data Volume setup
Given the resource "/device-data-volume-subscriptions/vwip/subscriptions"
Background: Common Device Data Volume Subscription setup
Given an environment at "apiRoot"
And the resource "/device-data-volume-subscriptions/v0.1/subscriptions"
And the header "Authorization" is set to a valid access token
And the header "x-correlator" complies with the schema at "#/components/schemas/XCorrelator"

Expand Down
Loading