From 378ceebaf753e57db44335f9d4c80e1e16c6a00c Mon Sep 17 00:00:00 2001 From: featherstone Date: Tue, 27 Mar 2018 15:57:17 +0100 Subject: [PATCH] Removed extra '/' from basePath. To each procedure, added tags and operationId Change-Id: Ieaaaed75a5e25f2a19bd28f9bdca5ed4338bea5f Signed-off-by: featherstone --- LocationAPI.json | 199 ++- LocationAPI.split.yaml | 8 +- LocationAPI.yaml | 2172 ++++++++++++++++---------------- paths/SubsUserTrackId.yaml | 3 + paths/SubsUserTrackId_Del.yaml | 6 +- paths/SubsUserTrackId_Get.yaml | 7 +- paths/SubsUserTrackId_Put.yaml | 6 +- paths/SubsUserTrack_Get.yaml | 5 +- paths/SubsUserTrack_Post.yaml | 5 +- paths/SubsZonalTrafId.yaml | 3 + paths/SubsZonalTrafId_Del.yaml | 6 +- paths/SubsZonalTrafId_Get.yaml | 7 +- paths/SubsZonalTrafId_Put.yaml | 6 +- paths/SubsZonalTraf_Get.yaml | 5 +- paths/SubsZonalTraf_Post.yaml | 7 +- paths/SubsZoneStatId.yaml | 3 + paths/SubsZoneStatId_Del.yaml | 6 +- paths/SubsZoneStatId_Get.yaml | 7 +- paths/SubsZoneStatId_Put.yaml | 6 +- paths/SubsZoneStat_Get.yaml | 5 +- paths/SubsZoneStat_Post.yaml | 5 +- paths/UsersId.yaml | 2 + paths/UsersId_Get.yaml | 7 +- paths/Users_Get.yaml | 5 +- paths/ZonesId.yaml | 2 + paths/ZonesIdAps.yaml | 2 + paths/ZonesIdApsId.yaml | 3 + paths/ZonesIdApsId_Get.yaml | 8 +- paths/ZonesIdAps_Get.yaml | 6 +- paths/ZonesId_Get.yaml | 7 +- paths/Zones_Get.yaml | 5 +- tags/index.yaml | 3 + 32 files changed, 1344 insertions(+), 1183 deletions(-) create mode 100644 tags/index.yaml diff --git a/LocationAPI.json b/LocationAPI.json index c4739cb..81e1d42 100644 --- a/LocationAPI.json +++ b/LocationAPI.json @@ -3,18 +3,18 @@ "info": { "title": "Location API", "version": "1.1.1", - "description": "The ETSI MEC ISG MEC013 Location API described using OpenAPI. The API is based on the Open Mobile Alliance's specification RESTful Network API for Zonal Presence", + "description": "The ETSI MEC ISG MEC012 Location API described using OpenAPI. The API is based on the Open Mobile Alliance's specification RESTful Network API for Zonal Presence", "license": { "name": "ETSI Forge copyright notice", "url": "https://forge.etsi.org/etsi-forge-copyright-notice.txt" } }, "externalDocs": { - "description": "ETSI GS MEC013 Location Service API, V1.1.1", + "description": "ETSI MEC013 V1.1.1 Location Service API", "url": "http://www.etsi.org/deliver/etsi_gs/MEC/001_099/013/01.01.01_60/gs_mec013v010101p.pdf" }, "host": "127.0.0.1:8081", - "basePath": "/exampleAPI/location/v1/", + "basePath": "/exampleAPI/location/v1", "schemes": [ "http", "https" @@ -25,6 +25,17 @@ "produces": [ "application/json" ], + "tags": [ + { + "name": "zones" + }, + { + "name": "users" + }, + { + "name": "subscriptions" + } + ], "parameters": { "Body.UserTrackingSubscription": { "name": "userTrackingSubscription", @@ -106,6 +117,10 @@ "paths": { "/zones": { "get": { + "tags": [ + "zones" + ], + "operationId": "zonesGet", "description": "Used to get a list of identifiers for zones authorized for use by the application.", "produces": [ "application/json" @@ -148,16 +163,20 @@ } }, "/zones/{zoneId}": { + "parameters": [ + { + "$ref": "#/parameters/Path.ZoneId" + } + ], "get": { + "tags": [ + "zones" + ], + "operationId": "zonesGetById", "description": "Used to get the status of a zone.", "produces": [ "application/json" ], - "parameters": [ - { - "$ref": "#/parameters/Path.ZoneId" - } - ], "responses": { "200": { "description": "Successful response to a query regarding the status of a zone", @@ -184,15 +203,21 @@ } }, "/zones/{zoneId}/accessPoints": { + "parameters": [ + { + "$ref": "#/parameters/Path.ZoneId" + } + ], "get": { + "tags": [ + "zones" + ], + "operationId": "zonesByIdGetAps", "description": "Access point status can be retrieved for sets of access points matching attribute in the request.", "produces": [ "application/json" ], "parameters": [ - { - "$ref": "#/parameters/Path.ZoneId" - }, { "$ref": "#/parameters/Query.InterestRealm" } @@ -264,19 +289,23 @@ } }, "/zones/{zoneId}/accessPoints/{accessPointId}": { + "parameters": [ + { + "$ref": "#/parameters/Path.ZoneId" + }, + { + "$ref": "#/parameters/Path.AccessPointId" + } + ], "get": { + "tags": [ + "zones" + ], + "operationId": "zonesByIdGetApsById", "description": "Access point status can be retrieved for sets of access points matching attribute in the request.", "produces": [ "application/json" ], - "parameters": [ - { - "$ref": "#/parameters/Path.ZoneId" - }, - { - "$ref": "#/parameters/Path.AccessPointId" - } - ], "responses": { "200": { "description": "Successful response to a query a named set of access point status request", @@ -311,6 +340,10 @@ }, "/users": { "get": { + "tags": [ + "users" + ], + "operationId": "usersGet", "description": "Users currently using a zone may be retrieved for sets of access points matching attribute in the request", "produces": [ "application/json" @@ -377,16 +410,20 @@ } }, "/users/{userId}": { + "parameters": [ + { + "$ref": "#/parameters/Path.UserId" + } + ], "get": { + "tags": [ + "users" + ], + "operationId": "usersGetById", "description": "Users currently using a zone may be retrieved for sets of access points matching attribute in the request", "produces": [ "application/json" ], - "parameters": [ - { - "$ref": "#/parameters/Path.UserId" - } - ], "responses": { "200": { "description": "Successful response to a query users within a zone request", @@ -420,6 +457,10 @@ }, "/subscriptions/zonalTraffic": { "get": { + "tags": [ + "subscriptions" + ], + "operationId": "zonalTrafficSubGet", "description": "This operation is used for retrieving all active subscriptions to zonal traffic change notifications.", "produces": [ "application/json" @@ -479,6 +520,10 @@ } }, "post": { + "tags": [ + "subscriptions" + ], + "operationId": "zonalTrafficSubPost", "description": "This operation is used for creating a new subscription to zonal traffic change notification.", "produces": [ "application/json" @@ -517,16 +562,20 @@ } }, "/subscriptions/zonalTraffic/{subscriptionId}": { + "parameters": [ + { + "$ref": "#/parameters/Path.SubscriptionId" + } + ], "get": { + "tags": [ + "subscriptions" + ], + "operationId": "zonalTrafficSubGetById", "description": "This operation is used for updating an individual subscription to zonal traffic change notification.", "produces": [ "application/json" ], - "parameters": [ - { - "$ref": "#/parameters/Path.SubscriptionId" - } - ], "responses": { "200": { "description": "Response to retrieve individual zonal traffic subscription", @@ -555,14 +604,15 @@ } }, "put": { + "tags": [ + "subscriptions" + ], + "operationId": "zonalTrafficSubPutById", "description": "This operation is used for updating an individual subscription to zonal traffic change notification.", "produces": [ "application/json" ], "parameters": [ - { - "$ref": "#/parameters/Path.SubscriptionId" - }, { "$ref": "#/parameters/Body.ZonalTrafficSubscription" } @@ -595,15 +645,14 @@ } }, "delete": { + "tags": [ + "subscriptions" + ], + "operationId": "zonalTrafficSubDelById", "description": "This operation is used for cancelling a subscription and stopping corresponding notifications.", "produces": [ "application/json" ], - "parameters": [ - { - "$ref": "#/parameters/Path.SubscriptionId" - } - ], "responses": { "204": { "description": "No content" @@ -613,6 +662,10 @@ }, "/subscriptions/userTracking": { "get": { + "tags": [ + "subscriptions" + ], + "operationId": "userTrackingSubGet", "description": "This operation is used for retrieving all active subscriptions to user tracking change notifications.", "produces": [ "application/json" @@ -670,6 +723,10 @@ } }, "post": { + "tags": [ + "subscriptions" + ], + "operationId": "userTrackingSubPost", "description": "This operation is used for creating a new subscription to user tracking change notification", "produces": [ "application/json" @@ -707,16 +764,20 @@ } }, "/subscriptions/userTracking/{subscriptionId}": { + "parameters": [ + { + "$ref": "#/parameters/Path.SubscriptionId" + } + ], "get": { + "tags": [ + "subscriptions" + ], + "operationId": "userTrackingSubGetById", "description": "This operation is used for retrieving an individual subscription to user tracking change notification.", "produces": [ "application/json" ], - "parameters": [ - { - "$ref": "#/parameters/Path.SubscriptionId" - } - ], "responses": { "200": { "description": "Response to retrieve individual user tracking subscription", @@ -744,14 +805,15 @@ } }, "put": { + "tags": [ + "subscriptions" + ], + "operationId": "userTrackingSubPutById", "description": "This operation is used for updating an individual subscription to user tracking change notification.", "produces": [ "application/json" ], "parameters": [ - { - "$ref": "#/parameters/Path.SubscriptionId" - }, { "$ref": "#/parameters/Body.UserTrackingSubscription" } @@ -783,15 +845,14 @@ } }, "delete": { + "tags": [ + "subscriptions" + ], + "operationId": "userTrackingSubDelById", "description": "This operation is used for retrieving an individual subscription to user tracking change notification.", "produces": [ "application/json" ], - "parameters": [ - { - "$ref": "#/parameters/Path.SubscriptionId" - } - ], "responses": { "204": { "description": "No Content" @@ -801,6 +862,10 @@ }, "/subscriptions/zonalStatus": { "get": { + "tags": [ + "subscriptions" + ], + "operationId": "zoneStatusGet", "description": "This operation is used for creating a new subscription to zone status change notification.", "produces": [ "application/json" @@ -860,6 +925,10 @@ } }, "post": { + "tags": [ + "subscriptions" + ], + "operationId": "zoneStatusPost", "description": "This operation is used for creating a new subscription to zone status change notification.", "produces": [ "application/json" @@ -898,16 +967,20 @@ } }, "/subscriptions/zoneStatus/{subscriptionId}": { + "parameters": [ + { + "$ref": "#/parameters/Path.SubscriptionId" + } + ], "get": { + "tags": [ + "subscriptions" + ], + "operationId": "zoneStatusGetById", "description": "This operation is used for retrieving an individual subscription to zone status change notification.", "produces": [ "application/json" ], - "parameters": [ - { - "$ref": "#/parameters/Path.SubscriptionId" - } - ], "responses": { "200": { "description": "Response to retrieve individual zone status subscription", @@ -936,14 +1009,15 @@ } }, "put": { + "tags": [ + "subscriptions" + ], + "operationId": "zoneStatusPutById", "description": "This operation is used for updating an individual subscription to zone status change notification.", "produces": [ "application/json" ], "parameters": [ - { - "$ref": "#/parameters/Path.SubscriptionId" - }, { "$ref": "#/parameters/Body.ZoneStatusSubscription" } @@ -976,15 +1050,14 @@ } }, "delete": { + "tags": [ + "subscriptions" + ], + "operationId": "zoneStatusDelById", "description": "This operation is used for cancelling a subscription and stopping corresponding notifications.", "produces": [ "application/json" ], - "parameters": [ - { - "$ref": "#/parameters/Path.SubscriptionId" - } - ], "responses": { "204": { "description": "No content" diff --git a/LocationAPI.split.yaml b/LocationAPI.split.yaml index 40f20a6..900b662 100644 --- a/LocationAPI.split.yaml +++ b/LocationAPI.split.yaml @@ -16,7 +16,7 @@ externalDocs: $ref: './externalDocs/index.yaml' host: 127.0.0.1:8081 -basePath: /exampleAPI/location/v1/ +basePath: /exampleAPI/location/v1 schemes: - http - https @@ -25,6 +25,12 @@ consumes: produces: - application/json +################################################################################ +# Tags # +################################################################################ +tags: + $ref: './tags/index.yaml' + ################################################################################ # Parameters # ################################################################################ diff --git a/LocationAPI.yaml b/LocationAPI.yaml index babead0..42921e0 100644 --- a/LocationAPI.yaml +++ b/LocationAPI.yaml @@ -1,1056 +1,1116 @@ -swagger: '2.0' -info: - title: Location API - version: 1.1.1 - description: 'The ETSI MEC ISG MEC013 Location API described using OpenAPI. The API is based on the Open Mobile Alliance''s specification RESTful Network API for Zonal Presence' - license: - name: ETSI Forge copyright notice - url: 'https://forge.etsi.org/etsi-forge-copyright-notice.txt' -externalDocs: - description: ETSI GS MEC013 Location Service API, V1.1.1 - url: 'http://www.etsi.org/deliver/etsi_gs/MEC/001_099/013/01.01.01_60/gs_mec013v010101p.pdf' -host: '127.0.0.1:8081' -basePath: /exampleAPI/location/v1/ -schemes: - - http - - https -consumes: - - application/json -produces: - - application/json -parameters: - Body.UserTrackingSubscription: - name: userTrackingSubscription - in: body - description: User Tracking Subscription - required: true - schema: - $ref: '#/definitions/UserTrackingSubscription' - Body.ZonalTrafficSubscription: - name: zonalTrafficSubscription - in: body - description: Zonal Traffic Subscription - required: true - schema: - $ref: '#/definitions/ZonalTrafficSubscription' - Body.ZoneStatusSubscription: - name: zoneStatusSubscription - in: body - description: Zone Status Subscription - required: true - schema: - $ref: '#/definitions/ZoneStatusSubscription' - Path.AccessPointId: - name: accessPointId - in: path - description: Access Point ID - required: true - type: string - Path.SubscriptionId: - name: subscriptionId - in: path - description: Subscription ID - required: true - type: string - Path.UserId: - name: userId - in: path - description: User ID - required: true - type: string - Path.ZoneId: - name: zoneId - in: path - description: Zone ID - required: true - type: string - Query.AccessPointId: - name: accessPointId - in: query - description: 'Identifier of access point, reference "definitions" for string format' - required: false - type: string - Query.InterestRealm: - name: interestRealm - in: query - description: 'Interest realm of access point (e.g. geographical area, a type of industry etc.).' - required: false - type: string - Query.ZoneId: - name: zoneId - in: query - description: Zone ID - required: true - type: string -paths: - /zones: - get: - description: Used to get a list of identifiers for zones authorized for use by the application. - produces: - - application/json - responses: - '200': - description: Successful response to a query regarding the status of a zone - schema: - properties: - zoneList: - $ref: '#/definitions/ZoneList' - examples: - application/json: - zoneList: - zone: - - zoneId: zone01 - numberOfAccessPoints: '3' - numberOfUnserviceableAccessPoints: '1' - numberOfUsers: '10' - resourceURL: 'http://example.com/exampleAPI/location/v1/zones/zone01' - - zoneId: zone02 - numberOfAccessPoints: '12' - numberOfUnserviceableAccessPoints: '0' - numberOfUsers: '36' - resourceURL: 'http://example.com/exampleAPI/location/v1/zones/zone02' - resourceURL: 'http://example.com/exampleAPI/location/v1/zones' - '/zones/{zoneId}': - get: - description: Used to get the status of a zone. - produces: - - application/json - parameters: - - $ref: '#/parameters/Path.ZoneId' - responses: - '200': - description: Successful response to a query regarding the status of a zone - schema: - properties: - zoneInfo: - $ref: '#/definitions/ZoneInfo' - examples: - application/json: - zoneInfo: - zoneId: zone01 - numberOfAccessPoints: '3' - numberOfUnserviceableAccessPoints: '1' - numberOfUsers: '10' - resourceURL: 'http://example.com/exampleAPI/location/v1/zones/zone01' - '/zones/{zoneId}/accessPoints': - get: - description: Access point status can be retrieved for sets of access points matching attribute in the request. - produces: - - application/json - parameters: - - $ref: '#/parameters/Path.ZoneId' - - $ref: '#/parameters/Query.InterestRealm' - responses: - '200': - description: Successful response to a query a named set of access point status request - schema: - properties: - accessPointList: - $ref: '#/definitions/AccessPointList' - examples: - application/json: - accessPointList: - zoneId: zone01 - accessPoint: - - accessPointId: '001010000000000000000000000000001' - locationInfo: - latitude: '90.123' - longitude: '80.123' - altitude: '10.0' - accuracy: '0' - connectionType: Macro - operationStatus: Serviceable - numberOfUsers: '5' - interestRealm: LA - resourceURL: 'http://example.com/exampleAPI/location/v1/zones/zone01/accessPoints/ap001' - - accessPointId: '001010000000000000000000000000010' - locationInfo: - latitude: '91.123' - longitude: '81.123' - altitude: '12.0' - accuracy: '1' - connectionType: Macro - operationStatus: Unserviceable - numberOfUsers: '0' - interestRealm: DC - resourceURL: 'http://example.com/exampleAPI/location/v1/zones/zone01/accessPoints/ap002' - - accessPointId: '001010000000000000000000000000011' - locationInfo: - latitude: '93.123' - longitude: '83.123' - altitude: '16.0' - accuracy: '3' - connectionType: Macro - operationStatus: Serviceable - numberOfUsers: '5' - interestRealm: NJ - resourceURL: 'http://example.com/exampleAPI/location/v1/zones/zone01/accessPoints/ap003' - resourceURL: 'http://example.com/exampleAPI/location/v1/zones/zone01/accessPoints' - '/zones/{zoneId}/accessPoints/{accessPointId}': - get: - description: Access point status can be retrieved for sets of access points matching attribute in the request. - produces: - - application/json - parameters: - - $ref: '#/parameters/Path.ZoneId' - - $ref: '#/parameters/Path.AccessPointId' - responses: - '200': - description: Successful response to a query a named set of access point status request - schema: - properties: - accessPointInfo: - $ref: '#/definitions/AccessPointInfo' - examples: - application/json: - accessPointInfo: - accessPointId: '001010000000000000000000000000001' - locationInfo: - latitude: '90.123' - longitude: '80.123' - altitude: '10.0' - accuracy: '0' - connectionType: Macro - operationStatus: Serviceable - numberOfUsers: '5' - interestRealm: LA - resourceURL: 'http://example.com/exampleAPI/location/v1/zones/zone001/accessPoints/ap001' - /users: - get: - description: Users currently using a zone may be retrieved for sets of access points matching attribute in the request - produces: - - application/json - parameters: - - $ref: '#/parameters/Query.ZoneId' - - $ref: '#/parameters/Query.AccessPointId' - responses: - '200': - description: Successful response to a query users within a zone request - schema: - properties: - userList: - $ref: '#/definitions/UserList' - examples: - application/json: - userList: - user: - - address: 'acr:192.0.2.1' - accessPointId: '001010000000000000000000000000001' - zoneId: zone01 - resourceURL: 'http://example.com/exampleAPI/location/v1/users/acr%3A192.0.2.1' - - address: 'acr:192.0.2.2' - accessPointId: '001010000000000000000000000000001' - zoneId: zone01 - resourceURL: 'http://example.com/exampleAPI/location/v1/users/acr%3A192.0.2.2' - - address: 'acr:192.0.2.3' - accessPointId: '001010000000000000000000000000010' - zoneId: zone01 - resourceURL: 'http://example.com/exampleAPI/location/v1/users/acr%3A192.0.2.3' - - address: 'acr:192.0.2.4' - accessPointId: '001010000000000000000000000000001' - zoneId: zone02 - resourceURL: 'http://example.com/exampleAPI/location/v1/users/acr%3A192.0.2.4' - - address: 'acr:192.0.2.5' - accessPointId: '001010000000000000000000000000010' - zoneId: zone02 - resourceURL: 'http://example.com/exampleAPI/location/v1/users/acr%3A192.0.2.5' - resourceURL: 'http://example.com/exampleAPI/location/v1/users' - '/users/{userId}': - get: - description: Users currently using a zone may be retrieved for sets of access points matching attribute in the request - produces: - - application/json - parameters: - - $ref: '#/parameters/Path.UserId' - responses: - '200': - description: Successful response to a query users within a zone request - schema: - properties: - userInfo: - $ref: '#/definitions/UserInfo' - examples: - application/json: - userInfo: - address: 'acr:192.0.2.1' - accessPointId: '001010000000000000000000000000001' - zoneId: zone01 - resourceURL: 'http://example.com/exampleAPI/location/v1/users/acr%3A192.0.2.1' - locationInfo: - latitude: '90.123' - longitude: '80.123' - altitude: '10.0' - accuracy: '0' - contextLocationInfo: GroundFloor - /subscriptions/zonalTraffic: - get: - description: This operation is used for retrieving all active subscriptions to zonal traffic change notifications. - produces: - - application/json - responses: - '200': - description: Response to retrieve zonal traffic subscriptions - schema: - type: object - properties: - notificationSubscriptionList: - type: object - properties: - zonalTrafficSubscription: - type: array - items: - $ref: '#/definitions/ZonalTrafficSubscription' - resourceURL: - $ref: '#/definitions/ResourceURL' - examples: - application/json: - notificationSubscriptionList: - zonalTrafficSubscription: - - clientCorrelator: '0123' - resourceURL: 'http://example.com/exampleAPI/location/v1/subscriptions/zonalTraffic/subscription123' - callbackReference: - notifyURL: 'http://clientApp.example.com/location_notifications/123456' - zoneId: zone01 - interestRealm: LA - userEventCriteria: Transferring - - clientCorrelator: '0124' - resourceURL: 'http://example.com/exampleAPI/location/v1/subscriptions/zonalTraffic/subscription124' - callbackReference: - notifyURL: 'http://clientApp.example.com/location_notifications/123457' - zoneId: zone02 - interestRealm: LA - userEventCriteria: Transferring - resourceURL: 'http://example.com/exampleAPI/location/v1/zonalTraffic' - post: - description: This operation is used for creating a new subscription to zonal traffic change notification. - produces: - - application/json - parameters: - - $ref: '#/parameters/Body.ZonalTrafficSubscription' - responses: - '201': - description: Response to create new zonal traffic subscription - schema: - properties: - zonalTrafficSubscription: - $ref: '#/definitions/ZonalTrafficSubscription' - examples: - application/json: - zonalTrafficSubscription: - clientCorrelator: '0123' - resourceURL: 'http://example.com/exampleAPI/location/v1/subscriptions/zonalTraffic/subscription123' - callbackReference: - notifyURL: 'http://clientApp.example.com/location_notifications/123456' - zoneId: zone01 - interestRealm: LA - userEventCriteria: Transferring - '/subscriptions/zonalTraffic/{subscriptionId}': - get: - description: This operation is used for updating an individual subscription to zonal traffic change notification. - produces: - - application/json - parameters: - - $ref: '#/parameters/Path.SubscriptionId' - responses: - '200': - description: Response to retrieve individual zonal traffic subscription - schema: - properties: - zonalTrafficSubscription: - $ref: '#/definitions/ZonalTrafficSubscription' - examples: - application/json: - zonalTrafficSubscription: - clientCorrelator: '0123' - resourceURL: 'http://example.com/exampleAPI/location/v1/subscriptions/zonalTraffic/subscription123' - callbackReference: - notifyURL: 'http://clientApp.example.com/location_notifications/123456' - zoneId: zone01 - interestRealm: LA - userEventCriteria: Transferring - put: - description: This operation is used for updating an individual subscription to zonal traffic change notification. - produces: - - application/json - parameters: - - $ref: '#/parameters/Path.SubscriptionId' - - $ref: '#/parameters/Body.ZonalTrafficSubscription' - responses: - '200': - description: Response to update individual zonal traffic subscription - schema: - properties: - zonalTrafficSubscription: - $ref: '#/definitions/ZonalTrafficSubscription' - examples: - application/json: - zonalTrafficSubscription: - clientCorrelator: '0123' - resourceURL: 'http://example.com/exampleAPI/location/v1/subscriptions/zonalTraffic/subscription123' - callbackReference: - notifyURL: 'http://clientApp.example.com/location_notifications/123456' - zoneId: zone01 - interestRealm: LA - userEventCriteria: Transferring - delete: - description: This operation is used for cancelling a subscription and stopping corresponding notifications. - produces: - - application/json - parameters: - - $ref: '#/parameters/Path.SubscriptionId' - responses: - '204': - description: No content - /subscriptions/userTracking: - get: - description: This operation is used for retrieving all active subscriptions to user tracking change notifications. - produces: - - application/json - responses: - '200': - description: Response to retrieve user tracking subscriptions - schema: - type: object - properties: - notificationSubscriptionList: - type: object - properties: - userTrackingSubscription: - type: array - items: - $ref: '#/definitions/UserTrackingSubscription' - resourceURL: - $ref: '#/definitions/ResourceURL' - examples: - application/json: - notificationSubscriptionList: - userTrackingSubscription: - - clientCorrelator: '0123' - resourceURL: 'http://example.com/exampleAPI/location/v1/subscriptions/userTracking/subscription123' - callbackReference: - notifyURL: 'http://clientApp.example.com/location_notifications/123456' - address: 'acr:192.0.2.1' - userEventCriteria: Transferring - - clientCorrelator: '0124' - resourceURL: 'http://example.com/exampleAPI/location/v1/subscriptions/userTracking/subscription124' - callbackReference: - notifyURL: 'http://clientApp.example.com/location_notifications/123456' - address: 'acr:192.0.2.2' - userEventCriteria: Transferring - resourceURL: 'http://example.com/exampleAPI/location/v1/subscriptions/userTracking' - post: - description: This operation is used for creating a new subscription to user tracking change notification - produces: - - application/json - parameters: - - $ref: '#/parameters/Body.UserTrackingSubscription' - responses: - '201': - description: Response to create new user tracking subscription - schema: - properties: - userTrackingSubscription: - $ref: '#/definitions/UserTrackingSubscription' - examples: - application/json: - userTrackingSubscription: - clientCorrelator: '0123' - resourceURL: 'http://example.com/exampleAPI/location/v1/subscriptions/userTracking/subscription123' - callbackReference: - notifyURL: 'http://clientApp.example.com/location_notifications/123456' - address: 'acr:192.0.2.1' - userEventCriteria: Transferring - '/subscriptions/userTracking/{subscriptionId}': - get: - description: This operation is used for retrieving an individual subscription to user tracking change notification. - produces: - - application/json - parameters: - - $ref: '#/parameters/Path.SubscriptionId' - responses: - '200': - description: Response to retrieve individual user tracking subscription - schema: - properties: - userTrackingSubscription: - $ref: '#/definitions/UserTrackingSubscription' - examples: - application/json: - userTrackingSubscription: - clientCorrelator: '0123' - resourceURL: 'http://example.com/exampleAPI/location/v1/subscriptions/userTracking/subscription123' - callbackReference: - notifyURL: 'http://clientApp.example.com/location_notifications/123456' - address: 'acr:192.0.2.1' - userEventCriteria: Transferring - put: - description: This operation is used for updating an individual subscription to user tracking change notification. - produces: - - application/json - parameters: - - $ref: '#/parameters/Path.SubscriptionId' - - $ref: '#/parameters/Body.UserTrackingSubscription' - responses: - '200': - description: Response to update individual user tracking subscription - schema: - properties: - userTrackingSubscription: - $ref: '#/definitions/UserTrackingSubscription' - examples: - application/json: - userTrackingSubscription: - clientCorrelator: '0123' - resourceURL: 'http://example.com/exampleAPI/location/v1/subscriptions/userTracking/subscription123' - callbackReference: - notifyURL: 'http://clientApp.example.com/location_notifications/123456' - address: 'acr:192.0.2.1' - userEventCriteria: Transferring - delete: - description: This operation is used for retrieving an individual subscription to user tracking change notification. - produces: - - application/json - parameters: - - $ref: '#/parameters/Path.SubscriptionId' - responses: - '204': - description: No Content - /subscriptions/zonalStatus: - get: - description: This operation is used for creating a new subscription to zone status change notification. - produces: - - application/json - responses: - '200': - description: Response to retrieve zone status subscriptions - schema: - type: object - properties: - notificationSubscriptionList: - type: object - properties: - zonalTrafficSubscription: - type: array - items: - $ref: '#/definitions/ZoneStatusSubscription' - resourceURL: - $ref: '#/definitions/ResourceURL' - examples: - application/json: - notificationSubscriptionList: - zoneStatusSubscription: - - clientCorrelator: '0123' - resourceURL: 'http://example.com/exampleAPI/location/v1/subscriptions/zoneStatus/subscription123' - callbackReference: - notifyURL: 'http://clientApp.example.com/location_notifications/123456' - zoneId: zone01 - numberOfUsersZoneThreshold: '500' - operationStatus: Serviceable - - clientCorrelator: '0124' - resourceURL: 'http://example.com/exampleAPI/location/v1/subscriptions/zoneStatus/subscription124' - callbackReference: - notifyURL: 'http://clientApp.example.com/location_notifications/123457' - zoneId: zone02 - numberOfUsersAPThreshold: '50' - operationStatus: Serviceable - resourceURL: 'http://example.com/exampleAPI/location/v1/subscriptions/zoneStatus' - post: - description: This operation is used for creating a new subscription to zone status change notification. - produces: - - application/json - parameters: - - $ref: '#/parameters/Body.ZoneStatusSubscription' - responses: - '201': - description: Response to create new zone status subscription - schema: - properties: - zonalTrafficSubscription: - $ref: '#/definitions/ZoneStatusSubscription' - examples: - application/json: - zoneStatusSubscription: - clientCorrelator: '0123' - resourceURL: 'http://example.com/exampleAPI/location/v1/subscriptions/zoneStatus/subscription123' - callbackReference: - notifyURL: 'http://clientApp.example.com/location_notifications/123456' - zoneId: zone01 - numberOfUsersZoneThreshold: '500' - operationStatus: Serviceable - '/subscriptions/zoneStatus/{subscriptionId}': - get: - description: This operation is used for retrieving an individual subscription to zone status change notification. - produces: - - application/json - parameters: - - $ref: '#/parameters/Path.SubscriptionId' - responses: - '200': - description: Response to retrieve individual zone status subscription - schema: - properties: - zoneStatusSubscription: - $ref: '#/definitions/ZoneStatusSubscription' - examples: - application/json: - zoneStatusSubscription: - clientCorrelator: '0123' - resourceURL: 'http://example.com/exampleAPI/location/v1/subscriptions/zoneStatus/subscription123' - callbackReference: - notifyURL: 'http://clientApp.example.com/location_notifications/123456' - zoneId: zone01 - numberOfUsersZoneThreshold: '500' - operationStatus: Serviceable - put: - description: This operation is used for updating an individual subscription to zone status change notification. - produces: - - application/json - parameters: - - $ref: '#/parameters/Path.SubscriptionId' - - $ref: '#/parameters/Body.ZoneStatusSubscription' - responses: - '200': - description: Response to update individual zone status subscription - schema: - properties: - zoneStatusSubscription: - $ref: '#/definitions/ZoneStatusSubscription' - examples: - application/json: - zoneStatusSubscription: - clientCorrelator: '0123' - resourceURL: 'http://example.com/exampleAPI/location/v1/subscriptions/zoneStatus/subscription123' - callbackReference: - notifyURL: 'http://clientApp.example.com/location_notifications/123456' - zoneId: zone01 - numberOfUsersZoneThreshold: '500' - operationStatus: Serviceable - delete: - description: This operation is used for cancelling a subscription and stopping corresponding notifications. - produces: - - application/json - parameters: - - $ref: '#/parameters/Path.SubscriptionId' - responses: - '204': - description: No content -definitions: - AccessPointId: - description: 'Identifier of access point, (reference ETSI TS 129 171). Where the E-CGI is made up of the PLMN and Cell Identity (28 bit string). Then the PLMN is made up of the 3 digit MCC & 2 or 3 digit MNC. The Cell Portion is an optional element' - type: string - example: '001010000000000000000000000000001' - AccessPointInfo: - description: A type containing access point information. - type: object - required: - - accessPointId - - connectionType - - operationStatus - - numberOfUsers - - resourceURL - properties: - accessPointId: - $ref: '#/definitions/AccessPointId' - locationInfo: - $ref: '#/definitions/LocationInfo' - connectionType: - $ref: '#/definitions/ConnectionType' - operationStatus: - $ref: '#/definitions/OperationStatus' - numberOfUsers: - $ref: '#/definitions/NumberOfUsers' - timezone: - $ref: '#/definitions/Timezone' - interestRealm: - $ref: '#/definitions/InterestRealm' - resourceURL: - $ref: '#/definitions/ResourceURL' - AccessPointList: - description: A type containing list of access points. - type: object - required: - - zoneId - - resourceURL - properties: - zoneId: - $ref: '#/definitions/ZoneId' - accessPoint: - description: Collection of the access point information list. - type: array - items: - $ref: '#/definitions/AccessPointInfo' - resourceURL: - $ref: '#/definitions/ResourceURL' - Address: - description: 'Address of user (e.g. "sip" URI, "tel" URI, "acr" URI).' - type: string - format: uri - example: 'acr:192.0.2.1' - AncillaryInfo: - description: Reserved for future use. - type: string - CallbackData: - description: 'CallBackData if passed by the application during the associated ZonalTrafficSubscription and UserTrackingSubscription operation. See [REST_NetAPI_Common].' - type: string - example: '1234' - CallbackReference: - description: Notification callback definition. - type: object - required: - - notifyURL - properties: - notifyURL: - $ref: '#/definitions/NotifyURL' - ClientCorrelator: - description: 'Uniquely identifies this create subscription request. If there is a communication failure during the request, using the same clientCorrelator when retrying the request allows the operator to avoid creating a duplicate subscription.' - type: string - example: '0123' - ConnectionType: - description: The connection type for the access point - type: string - enum: - - LTE-femto - - Smallcell - - LTE-smallcell - - Wifi - - Pico - - Micro - - Macro - - Wimax - - Unknown - example: Macro - ContextLocationInfo: - description: 'Contextual information of a user location (e.g., aisle, floor, room number, etc.)' - type: string - example: GroundFloor - CurrentAccessPointId: - description: Zone ID - type: string - example: zone01 - Duration: - description: 'Period (in seconds) of time notifications are provided for. If set to "0" (zero), a default duration time, which is specified by the service policy, will be used. If the parameter is omitted, the notifications will continue until the maximum duration time, which is specified by the service policy, unless the notifications are stopped by deletion of subscription for notifications. This element MAY be given by the client during resource creation in order to signal the desired lifetime of the subscription. The server MUST return in this element the period of time for which the subscription will still be valid.' - type: string - example: '0' - InterestRealm: - description: 'Interest realm of access point (e.g. geographical area, a type of industry etc.).' - type: string - example: LA - Link: - description: Link to other resources - type: object - required: - - rel - - href - properties: - rel: - description: Describes the relationship between the URI and the resource. - type: object - format: string - href: - description: URI - type: object - format: anyURI - LocationInfo: - description: 'A type containing location information with latitude, longitude and altitude, in addition the accuracy of the information are provided.' - type: object - required: - - latitude - - longitude - - accuracy - properties: - latitude: - type: number - format: float - example: '80.123' - longitude: - type: number - format: float - example: '70.123' - altitude: - type: number - format: float - example: '10.0' - accuracy: - type: integer - format: int32 - example: '10' - NotifyURL: - description: The URL of your own listener application. - type: string - format: url - example: 'http://clientApp.example.com/location_notifications/123456' - NumberOfAccessPoints: - description: The number of access points within the zone - type: integer - format: uint32 - example: '10' - NumberOfUnserviceableAccessPoints: - description: Number of inoperable access points within the zone. - type: integer - format: uint32 - example: '9' - NumberOfUsers: - description: The number of users currently on the access point. - type: integer - format: uint32 - example: '7' - NumberOfUsersAPThreshold: - description: Threshold number of users in an access point which if crossed shall cause a notification. - type: integer - format: uint32 - example: '20' - NumberOfUsersInAP: - description: This element shall be present when ZoneStatusSubscription includes numberOfUsersAPThreshold element and the number of users in an access point exceeds the threshold defined in the subscription. - type: integer - format: uint32 - example: '12' - NumberOfUsersInZone: - description: This element shall be present when ZoneStatusSubscription includes numberOfUsersZoneThreshold element and the number of users in a zone exceeds the threshold defined in this subscription. - type: integer - format: uint32 - example: '20' - NumberOfUsersZoneThreshold: - description: Threshold number of users in a zone which if crossed shall cause a notification. - type: integer - format: uint32 - example: '40' - OperationStatus: - description: The operation status of the access point - type: string - enum: - - Serviceable - - Unserviceable - - Unknown - example: Serviceable - PreviousAccessPointId: - description: Zone ID - type: string - example: zone02 - ResourceURL: - description: Self referring URL. - type: string - format: uri - example: 'http://example.com/exampleAPI/location/v1/subscriptions/userTracking/subscription123' - Timestamp: - description: Indicates the time of day for zonal presence notification. - type: string - format: date-time - example: '2017-01-01T02:51:43Z' - Timezone: - description: Time zone of access point - type: string - format: date-time - example: '2017-01-01T02:51:43Z' - UserEventCriteria: - description: 'List of user event values to generate notifications for (these apply to address specified). If this element is missing, a notification is requested to be generated for any change in user event.' - type: array - items: - $ref: '#/definitions/UserEventType' - UserEventType: - description: User event - type: string - enum: - - Entering - - Leaving - - Transferring - example: Entering - UserInfo: - description: A type containing user information. - type: object - required: - - address - - accessPointId - - zoneId - - resourceURL - properties: - address: - $ref: '#/definitions/Address' - accessPointId: - $ref: '#/definitions/AccessPointId' - zoneId: - $ref: '#/definitions/ZoneId' - resourceURL: - $ref: '#/definitions/ResourceURL' - locationInfo: - $ref: '#/definitions/LocationInfo' - contextLocationInfo: - $ref: '#/definitions/ContextLocationInfo' - ancillaryInfo: - $ref: '#/definitions/AncillaryInfo' - UserList: - description: A type containing list of users. - type: object - required: - - resourceURL - properties: - user: - description: Collection of the zone information list. - type: array - items: - $ref: '#/definitions/UserInfo' - resourceURL: - $ref: '#/definitions/ResourceURL' - UserTrackingSubscription: - description: A type containing user tracking subscription. - type: object - required: - - callbackReference - - address - properties: - clientCorrelator: - $ref: '#/definitions/ClientCorrelator' - callbackReference: - $ref: '#/definitions/CallbackReference' - address: - $ref: '#/definitions/Address' - userEventCriteria: - $ref: '#/definitions/UserEventCriteria' - resourceURL: - $ref: '#/definitions/ResourceURL' - ZonalPresenceNotification: - description: A type containing zonal presence notification - type: object - required: - - zoneId - - address - - userEventType - - currentAccessPointId - - timestamp - properties: - callbackData: - $ref: '#/definitions/CallbackData' - zoneId: - $ref: '#/definitions/ZoneId' - address: - $ref: '#/definitions/Address' - interestRealm: - $ref: '#/definitions/InterestRealm' - userEventType: - $ref: '#/definitions/UserEventType' - currentAccessPointId: - $ref: '#/definitions/CurrentAccessPointId' - previousAccessPointId: - $ref: '#/definitions/PreviousAccessPointId' - timestamp: - $ref: '#/definitions/Timestamp' - link: - description: Link to other resources that are in relationship with this notification. The server SHOULD include a link to the related subscription. No other links are required or suggested by this specification. - type: array - items: - $ref: '#/definitions/Link' - example: 'rel="ZonalTrafficSubscription" href="http://example.com/exampleAPI/location/v1/subscriptions/zonalTraffic/sub123"/' - ZonalTrafficSubscription: - description: A type containing zonal traffic subscription - type: object - required: - - callbackReference - - zoneId - properties: - clientCorrelator: - $ref: '#/definitions/ClientCorrelator' - callbackReference: - $ref: '#/definitions/CallbackReference' - zoneId: - $ref: '#/definitions/ZoneId' - interestRealm: - description: 'Interest realms of access points within a zone (e.g. geographical area, a type of industry etc.).' - type: array - items: - $ref: '#/definitions/InterestRealm' - userEventCriteria: - description: 'List of user event values to generate notifications for (these apply to zone identifier or all interest realms within zone identifier specified). If this element is missing, a notification is requested to be generated for any change in user event.' - type: array - items: - $ref: '#/definitions/UserEventType' - duration: - $ref: '#/definitions/Duration' - resourceURL: - $ref: '#/definitions/ResourceURL' - ZoneId: - description: Identifier of zone - type: string - example: zone01 - ZoneInfo: - description: A type containing zone information. - type: object - required: - - zoneId - - numberOfAccessPoints - - numberOfUnservicableAccessPoints - - numberOfUsers - - resourceURL - properties: - zoneId: - $ref: '#/definitions/ZoneId' - numberOfAccessPoints: - $ref: '#/definitions/NumberOfAccessPoints' - numberOfUnservicableAccessPoints: - $ref: '#/definitions/NumberOfUnserviceableAccessPoints' - numberOfUsers: - $ref: '#/definitions/NumberOfUsers' - resourceURL: - $ref: '#/definitions/ResourceURL' - ZoneList: - description: Collection of the zone information list. - type: object - required: - - resourceURL - properties: - zone: - description: Collection of the zone information list. - type: array - items: - $ref: '#/definitions/ZoneInfo' - resourceURL: - $ref: '#/definitions/ResourceURL' - ZoneStatusNotification: - description: A type containing zone status notification. - type: object - required: - - zoneId - - timestamp - properties: - callbackData: - $ref: '#/definitions/CallbackData' - zoneId: - $ref: '#/definitions/ZoneId' - accessPointId: - $ref: '#/definitions/AccessPointId' - numberOfUsersInZone: - $ref: '#/definitions/NumberOfUsersInZone' - numberOfUsersInAP: - $ref: '#/definitions/NumberOfUsersInAP' - operationStatus: - $ref: '#/definitions/OperationStatus' - timestamp: - $ref: '#/definitions/Timestamp' - link: - description: Link to other resources that are in relationship with this notification. The server SHOULD include a link to the related subscription. No other links are required or suggested by this specification. - type: array - items: - $ref: '#/definitions/Link' - example: 'rel="ZonalStatusSubscription" href="http://example.com/exampleAPI/location/v1/subscriptions/zonalStatus/sub123"' - ZoneStatusSubscription: - description: A type containing zone status subscription. - type: object - required: - - callbackReference - - zoneId - properties: - clientCorrelator: - $ref: '#/definitions/ClientCorrelator' - resourceURL: - $ref: '#/definitions/ResourceURL' - callbackReference: - $ref: '#/definitions/CallbackReference' - zoneId: - $ref: '#/definitions/ZoneId' - numberOfUsersZoneThreshold: - $ref: '#/definitions/NumberOfUsersZoneThreshold' - numberOfUsersAPThreshold: - $ref: '#/definitions/NumberOfUsersAPThreshold' - operationStatus: - description: List of operation status values to generate notifications for (these apply to all access points within a zone). - type: array - items: - $ref: '#/definitions/OperationStatus' +swagger: '2.0' +info: + title: Location API + version: 1.1.1 + description: The ETSI MEC ISG MEC012 Location API described using OpenAPI. The API is based on the Open Mobile Alliance's specification RESTful Network API for Zonal Presence + license: + name: ETSI Forge copyright notice + url: 'https://forge.etsi.org/etsi-forge-copyright-notice.txt' +externalDocs: + description: ETSI MEC013 V1.1.1 Location Service API + url: 'http://www.etsi.org/deliver/etsi_gs/MEC/001_099/013/01.01.01_60/gs_mec013v010101p.pdf' +host: '127.0.0.1:8081' +basePath: /exampleAPI/location/v1 +schemes: + - http + - https +consumes: + - application/json +produces: + - application/json +tags: + - name: zones + - name: users + - name: subscriptions +parameters: + Body.UserTrackingSubscription: + name: userTrackingSubscription + in: body + description: User Tracking Subscription + required: true + schema: + $ref: '#/definitions/UserTrackingSubscription' + Body.ZonalTrafficSubscription: + name: zonalTrafficSubscription + in: body + description: Zonal Traffic Subscription + required: true + schema: + $ref: '#/definitions/ZonalTrafficSubscription' + Body.ZoneStatusSubscription: + name: zoneStatusSubscription + in: body + description: Zone Status Subscription + required: true + schema: + $ref: '#/definitions/ZoneStatusSubscription' + Path.AccessPointId: + name: accessPointId + in: path + description: Access Point ID + required: true + type: string + Path.SubscriptionId: + name: subscriptionId + in: path + description: Subscription ID + required: true + type: string + Path.UserId: + name: userId + in: path + description: User ID + required: true + type: string + Path.ZoneId: + name: zoneId + in: path + description: Zone ID + required: true + type: string + Query.AccessPointId: + name: accessPointId + in: query + description: 'Identifier of access point, reference "definitions" for string format' + required: false + type: string + Query.InterestRealm: + name: interestRealm + in: query + description: 'Interest realm of access point (e.g. geographical area, a type of industry etc.).' + required: false + type: string + Query.ZoneId: + name: zoneId + in: query + description: Zone ID + required: true + type: string +paths: + /zones: + get: + tags: + - zones + operationId: zonesGet + description: Used to get a list of identifiers for zones authorized for use by the application. + produces: + - application/json + responses: + '200': + description: Successful response to a query regarding the status of a zone + schema: + properties: + zoneList: + $ref: '#/definitions/ZoneList' + examples: + application/json: + zoneList: + zone: + - zoneId: zone01 + numberOfAccessPoints: '3' + numberOfUnserviceableAccessPoints: '1' + numberOfUsers: '10' + resourceURL: 'http://example.com/exampleAPI/location/v1/zones/zone01' + - zoneId: zone02 + numberOfAccessPoints: '12' + numberOfUnserviceableAccessPoints: '0' + numberOfUsers: '36' + resourceURL: 'http://example.com/exampleAPI/location/v1/zones/zone02' + resourceURL: 'http://example.com/exampleAPI/location/v1/zones' + '/zones/{zoneId}': + parameters: + - $ref: '#/parameters/Path.ZoneId' + get: + tags: + - zones + operationId: zonesGetById + description: Used to get the status of a zone. + produces: + - application/json + responses: + '200': + description: Successful response to a query regarding the status of a zone + schema: + properties: + zoneInfo: + $ref: '#/definitions/ZoneInfo' + examples: + application/json: + zoneInfo: + zoneId: zone01 + numberOfAccessPoints: '3' + numberOfUnserviceableAccessPoints: '1' + numberOfUsers: '10' + resourceURL: 'http://example.com/exampleAPI/location/v1/zones/zone01' + '/zones/{zoneId}/accessPoints': + parameters: + - $ref: '#/parameters/Path.ZoneId' + get: + tags: + - zones + operationId: zonesByIdGetAps + description: Access point status can be retrieved for sets of access points matching attribute in the request. + produces: + - application/json + parameters: + - $ref: '#/parameters/Query.InterestRealm' + responses: + '200': + description: Successful response to a query a named set of access point status request + schema: + properties: + accessPointList: + $ref: '#/definitions/AccessPointList' + examples: + application/json: + accessPointList: + zoneId: zone01 + accessPoint: + - accessPointId: '001010000000000000000000000000001' + locationInfo: + latitude: '90.123' + longitude: '80.123' + altitude: '10.0' + accuracy: '0' + connectionType: Macro + operationStatus: Serviceable + numberOfUsers: '5' + interestRealm: LA + resourceURL: 'http://example.com/exampleAPI/location/v1/zones/zone01/accessPoints/ap001' + - accessPointId: '001010000000000000000000000000010' + locationInfo: + latitude: '91.123' + longitude: '81.123' + altitude: '12.0' + accuracy: '1' + connectionType: Macro + operationStatus: Unserviceable + numberOfUsers: '0' + interestRealm: DC + resourceURL: 'http://example.com/exampleAPI/location/v1/zones/zone01/accessPoints/ap002' + - accessPointId: '001010000000000000000000000000011' + locationInfo: + latitude: '93.123' + longitude: '83.123' + altitude: '16.0' + accuracy: '3' + connectionType: Macro + operationStatus: Serviceable + numberOfUsers: '5' + interestRealm: NJ + resourceURL: 'http://example.com/exampleAPI/location/v1/zones/zone01/accessPoints/ap003' + resourceURL: 'http://example.com/exampleAPI/location/v1/zones/zone01/accessPoints' + '/zones/{zoneId}/accessPoints/{accessPointId}': + parameters: + - $ref: '#/parameters/Path.ZoneId' + - $ref: '#/parameters/Path.AccessPointId' + get: + tags: + - zones + operationId: zonesByIdGetApsById + description: Access point status can be retrieved for sets of access points matching attribute in the request. + produces: + - application/json + responses: + '200': + description: Successful response to a query a named set of access point status request + schema: + properties: + accessPointInfo: + $ref: '#/definitions/AccessPointInfo' + examples: + application/json: + accessPointInfo: + accessPointId: '001010000000000000000000000000001' + locationInfo: + latitude: '90.123' + longitude: '80.123' + altitude: '10.0' + accuracy: '0' + connectionType: Macro + operationStatus: Serviceable + numberOfUsers: '5' + interestRealm: LA + resourceURL: 'http://example.com/exampleAPI/location/v1/zones/zone001/accessPoints/ap001' + /users: + get: + tags: + - users + operationId: usersGet + description: Users currently using a zone may be retrieved for sets of access points matching attribute in the request + produces: + - application/json + parameters: + - $ref: '#/parameters/Query.ZoneId' + - $ref: '#/parameters/Query.AccessPointId' + responses: + '200': + description: Successful response to a query users within a zone request + schema: + properties: + userList: + $ref: '#/definitions/UserList' + examples: + application/json: + userList: + user: + - address: 'acr:192.0.2.1' + accessPointId: '001010000000000000000000000000001' + zoneId: zone01 + resourceURL: 'http://example.com/exampleAPI/location/v1/users/acr%3A192.0.2.1' + - address: 'acr:192.0.2.2' + accessPointId: '001010000000000000000000000000001' + zoneId: zone01 + resourceURL: 'http://example.com/exampleAPI/location/v1/users/acr%3A192.0.2.2' + - address: 'acr:192.0.2.3' + accessPointId: '001010000000000000000000000000010' + zoneId: zone01 + resourceURL: 'http://example.com/exampleAPI/location/v1/users/acr%3A192.0.2.3' + - address: 'acr:192.0.2.4' + accessPointId: '001010000000000000000000000000001' + zoneId: zone02 + resourceURL: 'http://example.com/exampleAPI/location/v1/users/acr%3A192.0.2.4' + - address: 'acr:192.0.2.5' + accessPointId: '001010000000000000000000000000010' + zoneId: zone02 + resourceURL: 'http://example.com/exampleAPI/location/v1/users/acr%3A192.0.2.5' + resourceURL: 'http://example.com/exampleAPI/location/v1/users' + '/users/{userId}': + parameters: + - $ref: '#/parameters/Path.UserId' + get: + tags: + - users + operationId: usersGetById + description: Users currently using a zone may be retrieved for sets of access points matching attribute in the request + produces: + - application/json + responses: + '200': + description: Successful response to a query users within a zone request + schema: + properties: + userInfo: + $ref: '#/definitions/UserInfo' + examples: + application/json: + userInfo: + address: 'acr:192.0.2.1' + accessPointId: '001010000000000000000000000000001' + zoneId: zone01 + resourceURL: 'http://example.com/exampleAPI/location/v1/users/acr%3A192.0.2.1' + locationInfo: + latitude: '90.123' + longitude: '80.123' + altitude: '10.0' + accuracy: '0' + contextLocationInfo: GroundFloor + /subscriptions/zonalTraffic: + get: + tags: + - subscriptions + operationId: zonalTrafficSubGet + description: This operation is used for retrieving all active subscriptions to zonal traffic change notifications. + produces: + - application/json + responses: + '200': + description: Response to retrieve zonal traffic subscriptions + schema: + type: object + properties: + notificationSubscriptionList: + type: object + properties: + zonalTrafficSubscription: + type: array + items: + $ref: '#/definitions/ZonalTrafficSubscription' + resourceURL: + $ref: '#/definitions/ResourceURL' + examples: + application/json: + notificationSubscriptionList: + zonalTrafficSubscription: + - clientCorrelator: '0123' + resourceURL: 'http://example.com/exampleAPI/location/v1/subscriptions/zonalTraffic/subscription123' + callbackReference: + notifyURL: 'http://clientApp.example.com/location_notifications/123456' + zoneId: zone01 + interestRealm: LA + userEventCriteria: Transferring + - clientCorrelator: '0124' + resourceURL: 'http://example.com/exampleAPI/location/v1/subscriptions/zonalTraffic/subscription124' + callbackReference: + notifyURL: 'http://clientApp.example.com/location_notifications/123457' + zoneId: zone02 + interestRealm: LA + userEventCriteria: Transferring + resourceURL: 'http://example.com/exampleAPI/location/v1/zonalTraffic' + post: + tags: + - subscriptions + operationId: zonalTrafficSubPost + description: This operation is used for creating a new subscription to zonal traffic change notification. + produces: + - application/json + parameters: + - $ref: '#/parameters/Body.ZonalTrafficSubscription' + responses: + '201': + description: Response to create new zonal traffic subscription + schema: + properties: + zonalTrafficSubscription: + $ref: '#/definitions/ZonalTrafficSubscription' + examples: + application/json: + zonalTrafficSubscription: + clientCorrelator: '0123' + resourceURL: 'http://example.com/exampleAPI/location/v1/subscriptions/zonalTraffic/subscription123' + callbackReference: + notifyURL: 'http://clientApp.example.com/location_notifications/123456' + zoneId: zone01 + interestRealm: LA + userEventCriteria: Transferring + '/subscriptions/zonalTraffic/{subscriptionId}': + parameters: + - $ref: '#/parameters/Path.SubscriptionId' + get: + tags: + - subscriptions + operationId: zonalTrafficSubGetById + description: This operation is used for updating an individual subscription to zonal traffic change notification. + produces: + - application/json + responses: + '200': + description: Response to retrieve individual zonal traffic subscription + schema: + properties: + zonalTrafficSubscription: + $ref: '#/definitions/ZonalTrafficSubscription' + examples: + application/json: + zonalTrafficSubscription: + clientCorrelator: '0123' + resourceURL: 'http://example.com/exampleAPI/location/v1/subscriptions/zonalTraffic/subscription123' + callbackReference: + notifyURL: 'http://clientApp.example.com/location_notifications/123456' + zoneId: zone01 + interestRealm: LA + userEventCriteria: Transferring + put: + tags: + - subscriptions + operationId: zonalTrafficSubPutById + description: This operation is used for updating an individual subscription to zonal traffic change notification. + produces: + - application/json + parameters: + - $ref: '#/parameters/Body.ZonalTrafficSubscription' + responses: + '200': + description: Response to update individual zonal traffic subscription + schema: + properties: + zonalTrafficSubscription: + $ref: '#/definitions/ZonalTrafficSubscription' + examples: + application/json: + zonalTrafficSubscription: + clientCorrelator: '0123' + resourceURL: 'http://example.com/exampleAPI/location/v1/subscriptions/zonalTraffic/subscription123' + callbackReference: + notifyURL: 'http://clientApp.example.com/location_notifications/123456' + zoneId: zone01 + interestRealm: LA + userEventCriteria: Transferring + delete: + tags: + - subscriptions + operationId: zonalTrafficSubDelById + description: This operation is used for cancelling a subscription and stopping corresponding notifications. + produces: + - application/json + responses: + '204': + description: No content + /subscriptions/userTracking: + get: + tags: + - subscriptions + operationId: userTrackingSubGet + description: This operation is used for retrieving all active subscriptions to user tracking change notifications. + produces: + - application/json + responses: + '200': + description: Response to retrieve user tracking subscriptions + schema: + type: object + properties: + notificationSubscriptionList: + type: object + properties: + userTrackingSubscription: + type: array + items: + $ref: '#/definitions/UserTrackingSubscription' + resourceURL: + $ref: '#/definitions/ResourceURL' + examples: + application/json: + notificationSubscriptionList: + userTrackingSubscription: + - clientCorrelator: '0123' + resourceURL: 'http://example.com/exampleAPI/location/v1/subscriptions/userTracking/subscription123' + callbackReference: + notifyURL: 'http://clientApp.example.com/location_notifications/123456' + address: 'acr:192.0.2.1' + userEventCriteria: Transferring + - clientCorrelator: '0124' + resourceURL: 'http://example.com/exampleAPI/location/v1/subscriptions/userTracking/subscription124' + callbackReference: + notifyURL: 'http://clientApp.example.com/location_notifications/123456' + address: 'acr:192.0.2.2' + userEventCriteria: Transferring + resourceURL: 'http://example.com/exampleAPI/location/v1/subscriptions/userTracking' + post: + tags: + - subscriptions + operationId: userTrackingSubPost + description: This operation is used for creating a new subscription to user tracking change notification + produces: + - application/json + parameters: + - $ref: '#/parameters/Body.UserTrackingSubscription' + responses: + '201': + description: Response to create new user tracking subscription + schema: + properties: + userTrackingSubscription: + $ref: '#/definitions/UserTrackingSubscription' + examples: + application/json: + userTrackingSubscription: + clientCorrelator: '0123' + resourceURL: 'http://example.com/exampleAPI/location/v1/subscriptions/userTracking/subscription123' + callbackReference: + notifyURL: 'http://clientApp.example.com/location_notifications/123456' + address: 'acr:192.0.2.1' + userEventCriteria: Transferring + '/subscriptions/userTracking/{subscriptionId}': + parameters: + - $ref: '#/parameters/Path.SubscriptionId' + get: + tags: + - subscriptions + operationId: userTrackingSubGetById + description: This operation is used for retrieving an individual subscription to user tracking change notification. + produces: + - application/json + responses: + '200': + description: Response to retrieve individual user tracking subscription + schema: + properties: + userTrackingSubscription: + $ref: '#/definitions/UserTrackingSubscription' + examples: + application/json: + userTrackingSubscription: + clientCorrelator: '0123' + resourceURL: 'http://example.com/exampleAPI/location/v1/subscriptions/userTracking/subscription123' + callbackReference: + notifyURL: 'http://clientApp.example.com/location_notifications/123456' + address: 'acr:192.0.2.1' + userEventCriteria: Transferring + put: + tags: + - subscriptions + operationId: userTrackingSubPutById + description: This operation is used for updating an individual subscription to user tracking change notification. + produces: + - application/json + parameters: + - $ref: '#/parameters/Body.UserTrackingSubscription' + responses: + '200': + description: Response to update individual user tracking subscription + schema: + properties: + userTrackingSubscription: + $ref: '#/definitions/UserTrackingSubscription' + examples: + application/json: + userTrackingSubscription: + clientCorrelator: '0123' + resourceURL: 'http://example.com/exampleAPI/location/v1/subscriptions/userTracking/subscription123' + callbackReference: + notifyURL: 'http://clientApp.example.com/location_notifications/123456' + address: 'acr:192.0.2.1' + userEventCriteria: Transferring + delete: + tags: + - subscriptions + operationId: userTrackingSubDelById + description: This operation is used for retrieving an individual subscription to user tracking change notification. + produces: + - application/json + responses: + '204': + description: No Content + /subscriptions/zonalStatus: + get: + tags: + - subscriptions + operationId: zoneStatusGet + description: This operation is used for creating a new subscription to zone status change notification. + produces: + - application/json + responses: + '200': + description: Response to retrieve zone status subscriptions + schema: + type: object + properties: + notificationSubscriptionList: + type: object + properties: + zonalTrafficSubscription: + type: array + items: + $ref: '#/definitions/ZoneStatusSubscription' + resourceURL: + $ref: '#/definitions/ResourceURL' + examples: + application/json: + notificationSubscriptionList: + zoneStatusSubscription: + - clientCorrelator: '0123' + resourceURL: 'http://example.com/exampleAPI/location/v1/subscriptions/zoneStatus/subscription123' + callbackReference: + notifyURL: 'http://clientApp.example.com/location_notifications/123456' + zoneId: zone01 + numberOfUsersZoneThreshold: '500' + operationStatus: Serviceable + - clientCorrelator: '0124' + resourceURL: 'http://example.com/exampleAPI/location/v1/subscriptions/zoneStatus/subscription124' + callbackReference: + notifyURL: 'http://clientApp.example.com/location_notifications/123457' + zoneId: zone02 + numberOfUsersAPThreshold: '50' + operationStatus: Serviceable + resourceURL: 'http://example.com/exampleAPI/location/v1/subscriptions/zoneStatus' + post: + tags: + - subscriptions + operationId: zoneStatusPost + description: This operation is used for creating a new subscription to zone status change notification. + produces: + - application/json + parameters: + - $ref: '#/parameters/Body.ZoneStatusSubscription' + responses: + '201': + description: Response to create new zone status subscription + schema: + properties: + zonalTrafficSubscription: + $ref: '#/definitions/ZoneStatusSubscription' + examples: + application/json: + zoneStatusSubscription: + clientCorrelator: '0123' + resourceURL: 'http://example.com/exampleAPI/location/v1/subscriptions/zoneStatus/subscription123' + callbackReference: + notifyURL: 'http://clientApp.example.com/location_notifications/123456' + zoneId: zone01 + numberOfUsersZoneThreshold: '500' + operationStatus: Serviceable + '/subscriptions/zoneStatus/{subscriptionId}': + parameters: + - $ref: '#/parameters/Path.SubscriptionId' + get: + tags: + - subscriptions + operationId: zoneStatusGetById + description: This operation is used for retrieving an individual subscription to zone status change notification. + produces: + - application/json + responses: + '200': + description: Response to retrieve individual zone status subscription + schema: + properties: + zoneStatusSubscription: + $ref: '#/definitions/ZoneStatusSubscription' + examples: + application/json: + zoneStatusSubscription: + clientCorrelator: '0123' + resourceURL: 'http://example.com/exampleAPI/location/v1/subscriptions/zoneStatus/subscription123' + callbackReference: + notifyURL: 'http://clientApp.example.com/location_notifications/123456' + zoneId: zone01 + numberOfUsersZoneThreshold: '500' + operationStatus: Serviceable + put: + tags: + - subscriptions + operationId: zoneStatusPutById + description: This operation is used for updating an individual subscription to zone status change notification. + produces: + - application/json + parameters: + - $ref: '#/parameters/Body.ZoneStatusSubscription' + responses: + '200': + description: Response to update individual zone status subscription + schema: + properties: + zoneStatusSubscription: + $ref: '#/definitions/ZoneStatusSubscription' + examples: + application/json: + zoneStatusSubscription: + clientCorrelator: '0123' + resourceURL: 'http://example.com/exampleAPI/location/v1/subscriptions/zoneStatus/subscription123' + callbackReference: + notifyURL: 'http://clientApp.example.com/location_notifications/123456' + zoneId: zone01 + numberOfUsersZoneThreshold: '500' + operationStatus: Serviceable + delete: + tags: + - subscriptions + operationId: zoneStatusDelById + description: This operation is used for cancelling a subscription and stopping corresponding notifications. + produces: + - application/json + responses: + '204': + description: No content +definitions: + AccessPointId: + description: 'Identifier of access point, (reference ETSI TS 129 171). Where the E-CGI is made up of the PLMN and Cell Identity (28 bit string). Then the PLMN is made up of the 3 digit MCC & 2 or 3 digit MNC. The Cell Portion is an optional element' + type: string + example: '001010000000000000000000000000001' + AccessPointInfo: + description: A type containing access point information. + type: object + required: + - accessPointId + - connectionType + - operationStatus + - numberOfUsers + - resourceURL + properties: + accessPointId: + $ref: '#/definitions/AccessPointId' + locationInfo: + $ref: '#/definitions/LocationInfo' + connectionType: + $ref: '#/definitions/ConnectionType' + operationStatus: + $ref: '#/definitions/OperationStatus' + numberOfUsers: + $ref: '#/definitions/NumberOfUsers' + timezone: + $ref: '#/definitions/Timezone' + interestRealm: + $ref: '#/definitions/InterestRealm' + resourceURL: + $ref: '#/definitions/ResourceURL' + AccessPointList: + description: A type containing list of access points. + type: object + required: + - zoneId + - resourceURL + properties: + zoneId: + $ref: '#/definitions/ZoneId' + accessPoint: + description: Collection of the access point information list. + type: array + items: + $ref: '#/definitions/AccessPointInfo' + resourceURL: + $ref: '#/definitions/ResourceURL' + Address: + description: 'Address of user (e.g. "sip" URI, "tel" URI, "acr" URI).' + type: string + format: uri + example: 'acr:192.0.2.1' + AncillaryInfo: + description: Reserved for future use. + type: string + CallbackData: + description: 'CallBackData if passed by the application during the associated ZonalTrafficSubscription and UserTrackingSubscription operation. See [REST_NetAPI_Common].' + type: string + example: '1234' + CallbackReference: + description: Notification callback definition. + type: object + required: + - notifyURL + properties: + notifyURL: + $ref: '#/definitions/NotifyURL' + ClientCorrelator: + description: 'Uniquely identifies this create subscription request. If there is a communication failure during the request, using the same clientCorrelator when retrying the request allows the operator to avoid creating a duplicate subscription.' + type: string + example: '0123' + ConnectionType: + description: The connection type for the access point + type: string + enum: + - Femto + - LTE-femto + - Smallcell + - LTE-smallcell + - Wifi + - Pico + - Micro + - Macro + - Wimax + - Unknown + example: Macro + ContextLocationInfo: + description: 'Contextual information of a user location (e.g., aisle, floor, room number, etc.)' + type: string + example: GroundFloor + CurrentAccessPointId: + description: Zone ID + type: string + example: zone01 + Duration: + description: 'Period (in seconds) of time notifications are provided for. If set to "0" (zero), a default duration time, which is specified by the service policy, will be used. If the parameter is omitted, the notifications will continue until the maximum duration time, which is specified by the service policy, unless the notifications are stopped by deletion of subscription for notifications. This element MAY be given by the client during resource creation in order to signal the desired lifetime of the subscription. The server MUST return in this element the period of time for which the subscription will still be valid.' + type: string + example: '0' + InterestRealm: + description: 'Interest realm of access point (e.g. geographical area, a type of industry etc.).' + type: string + example: LA + Link: + description: Link to other resources + type: object + required: + - rel + - href + properties: + rel: + description: Describes the relationship between the URI and the resource. + type: object + format: string + href: + description: URI + type: object + format: anyURI + LocationInfo: + description: 'A type containing location information with latitude, longitude and altitude, in addition the accuracy of the information are provided.' + type: object + required: + - latitude + - longitude + - accuracy + properties: + latitude: + type: number + format: float + example: '80.123' + longitude: + type: number + format: float + example: '70.123' + altitude: + type: number + format: float + example: '10.0' + accuracy: + type: integer + format: int32 + example: '10' + NotifyURL: + description: The URL of your own listener application. + type: string + format: url + example: 'http://clientApp.example.com/location_notifications/123456' + NumberOfAccessPoints: + description: The number of access points within the zone + type: integer + format: uint32 + example: '10' + NumberOfUnserviceableAccessPoints: + description: Number of inoperable access points within the zone. + type: integer + format: uint32 + example: '9' + NumberOfUsers: + description: The number of users currently on the access point. + type: integer + format: uint32 + example: '7' + NumberOfUsersAPThreshold: + description: Threshold number of users in an access point which if crossed shall cause a notification. + type: integer + format: uint32 + example: '20' + NumberOfUsersInAP: + description: This element shall be present when ZoneStatusSubscription includes numberOfUsersAPThreshold element and the number of users in an access point exceeds the threshold defined in the subscription. + type: integer + format: uint32 + example: '12' + NumberOfUsersInZone: + description: This element shall be present when ZoneStatusSubscription includes numberOfUsersZoneThreshold element and the number of users in a zone exceeds the threshold defined in this subscription. + type: integer + format: uint32 + example: '20' + NumberOfUsersZoneThreshold: + description: Threshold number of users in a zone which if crossed shall cause a notification. + type: integer + format: uint32 + example: '40' + OperationStatus: + description: The operation status of the access point + type: string + enum: + - Serviceable + - Unserviceable + - Unknown + example: Serviceable + PreviousAccessPointId: + description: Zone ID + type: string + example: zone02 + ResourceURL: + description: Self referring URL. + type: string + format: uri + example: 'http://example.com/exampleAPI/location/v1/subscriptions/userTracking/subscription123' + Timestamp: + description: Indicates the time of day for zonal presence notification. + type: string + format: date-time + example: '2017-01-01T02:51:43Z' + Timezone: + description: Time zone of access point + type: string + format: date-time + example: '2017-01-01T02:51:43Z' + UserEventCriteria: + description: 'List of user event values to generate notifications for (these apply to address specified). If this element is missing, a notification is requested to be generated for any change in user event.' + type: array + items: + $ref: '#/definitions/UserEventType' + UserEventType: + description: User event + type: string + enum: + - Entering + - Leaving + - Transferring + example: Entering + UserInfo: + description: A type containing user information. + type: object + required: + - address + - accessPointId + - zoneId + - resourceURL + properties: + address: + $ref: '#/definitions/Address' + accessPointId: + $ref: '#/definitions/AccessPointId' + zoneId: + $ref: '#/definitions/ZoneId' + resourceURL: + $ref: '#/definitions/ResourceURL' + locationInfo: + $ref: '#/definitions/LocationInfo' + contextLocationInfo: + $ref: '#/definitions/ContextLocationInfo' + ancillaryInfo: + $ref: '#/definitions/AncillaryInfo' + UserList: + description: A type containing list of users. + type: object + required: + - resourceURL + properties: + user: + description: Collection of the zone information list. + type: array + items: + $ref: '#/definitions/UserInfo' + resourceURL: + $ref: '#/definitions/ResourceURL' + UserTrackingSubscription: + description: A type containing user tracking subscription. + type: object + required: + - callbackReference + - address + properties: + clientCorrelator: + $ref: '#/definitions/ClientCorrelator' + callbackReference: + $ref: '#/definitions/CallbackReference' + address: + $ref: '#/definitions/Address' + userEventCriteria: + $ref: '#/definitions/UserEventCriteria' + resourceURL: + $ref: '#/definitions/ResourceURL' + ZonalPresenceNotification: + description: A type containing zonal presence notification + type: object + required: + - zoneId + - address + - userEventType + - currentAccessPointId + - timestamp + properties: + callbackData: + $ref: '#/definitions/CallbackData' + zoneId: + $ref: '#/definitions/ZoneId' + address: + $ref: '#/definitions/Address' + interestRealm: + $ref: '#/definitions/InterestRealm' + userEventType: + $ref: '#/definitions/UserEventType' + currentAccessPointId: + $ref: '#/definitions/CurrentAccessPointId' + previousAccessPointId: + $ref: '#/definitions/PreviousAccessPointId' + timestamp: + $ref: '#/definitions/Timestamp' + link: + description: Link to other resources that are in relationship with this notification. The server SHOULD include a link to the related subscription. No other links are required or suggested by this specification. + type: array + items: + $ref: '#/definitions/Link' + example: 'rel="ZonalTrafficSubscription" href="http://example.com/exampleAPI/location/v1/subscriptions/zonalTraffic/sub123"/' + ZonalTrafficSubscription: + description: A type containing zonal traffic subscription + type: object + required: + - callbackReference + - zoneId + properties: + clientCorrelator: + $ref: '#/definitions/ClientCorrelator' + callbackReference: + $ref: '#/definitions/CallbackReference' + zoneId: + $ref: '#/definitions/ZoneId' + interestRealm: + description: 'Interest realms of access points within a zone (e.g. geographical area, a type of industry etc.).' + type: array + items: + $ref: '#/definitions/InterestRealm' + userEventCriteria: + description: 'List of user event values to generate notifications for (these apply to zone identifier or all interest realms within zone identifier specified). If this element is missing, a notification is requested to be generated for any change in user event.' + type: array + items: + $ref: '#/definitions/UserEventType' + duration: + $ref: '#/definitions/Duration' + resourceURL: + $ref: '#/definitions/ResourceURL' + ZoneId: + description: Identifier of zone + type: string + example: zone01 + ZoneInfo: + description: A type containing zone information. + type: object + required: + - zoneId + - numberOfAccessPoints + - numberOfUnservicableAccessPoints + - numberOfUsers + - resourceURL + properties: + zoneId: + $ref: '#/definitions/ZoneId' + numberOfAccessPoints: + $ref: '#/definitions/NumberOfAccessPoints' + numberOfUnservicableAccessPoints: + $ref: '#/definitions/NumberOfUnserviceableAccessPoints' + numberOfUsers: + $ref: '#/definitions/NumberOfUsers' + resourceURL: + $ref: '#/definitions/ResourceURL' + ZoneList: + description: Collection of the zone information list. + type: object + required: + - resourceURL + properties: + zone: + description: Collection of the zone information list. + type: array + items: + $ref: '#/definitions/ZoneInfo' + resourceURL: + $ref: '#/definitions/ResourceURL' + ZoneStatusNotification: + description: A type containing zone status notification. + type: object + required: + - zoneId + - timestamp + properties: + callbackData: + $ref: '#/definitions/CallbackData' + zoneId: + $ref: '#/definitions/ZoneId' + accessPointId: + $ref: '#/definitions/AccessPointId' + numberOfUsersInZone: + $ref: '#/definitions/NumberOfUsersInZone' + numberOfUsersInAP: + $ref: '#/definitions/NumberOfUsersInAP' + operationStatus: + $ref: '#/definitions/OperationStatus' + timestamp: + $ref: '#/definitions/Timestamp' + link: + description: Link to other resources that are in relationship with this notification. The server SHOULD include a link to the related subscription. No other links are required or suggested by this specification. + type: array + items: + $ref: '#/definitions/Link' + example: 'rel="ZonalStatusSubscription" href="http://example.com/exampleAPI/location/v1/subscriptions/zonalStatus/sub123"' + ZoneStatusSubscription: + description: A type containing zone status subscription. + type: object + required: + - callbackReference + - zoneId + properties: + clientCorrelator: + $ref: '#/definitions/ClientCorrelator' + resourceURL: + $ref: '#/definitions/ResourceURL' + callbackReference: + $ref: '#/definitions/CallbackReference' + zoneId: + $ref: '#/definitions/ZoneId' + numberOfUsersZoneThreshold: + $ref: '#/definitions/NumberOfUsersZoneThreshold' + numberOfUsersAPThreshold: + $ref: '#/definitions/NumberOfUsersAPThreshold' + operationStatus: + description: List of operation status values to generate notifications for (these apply to all access points within a zone). + type: array + items: + $ref: '#/definitions/OperationStatus' diff --git a/paths/SubsUserTrackId.yaml b/paths/SubsUserTrackId.yaml index 941cd05..ae9c683 100644 --- a/paths/SubsUserTrackId.yaml +++ b/paths/SubsUserTrackId.yaml @@ -1,3 +1,6 @@ +parameters: +- $ref: '#/parameters/Path.SubscriptionId' + get: $ref: ./SubsUserTrackId_Get.yaml diff --git a/paths/SubsUserTrackId_Del.yaml b/paths/SubsUserTrackId_Del.yaml index 7666584..104a98b 100644 --- a/paths/SubsUserTrackId_Del.yaml +++ b/paths/SubsUserTrackId_Del.yaml @@ -1,10 +1,10 @@ +tags: +- subscriptions +operationId: userTrackingSubDelById description: This operation is used for retrieving an individual subscription to user tracking change notification. produces: - application/json -parameters: -- $ref: '#/parameters/Path.SubscriptionId' - responses: 204: description: No Content \ No newline at end of file diff --git a/paths/SubsUserTrackId_Get.yaml b/paths/SubsUserTrackId_Get.yaml index 07445e7..f5c128f 100644 --- a/paths/SubsUserTrackId_Get.yaml +++ b/paths/SubsUserTrackId_Get.yaml @@ -1,10 +1,10 @@ +tags: +- subscriptions +operationId: userTrackingSubGetById description: This operation is used for retrieving an individual subscription to user tracking change notification. produces: - application/json -parameters: -- $ref: '#/parameters/Path.SubscriptionId' - responses: 200: description: Response to retrieve individual user tracking subscription @@ -12,7 +12,6 @@ responses: properties: userTrackingSubscription: $ref: '#/definitions/UserTrackingSubscription' - examples: application/json: $ref: '../examples/UserTrackingSubscription.json' \ No newline at end of file diff --git a/paths/SubsUserTrackId_Put.yaml b/paths/SubsUserTrackId_Put.yaml index ab57b48..798f19a 100644 --- a/paths/SubsUserTrackId_Put.yaml +++ b/paths/SubsUserTrackId_Put.yaml @@ -1,11 +1,12 @@ +tags: +- subscriptions +operationId: userTrackingSubPutById description: This operation is used for updating an individual subscription to user tracking change notification. produces: - application/json parameters: -- $ref: '#/parameters/Path.SubscriptionId' - $ref: '#/parameters/Body.UserTrackingSubscription' - responses: 200: description: Response to update individual user tracking subscription @@ -13,7 +14,6 @@ responses: properties: userTrackingSubscription: $ref: '#/definitions/UserTrackingSubscription' - examples: application/json: $ref: '../examples/UserTrackingSubscription.json' \ No newline at end of file diff --git a/paths/SubsUserTrack_Get.yaml b/paths/SubsUserTrack_Get.yaml index a02692c..56be5ea 100644 --- a/paths/SubsUserTrack_Get.yaml +++ b/paths/SubsUserTrack_Get.yaml @@ -1,8 +1,10 @@ +tags: +- subscriptions +operationId: userTrackingSubGet description: This operation is used for retrieving all active subscriptions to user tracking change notifications. produces: - application/json - responses: 200: description: Response to retrieve user tracking subscriptions @@ -18,7 +20,6 @@ responses: $ref: '#/definitions/UserTrackingSubscription' resourceURL: $ref: '#/definitions/ResourceURL' - examples: application/json: $ref: '../examples/NotiSubsListUserTrac.json' \ No newline at end of file diff --git a/paths/SubsUserTrack_Post.yaml b/paths/SubsUserTrack_Post.yaml index 8097c74..5ff5669 100644 --- a/paths/SubsUserTrack_Post.yaml +++ b/paths/SubsUserTrack_Post.yaml @@ -1,10 +1,12 @@ +tags: +- subscriptions +operationId: userTrackingSubPost description: This operation is used for creating a new subscription to user tracking change notification produces: - application/json parameters: - $ref: '#/parameters/Body.UserTrackingSubscription' - responses: 201: description: Response to create new user tracking subscription @@ -12,7 +14,6 @@ responses: properties: userTrackingSubscription: $ref: '#/definitions/UserTrackingSubscription' - examples: application/json: $ref: '../examples/UserTrackingSubscription.json' diff --git a/paths/SubsZonalTrafId.yaml b/paths/SubsZonalTrafId.yaml index bc9d3aa..af61080 100644 --- a/paths/SubsZonalTrafId.yaml +++ b/paths/SubsZonalTrafId.yaml @@ -1,3 +1,6 @@ +parameters: +- $ref: '#/parameters/Path.SubscriptionId' + get: $ref: ./SubsZonalTrafId_Get.yaml diff --git a/paths/SubsZonalTrafId_Del.yaml b/paths/SubsZonalTrafId_Del.yaml index 69317c2..d05a716 100644 --- a/paths/SubsZonalTrafId_Del.yaml +++ b/paths/SubsZonalTrafId_Del.yaml @@ -1,10 +1,10 @@ +tags: +- subscriptions +operationId: zonalTrafficSubDelById description: This operation is used for cancelling a subscription and stopping corresponding notifications. produces: - application/json -parameters: -- $ref: '#/parameters/Path.SubscriptionId' - responses: 204: description: No content \ No newline at end of file diff --git a/paths/SubsZonalTrafId_Get.yaml b/paths/SubsZonalTrafId_Get.yaml index 904eef9..85ffefc 100644 --- a/paths/SubsZonalTrafId_Get.yaml +++ b/paths/SubsZonalTrafId_Get.yaml @@ -1,10 +1,10 @@ +tags: +- subscriptions +operationId: zonalTrafficSubGetById description: This operation is used for updating an individual subscription to zonal traffic change notification. produces: - application/json -parameters: -- $ref: '#/parameters/Path.SubscriptionId' - responses: 200: description: Response to retrieve individual zonal traffic subscription @@ -12,7 +12,6 @@ responses: properties: zonalTrafficSubscription: $ref: '#/definitions/ZonalTrafficSubscription' - examples: application/json: $ref: '../examples/ZonalTrafficSubscription.json' \ No newline at end of file diff --git a/paths/SubsZonalTrafId_Put.yaml b/paths/SubsZonalTrafId_Put.yaml index 41cc486..8bd1675 100644 --- a/paths/SubsZonalTrafId_Put.yaml +++ b/paths/SubsZonalTrafId_Put.yaml @@ -1,11 +1,12 @@ +tags: +- subscriptions +operationId: zonalTrafficSubPutById description: This operation is used for updating an individual subscription to zonal traffic change notification. produces: - application/json parameters: -- $ref: '#/parameters/Path.SubscriptionId' - $ref: '#/parameters/Body.ZonalTrafficSubscription' - responses: 200: description: Response to update individual zonal traffic subscription @@ -13,7 +14,6 @@ responses: properties: zonalTrafficSubscription: $ref: '#/definitions/ZonalTrafficSubscription' - examples: application/json: $ref: '../examples/ZonalTrafficSubscription.json' \ No newline at end of file diff --git a/paths/SubsZonalTraf_Get.yaml b/paths/SubsZonalTraf_Get.yaml index 7afc524..4a1943d 100644 --- a/paths/SubsZonalTraf_Get.yaml +++ b/paths/SubsZonalTraf_Get.yaml @@ -1,8 +1,10 @@ +tags: +- subscriptions +operationId: zonalTrafficSubGet description: This operation is used for retrieving all active subscriptions to zonal traffic change notifications. produces: - application/json - responses: 200: description: Response to retrieve zonal traffic subscriptions @@ -18,7 +20,6 @@ responses: $ref: '#/definitions/ZonalTrafficSubscription' resourceURL: $ref: '#/definitions/ResourceURL' - examples: application/json: $ref: '../examples/NotiSubsListZonaTraf.json' \ No newline at end of file diff --git a/paths/SubsZonalTraf_Post.yaml b/paths/SubsZonalTraf_Post.yaml index ad5f2bc..4a1c4f1 100644 --- a/paths/SubsZonalTraf_Post.yaml +++ b/paths/SubsZonalTraf_Post.yaml @@ -1,10 +1,12 @@ +tags: +- subscriptions +operationId: zonalTrafficSubPost description: This operation is used for creating a new subscription to zonal traffic change notification. produces: - application/json parameters: -- $ref: '#/parameters/Body.ZonalTrafficSubscription' - +- $ref: '#/parameters/Body.ZonalTrafficSubscription' responses: 201: description: Response to create new zonal traffic subscription @@ -12,7 +14,6 @@ responses: properties: zonalTrafficSubscription: $ref: '#/definitions/ZonalTrafficSubscription' - examples: application/json: $ref: '../examples/ZonalTrafficSubscription.json' \ No newline at end of file diff --git a/paths/SubsZoneStatId.yaml b/paths/SubsZoneStatId.yaml index 7507a83..42e57f4 100644 --- a/paths/SubsZoneStatId.yaml +++ b/paths/SubsZoneStatId.yaml @@ -1,3 +1,6 @@ +parameters: +- $ref: '#/parameters/Path.SubscriptionId' + get: $ref: ./SubsZoneStatId_Get.yaml diff --git a/paths/SubsZoneStatId_Del.yaml b/paths/SubsZoneStatId_Del.yaml index 69317c2..d72dc75 100644 --- a/paths/SubsZoneStatId_Del.yaml +++ b/paths/SubsZoneStatId_Del.yaml @@ -1,10 +1,10 @@ +tags: +- subscriptions +operationId: zoneStatusDelById description: This operation is used for cancelling a subscription and stopping corresponding notifications. produces: - application/json -parameters: -- $ref: '#/parameters/Path.SubscriptionId' - responses: 204: description: No content \ No newline at end of file diff --git a/paths/SubsZoneStatId_Get.yaml b/paths/SubsZoneStatId_Get.yaml index bf09fe0..917bbd4 100644 --- a/paths/SubsZoneStatId_Get.yaml +++ b/paths/SubsZoneStatId_Get.yaml @@ -1,10 +1,10 @@ +tags: +- subscriptions +operationId: zoneStatusGetById description: This operation is used for retrieving an individual subscription to zone status change notification. produces: - application/json -parameters: -- $ref: '#/parameters/Path.SubscriptionId' - responses: 200: description: Response to retrieve individual zone status subscription @@ -12,7 +12,6 @@ responses: properties: zoneStatusSubscription: $ref: '#/definitions/ZoneStatusSubscription' - examples: application/json: $ref: '../examples/ZoneStatusSubscription.json' \ No newline at end of file diff --git a/paths/SubsZoneStatId_Put.yaml b/paths/SubsZoneStatId_Put.yaml index 1188324..14d277b 100644 --- a/paths/SubsZoneStatId_Put.yaml +++ b/paths/SubsZoneStatId_Put.yaml @@ -1,11 +1,12 @@ +tags: +- subscriptions +operationId: zoneStatusPutById description: This operation is used for updating an individual subscription to zone status change notification. produces: - application/json parameters: -- $ref: '#/parameters/Path.SubscriptionId' - $ref: '#/parameters/Body.ZoneStatusSubscription' - responses: 200: description: Response to update individual zone status subscription @@ -13,7 +14,6 @@ responses: properties: zoneStatusSubscription: $ref: '#/definitions/ZoneStatusSubscription' - examples: application/json: $ref: '../examples/ZoneStatusSubscription.json' \ No newline at end of file diff --git a/paths/SubsZoneStat_Get.yaml b/paths/SubsZoneStat_Get.yaml index 369111c..e246471 100644 --- a/paths/SubsZoneStat_Get.yaml +++ b/paths/SubsZoneStat_Get.yaml @@ -1,8 +1,10 @@ +tags: +- subscriptions +operationId: zoneStatusGet description: This operation is used for creating a new subscription to zone status change notification. produces: - application/json - responses: 200: description: Response to retrieve zone status subscriptions @@ -18,7 +20,6 @@ responses: $ref: '#/definitions/ZoneStatusSubscription' resourceURL: $ref: '#/definitions/ResourceURL' - examples: application/json: $ref: '../examples/NotiSubsListZoneStat.json' \ No newline at end of file diff --git a/paths/SubsZoneStat_Post.yaml b/paths/SubsZoneStat_Post.yaml index eccb634..67534c1 100644 --- a/paths/SubsZoneStat_Post.yaml +++ b/paths/SubsZoneStat_Post.yaml @@ -1,10 +1,12 @@ +tags: +- subscriptions +operationId: zoneStatusPost description: This operation is used for creating a new subscription to zone status change notification. produces: - application/json parameters: - $ref: '#/parameters/Body.ZoneStatusSubscription' - responses: 201: description: Response to create new zone status subscription @@ -12,7 +14,6 @@ responses: properties: zonalTrafficSubscription: $ref: '#/definitions/ZoneStatusSubscription' - examples: application/json: $ref: '../examples/ZoneStatusSubscription.json' \ No newline at end of file diff --git a/paths/UsersId.yaml b/paths/UsersId.yaml index 3e3c581..c55eee5 100644 --- a/paths/UsersId.yaml +++ b/paths/UsersId.yaml @@ -1,2 +1,4 @@ +parameters: +- $ref: '#/parameters/Path.UserId' get: $ref: ./UsersId_Get.yaml \ No newline at end of file diff --git a/paths/UsersId_Get.yaml b/paths/UsersId_Get.yaml index f661b4a..f988da2 100644 --- a/paths/UsersId_Get.yaml +++ b/paths/UsersId_Get.yaml @@ -1,10 +1,10 @@ +tags: +- users +operationId: usersGetById description: Users currently using a zone may be retrieved for sets of access points matching attribute in the request produces: - application/json -parameters: -- $ref: '#/parameters/Path.UserId' - responses: 200: description: Successful response to a query users within a zone request @@ -12,7 +12,6 @@ responses: properties: userInfo: $ref: '#/definitions/UserInfo' - examples: application/json: $ref: '../examples/UserInfo.json' \ No newline at end of file diff --git a/paths/Users_Get.yaml b/paths/Users_Get.yaml index 2d57527..b36c837 100644 --- a/paths/Users_Get.yaml +++ b/paths/Users_Get.yaml @@ -1,3 +1,6 @@ +tags: +- users +operationId: usersGet description: Users currently using a zone may be retrieved for sets of access points matching attribute in the request produces: @@ -5,7 +8,6 @@ produces: parameters: - $ref: '#/parameters/Query.ZoneId' - $ref: '#/parameters/Query.AccessPointId' - responses: 200: description: Successful response to a query users within a zone request @@ -13,7 +15,6 @@ responses: properties: userList: $ref: '#/definitions/UserList' - examples: application/json: $ref: '../examples/UserList.json' \ No newline at end of file diff --git a/paths/ZonesId.yaml b/paths/ZonesId.yaml index b5b3ebc..d8d3ebb 100644 --- a/paths/ZonesId.yaml +++ b/paths/ZonesId.yaml @@ -1,2 +1,4 @@ +parameters: +- $ref: '#/parameters/Path.ZoneId' get: $ref: ./ZonesId_Get.yaml \ No newline at end of file diff --git a/paths/ZonesIdAps.yaml b/paths/ZonesIdAps.yaml index 37e8cef..dd01b8d 100644 --- a/paths/ZonesIdAps.yaml +++ b/paths/ZonesIdAps.yaml @@ -1,2 +1,4 @@ +parameters: +- $ref: '#/parameters/Path.ZoneId' get: $ref: ./ZonesIdAps_Get.yaml \ No newline at end of file diff --git a/paths/ZonesIdApsId.yaml b/paths/ZonesIdApsId.yaml index 2992904..5029deb 100644 --- a/paths/ZonesIdApsId.yaml +++ b/paths/ZonesIdApsId.yaml @@ -1,2 +1,5 @@ +parameters: +- $ref: '#/parameters/Path.ZoneId' +- $ref: '#/parameters/Path.AccessPointId' get: $ref: ./ZonesIdApsId_Get.yaml \ No newline at end of file diff --git a/paths/ZonesIdApsId_Get.yaml b/paths/ZonesIdApsId_Get.yaml index e592eb8..05b3ddf 100644 --- a/paths/ZonesIdApsId_Get.yaml +++ b/paths/ZonesIdApsId_Get.yaml @@ -1,11 +1,10 @@ +tags: +- zones +operationId: zonesByIdGetApsById description: Access point status can be retrieved for sets of access points matching attribute in the request. produces: - application/json -parameters: -- $ref: '#/parameters/Path.ZoneId' -- $ref: '#/parameters/Path.AccessPointId' - responses: 200: description: Successful response to a query a named set of access point status request @@ -13,7 +12,6 @@ responses: properties: accessPointInfo: $ref: '#/definitions/AccessPointInfo' - examples: application/json: $ref: '../examples/AccessPointInfo.json' \ No newline at end of file diff --git a/paths/ZonesIdAps_Get.yaml b/paths/ZonesIdAps_Get.yaml index a00ac7f..2006d22 100644 --- a/paths/ZonesIdAps_Get.yaml +++ b/paths/ZonesIdAps_Get.yaml @@ -1,11 +1,12 @@ +tags: +- zones +operationId: zonesByIdGetAps description: Access point status can be retrieved for sets of access points matching attribute in the request. produces: - application/json parameters: -- $ref: '#/parameters/Path.ZoneId' - $ref: '#/parameters/Query.InterestRealm' - responses: 200: description: Successful response to a query a named set of access point status request @@ -13,7 +14,6 @@ responses: properties: accessPointList: $ref: '#/definitions/AccessPointList' - examples: application/json: $ref: '../examples/AccessPointList.json' \ No newline at end of file diff --git a/paths/ZonesId_Get.yaml b/paths/ZonesId_Get.yaml index ba5f74b..e4f063d 100644 --- a/paths/ZonesId_Get.yaml +++ b/paths/ZonesId_Get.yaml @@ -1,10 +1,10 @@ +tags: +- zones +operationId: zonesGetById description: Used to get the status of a zone. produces: - application/json -parameters: -- $ref: '#/parameters/Path.ZoneId' - responses: 200: description: Successful response to a query regarding the status of a zone @@ -12,7 +12,6 @@ responses: properties: zoneInfo: $ref: '#/definitions/ZoneInfo' - examples: application/json: $ref: '../examples/ZoneInfo.json' \ No newline at end of file diff --git a/paths/Zones_Get.yaml b/paths/Zones_Get.yaml index bc7abc4..bd91d28 100644 --- a/paths/Zones_Get.yaml +++ b/paths/Zones_Get.yaml @@ -1,7 +1,9 @@ +tags: +- zones +operationId: zonesGet description: Used to get a list of identifiers for zones authorized for use by the application. produces: - application/json - responses: 200: description: Successful response to a query regarding the status of a zone @@ -9,7 +11,6 @@ responses: properties: zoneList: $ref: '#/definitions/ZoneList' - examples: application/json: $ref: '../examples/ZoneList.json' \ No newline at end of file diff --git a/tags/index.yaml b/tags/index.yaml new file mode 100644 index 0000000..89f15a0 --- /dev/null +++ b/tags/index.yaml @@ -0,0 +1,3 @@ + - name: zones + - name: users + - name: subscriptions \ No newline at end of file -- GitLab