Skip to content
WlanInformationApi.yaml 79.3 KiB
Newer Older
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: 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: 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:
                $ref: '#/components/schemas/SubscriptionLinkList'
              example:
                _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:
              $ref: '#/components/schemas/InlineSubscription'
            example:
              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:
                $ref: '#/components/schemas/InlineSubscription'
              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:
                  macId: 005C0A0A0A0A
                  ssid: 'myNetworkSsid'
                  ipAddress: 10.10.100.1
        '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'
        '415':
          $ref: '#/components/responses/415'
        '422':
          $ref: '#/components/responses/422'
        '429':
          $ref: '#/components/responses/429'
      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'
                    example:
                      notificationType: AssocStaNotification
                      timeStamp:
Loading full blame...