Commit 82872ed8 authored by piscione's avatar piscione
Browse files

Updated specifications: fix on examples, callback and minor.

parent ec634281
Pipeline #9807 failed with stage
in 0 seconds
...@@ -5,16 +5,26 @@ info: ...@@ -5,16 +5,26 @@ info:
contact: contact:
url: https://forge.etsi.org/rep/mec/gs028-wai-api url: https://forge.etsi.org/rep/mec/gs028-wai-api
version: '2.2.1' version: '2.2.1'
license:
name: BSD-3-Clause
url: 'https://forge.etsi.org/legal-matters'
jsonSchemaDialect: https://json-schema.org/draft/2020-12/schema jsonSchemaDialect: https://json-schema.org/draft/2020-12/schema
servers: servers:
- url: https://localhost/wai/v2 - url: https://localhost/wai/v2
variables: {} variables: {}
externalDocs:
description: ETSI MEC028 V2.2.1 WLAN Information API
url: https://www.etsi.org/deliver/etsi_gs/MEC/001_099/028/02.02.01_60/gs_mec028v020201p.pdf
tags:
- name: wai
paths: paths:
/queries/ap/ap_information: /queries/ap/ap_information:
get: get:
tags: tags:
- wai - wai
summary: apInfoGET summary: 'Queries information about existing WLAN Access Points'
description: Queries information about existing WLAN Access Points description: Queries information about existing WLAN Access Points
operationId: apInfoGET operationId: apInfoGET
parameters: parameters:
...@@ -119,7 +129,7 @@ paths: ...@@ -119,7 +129,7 @@ paths:
get: get:
tags: tags:
- wai - wai
summary: staInfoGET summary: 'Queries information about existing WLAN stations'
description: Queries information about existing WLAN stations description: Queries information about existing WLAN stations
operationId: staInfoGET operationId: staInfoGET
parameters: parameters:
...@@ -224,7 +234,7 @@ paths: ...@@ -224,7 +234,7 @@ paths:
get: get:
tags: tags:
- wai - wai
summary: subscriptionLinkList_subscriptionsGET summary: 'Queries information on subscriptions for notifications'
description: Queries information on subscriptions for notifications description: Queries information on subscriptions for notifications
operationId: subscriptionLinkList_subscriptionsGET operationId: subscriptionLinkList_subscriptionsGET
parameters: parameters:
...@@ -243,6 +253,15 @@ paths: ...@@ -243,6 +253,15 @@ paths:
application/json: application/json:
schema: schema:
$ref: '#/components/schemas/SubscriptionLinkList' $ref: '#/components/schemas/SubscriptionLinkList'
examples:
example-of-subscription-link-list:
value:
_links:
self:
href: 'http://meAppServer.example.com/wai/v2/subscriptions'
subscription:
- href: http://meAppServer.example.com/wai/v2/subscriptions/sub123
subscriptionType: AssocStaSubscription
'400': '400':
description: 'Bad Request : used to indicate that incorrect parameters were passed to the request.' description: 'Bad Request : used to indicate that incorrect parameters were passed to the request.'
headers: {} headers: {}
...@@ -289,7 +308,7 @@ paths: ...@@ -289,7 +308,7 @@ paths:
post: post:
tags: tags:
- wai - wai
summary: subscriptionsPOST summary: 'Creates a new subscription to WLAN Access Information notifications'
description: Creates a new subscription to WLAN Access Information notifications description: Creates a new subscription to WLAN Access Information notifications
operationId: subscriptionsPOST operationId: subscriptionsPOST
parameters: [] parameters: []
...@@ -316,7 +335,9 @@ paths: ...@@ -316,7 +335,9 @@ paths:
ipAddress: ipAddress:
- 10.10.100.1 - 10.10.100.1
contentMediaType: application/json contentMediaType: application/json
example: examples:
example-of-AssocStaSubscription:
value:
subscriptionType: AssocStaSubscription subscriptionType: AssocStaSubscription
callbackReference: http://meAppClient.example.com/wai/v2/notifications/1 callbackReference: http://meAppClient.example.com/wai/v2/notifications/1
expiryDeadline: expiryDeadline:
...@@ -356,7 +377,9 @@ paths: ...@@ -356,7 +377,9 @@ paths:
ipAddress: ipAddress:
- 10.10.100.1 - 10.10.100.1
contentMediaType: application/json contentMediaType: application/json
example: examples:
example-of-assoc--sta-subscription:
value:
subscriptionType: AssocStaSubscription subscriptionType: AssocStaSubscription
callbackReference: http://meAppClient.example.com/wai/v2/notifications/1 callbackReference: http://meAppClient.example.com/wai/v2/notifications/1
_links: _links:
...@@ -420,11 +443,12 @@ paths: ...@@ -420,11 +443,12 @@ paths:
application/problem+json: application/problem+json:
schema: schema:
$ref: '#/components/schemas/ProblemDetails' $ref: '#/components/schemas/ProblemDetails'
example: examples:
application/problem+json: application/problem+json:
value:
type: https://meAppServer.example.com/wai/v2/probs/too-many targets type: https://meAppServer.example.com/wai/v2/probs/too-many targets
title: Too many targets title: Too many targets
status: '422' status: 422
detail: The target area for the request is considered too large detail: The target area for the request is considered too large
instance: /meAppClient.example.com/77777/msgs/abc instance: /meAppClient.example.com/77777/msgs/abc
'429': '429':
...@@ -435,12 +459,52 @@ paths: ...@@ -435,12 +459,52 @@ paths:
schema: schema:
$ref: '#/components/schemas/ProblemDetails' $ref: '#/components/schemas/ProblemDetails'
deprecated: false deprecated: false
callbacks:
notification:
'{$request.body#/callbackReference}':
post:
summary: Callback POST used to send a notification
description: 'Notification from WAIS, content based on subscription type'
operationId: notificationPOST
requestBody:
description: Subscription notification
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/InlineNotification'
examples:
example-assoc-sta-notification:
value:
notificationType: AssocStaNotification
timeStamp:
seconds: 1977836800
nanoSeconds: 0
apId:
bssid: 005C0A0A0A0A
ssid:
- myNetworkSsid
ipAddress:
- 10.10.100.1
staId:
macId: 005C01111111
ssid:
- myNetworkSsid
- myOtherNetworkSsid
aid: '1122'
ipAddress:
- 10.10.1.255
responses:
'204':
description: "No content"
parameters: [] parameters: []
/subscriptions/{subscriptionId}: /subscriptions/{subscriptionId}:
get: get:
tags: tags:
- wai - wai
summary: subscriptionsGET summary: 'Queries information about an existing subscription, identified by its self-referring URI returned on creation (initial POST)'
description: Queries information about an existing subscription, identified by its self-referring URI returned on creation (initial POST) description: Queries information about an existing subscription, identified by its self-referring URI returned on creation (initial POST)
operationId: subscriptionsGET operationId: subscriptionsGET
parameters: parameters:
...@@ -478,7 +542,9 @@ paths: ...@@ -478,7 +542,9 @@ paths:
ipAddress: ipAddress:
- 10.10.100.1 - 10.10.100.1
contentMediaType: application/json contentMediaType: application/json
example: examples:
example-of-assoc-sta-subscription:
value:
subscriptionType: AssocStaSubscription subscriptionType: AssocStaSubscription
callbackReference: http://meAppClient.example.com/wai/v2/notifications/1 callbackReference: http://meAppClient.example.com/wai/v2/notifications/1
_links: _links:
...@@ -539,7 +605,7 @@ paths: ...@@ -539,7 +605,7 @@ paths:
put: put:
tags: tags:
- wai - wai
summary: subscriptionsPUT summary: 'Updates an existing subscription, identified by its self-referring URI returned on creation (initial POST)'
description: Updates an existing subscription, identified by its self-referring URI returned on creation (initial POST) description: Updates an existing subscription, identified by its self-referring URI returned on creation (initial POST)
operationId: subscriptionsPUT operationId: subscriptionsPUT
parameters: parameters:
...@@ -576,7 +642,10 @@ paths: ...@@ -576,7 +642,10 @@ paths:
ipAddress: ipAddress:
- 10.10.100.1 - 10.10.100.1
contentMediaType: application/json contentMediaType: application/json
example: examples:
example-of-assoc-sta-subscription:
value:
subscriptionType: AssocStaSubscription subscriptionType: AssocStaSubscription
callbackReference: http://meAppClient.example.com/wai/v2/notifications/1 callbackReference: http://meAppClient.example.com/wai/v2/notifications/1
_links: _links:
...@@ -615,7 +684,10 @@ paths: ...@@ -615,7 +684,10 @@ paths:
ipAddress: ipAddress:
- 10.10.100.1 - 10.10.100.1
contentMediaType: application/json contentMediaType: application/json
example: examples:
example-sub-type:
value:
subscriptionType: "AssocStaSubscription"
_links: _links:
self: self:
href: http://[hostIP]/sbox-xyz123/wai/v2/subscriptions/sub123 href: http://[hostIP]/sbox-xyz123/wai/v2/subscriptions/sub123
...@@ -675,11 +747,12 @@ paths: ...@@ -675,11 +747,12 @@ paths:
application/problem+json: application/problem+json:
schema: schema:
$ref: '#/components/schemas/ProblemDetails' $ref: '#/components/schemas/ProblemDetails'
example: examples:
application/problem+json: application/problem+json:
value:
type: https://meAppServer.example.com/wai/v2/probs/too-many targets type: https://meAppServer.example.com/wai/v2/probs/too-many targets
title: Too many targets title: Too many targets
status: '422' status: 422
detail: The target area for the request is considered too large detail: The target area for the request is considered too large
instance: /meAppClient.example.com/77777/msgs/abc instance: /meAppClient.example.com/77777/msgs/abc
'429': '429':
...@@ -693,7 +766,7 @@ paths: ...@@ -693,7 +766,7 @@ paths:
delete: delete:
tags: tags:
- wai - wai
summary: subscriptionsDELETE summary: 'Cancels an existing subscription, identified by its self-referring URI returned on creation (initial POST)'
description: Cancels an existing subscription, identified by its self-referring URI returned on creation (initial POST) description: Cancels an existing subscription, identified by its self-referring URI returned on creation (initial POST)
operationId: subscriptionsDELETE operationId: subscriptionsDELETE
parameters: parameters:
...@@ -743,7 +816,7 @@ paths: ...@@ -743,7 +816,7 @@ paths:
get: get:
tags: tags:
- wai - wai
summary: measurementLinkList_measurementsGET summary: 'Queries information on measurements configuration'
description: Queries information on measurements configuration description: Queries information on measurements configuration
operationId: measurementLinkList_measurementsGET operationId: measurementLinkList_measurementsGET
parameters: [] parameters: []
...@@ -755,7 +828,9 @@ paths: ...@@ -755,7 +828,9 @@ paths:
application/json: application/json:
schema: schema:
$ref: '#/components/schemas/MeasurementConfigLinkList' $ref: '#/components/schemas/MeasurementConfigLinkList'
example: examples:
example-measurement:
value:
_links: _links:
self: self:
href: http://meAppServer.example.com/wai/v2/measurements href: http://meAppServer.example.com/wai/v2/measurements
...@@ -808,7 +883,7 @@ paths: ...@@ -808,7 +883,7 @@ paths:
post: post:
tags: tags:
- wai - wai
summary: measurementsPOST summary: 'Creates a new measurement configuration'
description: Creates a new measurement configuration description: Creates a new measurement configuration
operationId: measurementsPOST operationId: measurementsPOST
parameters: [] parameters: []
...@@ -818,6 +893,16 @@ paths: ...@@ -818,6 +893,16 @@ paths:
application/json: application/json:
schema: schema:
$ref: '#/components/schemas/MeasurementConfig' $ref: '#/components/schemas/MeasurementConfig'
examples:
example-body:
value:
staId:
- macId: 005C01111111
ssid:
- myNetworkSsid
- myOtherNetworkSsid
measurementId: myId1
measurementInfo: {}
required: true required: true
responses: responses:
'201': '201':
...@@ -827,6 +912,19 @@ paths: ...@@ -827,6 +912,19 @@ paths:
application/json: application/json:
schema: schema:
$ref: '#/components/schemas/MeasurementConfig' $ref: '#/components/schemas/MeasurementConfig'
examples:
example-response:
value:
_links:
self:
href: 'http://meAppServer.example.com/wai/v2/measurements/meas123'
staId:
- macId: 005C01111111
ssid:
- myNetworkSsid
- myOtherNetworkSsid
measurementId: myId1
measurementInfo: {}
'400': '400':
description: 'Bad Request : used to indicate that incorrect parameters were passed to the request.' description: 'Bad Request : used to indicate that incorrect parameters were passed to the request.'
headers: {} headers: {}
...@@ -876,11 +974,12 @@ paths: ...@@ -876,11 +974,12 @@ paths:
application/problem+json: application/problem+json:
schema: schema:
$ref: '#/components/schemas/ProblemDetails' $ref: '#/components/schemas/ProblemDetails'
example: examples:
application/problem+json: application/problem+json:
value:
type: https://meAppServer.example.com/wai/v2/probs/too-many targets type: https://meAppServer.example.com/wai/v2/probs/too-many targets
title: Too many targets title: Too many targets
status: '422' status: 422
detail: The target area for the request is considered too large detail: The target area for the request is considered too large
instance: /meAppClient.example.com/77777/msgs/abc instance: /meAppClient.example.com/77777/msgs/abc
'429': '429':
...@@ -896,7 +995,7 @@ paths: ...@@ -896,7 +995,7 @@ paths:
get: get:
tags: tags:
- wai - wai
summary: measurementsGET summary: 'Queries information about an existing measurement configuration, identified by its self-referring URI returned on creation (initial POST)'
description: Queries information about an existing measurement configuration, identified by its self-referring URI returned on creation (initial POST) description: Queries information about an existing measurement configuration, identified by its self-referring URI returned on creation (initial POST)
operationId: measurementsGET operationId: measurementsGET
parameters: parameters:
...@@ -915,6 +1014,21 @@ paths: ...@@ -915,6 +1014,21 @@ paths:
application/json: application/json:
schema: schema:
$ref: '#/components/schemas/MeasurementConfig' $ref: '#/components/schemas/MeasurementConfig'
examples:
response-example:
value:
_links:
self:
href: 'http://meAppServer.example.com/wai/v2/measurements/meas123'
staId:
- macId: 005C01111111
ssid:
- myNetworkSsid
- myOtherNetworkSsid
measurementId: myId1
measurementInfo: {}
'400': '400':
description: 'Bad Request : used to indicate that incorrect parameters were passed to the request.' description: 'Bad Request : used to indicate that incorrect parameters were passed to the request.'
headers: {} headers: {}
...@@ -961,7 +1075,7 @@ paths: ...@@ -961,7 +1075,7 @@ paths:
put: put:
tags: tags:
- wai - wai
summary: measurementsPUT summary: 'Updates an existing measurement configuration, identified by its self-referring URI returned on creation (initial POST)'
description: Updates an existing measurement configuration, identified by its self-referring URI returned on creation (initial POST) description: Updates an existing measurement configuration, identified by its self-referring URI returned on creation (initial POST)
operationId: measurementsPUT operationId: measurementsPUT
parameters: parameters:
...@@ -1036,11 +1150,12 @@ paths: ...@@ -1036,11 +1150,12 @@ paths:
application/problem+json: application/problem+json:
schema: schema:
$ref: '#/components/schemas/ProblemDetails' $ref: '#/components/schemas/ProblemDetails'
example: examples:
application/problem+json: application/problem+json:
value:
type: https://meAppServer.example.com/wai/v2/probs/too-many targets type: https://meAppServer.example.com/wai/v2/probs/too-many targets
title: Too many targets title: Too many targets
status: '422' status: 422
detail: The target area for the request is considered too large detail: The target area for the request is considered too large
instance: /meAppClient.example.com/77777/msgs/abc instance: /meAppClient.example.com/77777/msgs/abc
'429': '429':
...@@ -1054,7 +1169,7 @@ paths: ...@@ -1054,7 +1169,7 @@ paths:
delete: delete:
tags: tags:
- wai - wai
summary: measurementsDELETE summary: 'Cancels an existing measurement configuration, identified by its self-referring URI returned on creation (initial POST)'
description: Cancels an existing measurement configuration, identified by its self-referring URI returned on creation (initial POST) description: Cancels an existing measurement configuration, identified by its self-referring URI returned on creation (initial POST)
operationId: measurementsDELETE operationId: measurementsDELETE
parameters: parameters:
...@@ -2817,8 +2932,4 @@ components: ...@@ -2817,8 +2932,4 @@ components:
- 1 - 1
security: security:
- {} - {}
tags:
- name: wai
externalDocs:
description: ETSI MEC028 V2.2.1 WLAN Information API
url: https://www.etsi.org/deliver/etsi_gs/MEC/001_099/028/02.02.01_60/gs_mec028v020201p.pdf
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment