diff --git a/.jenkins.sh b/.jenkins.sh deleted file mode 100644 index 74d0370875e23476bf3a058ebcb825f7494b3de7..0000000000000000000000000000000000000000 --- a/.jenkins.sh +++ /dev/null @@ -1,18 +0,0 @@ -#!/bin/bash - -specfiles=$(ls | egrep "^[^.]*.(json|yaml)") - -fres=0 -for i in $specfiles ; do - echo "-- Validating and linting OpenAPI file $i..." - swagger-cli validate $i - res=$? - speccy lint "$i" - res2=$? - fres=$(($fres||$res||$res2)) - echo "--- Validator returned $res, linter returned $res2." -done - -echo "-- Final validator returns $fres." -exit $fres - diff --git a/MEC029_FAI.json b/MEC029_FAI.json index 03226c0d04710eea6a09c0142c6562c01fcd380f..c6d38484c103175efb465b14765d2db4a6851e12 100644 --- a/MEC029_FAI.json +++ b/MEC029_FAI.json @@ -25,16 +25,20 @@ ], "tags": [ { - "name": "Queries" + "name": "Queries", + "description": "APIs for Device and fa_info" }, { - "name": "Subscription" + "name": "Subscription", + "description": "Subscription API" }, { - "name": "Cable line info" + "name": "Cable line info", + "description": "Cable line info API" }, { - "name": "Optical network info" + "name": "Optical network info", + "description": "Optican network Info API" } ], "paths": { @@ -535,6 +539,9 @@ "responses": { "204": { "$ref": "#/components/responses/204" + }, + "400": { + "$ref": "#/components/responses/400" } } } @@ -1070,15 +1077,17 @@ "ifIndex", "serviceFlowInfo" ], - "ifIndex": { - "description": "It represents the interface index of the MAC Domain of the Service Flow.", - "type": "string" - }, - "serviceFlowInfo": { - "description": "It represents the information of a Service Flow.", - "type": "array", - "items": { - "$ref": "#/components/schemas/CableLineInfo.serviceFlowStats.serviceFlowInfo" + "properties": { + "ifIndex": { + "description": "It represents the interface index of the MAC Domain of the Service Flow.", + "type": "string" + }, + "serviceFlowInfo": { + "description": "It represents the information of a Service Flow.", + "type": "array", + "items": { + "$ref": "#/components/schemas/CableLineInfo.serviceFlowStats.serviceFlowInfo" + } } } }, @@ -1140,9 +1149,6 @@ }, "CmConnNotification.cmIf": { "description": "", - "items": { - "type": "object" - }, "properties": { "cmId": { "description": "The Cable Modem identifier.", @@ -1616,7 +1622,7 @@ "downloadURI": { "description": "The URI for the device to perform the download on.", "format": "uri", - "type": "uri", + "type": "string", "x-etsi-mec-cardinality": "0..1", "x-etsi-mec-origin-type": "URI" }, @@ -1657,7 +1663,7 @@ "self": { "description": "Self referring URI. This shall be included in the response from the FAIS. The URI shall be unique within the FAI API as it acts as an ID for the subscription.", "format": "uri", - "type": "uri", + "type": "string", "x-etsi-mec-cardinality": "1", "x-etsi-mec-origin-type": "URI" } @@ -2002,7 +2008,8 @@ "properties": { "subscriptionType": { "description": "Set by FAIS to indicate to the service consumer the Websocket URI to be used for delivering notifications.", - "type": "uri" + "type": "string", + "format": "uri" }, "requestWebsocketUri": { "description": "Set to true by the service consumer to indicate that Websocket delivery is requested.", @@ -2100,7 +2107,9 @@ }, "customerPremisesInfo": { "description": "The physical location of a customer site.", - "$ref": "#/components/schemas/CpInfo", + "items": { + "$ref": "#/components/schemas/CpInfo" + }, "minItems": 1, "type": "array", "x-etsi-mec-cardinality": "1..N", @@ -2161,7 +2170,7 @@ "href": { "description": "The URI referring to the subscription.", "format": "uri", - "type": "uri", + "type": "string", "x-etsi-mec-cardinality": "1", "x-etsi-mec-origin-type": "URI" }, diff --git a/MEC029_FAI.yaml b/MEC029_FAI.yaml index be05b015ae567a4725f2810e813b9de406e7654b..8bca309ec5a72f1ab8cb111f2a434ae757cb8a91 100644 --- a/MEC029_FAI.yaml +++ b/MEC029_FAI.yaml @@ -17,9 +17,13 @@ servers: - url: "https://localhost/fai/v1" tags: - name: Queries + description: "APIs for Device and fa_info" - name: Subscription + description: "Subscription API" - name: "Cable line info" + description: "Cable line info API" - name: "Optical network info" + description: "Optican network Info API" paths: /queries/fa_info: get: @@ -345,6 +349,8 @@ paths: responses: "204": $ref: "#/components/responses/204" + "400": + $ref: "#/components/responses/400" /subscriptions/{subscriptionId}: parameters: @@ -754,14 +760,15 @@ components: required: - ifIndex - serviceFlowInfo - ifIndex: - description: It represents the interface index of the MAC Domain of the Service Flow. - type: string - serviceFlowInfo: - description: It represents the information of a Service Flow. - type: array - items: - $ref: "#/components/schemas/CableLineInfo.serviceFlowStats.serviceFlowInfo" + properties: + ifIndex: + description: It represents the interface index of the MAC Domain of the Service Flow. + type: string + serviceFlowInfo: + description: It represents the information of a Service Flow. + type: array + items: + $ref: "#/components/schemas/CableLineInfo.serviceFlowStats.serviceFlowInfo" CableLineInfo: type: object @@ -819,8 +826,6 @@ components: CmConnNotification.cmIf: description: "" - items: - type: object properties: cmId: description: The Cable Modem identifier. @@ -1246,7 +1251,7 @@ components: downloadURI: description: The URI for the device to perform the download on. format: uri - type: uri + type: string x-etsi-mec-cardinality: 0..1 x-etsi-mec-origin-type: URI eOMTime: @@ -1289,7 +1294,7 @@ components: self: description: Self referring URI. This shall be included in the response from the FAIS. The URI shall be unique within the FAI API as it acts as an ID for the subscription. format: uri - type: uri + type: string x-etsi-mec-cardinality: "1" x-etsi-mec-origin-type: URI required: @@ -1600,7 +1605,8 @@ components: properties: subscriptionType: description: Set by FAIS to indicate to the service consumer the Websocket URI to be used for delivering notifications. - type: uri + type: string + format: uri requestWebsocketUri: description: Set to true by the service consumer to indicate that Websocket delivery is requested. type: boolean @@ -1683,7 +1689,8 @@ components: $ref: "#/components/schemas/TimeStamp" customerPremisesInfo: description: The physical location of a customer site. - $ref: "#/components/schemas/CpInfo" + items: + $ref: "#/components/schemas/CpInfo" minItems: 1 type: array x-etsi-mec-cardinality: 1..N @@ -1738,7 +1745,7 @@ components: href: description: The URI referring to the subscription. format: uri - type: uri + type: string x-etsi-mec-cardinality: "1" x-etsi-mec-origin-type: URI subscriptionType: @@ -2050,4 +2057,4 @@ components: content: application/json: schema: - $ref: "#/components/schemas/ProblemDetails" \ No newline at end of file + $ref: "#/components/schemas/ProblemDetails" diff --git a/README.md b/README.md index 90b1dd3e3e2a993df4782675a35e02cbe38af1b4..231651cdb3f15b92f34153cf705a76cddb5fbf6c 100644 --- a/README.md +++ b/README.md @@ -6,8 +6,7 @@ This repository contains OpenAPIs descriptions for the interfaces specified in E ## Online resources * [Specification document](https://www.etsi.org/deliver/etsi_gs/MEC/001_099/029/02.02.01_60/gs_MEC029v020201p.pdf) -* [Navigate the Fixed Access Information API in the browser](https://forge.etsi.org/swagger/ui/?url=https://forge.etsi.org/rep/mec/gs029-fai-api/raw/stf606-final/MEC029_FAI.yaml) -* [Edit the Fixed Access Information API online ](https://forge.etsi.org/swagger/editor/?url=https://forge.etsi.org/rep/mec/gs029-fai-api/raw/stf606-final/MEC029_FAI.yaml) +* [Navigate the Fixed Access Information API in the browser](https://redocly.github.io/redoc/?url=https://forge.etsi.org/rep/mec/gs029-fai-api/-/raw/v2.2.1/MEC029_FAI.yaml) ## License