Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
45 commits
Select commit Hold shift + click to select a range
ce02454
New Commonalities version header format (i.e. "0.7")
tlohmar Mar 2, 2026
045a473
fix : 'Addr' schema objects updated to 'Address' #563
tlohmar Mar 2, 2026
b24058d
Guidelines and linting rules for OWASP API Security Top 10 #582
tlohmar Mar 2, 2026
177e3eb
Removing leftover.
tlohmar Mar 4, 2026
ff930b6
Adding comments around unclear value selection.
tlohmar Mar 5, 2026
d40980c
Removing trailing space
tlohmar Mar 5, 2026
cb6187f
Marking additional restrictions in the NW Profile
tlohmar Mar 11, 2026
e24cab4
limiting maxNumberOfDevices and qosProfiles
tlohmar Mar 22, 2026
4d7afcd
Making maxNumberOfDevices an int64, considering support for IOT use-c…
tlohmar Mar 23, 2026
266909e
Merge branch 'main' into CommonalitiesUpgrade
tlohmar Apr 28, 2026
7f7cbfb
Replace RefreshTokenCredential with PrivateKeyJWTCredential
tlohmar Apr 28, 2026
1befce7
Merge branch 'CommonalitiesUpgrade' of https://github.com/tlohmar/Ded…
tlohmar Apr 28, 2026
952daf1
adjusting maximum of max devices to the maximum of an int64 integer.
tlohmar Apr 28, 2026
c921ef7
Removing PlainCredential
tlohmar Apr 28, 2026
0c155fa
insertion of maxLength for strings.
tlohmar Apr 28, 2026
632737a
Trailing spaces...;-(
tlohmar Apr 28, 2026
f428906
Merge branch 'main' into CommonalitiesUpgrade
tlohmar Jun 1, 2026
25cc0b4
Change version from 0.7 to 0.8
tlohmar Jun 1, 2026
5573923
Merge branch 'camaraproject:main' into CommonalitiesUpgrade
tlohmar Jun 3, 2026
43ac268
Merge branch 'camaraproject:main' into CommonalitiesUpgrade
tlohmar Jun 10, 2026
877fc72
Apply suggestion from @tlohmar
tlohmar Jun 10, 2026
b855720
Some additional restrictions
tlohmar Jun 11, 2026
858c868
Removing overlapping correction
tlohmar Jun 11, 2026
bc5f631
Removing trailing space
tlohmar Jun 11, 2026
4afca1a
Merge branch 'main' into CommonalitiesUpgrade
tlohmar Jun 18, 2026
03ff82b
Apply suggestion from @tlohmar
tlohmar Jun 18, 2026
2ab5ed2
Apply suggestions from code review
tlohmar Jun 18, 2026
452e42a
Apply suggestions from code review
tlohmar Jun 18, 2026
0a31667
Apply suggestions from code review
tlohmar Jun 19, 2026
8715619
Apply suggestion from @tlohmar
tlohmar Jun 19, 2026
ad224f9
Apply suggestion from @tlohmar
tlohmar Jun 19, 2026
f1f18a7
Apply suggestion from @tlohmar
tlohmar Jun 19, 2026
48a586b
Apply suggestion from @tlohmar
tlohmar Jun 19, 2026
3bb814f
Removing duplicated maxItems
tlohmar Jun 19, 2026
47d781b
Following the recommendation from https://spec.openapis.org/registry/…
tlohmar Jun 19, 2026
a6b7b99
Merge branch 'main' into CommonalitiesUpgrade
tlohmar Jun 22, 2026
d30fa26
Apply suggestions from code review
tlohmar Jun 23, 2026
43c2c71
Edits
tlohmar Jun 23, 2026
2773195
Cleanups in areas API.
tlohmar Jun 23, 2026
3ffb654
Removing unnecessary comments
tlohmar Jun 23, 2026
a916d9b
Updates
tlohmar Jun 23, 2026
f1c62c9
Corrections
tlohmar Jun 23, 2026
586c777
Merge branch 'main' into CommonalitiesUpgrade
tlohmar Jun 24, 2026
79adb49
removing duplication
tlohmar Jun 24, 2026
4450732
Increasing several values so that the standard is not limiting deploy…
tlohmar Jun 24, 2026
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
31 changes: 29 additions & 2 deletions code/API_definitions/dedicated-network-accesses.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -123,7 +123,7 @@
name: Apache 2.0
url: https://www.apache.org/licenses/LICENSE-2.0.html
version: wip
x-camara-commonalities: 0.6
x-camara-commonalities: 0.8
externalDocs:
description: Product documentation at CAMARA
url: https://github.com/camaraproject/DedicatedNetworks
Expand Down Expand Up @@ -166,6 +166,7 @@
application/json:
schema:
type: array
maxItems: 1000000
items:
$ref: '#/components/schemas/AccessInfo'
"400":
Expand Down Expand Up @@ -244,8 +245,9 @@
Location:
description: 'URL including the resource identifier of the newly created network access.'
required: true
schema:

Check notice on line 248 in code/API_definitions/dedicated-network-accesses.yaml

View workflow job for this annotation

GitHub Actions / validation / Validate

String has no format/pattern/enum

[S-313] Schema of type string should specify a format, pattern, enum, or const. | Suggestion%3A Acceptable if free-form field or implementation-dependent — no fix needed.
type: string
maxLength: 2048
'207':
description: Successful creation of the access for some devices
content:
Expand All @@ -256,8 +258,9 @@
Location:
description: 'URL including the resource identifier of the newly created network access.'
required: true
schema:

Check notice on line 261 in code/API_definitions/dedicated-network-accesses.yaml

View workflow job for this annotation

GitHub Actions / validation / Validate

String has no format/pattern/enum

[S-313] Schema of type string should specify a format, pattern, enum, or const. | Suggestion%3A Acceptable if free-form field or implementation-dependent — no fix needed.
type: string
maxLength: 2048
'400':
$ref: "#/components/responses/Generic400"
"401":
Expand Down Expand Up @@ -518,11 +521,13 @@
description: Network access id in UUID format
type: string
format: uuid
maxLength: 36

NetworkId:
description: Network id in UUID format
type: string
format: uuid
maxLength: 36

DeviceStatus:
description: |
Expand All @@ -545,11 +550,13 @@
- code
- message
properties:
code:

Check notice on line 553 in code/API_definitions/dedicated-network-accesses.yaml

View workflow job for this annotation

GitHub Actions / validation / Validate

String has no format/pattern/enum

[S-313] Schema of type string should specify a format, pattern, enum, or const. | Suggestion%3A Acceptable if free-form field or implementation-dependent — no fix needed.
type: string
maxLength: 96
description: A human-readable code to describe the reason
message:

Check notice on line 557 in code/API_definitions/dedicated-network-accesses.yaml

View workflow job for this annotation

GitHub Actions / validation / Validate

String has no format/pattern/enum

[S-313] Schema of type string should specify a format, pattern, enum, or const. | Suggestion%3A Acceptable if free-form field or implementation-dependent — no fix needed.
type: string
maxLength: 4096
description: A human-readable description of what the reason represents

DeviceStatusInfo:
Expand Down Expand Up @@ -586,6 +593,8 @@
AccessDevices:
description: A list of access devices
type: array
minItems: 0
maxItems: 9007199254740991
items:
$ref: "#/components/schemas/AccessDevice"

Expand All @@ -612,16 +621,18 @@
qosProfiles:
description: (Optional) List of supported QOS profiles usable for the device(s). When absent, all QosProfiles of the network are supported. Only a subset of the QOS profiles of the network is allowed
type: array
Comment thread
tlohmar marked this conversation as resolved.
minItems: 1
maxItems: 32
items:
$ref: "#/components/schemas/QosProfileName"
minItems: 1
defaultQosProfile:
$ref: "#/components/schemas/QosProfileName"
sink:
description: The address to which events shall be delivered using the selected protocol.
type: string
format: uri
pattern: ^https:\/\/.+$
maxLength: 2048
sinkCredential:
$ref: '../common/CAMARA_event_common.yaml#/components/schemas/SinkCredential'
required:
Expand Down Expand Up @@ -661,12 +672,21 @@
totalDevices:
description: the total number of devices included in the access (regardless of status)
type: integer
format: int64
minimum: 0
maximum: 9007199254740991
totalGranted:
description: the total number of devices included in the access with status GRANTED
type: integer
format: int64
minimum: 0
maximum: 9007199254740991
totalDenied:
description: the total number of devices included in the access with status DENIED
type: integer
format: int64
minimum: 0
maximum: 9007199254740991
required:
- totalDevices
- totalGranted
Expand Down Expand Up @@ -767,13 +787,18 @@
$ref: "../common/CAMARA_common.yaml#/components/schemas/Device"
status:
type: integer
format: int32
minimum: 100
maximum: 599
description: The HTTP status code for this specific device operation (e.g., 201, 404, 409)
example: 201
code:

Check notice on line 795 in code/API_definitions/dedicated-network-accesses.yaml

View workflow job for this annotation

GitHub Actions / validation / Validate

String has no format/pattern/enum

[S-313] Schema of type string should specify a format, pattern, enum, or const. | Suggestion%3A Acceptable if free-form field or implementation-dependent — no fix needed.
type: string
maxLength: 96
description: A human-readable code to describe the result
message:

Check notice on line 799 in code/API_definitions/dedicated-network-accesses.yaml

View workflow job for this annotation

GitHub Actions / validation / Validate

String has no format/pattern/enum

[S-313] Schema of type string should specify a format, pattern, enum, or const. | Suggestion%3A Acceptable if free-form field or implementation-dependent — no fix needed.
type: string
maxLength: 4096
description: A human-readable description of what the result represents
accessDevice:
$ref: '#/components/schemas/AccessDevice'
Expand All @@ -797,7 +822,7 @@
mapping:
org.camaraproject.dedicated-network-accesses.v0.device-status-changed: "#/components/schemas/EventDeviceStatusChanged"

EventDeviceStatusChanged:

Check notice on line 825 in code/API_definitions/dedicated-network-accesses.yaml

View workflow job for this annotation

GitHub Actions / validation / Validate

Component may be unused

[S-211] Potentially unused component has been detected. | Suggestion%3A Spectral does not follow discriminator mappings — verify the schema is truly unused.
description: Event to notify a status change of one or more devices in the context of an access to a dedicated network
allOf:
- $ref: "#/components/schemas/AccessDeviceNotificationEvent"
Expand All @@ -824,10 +849,11 @@
Devices:
description: A list of devices
type: array
maxItems: 9007199254740991
items:
$ref: "../common/CAMARA_common.yaml#/components/schemas/Device"

SerializedDevice:

Check notice on line 856 in code/API_definitions/dedicated-network-accesses.yaml

View workflow job for this annotation

GitHub Actions / validation / Validate

String has no format/pattern/enum

[S-313] Schema of type string should specify a format, pattern, enum, or const. | Suggestion%3A Acceptable if free-form field or implementation-dependent — no fix needed.
description: |
Device object serialized to a string for use as a device identifier.
It is serialized according to RFC 8941 as a structured field value where
Expand All @@ -839,6 +865,7 @@
- if the property value is a string and contains non-ASCII characters, the string must be serialized as Byte Sequence using UTF-8 encoding,
as per section 3.3.5 of the RFC
type: string
maxLength: 4096
example: 'phonenumber="+123456789"'

QosProfileName:
Expand Down
10 changes: 9 additions & 1 deletion code/API_definitions/dedicated-network-areas.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,7 @@
name: Apache 2.0
url: https://www.apache.org/licenses/LICENSE-2.0.html
version: wip
x-camara-commonalities: 0.6
x-camara-commonalities: 0.8
servers:
- url: "{apiRoot}/dedicated-network-areas/vwip"
variables:
Expand Down Expand Up @@ -120,6 +120,7 @@
type: array
items:
$ref: '#/components/schemas/ServiceArea'
maxItems: 100000000
'400':
$ref: "#/components/responses/Generic400"
"401":
Expand Down Expand Up @@ -176,6 +177,7 @@
description: Network profile id in UUID format
type: string
format: uuid
maxLength: 36

QosProfileName:
description: |
Expand All @@ -197,6 +199,7 @@
description: Unique identifier of a network service area
type: string
format: uuid
maxLength: 36

RetrieveServiceAreasRequest:
description: Request object to retrieve service areas that match all the given properties
Expand All @@ -208,9 +211,10 @@
$ref: "../common/CAMARA_common.yaml#/components/schemas/Area"
coveringArea:
$ref: "../common/CAMARA_common.yaml#/components/schemas/Area"
byName:

Check notice on line 214 in code/API_definitions/dedicated-network-areas.yaml

View workflow job for this annotation

GitHub Actions / validation / Validate

String has no format/pattern/enum

[S-313] Schema of type string should specify a format, pattern, enum, or const. | Suggestion%3A Acceptable if free-form field or implementation-dependent — no fix needed.
description: Only service areas with a name matching exactly this parameter are to be returned
type: string
maxLength: 1024
byNetworkProfileId:
$ref: "#/components/schemas/NetworkProfileId"
byQosProfileName:
Expand All @@ -221,12 +225,14 @@
properties:
id:
$ref: '#/components/schemas/ServiceAreaId'
name:

Check notice on line 228 in code/API_definitions/dedicated-network-areas.yaml

View workflow job for this annotation

GitHub Actions / validation / Validate

String has no format/pattern/enum

[S-313] Schema of type string should specify a format, pattern, enum, or const. | Suggestion%3A Acceptable if free-form field or implementation-dependent — no fix needed.
description: A readable name of the service area (need not be unique)
type: string
maxLength: 1024
description:
description: A readable description of the service area
type: string
maxLength: 4096
area:
$ref: "../common/CAMARA_common.yaml#/components/schemas/Area"
networkProfiles:
Expand All @@ -235,12 +241,14 @@
items:
$ref: "#/components/schemas/NetworkProfileId"
minItems: 1
maxItems: 1024
qosProfiles:
description: Qos Profiles which are supported in this area.
type: array
items:
$ref: '#/components/schemas/QosProfileName'
minItems: 1
maxItems: 1024
required:
- id
- area
Expand Down
10 changes: 9 additions & 1 deletion code/API_definitions/dedicated-network-profiles.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,7 @@
name: Apache 2.0
url: https://www.apache.org/licenses/LICENSE-2.0.html
version: wip
x-camara-commonalities: 0.6
x-camara-commonalities: 0.8
externalDocs:
description: Product documentation at CAMARA
url: https://github.com/camaraproject/DedicatedNetworks
Expand Down Expand Up @@ -96,7 +96,7 @@
- name: name
in: query
description: name of a network profile
schema:

Check warning on line 99 in code/API_definitions/dedicated-network-profiles.yaml

View workflow job for this annotation

GitHub Actions / validation / Validate

String must declare maxLength

[S-312] Schema of type string must specify maxLength, enum, or const. | Suggestion%3A Add maxLength, enum, or const to string properties (CAMARA Design Guide section 2.2).
type: string
- $ref: "../common/CAMARA_common.yaml#/components/parameters/x-correlator"
responses:
Expand All @@ -108,6 +108,7 @@
type: array
items:
$ref: '#/components/schemas/NetworkProfile'
maxItems: 100000000
'400':
$ref: "#/components/responses/Generic400"
"401":
Expand Down Expand Up @@ -161,6 +162,7 @@
description: Network profile id in UUID format
type: string
format: uuid
maxLength: 36

NetworkProfile:
description: A predefined set of network capabilities and performance characteristics for a dedicated network
Expand All @@ -171,9 +173,14 @@
name:
description: A human-readable name to describe the network profile
type: string
maxLength: 1024
maxNumberOfDevices:
description: The maximum number of devices that can simultaneously use and share the dedicated network under this profile up to the limits set by the profile's performance characteristics
type: integer
example: 5
format: int64
minimum: 1
maximum: 9007199254740991
aggregatedUlThroughput:
$ref: "#/components/schemas/BitRate"
aggregatedDlThroughput:
Expand All @@ -184,6 +191,7 @@
items:
$ref: '#/components/schemas/QosProfileName'
minItems: 1
maxItems: 256
defaultQosProfile:
$ref: '#/components/schemas/QosProfileName'
required:
Expand Down
13 changes: 12 additions & 1 deletion code/API_definitions/dedicated-network.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,7 @@
name: Apache 2.0
url: https://www.apache.org/licenses/LICENSE-2.0.html
version: wip
x-camara-commonalities: 0.6
x-camara-commonalities: 0.8
externalDocs:
description: Product documentation at CAMARA
url: https://github.com/camaraproject/DedicatedNetworks
Expand Down Expand Up @@ -95,7 +95,7 @@
- name: name
in: query
description: name of a network
schema:

Check warning on line 98 in code/API_definitions/dedicated-network.yaml

View workflow job for this annotation

GitHub Actions / validation / Validate

String must declare maxLength

[S-312] Schema of type string must specify maxLength, enum, or const. | Suggestion%3A Add maxLength, enum, or const to string properties (CAMARA Design Guide section 2.2).
type: string
- $ref: "../common/CAMARA_common.yaml#/components/parameters/x-correlator"
responses:
Expand All @@ -107,6 +107,7 @@
type: array
items:
$ref: '#/components/schemas/NetworkInfo'
maxItems: 100000000
"400":
$ref: "#/components/responses/Generic400"
"401":
Expand Down Expand Up @@ -185,6 +186,7 @@
schema:
type: string
format: uri
maxLength: 2048
'400':
$ref: "#/components/responses/Generic400"
"401":
Expand Down Expand Up @@ -274,11 +276,13 @@
description: Network id in UUID format
type: string
format: uuid
maxLength: 36

NetworkProfileId:
description: Network profile id in UUID format
type: string
format: uuid
maxLength: 36

QosProfileName:
description: |
Expand All @@ -300,6 +304,7 @@
description: Unique identifier of a network service area
type: string
format: uuid
maxLength: 36

BaseNetworkInfo:
description: Common attributes of a dedicated network
Expand All @@ -308,6 +313,8 @@
name:
description: A human-readable name to describe the network
type: string
minLength: 1
maxLength: 1024
networkProfileId:
$ref: '#/components/schemas/NetworkProfileId'
qosProfileName:
Expand All @@ -320,6 +327,7 @@
description: The address to which events shall be delivered using the selected protocol.
type: string
format: uri
maxLength: 2048
pattern: ^https:\/\/.+$
sinkCredential:
$ref: '../common/CAMARA_event_common.yaml#/components/schemas/SinkCredential'
Expand Down Expand Up @@ -386,6 +394,7 @@
mapping:
org.camaraproject.dedicated-network.v0.network-status-changed: "#/components/schemas/EventNetworkStatusChanged"


EventNetworkStatusChanged:
description: Event to notify a network status change
allOf:
Expand Down Expand Up @@ -413,10 +422,12 @@
start:
type: string
format: date-time
maxLength: 64
description: 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)
end:
type: string
format: date-time
maxLength: 64
description: 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)
required:
- start
Expand Down
Loading