Commit ec634281 authored by piscione's avatar piscione
Browse files

Replaced YAML with OAS3.1 file to work on.

parent e91acfc3
Pipeline #9748 failed with stage
in 0 seconds
openapi: 3.1.0
info:
title: ETSI GS MEC 028 - WLAN Access Information API
description: The ETSI MEC ISG MEC028 WLAN Access Information API described using OpenAPI
contact:
url: https://forge.etsi.org/rep/mec/gs028-wai-api
version: '2.2.1'
jsonSchemaDialect: https://json-schema.org/draft/2020-12/schema
servers:
- url: https://localhost/wai/v2
variables: {}
paths:
/queries/ap/ap_information:
get:
tags:
- wai
summary: apInfoGET
description: Queries information about existing WLAN Access Points
operationId: apInfoGET
parameters:
- name: filter
in: query
description: Attribute-based filtering expression according to clause 6.19 of ETSI GS MEC 009. .
style: form
explode: true
schema:
type: string
- name: all_fields
in: query
description: Include all complex attributes in the response. See clause 6.18 of ETSI GS MEC 009 for details.
style: form
explode: true
schema:
type: string
- name: fields
in: query
description: Complex attributes to be included into the response. See clause 6.18 of ETSI GS MEC 009 for details.
style: form
explode: true
schema:
type: array
items:
type: string
- name: exclude_fields
in: query
description: Complex attributes to be excluded from the response. See clause 6.18 of ETSI GS MEC 009 for details.
style: form
explode: true
schema:
type: array
items:
type: string
- name: exclude_default
in: query
description: 'Indicates to exclude the following complex attributes from the response. See clause 6.18 of ETSI GS MEC 009 for details. The following attributes shall be excluded from the structure in the response body if this parameter is provided, or none of the parameters "all_fields", "fields", "exclude_fields", "exclude_default" are provided: Not applicable'
style: form
explode: true
schema:
type: array
items:
type: string
responses:
'200':
description: Successful response to ap_info request
headers: {}
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/ApInfo'
description: ''
contentMediaType: application/json
'400':
description: 'Bad Request : used to indicate that incorrect parameters were passed to the request.'
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
'401':
description: 'Unauthorized : used when the client did not submit credentials.'
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
'403':
description: 'Forbidden : operation is not allowed given the current status of the resource.'
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
'404':
description: 'Not Found : used when a client provided a URI that cannot be mapped to a valid resource URI.'
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
'406':
description: 'Not Acceptable : used to indicate that the server cannot provide the any of the content formats supported by the client.'
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
'429':
description: 'Too Many Requests : used when a rate limiter has triggered.'
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
deprecated: false
parameters: []
/queries/sta/sta_information:
get:
tags:
- wai
summary: staInfoGET
description: Queries information about existing WLAN stations
operationId: staInfoGET
parameters:
- name: filter
in: query
description: Attribute-based filtering expression according to clause 6.19 of ETSI GS MEC 009. .
style: form
explode: true
schema:
type: string
- name: all_fields
in: query
description: Include all complex attributes in the response. See clause 6.18 of ETSI GS MEC 009 for details.
style: form
explode: true
schema:
type: string
- name: fields
in: query
description: Complex attributes to be included into the response. See clause 6.18 of ETSI GS MEC 009 for details.
style: form
explode: true
schema:
type: array
items:
type: string
- name: exclude_fields
in: query
description: Complex attributes to be excluded from the response. See clause 6.18 of ETSI GS MEC 009 for details.
style: form
explode: true
schema:
type: array
items:
type: string
- name: exclude_default
in: query
description: 'Indicates to exclude the following complex attributes from the response. See clause 6.18 of ETSI GS MEC 009 for details. The following attributes shall be excluded from the structure in the response body if this parameter is provided, or none of the parameters "all_fields", "fields", "exclude_fields", "exclude_default" are provided: Not applicable'
style: form
explode: true
schema:
type: array
items:
type: string
responses:
'200':
description: Successful response to sta_info request
headers: {}
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/StaInfo'
description: ''
contentMediaType: application/json
'400':
description: 'Bad Request : used to indicate that incorrect parameters were passed to the request.'
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
'401':
description: 'Unauthorized : used when the client did not submit credentials.'
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
'403':
description: 'Forbidden : operation is not allowed given the current status of the resource.'
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
'404':
description: 'Not Found : used when a client provided a URI that cannot be mapped to a valid resource URI.'
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
'406':
description: 'Not Acceptable : used to indicate that the server cannot provide the any of the content formats supported by the client.'
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
'429':
description: 'Too Many Requests : used when a rate limiter has triggered.'
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
deprecated: false
parameters: []
/subscriptions:
get:
tags:
- wai
summary: subscriptionLinkList_subscriptionsGET
description: Queries information on subscriptions for notifications
operationId: subscriptionLinkList_subscriptionsGET
parameters:
- name: subscription_type
in: query
description: 'Filter on a specific subscription type. Permitted values: assoc_sta, sta_data_rate, measure_report.'
style: form
explode: true
schema:
type: string
responses:
'200':
description: Response body contains the list of links to requestors subscriptions.
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/SubscriptionLinkList'
'400':
description: 'Bad Request : used to indicate that incorrect parameters were passed to the request.'
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
'401':
description: 'Unauthorized : used when the client did not submit credentials.'
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
'403':
description: 'Forbidden : operation is not allowed given the current status of the resource.'
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
'404':
description: 'Not Found : used when a client provided a URI that cannot be mapped to a valid resource URI.'
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
'406':
description: 'Not Acceptable : used to indicate that the server cannot provide the any of the content formats supported by the client.'
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
'429':
description: 'Too Many Requests : used when a rate limiter has triggered.'
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
deprecated: false
post:
tags:
- wai
summary: subscriptionsPOST
description: Creates a new subscription to WLAN Access Information notifications
operationId: subscriptionsPOST
parameters: []
requestBody:
description: Subscription to be created
content:
application/json:
schema:
oneOf:
- $ref: '#/components/schemas/AssocStaSubscription'
- $ref: '#/components/schemas/StaDataRateSubscription'
- $ref: '#/components/schemas/MeasurementReportSubscription'
description: Subscription to be created
examples:
- subscriptionType: AssocStaSubscription
callbackReference: http://meAppClient.example.com/wai/v2/notifications/1
expiryDeadline:
seconds: 1977836800
nanoSeconds: 0
apId:
bssid: 005C0A0A0A0A
ssid:
- myNetworkSsid
ipAddress:
- 10.10.100.1
contentMediaType: application/json
example:
subscriptionType: AssocStaSubscription
callbackReference: http://meAppClient.example.com/wai/v2/notifications/1
expiryDeadline:
seconds: 1977836800
nanoSeconds: 0
apId:
bssid: 005C0A0A0A0A
ssid:
- myNetworkSsid
ipAddress:
- 10.10.100.1
required: true
responses:
'201':
description: Successful subscription response
headers: {}
content:
application/json:
schema:
oneOf:
- $ref: '#/components/schemas/AssocStaSubscription'
- $ref: '#/components/schemas/StaDataRateSubscription'
- $ref: '#/components/schemas/MeasurementReportSubscription'
examples:
- subscriptionType: AssocStaSubscription
callbackReference: http://meAppClient.example.com/wai/v2/notifications/1
_links:
self:
href: http://meAppServer.example.com/wai/v2/subscriptions/sub123
expiryDeadline:
seconds: 1977836800
nanoSeconds: 0
apId:
bssid: 005C0A0A0A0A
ssid:
- myNetworkSsid
ipAddress:
- 10.10.100.1
contentMediaType: application/json
example:
subscriptionType: AssocStaSubscription
callbackReference: http://meAppClient.example.com/wai/v2/notifications/1
_links:
self:
href: http://meAppServer.example.com/wai/v2/subscriptions/sub123
expiryDeadline:
seconds: 1977836800
nanoSeconds: 0
apId:
bssid: 005C0A0A0A0A
ssid:
- myNetworkSsid
ipAddress:
- 10.10.100.1
'400':
description: 'Bad Request : used to indicate that incorrect parameters were passed to the request.'
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
'401':
description: 'Unauthorized : used when the client did not submit credentials.'
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
'403':
description: 'Forbidden : operation is not allowed given the current status of the resource.'
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
'404':
description: 'Not Found : used when a client provided a URI that cannot be mapped to a valid resource URI.'
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
'406':
description: 'Not Acceptable : used to indicate that the server cannot provide the any of the content formats supported by the client.'
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
'415':
description: 'Unsupported Media Type : used to indicate that the server or the client does not support the content type of the entity body.'
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
'422':
description: 'Unprocessable Entity : used to indicate that the server understands the content type of the request entity and that the syntax of the request entity is correct but that the server is unable to process the contained instructions. This error condition can occur if an JSON request body is syntactically correct but semantically incorrect, for example if the target area for the request is considered too large. This error condition can also occur if the capabilities required by the request are not supported.'
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
example:
application/problem+json:
type: https://meAppServer.example.com/wai/v2/probs/too-many targets
title: Too many targets
status: '422'
detail: The target area for the request is considered too large
instance: /meAppClient.example.com/77777/msgs/abc
'429':
description: 'Too Many Requests : used when a rate limiter has triggered.'
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
deprecated: false
parameters: []
/subscriptions/{subscriptionId}:
get:
tags:
- wai
summary: subscriptionsGET
description: Queries information about an existing subscription, identified by its self-referring URI returned on creation (initial POST)
operationId: subscriptionsGET
parameters:
- name: subscriptionId
in: path
description: Subscription Id, specifically the "self" returned in the subscription request
required: true
style: simple
schema:
type: string
responses:
'200':
description: Subscription information regarding subscription notifications
headers: {}
content:
application/json:
schema:
oneOf:
- $ref: '#/components/schemas/AssocStaSubscription'
- $ref: '#/components/schemas/StaDataRateSubscription'
- $ref: '#/components/schemas/MeasurementReportSubscription'
examples:
- subscriptionType: AssocStaSubscription
callbackReference: http://meAppClient.example.com/wai/v2/notifications/1
_links:
self:
href: http://meAppServer.example.com/wai/v2/subscriptions/sub123
expiryDeadline:
seconds: 1977836800
nanoSeconds: 0
apId:
bssid: 005C0A0A0A0A
ssid:
- myNetworkSsid
ipAddress:
- 10.10.100.1
contentMediaType: application/json
example:
subscriptionType: AssocStaSubscription
callbackReference: http://meAppClient.example.com/wai/v2/notifications/1
_links:
self:
href: http://meAppServer.example.com/wai/v2/subscriptions/sub123
expiryDeadline:
seconds: 1977836800
nanoSeconds: 0
apId:
bssid: 005C0A0A0A0A
ssid:
- myNetworkSsid
ipAddress:
- 10.10.100.1
'400':
description: 'Bad Request : used to indicate that incorrect parameters were passed to the request.'
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
'401':
description: 'Unauthorized : used when the client did not submit credentials.'
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
'403':
description: 'Forbidden : operation is not allowed given the current status of the resource.'
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
'404':
description: 'Not Found : used when a client provided a URI that cannot be mapped to a valid resource URI.'
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
'406':
description: 'Not Acceptable : used to indicate that the server cannot provide the any of the content formats supported by the client.'
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
'429':
description: 'Too Many Requests : used when a rate limiter has triggered.'
headers: {}
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
deprecated: false
put:
tags:
- wai
summary: subscriptionsPUT
description: Updates an existing subscription, identified by its self-referring URI returned on creation (initial POST)
operationId: subscriptionsPUT
parameters:
- name: subscriptionId
in: path
description: Subscription Id, specifically the "self" returned in the subscription request
required: true
style: simple
schema:
type: string
requestBody:
description: Subscription to be modified
content:
application/json:
schema:
oneOf:
- $ref: '#/components/schemas/AssocStaSubscription'
- $ref: '#/components/schemas/StaDataRateSubscription'
- $ref: '#/components/schemas/MeasurementReportSubscription'
description: Subscription to be modified
examples:
- subscriptionType: AssocStaSubscription
callbackReference: http://meAppClient.example.com/wai/v2/notifications/1
_links:
self:
href: http://meAppServer.example.com/wai/v2/subscriptions/sub123
expiryDeadline:
seconds: 1977836800
nanoSeconds: 0
apId:
bssid: 005C0A0A0A0A
ssid:
- myNetworkSsid
ipAddress:
- 10.10.100.1
contentMediaType: application/json
example:
subscriptionType: AssocStaSubscription
callbackReference: http://meAppClient.example.com/wai/v2/notifications/1
_links:
self:
href: http://meAppServer.example.com/wai/v2/subscriptions/sub123
expiryDeadline:
seconds: 1977836800
nanoSeconds: 0
apId:
bssid: 005C0A0A0A0A