Skip to content
WlanInformationApi.yaml 82.3 KiB
Newer Older
Michel Roy's avatar
Michel Roy committed
openapi: 3.0.0
info:
  contact:
    url: https://forge.etsi.org/rep/mec/gs028-wai-api
  title: ETSI GS MEC 028 - WLAN Access Information API
  version: 2.1.1
  description: The ETSI MEC ISG MEC028 WLAN Access Information API described using OpenAPI
  license:
    name: BSD-3-Clause
    url: 'https://forge.etsi.org/legal-matters'
externalDocs:
  description: ETSI MEC028 V2.1.1 WLAN Information API
  url: 'http://www.etsi.org/deliver/etsi_gs/MEC/001_099/028/02.01.01_60/gs_mec028v020101p.pdf'
servers:
  - url: 'https://localhost/wai/v2'
tags:
- name: "wai"
paths:
  /queries/ap/ap_information:
    get:
      tags:
      - 'wai'
      summary: 'Retrieve information on existing Access Points'
      description: 'Queries information about existing WLAN Access Points'
      operationId: apInfoGET
      parameters:
        - $ref: '#/components/parameters/Query.Filter'
        - $ref: '#/components/parameters/Query.AllFields'
        - $ref: '#/components/parameters/Query.Fields'
        - $ref: '#/components/parameters/Query.ExcludeFields'
        - $ref: '#/components/parameters/Query.ExcludeDefault'
      responses:
        '200':
          description: Successful response to ap_info request
          content:
            application/json:
              schema:
                type: object
                properties:
                  apInfo:
                    type: array
                    items:
                      $ref: '#/components/schemas/ApInfo'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '406':
          $ref: '#/components/responses/406'
        '429':
          $ref: '#/components/responses/429'
  /queries/sta/sta_information:
    get:
      tags:
      - 'wai'
      summary: 'Retrieve information on existing Stations'
      description: 'Queries information about existing WLAN stations'
      operationId: staInfoGET
      parameters:
        - $ref: '#/components/parameters/Query.Filter'
        - $ref: '#/components/parameters/Query.AllFields'
        - $ref: '#/components/parameters/Query.Fields'
        - $ref: '#/components/parameters/Query.ExcludeFields'
        - $ref: '#/components/parameters/Query.ExcludeDefault'
      responses:
        '200':
          description: Successful response to sta_info request
          content:
            application/json:
              schema:
                type: object
                properties:
                  staInfo:
                    type: array
                    items:
                      $ref: '#/components/schemas/StaInfo'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '406':
          $ref: '#/components/responses/406'
        '429':
          $ref: '#/components/responses/429'
  /subscriptions:
    get:
      tags:
      - 'wai'
      summary: 'Retrieve information on subscriptions for notifications'
      description: 'Queries information on subscriptions for notifications'
      operationId: subscriptionLinkList_subscriptionsGET
      parameters:
        - $ref: '#/components/parameters/Query.SubscriptionType'
      responses:
        '200':
          description: 'Response body contains the list of links to requestors subscriptions.'
          content:
            application/json:
              schema:
                type: object
                required:
                  - subscriptionLinkList
                properties:
                  subscriptionLinkList:
                    $ref: '#/components/schemas/SubscriptionLinkList'
              example:
                subscriptionLinkList:
                  _links:
                    self:
                      href: 'http://meAppServer.example.com/wai/v2/subscriptions'
                  subscription:
                    - _links:
                        self:
                          href: 'http://meAppServer.example.com/wai/v2/subscriptions/sub123'
                      callbackReference: 'http://my.callback.com/wai/assocStaSubscription/some-id'
                      subscriptionType: AssocStaSubscription
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '406':
          $ref: '#/components/responses/406'
        '429':
          $ref: '#/components/responses/429'
    post:
      tags:
      - 'wai'
      summary: 'Create a new subscription'
      description: 'Creates a new subscription to WLAN Access Information notifications'
      operationId: subscriptionsPOST
      requestBody:
        description: Subscription to be created
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                notificationSubscription:
                  oneOf:
                    - $ref: '#/components/schemas/AssocStaSubscription'
                    - $ref: '#/components/schemas/StaDataRateSubscription'
                  discriminator:
                    propertyName: subscriptionType
              example:
                notificationSubscription:
                  subscriptionType: AssocStaSubscription
                  callbackReference: 'http://meAppClient.example.com/wai/v2/notifications/1'
                  expiryDeadline:
                    seconds: 1977836800
                    nanoSeconds: 0
                  apId:
                    macId: 005C0A0A0A0A
                    ssid: 'myNetworkSsid'
                    ipAddress: 10.10.100.1
      responses:
        '201':
          description: Successful subscription response
          content:
            application/json:
              schema:
                type: object
                properties:
                  notificationSubscription:
                    oneOf:
                      - $ref: '#/components/schemas/AssocStaSubscription'
                      - $ref: '#/components/schemas/StaDataRateSubscription'
                    discriminator:
                      propertyName: subscriptionType
              example:
                notificationSubscription:
                  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:
                    macId: 005C0A0A0A0A
                    ssid: 'myNetworkSsid'
                    ipAddress: 10.10.100.1
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
Loading full blame...