diff --git a/LocationAPIv1-notifications.yaml b/LocationAPIv1-notifications.yaml new file mode 100644 index 0000000000000000000000000000000000000000..0185cd36dacf977ef07c9ab6df663f5a472247c0 --- /dev/null +++ b/LocationAPIv1-notifications.yaml @@ -0,0 +1,337 @@ +--- +swagger: "2.0" +info: + version: "1.0.0" + title: "AdvantEDGE Location Service Subscription Notification REST API" + contact: + name: InterDigital AdvantEDGE Support + email: AdvantEDGE@InterDigital.com + description: "This API enables the Location Service to post location events to edge applications +
**Micro-service**
None
+
**Type & Usage**
User's Edge Applications subscribing to Location events must implement this API
+
**Details**
API details available at _your-AdvantEDGE-ip-address/api_
+
**Note** The API is based on the Open Mobile Alliance's specification RESTful Network API for Zonal Presence
+ [Copyright (c) ETSI 2017](https://forge.etsi.org/etsi-forge-copyright-notice.txt)
+ **Micro-service** **Type & Usage** **Details**
This API is not exposed by default on the AdvantEDGE platform"
+ license:
+ name: "Apache 2.0"
+ url: "https://github.com/InterDigitalInc/AdvantEDGE/blob/master/LICENSE"
+basePath: "/location-notif/v1"
+externalDocs:
+ description: "Find out more about MEC Location Services"
+ url: "http://www.etsi.org/deliver/etsi_gs/MEC/001_099/013/01.01.01_60/gs_MEC013v010101p.pdf"
+tags:
+- name: "notifications"
+consumes:
+- "application/json"
+produces:
+- "application/json"
+paths:
+ /location_notifications/{subscriptionId}:
+ post:
+ tags:
+ - "notifications"
+ summary: "This operation is used by the AdvantEDGE Location Service to issue\
+ \ a callback notification towards an ME application with a zonal or user tracking\
+ \ subscription"
+ description: "Zonal or User location tracking subscription notification"
+ operationId: "postTrackingNotification"
+ parameters:
+ - name: "subscriptionId"
+ in: "path"
+ description: "Identity of a notification subscription (user or zonal)"
+ required: true
+ type: "string"
+ x-exportParamName: "SubscriptionId"
+ - in: "body"
+ name: "Notification"
+ description: "Zonal or User Tracking Notification"
+ required: true
+ schema:
+ $ref: "#/definitions/TrackingNotification"
+ x-exportParamName: "Notification"
+ responses:
+ 204:
+ description: "No Content"
+ /zone_status_notifications/{subscriptionId}:
+ post:
+ tags:
+ - "notifications"
+ summary: "This operation is used by the AdvantEDGE Location Service to issue\
+ \ a callback notification towards an ME application with a zone status tracking\
+ \ subscription"
+ description: "Zone status tracking subscription notification"
+ operationId: "postZoneStatusNotification"
+ parameters:
+ - name: "subscriptionId"
+ in: "path"
+ description: "Identity of a notification subscription (user or zonal)"
+ required: true
+ type: "string"
+ x-exportParamName: "SubscriptionId"
+ - in: "body"
+ name: "Notification"
+ description: "Zone Status Notification"
+ required: true
+ schema:
+ $ref: "#/definitions/ZoneStatusNotification"
+ x-exportParamName: "Notification"
+ responses:
+ 204:
+ description: "No Content"
+definitions:
+ Link:
+ type: "object"
+ required:
+ - "href"
+ - "rel"
+ properties:
+ rel:
+ type: "object"
+ description: "Describes the relationship between the URI and the resource."
+ properties: {}
+ href:
+ type: "object"
+ description: "URI"
+ properties: {}
+ description: "Link to other resources"
+ OperationStatus:
+ type: "string"
+ description: "The operation status of the access point"
+ example: "Serviceable"
+ enum:
+ - "Serviceable"
+ - "Unserviceable"
+ - "Unknown"
+ SubscriptionId:
+ type: "string"
+ description: "Unique Identifier for a notification subscription. Created by the\
+ \ MEC Location Service and used to reference an individual subscription"
+ example: "sub123"
+ TrackingNotification:
+ type: "object"
+ required:
+ - "callbackData"
+ properties:
+ callbackData:
+ type: "string"
+ description: "CallBackData if passed by the application during the associated\
+ \ ZonalTrafficSubscription and UserTrackingSubscription operation. See [REST_NetAPI_Common]."
+ example: "1234"
+ zoneId:
+ type: "string"
+ description: "Identifier of zone"
+ example: "zone01"
+ address:
+ type: "string"
+ format: "uri"
+ description: "Address of user (e.g. \"sip\" URI, \"tel\" URI, \"acr\" URI)."
+ example: "acr:192.0.2.1"
+ interestRealm:
+ type: "string"
+ description: "Interest realm of access point (e.g. geographical area, a type of\
+ \ industry etc.)."
+ example: "LA"
+ userEventType:
+ $ref: "#/definitions/UserEventType"
+ currentAccessPointId:
+ type: "string"
+ description: "Zone ID"
+ example: "zone01"
+ previousAccessPointId:
+ type: "string"
+ description: "Zone ID"
+ example: "zone02"
+ timestamp:
+ type: "string"
+ format: "date-time"
+ description: "Indicates the time of day for zonal presence notification."
+ example: "2017-01-01T02:51:43Z"
+ description: "Zonal or User tracking notification - callback generated toward\
+ \ an ME app with a zonal or user tracking subscription"
+ example:
+ address: "acr:10.1.34.67"
+ userEventType: {}
+ callbackData: "1234"
+ previousAccessPointId: "001010000000000000000000000000001 or poa001"
+ zoneId: "zone001"
+ interestRealma: "NY"
+ currentAccessPointId: "001010000000000000000000000000001 or poa001"
+ timestamp: "2017-01-01T02:51:43Z"
+ UserInfo:
+ type: "object"
+ required:
+ - "accessPointId"
+ - "address"
+ - "resourceURL"
+ - "zoneId"
+ properties:
+ userId:
+ type: "string"
+ description: "Unique identifier of a user or client node"
+ example: "client001"
+ address:
+ type: "string"
+ format: "uri"
+ description: "Address of user (e.g. \"sip\" URI, \"tel\" URI, \"acr\" URI)."
+ example: "acr:192.0.2.1"
+ accessPointId:
+ type: "string"
+ description: "Identifier of access point,
[meep-loc-serv](https://github.com/InterDigitalInc/AdvantEDGE/tree/master/go-apps/meep-loc-serv)
+
Edge Service used by edge applications that want to get information about Users (UE) and Zone locations
+
API details available at _your-AdvantEDGE-ip-address/api_"
+ license:
+ name: "Apache 2.0"
+ url: "https://github.com/InterDigitalInc/AdvantEDGE/blob/master/LICENSE"
+basePath: "/location/v1"
+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"
+tags:
+- name: "zones"
+- name: "users"
+- name: "subscriptions"
+consumes:
+- "application/json"
+produces:
+- "application/json"
+paths:
+ /zones:
+ get:
+ tags:
+ - "zones"
+ description: "Used to get a list of identifiers for zones authorized for use\
+ \ by the application."
+ operationId: "zonesGet"
+ produces:
+ - "application/json"
+ parameters: []
+ responses:
+ 200:
+ description: "Successful response to a query regarding the status of a zone"
+ examples:
+ application/json:
+ zoneList:
+ zone:
+ - zoneId: "zone01"
+ numberOfAccessPoints: "3"
+ numberOfUnserviceableAccessPoints: "1"
+ numberOfUsers: "10"
+ resourceURL: "http://example.com/etsi-013/location/v1/zones/zone01"
+ - zoneId: "zone02"
+ numberOfAccessPoints: "12"
+ numberOfUnserviceableAccessPoints: "0"
+ numberOfUsers: "36"
+ resourceURL: "http://example.com/etsi-013/location/v1/zones/zone02"
+ resourceURL: "http://example.com/etsi-013/location/v1/zones"
+ schema:
+ $ref: "#/definitions/ResponseZoneList"
+ /zones/{zoneId}:
+ get:
+ tags:
+ - "zones"
+ description: "Used to get the status of a zone."
+ operationId: "zonesGetById"
+ produces:
+ - "application/json"
+ parameters:
+ - name: "zoneId"
+ in: "path"
+ description: "Zone ID"
+ required: true
+ type: "string"
+ x-exportParamName: "ZoneId"
+ responses:
+ 200:
+ description: "Successful response to a query regarding the status of a zone"
+ examples:
+ application/json:
+ zoneInfo:
+ zoneId: "zone01"
+ numberOfAccessPoints: "3"
+ numberOfUnserviceableAccessPoints: "1"
+ numberOfUsers: "10"
+ resourceURL: "http://example.com/etsi-013/location/v1/zones/zone01"
+ schema:
+ $ref: "#/definitions/ResponseZoneInfo"
+ /zones/{zoneId}/accessPoints:
+ get:
+ tags:
+ - "zones"
+ description: "Access point status can be retrieved for sets of access points\
+ \ matching attribute in the request."
+ operationId: "zonesByIdGetAps"
+ produces:
+ - "application/json"
+ parameters:
+ - name: "zoneId"
+ in: "path"
+ description: "Zone ID"
+ required: true
+ type: "string"
+ x-exportParamName: "ZoneId"
+ - name: "interestRealm"
+ in: "query"
+ description: "Interest realm of access point (e.g. geographical area, a type\
+ \ of industry etc.)."
+ required: false
+ type: "string"
+ x-exportParamName: "InterestRealm"
+ x-optionalDataType: "String"
+ responses:
+ 200:
+ description: "Successful response to a query a named set of access point\
+ \ status request"
+ 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/etsi-013/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/etsi-013/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/etsi-013/location/v1/zones/zone01/accessPoints/ap003"
+ resourceURL: "http://example.com/etsi-013/location/v1/zones/zone01/accessPoints"
+ schema:
+ $ref: "#/definitions/ResponseAccessPointList"
+ /zones/{zoneId}/accessPoints/{accessPointId}:
+ get:
+ tags:
+ - "zones"
+ description: "Access point status can be retrieved for sets of access points\
+ \ matching attribute in the request."
+ operationId: "zonesByIdGetApsById"
+ produces:
+ - "application/json"
+ parameters:
+ - name: "zoneId"
+ in: "path"
+ description: "Zone ID"
+ required: true
+ type: "string"
+ x-exportParamName: "ZoneId"
+ - name: "accessPointId"
+ in: "path"
+ description: "Access Point ID"
+ required: true
+ type: "string"
+ x-exportParamName: "AccessPointId"
+ responses:
+ 200:
+ description: "Successful response to a query a named set of access point\
+ \ status request"
+ 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/etsi-013/location/v1/zones/zone001/accessPoints/ap001"
+ schema:
+ $ref: "#/definitions/ResponseAccessPointInfo"
+ /users:
+ get:
+ tags:
+ - "users"
+ description: "Users currently using a zone may be retrieved for sets of access\
+ \ points matching attribute in the request"
+ operationId: "usersGet"
+ produces:
+ - "application/json"
+ parameters:
+ - name: "zoneId"
+ in: "query"
+ description: "Zone ID"
+ required: true
+ type: "string"
+ x-exportParamName: "ZoneId"
+ - name: "accessPointId"
+ in: "query"
+ description: "Identifier of access point, reference \"definitions\" for string\
+ \ format"
+ required: false
+ type: "string"
+ x-exportParamName: "AccessPointId"
+ x-optionalDataType: "String"
+ responses:
+ 200:
+ description: "Successful response to a query users within a zone request"
+ examples:
+ application/json:
+ userList:
+ user:
+ - address: "acr:192.0.2.1"
+ accessPointId: "001010000000000000000000000000001"
+ zoneId: "zone01"
+ resourceURL: "http://example.com/etsi-013/location/v1/users/acr%3A192.0.2.1"
+ - address: "acr:192.0.2.2"
+ accessPointId: "001010000000000000000000000000001"
+ zoneId: "zone01"
+ resourceURL: "http://example.com/etsi-013/location/v1/users/acr%3A192.0.2.2"
+ - address: "acr:192.0.2.3"
+ accessPointId: "001010000000000000000000000000010"
+ zoneId: "zone01"
+ resourceURL: "http://example.com/etsi-013/location/v1/users/acr%3A192.0.2.3"
+ - address: "acr:192.0.2.4"
+ accessPointId: "001010000000000000000000000000001"
+ zoneId: "zone02"
+ resourceURL: "http://example.com/etsi-013/location/v1/users/acr%3A192.0.2.4"
+ - address: "acr:192.0.2.5"
+ accessPointId: "001010000000000000000000000000010"
+ zoneId: "zone02"
+ resourceURL: "http://example.com/etsi-013/location/v1/users/acr%3A192.0.2.5"
+ resourceURL: "http://example.com/etsi-013/location/v1/users"
+ schema:
+ $ref: "#/definitions/ResponseUserList"
+ /users/{userId}:
+ get:
+ tags:
+ - "users"
+ description: "Users currently using a zone may be retrieved for sets of access\
+ \ points matching attribute in the request"
+ operationId: "usersGetById"
+ produces:
+ - "application/json"
+ parameters:
+ - name: "userId"
+ in: "path"
+ description: "User ID"
+ required: true
+ type: "string"
+ x-exportParamName: "UserId"
+ responses:
+ 200:
+ description: "Successful response to a query users within a zone request"
+ examples:
+ application/json:
+ userInfo:
+ address: "acr:192.0.2.1"
+ accessPointId: "001010000000000000000000000000001"
+ zoneId: "zone01"
+ resourceURL: "http://example.com/etsi-013/location/v1/users/acr%3A192.0.2.1"
+ locationInfo:
+ latitude: "90.123"
+ longitude: "80.123"
+ altitude: "10.0"
+ accuracy: "0"
+ contextLocationInfo: "GroundFloor"
+ schema:
+ $ref: "#/definitions/ResponseUserInfo"
+ /subscriptions/zonalTraffic:
+ get:
+ tags:
+ - "subscriptions"
+ description: "This operation is used for retrieving all active subscriptions\
+ \ to zonal traffic change notifications."
+ operationId: "zonalTrafficSubGet"
+ produces:
+ - "application/json"
+ parameters: []
+ responses:
+ 200:
+ description: "Response to retrieve zonal traffic subscriptions"
+ examples:
+ application/json:
+ notificationSubscriptionList:
+ zonalTrafficSubscription:
+ - clientCorrelator: "0123"
+ resourceURL: "http://example.com/etsi-013/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/etsi-013/location/v1/subscriptions/zonalTraffic/subscription124"
+ callbackReference:
+ notifyURL: "http://clientApp.example.com/location_notifications/123457"
+ zoneId: "zone02"
+ interestRealm: "LA"
+ userEventCriteria: "Transferring"
+ resourceURL: "http://example.com/etsi-013/location/v1/zonalTraffic"
+ schema:
+ $ref: "#/definitions/ResponseZonalTrafficNotificationSubscriptionList"
+ post:
+ tags:
+ - "subscriptions"
+ description: "This operation is used for creating a new subscription to zonal\
+ \ traffic change notification."
+ operationId: "zonalTrafficSubPost"
+ produces:
+ - "application/json"
+ parameters:
+ - in: "body"
+ name: "zonalTrafficSubscription"
+ description: "Zonal Traffic Subscription"
+ required: true
+ schema:
+ $ref: "#/definitions/ZonalTrafficSubscription"
+ x-exportParamName: "ZonalTrafficSubscription"
+ responses:
+ 201:
+ description: "Response to create new zonal traffic subscription"
+ examples:
+ application/json:
+ zonalTrafficSubscription:
+ clientCorrelator: "0123"
+ resourceURL: "http://example.com/etsi-013/location/v1/subscriptions/zonalTraffic/subscription123"
+ callbackReference:
+ notifyURL: "http://clientApp.example.com/location_notifications/123456"
+ zoneId: "zone01"
+ interestRealm: "LA"
+ userEventCriteria: "Transferring"
+ schema:
+ $ref: "#/definitions/ResponseZonalTrafficSubscription"
+ /subscriptions/zonalTraffic/{subscriptionId}:
+ get:
+ tags:
+ - "subscriptions"
+ description: "This operation is used for updating an individual subscription\
+ \ to zonal traffic change notification."
+ operationId: "zonalTrafficSubGetById"
+ produces:
+ - "application/json"
+ parameters:
+ - name: "subscriptionId"
+ in: "path"
+ description: "Subscription ID"
+ required: true
+ type: "string"
+ x-exportParamName: "SubscriptionId"
+ responses:
+ 200:
+ description: "Response to retrieve individual zonal traffic subscription"
+ examples:
+ application/json:
+ zonalTrafficSubscription:
+ clientCorrelator: "0123"
+ resourceURL: "http://example.com/etsi-013/location/v1/subscriptions/zonalTraffic/subscription123"
+ callbackReference:
+ notifyURL: "http://clientApp.example.com/location_notifications/123456"
+ zoneId: "zone01"
+ interestRealm: "LA"
+ userEventCriteria: "Transferring"
+ schema:
+ $ref: "#/definitions/ResponseZonalTrafficSubscription"
+ put:
+ tags:
+ - "subscriptions"
+ description: "This operation is used for updating an individual subscription\
+ \ to zonal traffic change notification."
+ operationId: "zonalTrafficSubPutById"
+ produces:
+ - "application/json"
+ parameters:
+ - name: "subscriptionId"
+ in: "path"
+ description: "Subscription ID"
+ required: true
+ type: "string"
+ x-exportParamName: "SubscriptionId"
+ - in: "body"
+ name: "zonalTrafficSubscription"
+ description: "Zonal Traffic Subscription"
+ required: true
+ schema:
+ $ref: "#/definitions/ZonalTrafficSubscription"
+ x-exportParamName: "ZonalTrafficSubscription"
+ responses:
+ 200:
+ description: "Response to update individual zonal traffic subscription"
+ examples:
+ application/json:
+ zonalTrafficSubscription:
+ clientCorrelator: "0123"
+ resourceURL: "http://example.com/etsi-013/location/v1/subscriptions/zonalTraffic/subscription123"
+ callbackReference:
+ notifyURL: "http://clientApp.example.com/location_notifications/123456"
+ zoneId: "zone01"
+ interestRealm: "LA"
+ userEventCriteria: "Transferring"
+ schema:
+ $ref: "#/definitions/ResponseZonalTrafficSubscription"
+ delete:
+ tags:
+ - "subscriptions"
+ description: "This operation is used for cancelling a subscription and stopping\
+ \ corresponding notifications."
+ operationId: "zonalTrafficSubDelById"
+ produces:
+ - "application/json"
+ parameters:
+ - name: "subscriptionId"
+ in: "path"
+ description: "Subscription ID"
+ required: true
+ type: "string"
+ x-exportParamName: "SubscriptionId"
+ responses:
+ 204:
+ description: "No content"
+ /subscriptions/userTracking:
+ get:
+ tags:
+ - "subscriptions"
+ description: "This operation is used for retrieving all active subscriptions\
+ \ to user tracking change notifications."
+ operationId: "userTrackingSubGet"
+ produces:
+ - "application/json"
+ parameters: []
+ responses:
+ 200:
+ description: "Response to retrieve user tracking subscriptions"
+ examples:
+ application/json:
+ notificationSubscriptionList:
+ userTrackingSubscription:
+ - clientCorrelator: "0123"
+ resourceURL: "http://example.com/etsi-013/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/etsi-013/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/etsi-013/location/v1/subscriptions/userTracking"
+ schema:
+ $ref: "#/definitions/ResponseUserTrackingNotificationSubscriptionList"
+ post:
+ tags:
+ - "subscriptions"
+ description: "This operation is used for creating a new subscription to user\
+ \ tracking change notification"
+ operationId: "userTrackingSubPost"
+ produces:
+ - "application/json"
+ parameters:
+ - in: "body"
+ name: "userTrackingSubscription"
+ description: "User Tracking Subscription"
+ required: true
+ schema:
+ $ref: "#/definitions/UserTrackingSubscription"
+ x-exportParamName: "UserTrackingSubscription"
+ responses:
+ 201:
+ description: "Response to create new user tracking subscription"
+ examples:
+ application/json:
+ userTrackingSubscription:
+ clientCorrelator: "0123"
+ resourceURL: "http://example.com/etsi-013/location/v1/subscriptions/userTracking/subscription123"
+ callbackReference:
+ notifyURL: "http://clientApp.example.com/location_notifications/123456"
+ address: "acr:192.0.2.1"
+ userEventCriteria: "Transferring"
+ schema:
+ $ref: "#/definitions/ResponseUserTrackingSubscription"
+ /subscriptions/userTracking/{subscriptionId}:
+ get:
+ tags:
+ - "subscriptions"
+ description: "This operation is used for retrieving an individual subscription\
+ \ to user tracking change notification."
+ operationId: "userTrackingSubGetById"
+ produces:
+ - "application/json"
+ parameters:
+ - name: "subscriptionId"
+ in: "path"
+ description: "Subscription ID"
+ required: true
+ type: "string"
+ x-exportParamName: "SubscriptionId"
+ responses:
+ 200:
+ description: "Response to retrieve individual user tracking subscription"
+ examples:
+ application/json:
+ userTrackingSubscription:
+ clientCorrelator: "0123"
+ resourceURL: "http://example.com/etsi-013/location/v1/subscriptions/userTracking/subscription123"
+ callbackReference:
+ notifyURL: "http://clientApp.example.com/location_notifications/123456"
+ address: "acr:192.0.2.1"
+ userEventCriteria: "Transferring"
+ schema:
+ $ref: "#/definitions/ResponseUserTrackingSubscription"
+ put:
+ tags:
+ - "subscriptions"
+ description: "This operation is used for updating an individual subscription\
+ \ to user tracking change notification."
+ operationId: "userTrackingSubPutById"
+ produces:
+ - "application/json"
+ parameters:
+ - name: "subscriptionId"
+ in: "path"
+ description: "Subscription ID"
+ required: true
+ type: "string"
+ x-exportParamName: "SubscriptionId"
+ - in: "body"
+ name: "userTrackingSubscription"
+ description: "User Tracking Subscription"
+ required: true
+ schema:
+ $ref: "#/definitions/UserTrackingSubscription"
+ x-exportParamName: "UserTrackingSubscription"
+ responses:
+ 200:
+ description: "Response to update individual user tracking subscription"
+ examples:
+ application/json:
+ userTrackingSubscription:
+ clientCorrelator: "0123"
+ resourceURL: "http://example.com/etsi-013/location/v1/subscriptions/userTracking/subscription123"
+ callbackReference:
+ notifyURL: "http://clientApp.example.com/location_notifications/123456"
+ address: "acr:192.0.2.1"
+ userEventCriteria: "Transferring"
+ schema:
+ $ref: "#/definitions/ResponseUserTrackingSubscription"
+ delete:
+ tags:
+ - "subscriptions"
+ description: "This operation is used for retrieving an individual subscription\
+ \ to user tracking change notification."
+ operationId: "userTrackingSubDelById"
+ produces:
+ - "application/json"
+ parameters:
+ - name: "subscriptionId"
+ in: "path"
+ description: "Subscription ID"
+ required: true
+ type: "string"
+ x-exportParamName: "SubscriptionId"
+ responses:
+ 204:
+ description: "No Content"
+ /subscriptions/zonalStatus:
+ get:
+ tags:
+ - "subscriptions"
+ description: "This operation is used for creating a new subscription to zone\
+ \ status change notification."
+ operationId: "zoneStatusGet"
+ produces:
+ - "application/json"
+ parameters: []
+ responses:
+ 200:
+ description: "Response to retrieve zone status subscriptions"
+ examples:
+ application/json:
+ notificationSubscriptionList:
+ zoneStatusSubscription:
+ - clientCorrelator: "0123"
+ resourceURL: "http://example.com/etsi-013/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/etsi-013/location/v1/subscriptions/zoneStatus/subscription124"
+ callbackReference:
+ notifyURL: "http://clientApp.example.com/location_notifications/123457"
+ zoneId: "zone02"
+ numberOfUsersAPThreshold: "50"
+ operationStatus: "Serviceable"
+ resourceURL: "http://example.com/etsi-013/location/v1/subscriptions/zoneStatus"
+ schema:
+ $ref: "#/definitions/ResponseZoneStatusNotificationSubscriptionList"
+ post:
+ tags:
+ - "subscriptions"
+ description: "This operation is used for creating a new subscription to zone\
+ \ status change notification."
+ operationId: "zoneStatusPost"
+ produces:
+ - "application/json"
+ parameters:
+ - in: "body"
+ name: "zoneStatusSubscription"
+ description: "Zone Status Subscription"
+ required: true
+ schema:
+ $ref: "#/definitions/ZoneStatusSubscription"
+ x-exportParamName: "ZoneStatusSubscription"
+ responses:
+ 201:
+ description: "Response to create new zone status subscription"
+ examples:
+ application/json:
+ zoneStatusSubscription:
+ clientCorrelator: "0123"
+ resourceURL: "http://example.com/etsi-013/location/v1/subscriptions/zoneStatus/subscription123"
+ callbackReference:
+ notifyURL: "http://clientApp.example.com/location_notifications/123456"
+ zoneId: "zone01"
+ numberOfUsersZoneThreshold: "500"
+ operationStatus: "Serviceable"
+ schema:
+ $ref: "#/definitions/ResponseZoneStatusSubscription"
+ /subscriptions/zoneStatus/{subscriptionId}:
+ get:
+ tags:
+ - "subscriptions"
+ description: "This operation is used for retrieving an individual subscription\
+ \ to zone status change notification."
+ operationId: "zoneStatusGetById"
+ produces:
+ - "application/json"
+ parameters:
+ - name: "subscriptionId"
+ in: "path"
+ description: "Subscription ID"
+ required: true
+ type: "string"
+ x-exportParamName: "SubscriptionId"
+ responses:
+ 200:
+ description: "Response to retrieve individual zone status subscription"
+ examples:
+ application/json:
+ zoneStatusSubscription:
+ clientCorrelator: "0123"
+ resourceURL: "http://example.com/etsi-013/location/v1/subscriptions/zoneStatus/subscription123"
+ callbackReference:
+ notifyURL: "http://clientApp.example.com/location_notifications/123456"
+ zoneId: "zone01"
+ numberOfUsersZoneThreshold: "500"
+ operationStatus: "Serviceable"
+ schema:
+ $ref: "#/definitions/ResponseZoneStatusSubscription2"
+ put:
+ tags:
+ - "subscriptions"
+ description: "This operation is used for updating an individual subscription\
+ \ to zone status change notification."
+ operationId: "zoneStatusPutById"
+ produces:
+ - "application/json"
+ parameters:
+ - name: "subscriptionId"
+ in: "path"
+ description: "Subscription ID"
+ required: true
+ type: "string"
+ x-exportParamName: "SubscriptionId"
+ - in: "body"
+ name: "zoneStatusSubscription"
+ description: "Zone Status Subscription"
+ required: true
+ schema:
+ $ref: "#/definitions/ZoneStatusSubscription"
+ x-exportParamName: "ZoneStatusSubscription"
+ responses:
+ 200:
+ description: "Response to update individual zone status subscription"
+ examples:
+ application/json:
+ zoneStatusSubscription:
+ clientCorrelator: "0123"
+ resourceURL: "http://example.com/etsi-013/location/v1/subscriptions/zoneStatus/subscription123"
+ callbackReference:
+ notifyURL: "http://clientApp.example.com/location_notifications/123456"
+ zoneId: "zone01"
+ numberOfUsersZoneThreshold: "500"
+ operationStatus: "Serviceable"
+ schema:
+ $ref: "#/definitions/ResponseZoneStatusSubscription2"
+ delete:
+ tags:
+ - "subscriptions"
+ description: "This operation is used for cancelling a subscription and stopping\
+ \ corresponding notifications."
+ operationId: "zoneStatusDelById"
+ produces:
+ - "application/json"
+ parameters:
+ - name: "subscriptionId"
+ in: "path"
+ description: "Subscription ID"
+ required: true
+ type: "string"
+ x-exportParamName: "SubscriptionId"
+ responses:
+ 204:
+ description: "No content"
+definitions:
+ AccessPointInfo:
+ type: "object"
+ required:
+ - "accessPointId"
+ - "connectionType"
+ - "numberOfUsers"
+ - "operationStatus"
+ - "resourceURL"
+ properties:
+ accessPointId:
+ type: "string"
+ description: "Identifier of access point,