openapi: 3.0.0 info: contact: url: https://forge.etsi.org/rep/mec/gs013-location-api title: ETSI GS MEC 013 - Location API version: 2.1.1 description: The ETSI MEC ISG MEC013 WLAN Access Information API described using OpenAPI. license: name: BSD-3-Clause url: 'https://forge.etsi.org/legal-matters' externalDocs: description: ETSI MEC013 V2.1.1 Location API url: 'http://www.etsi.org/deliver/etsi_gs/MEC/001_099/013/02.01.01_60/gs_mec013v020101p.pdf' servers: - url: 'https://localhost/location/v2' tags: - name: 'location' paths: /queries/distance: get: tags: - 'location' summary: 'UE Distance Lookup of a specific UE' description: 'UE Distance Lookup between terminals or a terminal and a location' operationId: distanceGET parameters: - $ref: '#/components/parameters/Query.Requester' - $ref: '#/components/parameters/Query.AddressMandatory' - $ref: '#/components/parameters/Query.Latitude' - $ref: '#/components/parameters/Query.Longitude' responses: '200': description: 'Successful response to a distance request' content: application/json: schema: type: object properties: terminalDistance: $ref: '#/components/schemas/TerminalDistance' '400': $ref: '#/components/responses/400' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '406': $ref: '#/components/responses/406' '429': $ref: '#/components/responses/429' x-swagger-router-controller: 'queries' /queries/users: get: tags: - 'location' summary: 'UE Location Lookup of a specific UE or group of UEs' description: 'UE Location Lookup of a specific UE or group of UEs' operationId: usersGET parameters: - $ref: '#/components/parameters/Query.ZoneId' - $ref: '#/components/parameters/Query.AccessPointId' - $ref: '#/components/parameters/Query.Address' responses: '200': description: 'Successful response to users request' content: application/json: schema: type: object properties: userList: $ref: '#/components/schemas/UserList' '400': $ref: '#/components/responses/400' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '406': $ref: '#/components/responses/406' '429': $ref: '#/components/responses/429' x-swagger-router-controller: "queries" /queries/zones: get: tags: - 'location' summary: 'Zones information Lookup' description: 'Used to get a list of identifiers for zones authorized for use by the application.' operationId: zonesGET responses: '200': description: 'Successful response to zones request' content: application/json: schema: type: object properties: zoneList: $ref: '#/components/schemas/ZoneList' '400': $ref: '#/components/responses/400' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '406': $ref: '#/components/responses/406' '429': $ref: '#/components/responses/429' x-swagger-router-controller: "queries" /queries/zones/{zoneId}: get: tags: - 'location' summary: 'Zones information Lookup' description: 'Used to get the information for an authorized zone for use by the application.' operationId: zonesGetById parameters: - $ref: '#/components/parameters/Path.ZoneId' responses: '200': description: 'Successful response to an access point Id request' content: application/json: schema: type: object properties: zoneInfo: $ref: '#/components/schemas/ZoneInfo' '400': $ref: '#/components/responses/400' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '406': $ref: '#/components/responses/406' '429': $ref: '#/components/responses/429' x-swagger-router-controller: 'queries' /queries/zones/{zoneId}/accessPoints: get: tags: - 'location' summary: 'Radio Node Location Lookup' description: 'Radio Node Location Lookup to retrieve a list of radio nodes associated to a zone.' operationId: apGET parameters: - $ref: '#/components/parameters/Path.ZoneId' - $ref: '#/components/parameters/Query.InterestRealm' responses: '200': description: 'Successful response to an access point Id request' content: application/json: schema: type: object properties: accessPointList: $ref: '#/components/schemas/AccessPointList' '400': $ref: '#/components/responses/400' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '406': $ref: '#/components/responses/406' '429': $ref: '#/components/responses/429' x-swagger-router-controller: "queries" /queries/zones/{zoneId}/accessPoints/{accessPointId}: get: tags: - 'location' summary: 'Radio Node Location Lookup' description: 'Radio Node Location Lookup to retrieve a radio node associated to a zone.' operationId: apByIdGET parameters: - $ref: '#/components/parameters/Path.ZoneId' - $ref: '#/components/parameters/Path.AccessPointId' responses: '200': description: 'Successful response to an access point Id request' content: application/json: schema: type: object properties: accessPointInfo: $ref: '#/components/schemas/AccessPointInfo' '400': $ref: '#/components/responses/400' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '406': $ref: '#/components/responses/406' '429': $ref: '#/components/responses/429' x-swagger-router-controller: 'queries' /subscriptions/area/circle: get: tags: - 'location' summary: 'Retrieves all active subscriptions to area change notifications' description: 'This operation is used for retrieving all active subscriptions to area change notifications.' operationId: areaCircleSubListGET responses: '200': description: 'Response to retrieve area subscriptions' content: application/json: schema: type: object required: - notificationSubscriptionList properties: notificationSubscriptionList: $ref: '#/components/schemas/NotificationSubscriptionList' example: notificationSubscriptionList: circleNotificationSubscription: - clientCorrelator: '0123' callbackReference: callbackData: '1234' notifyURL: 'http://clientApp.example.com/location_notifications/123456' address: 'acr:10.0.0.1' checkImmediate: true enteringLeavingCriteria: 'Entering' frequency: 10 latitude: -80.88 longitude: 41.277 radius: 500 trackingAccuracy: 10 resourceURL: 'http://meAppServer.example.com/location/v2/subscriptions/area/circle/subscription123' resourceURL: 'http://meAppServer.example.com/location/v2/subscriptions/area/circle' post: tags: - 'location' summary: 'Creates a subscription for area change notification' description: 'Creates a subscription to the Location Service for an area change notification.' operationId: areaCircleSubPOST requestBody: description: 'Subscription to be created' required: true content: application/json: schema: type: object properties: circleNotificationSubscription: $ref: '#/components/schemas/CircleNotificationSubscription' example: circleNotificationSubscription: clientCorrelator: '0123' callbackReference: callbackData: '1234' notifyURL: 'http://clientApp.example.com/location_notifications/123456' address: 'acr:10.0.0.1' checkImmediate: true enteringLeavingCriteria: 'Entering' frequency: 10 latitude: -80.88 longitude: 41.277 radius: 500 trackingAccuracy: 10 responses: '201': description: 'Successful subscription' content: application/json: schema: type: object properties: circleNotificationSubscription: $ref: '#/components/schemas/CircleNotificationSubscription' example: circleNotificationSubscription: clientCorrelator: '0123' callbackReference: callbackData: '1234' notifyURL: 'http://clientApp.example.com/location_notifications/123456' address: 'acr:10.0.0.1' checkImmediate: true enteringLeavingCriteria: 'Entering' frequency: 10 latitude: -80.88 longitude: 41.277 radius: 500 trackingAccuracy: 10 resourceURL: 'http://meAppServer.example.com/location/v2/subscriptions/area/circle/subscription123' '400': $ref: '#/components/responses/400' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '406': $ref: '#/components/responses/406' '429': $ref: '#/components/responses/429' callbacks: notification: '{$request.body#/circleNotificationSubscription.callbackReference.notifyURL}': post: summary: 'Callback POST used to send a notification' description: 'Notification from Location service, content based on subscription type' operationId: circleNotificationPOST requestBody: description: 'Subscription notification' required: true content: application/json: schema: type: object properties: subscriptionNotification: $ref: '#/components/schemas/SubscriptionNotification' example: subscriptionNotification: enteringLeavingCriteria: 'Entering' isFinalNotification: false, link: rel: CircleNotificationSubscription href: 'http://meAppServer.example.com/location/v2/subscriptions/area/circle/sub123' terminalLocation: address: 'acr:10.0.0.1' currentLocation: accuracy: 100 altitude: 1001.0 latitude: -80.86302 longitude: 41.277306 timestamp: seconds: 1483231138 nanoSeconds": 0 locationRetrievalStatus: 'Retrieved' responses: '204': $ref: '#/components/responses/204' x-swagger-router-controller: 'subscriptions' /subscriptions/area/circle/{subscriptionId}: get: tags: - 'location' summary: 'Retrieve subscription information' description: 'Get subscription information.' operationId: areaCircleSubGET parameters: - $ref: '#/components/parameters/Path.SubscrId' responses: '200': description: 'Subscription information regarding subscription notifications' content: application/json: schema: type: object required: - circleNotificationSubscription properties: circleNotificationSubscription: $ref: '#/components/schemas/CircleNotificationSubscription' example: circleNotificationSubscription: clientCorrelator: '0123' callbackReference: callbackData: '1234' notifyURL: 'http://clientApp.example.com/location_notifications/123456' address: 'acr:10.0.0.1' checkImmediate: true enteringLeavingCriteria: 'Entering' frequency: 10 latitude: -80.88 longitude: 41.277 radius: 500 trackingAccuracy: 10 resourceURL: 'http://meAppServer.example.com/location/v2/subscriptions/area/circle/subscription123' '400': $ref: '#/components/responses/400' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '406': $ref: '#/components/responses/406' '429': $ref: '#/components/responses/429' x-swagger-router-controller: 'subscriptions' put: tags: - 'location' summary: 'Updates a subscription information' description: 'Updates a subscription.' operationId: areaCircleSubPUT requestBody: description: 'Subscription to be modified' required: true content: application/json: schema: type: object properties: circleNotificationSubscription: $ref: '#/components/schemas/CircleNotificationSubscription' example: circleNotificationSubscription: clientCorrelator: '0123' callbackReference: callbackData: '1234' notifyURL: 'http://clientApp.example.com/location_notifications/123456' address: 'acr:10.0.0.1' checkImmediate: true enteringLeavingCriteria: 'Entering' frequency: 10 latitude: -80.88 longitude: 41.277 radius: 500 trackingAccuracy: 10 resourceURL: 'http://meAppServer.example.com/location/v2/subscriptions/area/circle/subscription123' parameters: - $ref: '#/components/parameters/Path.SubscrId' responses: '200': description: 'Successful subscription to response to subscription notifications' content: application/json: schema: type: object properties: circleNotificationSubscription: $ref: '#/components/schemas/CircleNotificationSubscription' example: circleNotificationSubscription: clientCorrelator: '0123' callbackReference: callbackData: '1234' notifyURL: 'http://clientApp.example.com/location_notifications/123456' address: 'acr:10.0.0.1' checkImmediate: true enteringLeavingCriteria: 'Entering' frequency: 10 latitude: -80.88 longitude: 41.277 radius: 500 trackingAccuracy: 10 resourceURL: 'http://meAppServer.example.com/location/v2/subscriptions/area/circle/subscription123' '400': $ref: '#/components/responses/400' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '406': $ref: '#/components/responses/406' '412': $ref: '#/components/responses/412' '422': $ref: '#/components/responses/422' '429': $ref: '#/components/responses/429' x-swagger-router-controller: 'subscriptions' delete: tags: - 'location' summary: 'Cancel a subscription' description: 'Method to delete a subscription.' operationId: areaCircleSubDELETE parameters: - $ref: '#/components/parameters/Path.SubscrId' responses: '204': $ref: '#/components/responses/204' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '429': $ref: '#/components/responses/429' x-swagger-router-controller: 'subscriptions' /subscriptions/distance: get: tags: - 'location' summary: 'Retrieves all active subscriptions to distance change notifications' description: 'This operation is used for retrieving all active subscriptions to a distance change notifications.' operationId: distanceSubListGET responses: '200': description: 'Response to retrieve area subscriptions' content: application/json: schema: type: object required: - notificationSubscriptionList properties: notificationSubscriptionList: $ref: '#/components/schemas/NotificationSubscriptionList' example: notificationSubscriptionList: distanceNotificationSubscription: - clientCorrelator: '0123' callbackReference: callbackData: '1234' notifyURL: 'http://clientApp.example.com/location_notifications/123456' monitoredAddress: - 'acr:10.0.0.1' - 'acr:10.0.0.2' checkImmediate: true criteria: 'AllWithinDistance' distance: 100 frequency: 10 referenceAddress: 'acr:10.0.0.3' trackingAccuracy: 10 resourceURL: 'http://meAppServer.example.com/location/v2/subscriptions/distance/sub123' resourceURL: 'http://meAppServer.example.com/location/v2/subscriptions/distance' post: tags: - 'location' summary: 'Creates a subscription for distance change notification' description: 'Creates a subscription to the Location Service for a distance change notification.' operationId: distanceSubPOST requestBody: description: 'Subscription to be created' required: true content: application/json: schema: type: object properties: distanceNotificationSubscription: $ref: '#/components/schemas/DistanceNotificationSubscription' example: distanceNotificationSubscription: clientCorrelator: '0123' callbackReference: callbackData: '1234' notifyURL: 'http://clientApp.example.com/location_notifications/123456' monitoredAddress: - 'acr:10.0.0.1' - 'acr:10.0.0.2' checkImmediate: true criteria: 'AllWithinDistance' distance: 100 frequency: 10 referenceAddress: 'acr:10.0.0.3' trackingAccuracy: 10 responses: '201': description: 'Successful subscription' content: application/json: schema: type: object properties: distanceNotificationSubscription: $ref: '#/components/schemas/DistanceNotificationSubscription' example: distanceNotificationSubscription: clientCorrelator: '0123' callbackReference: callbackData: '1234' notifyURL: 'http://clientApp.example.com/location_notifications/123456' monitoredAddress: - 'acr:10.0.0.1' - 'acr:10.0.0.2' checkImmediate: true criteria: 'AllWithinDistance' distance: 100 frequency: 10 referenceAddress: 'acr:10.0.0.3' trackingAccuracy: 10 resourceURL: 'http://meAppServer.example.com/location/v2/subscriptions/distance/subscription123' '400': $ref: '#/components/responses/400' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '406': $ref: '#/components/responses/406' '429': $ref: '#/components/responses/429' callbacks: notification: '{$request.body#/distanceNotificationSubscription.callbackReference.notifyURL}': post: summary: 'Callback POST used to send a notification' description: 'Notification from Location service, content based on subscription type' operationId: distanceNotificationPOST requestBody: description: 'Subscription notification' required: true content: application/json: schema: type: object properties: subscriptionNotification: $ref: '#/components/schemas/SubscriptionNotification' example: subscriptionNotification: distanceCriteria: 'AllWithinDistance' isFinalNotification: false, link: rel: DistanceNotificationSubscription href: 'http://meAppServer.example.com/location/v2/subscriptions/distance/sub123' terminalLocation: - address: 'acr:10.0.0.1' currentLocation: accuracy: 100 altitude: 1001.0 latitude: -80.86302 longitude: 41.277306 timestamp: seconds: 1483231138 nanoSeconds": 0 locationRetrievalStatus: 'Retrieved' - address: 'acr:10.0.0.2' currentLocation: accuracy: 100 altitude: 1001.0 latitude: -80.86301 longitude: 41.277306 timestamp: seconds: 1483231138 nanoSeconds": 0 locationRetrievalStatus: 'Retrieved' responses: '204': $ref: '#/components/responses/204' x-swagger-router-controller: "subscriptions" /subscriptions/distance/{subscriptionId}: get: tags: - 'location' summary: 'Retrieve subscription information' description: 'Get subscription information.' operationId: distanceSubGET parameters: - $ref: '#/components/parameters/Path.SubscrId' responses: '200': description: 'Subscription information regarding subscription notifications' content: application/json: schema: type: object required: - distanceNotificationSubscription properties: distanceNotificationSubscription: $ref: '#/components/schemas/DistanceNotificationSubscription' example: distanceNotificationSubscription: clientCorrelator: '0123' callbackReference: callbackData: '1234' notifyURL: 'http://clientApp.example.com/location_notifications/123456' monitoredAddress: - 'acr:10.0.0.1' - 'acr:10.0.0.2' checkImmediate: true criteria: 'AllWithinDistance' distance: 100 frequency: 10 referenceAddress: 'acr:10.0.0.3' trackingAccuracy: 10 resourceURL: 'http://meAppServer.example.com/location/v2/subscriptions/distance/subscription123' '400': $ref: '#/components/responses/400' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '406': $ref: '#/components/responses/406' '429': $ref: '#/components/responses/429' x-swagger-router-controller: 'subscriptions' put: tags: - 'location' summary: 'Updates a subscription information' description: 'Updates a subscription.' operationId: distanceSubPUT requestBody: description: 'Subscription to be modified' required: true content: application/json: schema: type: object properties: distanceNotificationSubscription: $ref: '#/components/schemas/DistanceNotificationSubscription' example: distanceNotificationSubscription: clientCorrelator: '0123' callbackReference: callbackData: '1234' notifyURL: 'http://clientApp.example.com/location_notifications/123456' monitoredAddress: - 'acr:10.0.0.1' - 'acr:10.0.0.2' checkImmediate: true criteria: 'AllWithinDistance' distance: 100 frequency: 10 referenceAddress: 'acr:10.0.0.3' trackingAccuracy: 10 resourceURL: 'http://meAppServer.example.com/location/v2/subscriptions/distance/subscription123' parameters: - $ref: '#/components/parameters/Path.SubscrId' responses: '200': description: 'Successful subscription to response to subscription notifications' content: application/json: schema: type: object properties: distanceNotificationSubscription: $ref: '#/components/schemas/DistanceNotificationSubscription' example: distanceNotificationSubscription: clientCorrelator: '0123' callbackReference: callbackData: '1234' notifyURL: 'http://clientApp.example.com/location_notifications/123456' monitoredAddress: - 'acr:10.0.0.1' - 'acr:10.0.0.2' checkImmediate: true criteria: 'AllWithinDistance' distance: 100 frequency: 10 referenceAddress: 'acr:10.0.0.3' trackingAccuracy: 10 resourceURL: 'http://meAppServer.example.com/location/v2/subscriptions/distance/subscription123' '400': $ref: '#/components/responses/400' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '406': $ref: '#/components/responses/406' '412': $ref: '#/components/responses/412' '422': $ref: '#/components/responses/422' '429': $ref: '#/components/responses/429' x-swagger-router-controller: 'subscriptions' delete: tags: - 'location' summary: 'Cancel a subscription' description: 'Method to delete a subscription.' operationId: distanceSubDELETE parameters: - $ref: '#/components/parameters/Path.SubscrId' responses: '204': $ref: '#/components/responses/204' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '429': $ref: '#/components/responses/429' x-swagger-router-controller: 'subscriptions' /subscriptions/periodic: get: tags: - 'location' summary: 'Retrieves all active subscriptions to periodic notifications' description: 'This operation is used for retrieving all active subscriptions to periodic notifications.' operationId: periodicSubListGET responses: '200': description: 'Response to retrieve area subscriptions' content: application/json: schema: type: object required: - notificationSubscriptionList properties: notificationSubscriptionList: $ref: '#/components/schemas/NotificationSubscriptionList' example: notificationSubscriptionList: periodicNotificationSubscription: - clientCorrelator: '0123' callbackReference: callbackData: '1234' notifyURL: 'http://clientApp.example.com/location_notifications/123456' address: 'acr:10.0.0.1' frequency: 10 requestedAccuracy: 10 resourceURL: 'http://meAppServer.example.com/location/v2/subscriptions/periodic/subscription123' resourceURL: 'http://meAppServer.example.com/location/v2/subscriptions/periodic' post: tags: - 'location' summary: 'Creates a subscription for periodic notification' description: 'Creates a subscription to the Location Service for a periodic notification.' operationId: periodicSubPOST requestBody: description: Subscription to be created required: true content: application/json: schema: type: object properties: periodicNotificationSubscription: $ref: '#/components/schemas/PeriodicNotificationSubscription' example: periodicNotificationSubscription: clientCorrelator: '0123' callbackReference: callbackData: '1234' notifyURL: 'http://clientApp.example.com/location_notifications/123456' address: 'acr:10.0.0.1' frequency: 10 requestedAccuracy: 10 responses: '201': description: 'Successful subscription' content: application/json: schema: type: object properties: periodicNotificationSubscription: $ref: '#/components/schemas/PeriodicNotificationSubscription' example: periodicNotificationSubscription: clientCorrelator: '0123' callbackReference: callbackData: '1234' notifyURL: 'http://clientApp.example.com/location_notifications/123456' address: 'acr:10.0.0.1' frequency: 10 requestedAccuracy: 10 resourceURL: 'http://meAppServer.example.com/location/v2/subscriptions/periodic/subscription123' '400': $ref: '#/components/responses/400' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '406': $ref: '#/components/responses/406' '429': $ref: '#/components/responses/429' callbacks: notification: '{$request.body#/periodicNotificationSubscription.callbackReference.notifyURL}': post: summary: 'Callback POST used to send a notification' description: 'Notification from Location service, content based on subscription type' operationId: periodicNotificationPOST requestBody: description: 'Subscription notification' required: true content: application/json: schema: type: object properties: subscriptionNotification: $ref: '#/components/schemas/SubscriptionNotification' example: subscriptionNotification: isFinalNotification: false, link: rel: PeriodicNotificationSubscription href: 'http://meAppServer.example.com/location/v2/subscriptions/periodic/sub123' terminalLocation: address: 'acr:10.0.0.1' currentLocation: accuracy: 100 altitude: 1001.0 latitude: -80.86302 longitude: 41.277306 timestamp: seconds: 1483231138 nanoSeconds": 0 locationRetrievalStatus: 'Retrieved' responses: '204': $ref: '#/components/responses/204' x-swagger-router-controller: 'subscriptions' /subscriptions/periodic/{subscriptionId}: get: tags: - 'location' summary: 'Retrieve subscription information' description: 'Get subscription information.' operationId: periodicSubGET parameters: - $ref: '#/components/parameters/Path.SubscrId' responses: '200': description: 'Subscription information regarding subscription notifications' content: application/json: schema: type: object required: - periodicNotificationSubscription properties: periodicNotificationSubscription: $ref: '#/components/schemas/PeriodicNotificationSubscription' example: periodicNotificationSubscription: clientCorrelator: '0123' callbackReference: callbackData: '1234' notifyURL: 'http://clientApp.example.com/location_notifications/123456' address: 'acr:10.0.0.1' frequency: 10 requestedAccuracy: 10 resourceURL: 'http://meAppServer.example.com/location/v2/subscriptions/periodic/subscription123' '400': $ref: '#/components/responses/400' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '406': $ref: '#/components/responses/406' '429': $ref: '#/components/responses/429' x-swagger-router-controller: 'subscriptions' put: tags: - 'location' summary: 'Updates a subscription information' description: 'Updates a subscription.' operationId: periodicSubPUT requestBody: description: 'Subscription to be modified' required: true content: application/json: schema: type: object properties: periodicNotificationSubscription: $ref: '#/components/schemas/PeriodicNotificationSubscription' example: periodicNotificationSubscription: clientCorrelator: '0123' callbackReference: callbackData: '1234' notifyURL: 'http://clientApp.example.com/location_notifications/123456' address: 'acr:10.0.0.1' frequency: 10 requestedAccuracy: 10 resourceURL: 'http://meAppServer.example.com/location/v2/subscriptions/periodic/subscription123' parameters: - $ref: '#/components/parameters/Path.SubscrId' responses: '200': description: 'Successful subscription to response to subscription notifications' content: application/json: schema: type: object properties: periodicNotificationSubscription: $ref: '#/components/schemas/PeriodicNotificationSubscription' example: periodicNotificationSubscription: clientCorrelator: '0123' callbackReference: callbackData: '1234' notifyURL: 'http://clientApp.example.com/location_notifications/123456' address: 'acr:10.0.0.1' frequency: 10 requestedAccuracy: 10 resourceURL: 'http://meAppServer.example.com/location/v2/subscriptions/periodic/subscription123' '400': $ref: '#/components/responses/400' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '406': $ref: '#/components/responses/406' '412': $ref: '#/components/responses/412' '422': $ref: '#/components/responses/422' '429': $ref: '#/components/responses/429' x-swagger-router-controller: "subscriptions" delete: tags: - 'location' summary: 'Cancel a subscription' description: 'Method to delete a subscription.' operationId: periodicSubDELETE parameters: - $ref: '#/components/parameters/Path.SubscrId' responses: '204': $ref: '#/components/responses/204' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '429': $ref: '#/components/responses/429' x-swagger-router-controller: 'subscriptions' /subscriptions/userTracking: get: tags: - 'location' summary: 'Retrieves all active subscriptions to user tracking notifications' description: 'This operation is used for retrieving all active subscriptions to user tracking notifications.' operationId: userTrackingSubListGET responses: '200': description: "Response to retrieve user tracking subscriptions" content: application/json: schema: type: object required: - notificationSubscriptionList properties: notificationSubscriptionList: $ref: '#/components/schemas/NotificationSubscriptionList' example: notificationSubscriptionList: userTrackingSubscription: - clientCorrelator: '0123' resourceURL: 'http://meAppServer.example.com/location/v2/subscriptions/userTracking/subscription123' callbackReference: notifyURL: 'http://clientApp.example.com/location_notifications/123456' address: 'acr:192.0.2.1' userEventCriteria: ["Transferring"] - clientCorrelator: '0124' resourceURL: 'http://meAppServer.example.com/location/v2/subscriptions/userTracking/subscription124' callbackReference: notifyURL: 'http://clientApp.example.com/location_notifications/123456' address: 'acr:192.0.2.2' userEventCriteria: ["Transferring"] resourceURL: 'http://meAppServer.example.com/location/v2/subscriptions/userTracking' post: tags: - 'location' summary: 'Creates a subscription for user tracking notification' description: 'Creates a subscription to the Location Service for user tracking change notification.' operationId: userTrackingSubPOST requestBody: description: 'Subscription to be created' required: true content: application/json: schema: type: object properties: userTrackingSubscription: $ref: '#/components/schemas/UserTrackingSubscription' example: userTrackingSubscription: clientCorrelator: '0123' callbackReference: notifyURL: 'http://my.callback.com/location_notifications/some-id' address: 'acr:10.0.0.1' userEventCriteria: ["Transferring"] responses: '201': description: 'Successful subscription' content: application/json: schema: type: object properties: userTrackingSubscription: $ref: '#/components/schemas/UserTrackingSubscription' example: userTrackingSubscription: clientCorrelator: '0123' callbackReference: notifyURL: 'http://my.callback.com/location_notifications/some-id' address: 'acr:10.0.0.1' userEventCriteria: ["Transferring"] resourceURL: 'http://meAppServer.example.com/location/v2/subscriptions/userTracking/sub123' '400': $ref: '#/components/responses/400' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '406': $ref: '#/components/responses/406' '429': $ref: '#/components/responses/429' callbacks: notification: '{$request.body#/userTrackingSubscription.callbackReference.notifyURL}': post: summary: 'Callback POST used to send a notification' description: 'Notification from Location service, content based on subscription type' operationId: userTrackingNotificationPOST requestBody: description: 'Subscription notification' required: true content: application/json: schema: type: object properties: zonalPresenceNotification: $ref: '#/components/schemas/ZonalPresenceNotification' example: zonalPresenceNotification: clientCorrelator: '0123' zoneId: 'zone01' address: 'acr:10.0.0.1' userEventType: 'Transferring' currentAccessPointId: 'ap2' previousAccessPointId: 'ap1' timestamp: seconds: 1483231138 nanoseconds: 0 link: rel: UserTrackingSubscription href: 'http://meAppServer.example.com/location/v2/subscriptions/userTracking/sub123' responses: '204': $ref: '#/components/responses/204' x-swagger-router-controller: 'subscriptions' /subscriptions/userTracking/{subscriptionId}: get: tags: - 'location' summary: 'Retrieve subscription information' description: 'Get subscription information.' operationId: userTrackingSubGET parameters: - $ref: '#/components/parameters/Path.SubscrId' responses: '200': description: 'Subscription information regarding subscription notifications' content: application/json: schema: type: object required: - userTrackingSubscription properties: userTrackingSubscription: $ref: '#/components/schemas/UserTrackingSubscription' example: userTrackingSubscription: clientCorrelator: '0123' callbackReference: notifyURL: 'http://my.callback.com/location_notifications/some-id' address: 'acr:10.0.0.1' userEventCriteria: ["Transferring"] resourceURL: 'http://meAppServer.example.com/location/v2/subscriptions/userTracking/sub123' '400': $ref: '#/components/responses/400' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '406': $ref: '#/components/responses/406' '429': $ref: '#/components/responses/429' x-swagger-router-controller: 'subscriptions' put: tags: - 'location' summary: 'Updates a subscription information' description: 'Updates a subscription.' operationId: userTrackingSubPUT requestBody: description: 'Subscription to be modified' required: true content: application/json: schema: type: object properties: userTrackingSubscription: $ref: '#/components/schemas/UserTrackingSubscription' example: userTrackingSubscription: clientCorrelator: '0123' callbackReference: notifyURL: 'http://my.callback.com/location_notifications/some-id' address: 'acr:10.0.0.1' userEventCriteria: ["Transferring"] resourceURL: 'http://meAppServer.example.com/location/v2/subscriptions/userTracking/sub123' parameters: - $ref: '#/components/parameters/Path.SubscrId' responses: '200': description: 'Successful subscription to response to subscription notifications' content: application/json: schema: type: object properties: userTrackingSubscription: $ref: '#/components/schemas/UserTrackingSubscription' example: userTrackingSubscription: clientCorrelator: '0123' callbackReference: notifyURL: 'http://my.callback.com/location_notifications/some-id' address: 'acr:10.0.0.1' userEventCriteria: ["Transferring"] resourceURL: 'http://meAppServer.example.com/location/v2/subscriptions/userTracking/sub123' '400': $ref: '#/components/responses/400' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '406': $ref: '#/components/responses/406' '412': $ref: '#/components/responses/412' '422': $ref: '#/components/responses/422' '429': $ref: '#/components/responses/429' x-swagger-router-controller: 'subscriptions' delete: tags: - 'location' summary: 'Cancel a subscription' description: 'Method to delete a subscription.' operationId: userTrackingSubDELETE parameters: - $ref: '#/components/parameters/Path.SubscrId' responses: '204': $ref: '#/components/responses/204' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '429': $ref: '#/components/responses/429' x-swagger-router-controller: 'subscriptions' /subscriptions/zonalTraffic: get: tags: - 'location' summary: 'Retrieves all active subscriptions to zonal traffic notifications' description: 'This operation is used for retrieving all active subscriptions to zonal traffic change notifications.' operationId: zonalTrafficSubListGET responses: '200': description: 'Response to retrieve zonal traffic subscriptions' content: application/json: schema: type: object required: - notificationSubscriptionList properties: notificationSubscriptionList: $ref: '#/components/schemas/NotificationSubscriptionList' example: notificationSubscriptionList: zonalTrafficSubscription: - clientCorrelator: '0123' resourceURL: 'http://meAppServer.example.com/location/v2/subscriptions/zonalTraffic/subscription123' callbackReference: notifyURL: 'http://clientApp.example.com/location_notifications/123456' zoneId: 'zone01' userEventCriteria: ["Transferring"] - clientCorrelator: '0124' resourceURL: 'http://meAppServer.example.com/location/v2/subscriptions/zonalTraffic/subscription124' callbackReference: notifyURL: 'http://clientApp.example.com/location_notifications/123456' zoneId: 'zone02' userEventCriteria: ["Transferring"] resourceURL: 'http://meAppServer.example.com/location/v2/subscriptions/zonalTraffic' post: tags: - 'location' summary: 'Creates a subscription for zonal traffic notification' description: 'Creates a subscription to the Location Service for zonal traffic change notification.' operationId: zonalTrafficSubPOST requestBody: description: 'Subscription to be created' required: true content: application/json: schema: type: object properties: zonalTrafficSubscription: $ref: '#/components/schemas/ZonalTrafficSubscription' example: zonalTrafficSubscription: clientCorrelator: '0123' callbackReference: notifyURL: 'http://my.callback.com/location_notifications/some-id' zoneId: 'zone01' userEventCriteria: ["Transferring"] responses: '201': description: 'Successful subscription' content: application/json: schema: type: object properties: zonalTrafficSubscription: $ref: '#/components/schemas/ZonalTrafficSubscription' example: zonalTrafficSubscription: clientCorrelator: '0123' callbackReference: notifyURL: 'http://my.callback.com/location_notifications/some-id' zoneId: 'zone01' userEventCriteria: ["Transferring"] resourceURL: 'http://meAppServer.example.com/location/v2/subscriptions/zonalTraffic/sub123' '400': $ref: '#/components/responses/400' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '406': $ref: '#/components/responses/406' '429': $ref: '#/components/responses/429' callbacks: notification: '{$request.body#/zonalTrafficSubscription.callbackReference.notifyURL}': post: summary: 'Callback POST used to send a notification' description: 'Notification from Location service, content based on subscription type' operationId: zonalTrafficNotificationPOST requestBody: description: 'Subscription notification' required: true content: application/json: schema: type: object properties: zonalPresenceNotification: $ref: '#/components/schemas/ZonalPresenceNotification' example: zonalPresenceNotification: clientCorrelator: '0123' zoneId: 'zone01' address: 'acr:10.0.0.1' userEventType: 'Transferring' currentAccessPointId: 'ap2' previousAccessPointId: 'ap1' timestamp: seconds: 1483231138 nanoseconds: 0 link: rel: ZonalTrafficSubscription href: 'http://meAppServer.example.com/location/v2/subscriptions/zonalTraffic/sub123' responses: '204': $ref: '#/components/responses/204' x-swagger-router-controller: 'subscriptions' /subscriptions/zonalTraffic/{subscriptionId}: get: tags: - 'location' summary: 'Retrieve subscription information' description: 'Get subscription information.' operationId: zonalTrafficSubGET parameters: - $ref: '#/components/parameters/Path.SubscrId' responses: '200': description: 'Subscription information regarding subscription notifications' content: application/json: schema: type: object required: - zonalTrafficSubscription properties: zonalTrafficSubscription: $ref: '#/components/schemas/ZonalTrafficSubscription' example: zonalTrafficSubscription: clientCorrelator: '0123' callbackReference: notifyURL: 'http://my.callback.com/location_notifications/some-id' zoneId: 'zone01' userEventCriteria: ["Transferring"] resourceURL: 'http://meAppServer.example.com/location/v2/subscriptions/zonalTraffic/sub123' '400': $ref: '#/components/responses/400' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '406': $ref: '#/components/responses/406' '429': $ref: '#/components/responses/429' x-swagger-router-controller: "subscriptions" put: tags: - 'location' summary: 'Updates a subscription information' description: 'Updates a subscription.' operationId: zonalTrafficSubPUT requestBody: description: 'Subscription to be modified' required: true content: application/json: schema: type: object properties: zonalTrafficSubscription: $ref: '#/components/schemas/ZonalTrafficSubscription' example: zonalTrafficSubscription: clientCorrelator: '0123' callbackReference: notifyURL: 'http://my.callback.com/location_notifications/some-id' zoneId: 'zone01' userEventCriteria: ["Transferring"] resourceURL: 'http://meAppServer.example.com/location/v2/subscriptions/zonalTraffic/sub123' parameters: - $ref: '#/components/parameters/Path.SubscrId' responses: '200': description: 'Successful subscription to response to subscription notifications' content: application/json: schema: type: object properties: zonalTrafficSubscription: $ref: '#/components/schemas/ZonalTrafficSubscription' example: zonalTrafficSubscription: clientCorrelator: '0123' callbackReference: notifyURL: 'http://my.callback.com/location_notifications/some-id' zoneId: 'zone01' userEventCriteria: ["Transferring"] resourceURL: 'http://meAppServer.example.com/location/v2/subscriptions/zonalTraffic/sub123' '400': $ref: '#/components/responses/400' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '406': $ref: '#/components/responses/406' '412': $ref: '#/components/responses/412' '422': $ref: '#/components/responses/422' '429': $ref: '#/components/responses/429' x-swagger-router-controller: 'subscriptions' delete: tags: - 'location' summary: 'Cancel a subscription' description: 'Method to delete a subscription.' operationId: zonalTrafficSubDELETE parameters: - $ref: '#/components/parameters/Path.SubscrId' responses: '204': $ref: '#/components/responses/204' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '429': $ref: '#/components/responses/429' x-swagger-router-controller: 'subscriptions' /subscriptions/zoneStatus: get: tags: - 'location' summary: 'Retrieves all active subscriptions to zone status notifications' description: 'This operation is used for retrieving all active subscriptions to zone status change notifications.' operationId: zoneStatusSubListGET responses: '200': description: 'Response to retrieve zone status subscriptions' content: application/json: schema: type: object required: - notificationSubscriptionList properties: notificationSubscriptionList: $ref: '#/components/schemas/NotificationSubscriptionList' example: notificationSubscriptionList: zoneStatusSubscription: - clientCorrelator: '0123' resourceURL: 'http://example.com/exampleAPI/location/v2/subscriptions/zoneStatus/subscription123' callbackReference: notifyURL: 'http://clientApp.example.com/location_notifications/123456' zoneId: 'zone01' numberOfUsersZoneThreshold: 500 operationStatus: ['Serviceable'] resourceURL: 'http://meAppServer.example.com/location/v2/subscriptions/zoneStatus' post: tags: - 'location' summary: 'Creates a subscription for zone status notification' description: 'Creates a subscription to the Location Service for zone status change notification.' operationId: zoneStatusSubPOST requestBody: description: 'Subscription to be created' required: true content: application/json: schema: type: object properties: zoneStatusSubscription: $ref: '#/components/schemas/ZoneStatusSubscription' example: zoneStatusSubscription: clientCorrelator: '0123' callbackReference: notifyURL: 'http://my.callback.com/location_notifications/some-id' zoneId: 'zone01' numberOfUsersZoneThreshold: 500 operationStatus: ['Serviceable'] responses: '201': description: 'Successful subscription' content: application/json: schema: type: object properties: zoneStatusSubscription: $ref: '#/components/schemas/ZoneStatusSubscription' example: zoneStatusSubscription: clientCorrelator: '0123' callbackReference: notifyURL: 'http://my.callback.com/location_notifications/some-id' zoneId: 'zone01' numberOfUsersZoneThreshold: 500 operationStatus: ['Serviceable'] resourceURL: 'http://meAppServer.example.com/location/v2/subscriptions/zoneStatus/sub123' '400': $ref: '#/components/responses/400' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '406': $ref: '#/components/responses/406' '429': $ref: '#/components/responses/429' callbacks: notification: '{$request.body#/zoneStatusSubscription.callbackReference.notifyURL}': post: summary: 'Callback POST used to send a notification' description: 'Notification from Location service, content based on subscription type' operationId: zoneStatusNotificationPOST requestBody: description: 'Subscription notification' required: true content: application/json: schema: type: object properties: zoneStatusNotification: $ref: '#/components/schemas/ZoneStatusNotification' example: zoneStatusNotification: clientCorrelator: '0123' zoneId: 'zone01' accessPointId: 'poa1' operationStatus: 'Serviceable' numberOfUsersInZone: '20' numberOfUsersInAP: '12' timestamp: seconds: 1483231138 nanoseconds: 0 link: rel: ZoneStatusSubscription href: 'http://meAppServer.example.com/location/v2/subscriptions/zoneStatus/sub123' responses: '204': $ref: '#/components/responses/204' x-swagger-router-controller: 'subscriptions' /subscriptions/zoneStatus/{subscriptionId}: get: tags: - 'location' summary: 'Retrieve subscription information' description: 'Get subscription information.' operationId: zoneStatusSubGET parameters: - $ref: '#/components/parameters/Path.SubscrId' responses: '200': description: 'Subscription information regarding subscription notifications' content: application/json: schema: type: object required: - zoneStatusSubscription properties: zoneStatusSubscription: $ref: '#/components/schemas/ZoneStatusSubscription' example: zoneStatusSubscription: clientCorrelator: '0123' callbackReference: notifyURL: 'http://my.callback.com/location_notifications/some-id' zoneId: 'zone01' numberOfUsersZoneThreshold: 500 operationStatus: ['Serviceable'] resourceURL: 'http://meAppServer.example.com/location/v2/subscriptions/zoneStatus/sub123' '400': $ref: '#/components/responses/400' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '406': $ref: '#/components/responses/406' '429': $ref: '#/components/responses/429' x-swagger-router-controller: "subscriptions" put: tags: - 'location' summary: 'Updates a subscription information' description: 'Updates a subscription.' operationId: zoneStatusSubPUT requestBody: description: 'Subscription to be modified' required: true content: application/json: schema: type: object properties: zoneStatusSubscription: $ref: '#/components/schemas/ZoneStatusSubscription' example: zoneStatusSubscription: clientCorrelator: '0123' callbackReference: notifyURL: 'http://my.callback.com/location_notifications/some-id' zoneId: 'zone01' numberOfUsersZoneThreshold: 500 operationStatus: ['Serviceable'] resourceURL: 'http://meAppServer.example.com/location/v2/subscriptions/zoneStatus/sub123' parameters: - $ref: '#/components/parameters/Path.SubscrId' responses: '200': description: 'Successful subscription to response to subscription notifications' content: application/json: schema: type: object properties: zoneStatusSubscription: $ref: '#/components/schemas/ZoneStatusSubscription' example: zoneStatusSubscription: clientCorrelator: '0123' callbackReference: notifyURL: 'http://my.callback.com/location_notifications/some-id' zoneId: 'zone01' numberOfUsersZoneThreshold: 500 operationStatus: ['Serviceable'] resourceURL: 'http://meAppServer.example.com/location/v2/subscriptions/zoneStatus/sub123' '400': $ref: '#/components/responses/400' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '406': $ref: '#/components/responses/406' '412': $ref: '#/components/responses/412' '422': $ref: '#/components/responses/422' '429': $ref: '#/components/responses/429' x-swagger-router-controller: 'subscriptions' delete: tags: - 'location' summary: 'Cancel a subscription' description: 'Method to delete a subscription.' operationId: zoneStatusSubDELETE parameters: - $ref: '#/components/parameters/Path.SubscrId' responses: '204': $ref: '#/components/responses/204' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '429': $ref: '#/components/responses/429' x-swagger-router-controller: 'subscriptions' components: responses: 200: description: 'OK' 204: description: 'No Content' 400: description: 'Bad Request : used to indicate that incorrect parameters were passed to the request.' content: application/problem+json: schema: $ref: '#/components/schemas/ProblemDetails' 401: description: 'Unauthorized : used when the client did not submit credentials.' content: application/problem+json: schema: $ref: '#/components/schemas/ProblemDetails' 403: description: 'Forbidden : operation is not allowed given the current status of the resource.' content: application/problem+json: schema: $ref: '#/components/schemas/ProblemDetails' 404: description: 'Not Found : used when a client provided a URI that cannot be mapped to a valid resource URI.' content: application/problem+json: schema: $ref: '#/components/schemas/ProblemDetails' 406: description: 'Not Acceptable : used to indicate that the server cannot provide the any of the content formats supported by the client.' content: application/problem+json: schema: $ref: '#/components/schemas/ProblemDetails' 412: description: 'Precondition failed : used when a condition has failed during conditional requests, e.g. when using ETags to avoid write conflicts when using PUT' content: application/problem+json: schema: $ref: '#/components/schemas/ProblemDetails' 414: description: 'URI Too Long : used to indicate that the server is refusing to process the request because the request URI is longer than the server is willing or able to process.' content: application/problem+json: schema: $ref: '#/components/schemas/ProblemDetails' 415: description: 'Unsupported Media Type : used to indicate that the server or the client does not support the content type of the entity body.' content: application/problem+json: schema: $ref: '#/components/schemas/ProblemDetails' 422: description: 'Unprocessable Entity : used to indicate that the server understands the content type of the request entity and that the syntax of the request entity is correct but that the server is unable to process the contained instructions. This error condition can occur if an JSON request body is syntactically correct but semantically incorrect, for example if the target area for the request is considered too large. This error condition can also occur if the capabilities required by the request are not supported.' content: application/problem+json: schema: $ref: '#/components/schemas/ProblemDetails' example: application/problem+json: type: 'https://meAppServer.example.com/rni/v2/probs/too-many targets' title: Too many targets status: '422' detail: The target area for the request is considered too large instance: /meAppClient.example.com/77777/msgs/abc 429: description: 'Too Many Requests : used when a rate limiter has triggered.' content: application/problem+json: schema: $ref: '#/components/schemas/ProblemDetails' parameters: Path.AccessPointId: name: accessPointId in: path description: 'Identifier of access Point' required: true schema: type: string x-exportParamName: AccessPointId Path.SubscrId: name: subscriptionId in: path description: 'Subscription Identifier, specifically the "self" returned in the subscription request' required: true schema: type: string format: uri x-exportParamName: SubscriptionId Path.ZoneId: name: zoneId in: path description: 'Indentifier of zone' required: true schema: type: string x-exportParamName: ZoneId Query.AccessPointId: name: accessPointId in: query description: Identifier of access point required: false schema: type: array items: type: string x-exportParamName: AccessPointId Query.Address: name: address in: query description: 'address of users (e.g. "sip" URI, "tel" URI, "acr" URI)' required: false schema: type: array items: type: string x-exportParamName: Address Query.AddressMandatory: name: address in: query description: 'address of users (e.g. "sip" URI, "tel" URI, "acr" URI)' required: true schema: type: array items: type: string x-exportParamName: AddressMandatory Query.InterestRealm: name: interestRealm in: query description: 'Interest realm of access point (e.g. geographical area, a type of industry etc.).' required: false schema: type: string x-exportParamName: InterestRealm Query.Latitude: name: latitude in: query description: Latitude geo position required: false schema: type: number format: float x-exportParamName: Latitude Query.Longitude: name: longitude in: query description: Longitude geo position required: false schema: type: number format: float x-exportParamName: Longitude Query.Requester: name: requester in: query description: Entity that is requesting the information required: false schema: type: string x-exportParamName: Requester Query.ZoneId: name: zoneId in: query description: Identifier of zone required: false schema: type: array items: type: string x-exportParamName: ZoneId schemas: AccessPointInfo: description: A type containing access point information. properties: accessPointId: description: Identifier of access point. type: string x-etsi-mec-cardinality: 1 x-etsi-mec-origin-type: string connectionType: $ref: '#/components/schemas/ConnectionType' interestRealm: description: Interest realm of access point. type: string x-etsi-mec-cardinality: 0..1 x-etsi-mec-origin-type: string locationInfo: $ref: '#/components/schemas/LocationInfo' numberOfUsers: description: Number of users currently on the access point. type: integer x-etsi-mec-cardinality: 1 x-etsi-mec-origin-type: integer operationStatus: $ref: '#/components/schemas/OperationStatus' resourceURL: description: Self referring URL type: string x-etsi-mec-cardinality: 1 x-etsi-mec-origin-type: anyURI timezone: description: Time zone of access point. type: string x-etsi-mec-cardinality: 0..1 x-etsi-mec-origin-type: dateTimeStamp required: - accessPointId - connectionType - operationStatus - numberOfUsers - resourceURL type: object AccessPointList: description: A type containing list of access points. properties: accessPoint: description: Collection of the access point information list. items: $ref: '#/components/schemas/AccessPointInfo' type: array x-etsi-mec-cardinality: 0..N x-etsi-mec-origin-type: AccessPointInfo resourceURL: description: Self referring URL type: string x-etsi-mec-cardinality: 1 x-etsi-mec-origin-type: anyURI zoneId: description: Identifier of zone type: string x-etsi-mec-cardinality: 1 x-etsi-mec-origin-type: string required: - zoneId - resourceURL type: object CallbackReference: properties: callbackData: description: Data the application can register with the server when subscribing to notifications, and that are passed back unchanged in each of the related notifications. These data can be used by the application in the processing of the notification, e.g. for correlation purposes. type: string x-etsi-mec-cardinality: 0..1 x-etsi-mec-origin-type: string notificationFormat: $ref: '#/components/schemas/NotificationFormat' notifyURL: description: Notify Callback URL type: string x-etsi-mec-cardinality: '1' x-etsi-mec-origin-type: anyURI required: - notifyURL type: object CircleNotificationSubscription: description: A type containing data for notifications, when the area is defined as a circle. properties: address: description: Address of terminals to monitor (e.g. "sip" URI, "tel" URI, "acr" URI) items: type: string type: array x-etsi-mec-cardinality: 1..N x-etsi-mec-origin-type: anyURI callbackReference: $ref: '#/components/schemas/CallbackReference' checkImmediate: description: Check location immediately after establishing notification. type: boolean x-etsi-mec-cardinality: 1 x-etsi-mec-origin-type: boolean clientCorrelator: description: A correlator that the client can use to tag this particular resource representation during a request to create a resource on the server. type: string x-etsi-mec-cardinality: 0..1 x-etsi-mec-origin-type: string count: description: Maximum number of notifications per individual address. For no maximum, either do not include this element or specify a value of zero. Default value is 0. type: integer x-etsi-mec-cardinality: 0..1 x-etsi-mec-origin-type: int duration: description: "Period of time (in seconds) notifications are provided for. If set to \u201C0\u201D (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." type: integer x-etsi-mec-cardinality: 0..1 x-etsi-mec-origin-type: int enteringLeavingCriteria: $ref: '#/components/schemas/EnteringLeavingCriteria' frequency: description: Maximum frequency (in seconds) of notifications per subscription (can also be considered minimum time between notifications). type: integer x-etsi-mec-cardinality: 1 x-etsi-mec-origin-type: int latitude: description: Latitude of center point. format: float type: number x-etsi-mec-cardinality: 1 x-etsi-mec-origin-type: float link: description: Link to other resources that are in relationship with the resource. items: $ref: '#/components/schemas/Link' type: array x-etsi-mec-cardinality: 0..N x-etsi-mec-origin-type: Link longitude: description: Longitude of center point. format: float type: number x-etsi-mec-cardinality: 1 x-etsi-mec-origin-type: float radius: description: Radius circle around center point in meters. format: float type: number x-etsi-mec-cardinality: 1 x-etsi-mec-origin-type: float requester: description: Identifies the entity that is requesting the information (e.g. "sip" URI, "tel" URI, "acr" URI) type: string x-etsi-mec-cardinality: 0..1 x-etsi-mec-origin-type: anyURI resourceURL: description: Self referring URL type: string x-etsi-mec-cardinality: 0..1 x-etsi-mec-origin-type: anyURI trackingAccuracy: description: Number of meters of acceptable error in tracking distance. format: float type: number x-etsi-mec-cardinality: 1 x-etsi-mec-origin-type: float required: - callbackReference - address - latitude - longitude - radius - trackingAccuracy - enteringLeavingCriteria - checkImmediate - frequency type: object ConnectionType: description: The connection type for the access point enum: - Femto - LTE-femto - Smallcell - LTE-smallcell - Wifi - Pico - Micro - Macro - Wimax - Unknown type: string DistanceCriteria: enum: - AllWithinDistance - AnyWithinDistance - AllBeyondDistance - AnyBeyondDistance type: string DistanceNotificationSubscription: description: A type containing data for distance subscription, with reference to other devices. properties: callbackReference: $ref: '#/components/schemas/CallbackReference' checkImmediate: description: Check location immediately after establishing notification. type: boolean x-etsi-mec-cardinality: 1 x-etsi-mec-origin-type: boolean clientCorrelator: description: A correlator that the client can use to tag this particular resource representation during a request to create a resource on the server. type: string x-etsi-mec-cardinality: 0..1 x-etsi-mec-origin-type: string count: description: Maximum number of notifications per individual address. For no maximum, either do not include this element or specify a value of zero. Default value is 0. type: integer x-etsi-mec-cardinality: 0..1 x-etsi-mec-origin-type: int criteria: $ref: '#/components/schemas/DistanceCriteria' distance: description: Distance between devices that shall be monitored. format: float type: number x-etsi-mec-cardinality: 1 x-etsi-mec-origin-type: float duration: description: "Period of time (in seconds) notifications are provided for. If set to \u201C0\u201D (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." type: integer x-etsi-mec-cardinality: 0..1 x-etsi-mec-origin-type: int frequency: description: Maximum frequency (in seconds) of notifications per subscription (can also be considered minimum time between notifications). type: integer x-etsi-mec-cardinality: 1 x-etsi-mec-origin-type: int link: description: Link to other resources that are in relationship with the resource. items: $ref: '#/components/schemas/Link' type: array x-etsi-mec-cardinality: 0..N x-etsi-mec-origin-type: Link monitoredAddress: description: Contains addresses of devices to monitor (e.g., 'sip' URI, 'tel' URI, 'acr' URI) items: type: string type: array x-etsi-mec-cardinality: 1..N x-etsi-mec-origin-type: anyURI referenceAddress: description: Indicates address of each device that will be used as reference devices from which the distances towards monitored devices indicated in the Addresses will be monitored (e.g., 'sip' URI, 'tel' URI, 'acr' URI) items: type: string type: array x-etsi-mec-cardinality: 0..N x-etsi-mec-origin-type: anyURI requester: description: Identifies the entity that is requesting the information (e.g. "sip" URI, "tel" URI, "acr" URI) type: string x-etsi-mec-cardinality: 0..1 x-etsi-mec-origin-type: anyURI resourceURL: description: Self referring URL type: string x-etsi-mec-cardinality: 0..1 x-etsi-mec-origin-type: anyURI trackingAccuracy: description: Number of meters of acceptable error in tracking distance. format: float type: number x-etsi-mec-cardinality: 1 x-etsi-mec-origin-type: float required: - callbackReference - monitoredAddress - distance - trackingAccuracy - criteria - checkImmediate - frequency type: object EnteringLeavingCriteria: enum: - Entering - Leaving type: string Link: description: Link to other resources properties: href: description: URI format: anyURI type: string rel: description: Describes the relationship between the URI and the resource. type: string required: - rel - href type: object LocationInfo: properties: accuracy: description: Horizontal accuracy / (semi-major) uncertainty of location provided in meters, as defined in [14]. Present only if "shape" equals 4, 5 or 6 type: integer x-etsi-mec-cardinality: 0..1 x-etsi-mec-origin-type: UnsignedInt accuracyAltitude: description: Altitude accuracy / uncertainty of location provided in meters, as defined in [14]. Present only if "shape" equals 3 or 4 type: integer x-etsi-mec-cardinality: 0..1 x-etsi-mec-origin-type: UnsignedInt accuracySemiMinor: description: Horizontal accuracy / (semi-major) uncertainty of location provided in meters, as defined in [14]. Present only if "shape" equals 4, 5 or 6 type: integer x-etsi-mec-cardinality: 0..1 x-etsi-mec-origin-type: UnsignedInt altitude: description: Location altitude relative to the WGS84 ellipsoid surface. format: float type: number x-etsi-mec-cardinality: 0..1 x-etsi-mec-origin-type: Float confidence: description: Confidence by which the position of a target entity is known to be within the shape description, expressed as a percentage and defined in [14]. Present only if "shape" equals 1, 4 or 6 type: integer x-etsi-mec-cardinality: 0..1 x-etsi-mec-origin-type: UnsignedInt includedAngle: description: Present only if "shape" equals 6 type: integer x-etsi-mec-cardinality: 0..1 x-etsi-mec-origin-type: UnsignedInt innerRadius: description: Present only if "shape" equals 6 type: integer x-etsi-mec-cardinality: 0..1 x-etsi-mec-origin-type: UnsignedInt latitude: description: "Location latitude, expressed in the range -90\xB0 to +90\xB0. Cardinality greater than one only if \"shape\" equals 7." items: format: float type: number minItems: 1 type: array x-etsi-mec-cardinality: 1..N x-etsi-mec-origin-type: Float longitude: description: "Location longitude, expressed in the range -180\xB0 to +180\xB0. Cardinality greater than one only if \"shape\" equals 7." items: format: float type: number minItems: 1 type: array x-etsi-mec-cardinality: 1..N x-etsi-mec-origin-type: Float offsetAngle: description: Present only if "shape" equals 6 type: integer x-etsi-mec-cardinality: 0..1 x-etsi-mec-origin-type: UnsignedInt orientationMajorAxis: description: "Angle of orientation of the major axis, expressed in the range 0\xB0 to 180\xB0, as defined in [14]. Present only if \"shape\" equals 4 or 6" type: integer x-etsi-mec-cardinality: 0..1 x-etsi-mec-origin-type: UnsignedInt shape: description: 'Shape information, as detailed in [14], associated with the reported location coordinate:
1 = ELLIPSOID_ARC
2 = ELLIPSOID_POINT
3 = ELLIPSOID_POINT_ALTITUDE
4 = ELLIPSOID_POINT_ALTITUDE_UNCERT_ELLIPSOID
5 = ELLIPSOID_POINT_UNCERT_CIRCLE
6 = ELLIPSOID_POINT_UNCERT_ELLIPSE
7 = POLYGON' type: integer x-etsi-mec-cardinality: '1' x-etsi-mec-origin-type: Enum_inlined timestamp: $ref: '#/components/schemas/TimeStamp' uncertaintyRadius: description: Present only if "shape" equals 6 type: integer x-etsi-mec-cardinality: 0..1 x-etsi-mec-origin-type: UnsignedInt velocity: description: "Structure with attributes relating to the target entity\u2019s velocity, as defined in [14]." properties: bearing: description: "Bearing, expressed in the range 0\xB0 to 360\xB0, as defined in [14]." type: integer x-etsi-mec-cardinality: '1' x-etsi-mec-origin-type: UnsignedInt horizontalSpeed: description: Horizontal speed, expressed in km/h and defined in [14]. type: integer x-etsi-mec-cardinality: '1' x-etsi-mec-origin-type: UnsignedInt uncertainty: description: Horizontal uncertainty, as defined in [14]. Present only if "velocityType" equals 3 or 4 type: integer x-etsi-mec-cardinality: 0..1 x-etsi-mec-origin-type: UnsignedInt velocityType: description: 'Velocity information, as detailed in [14], associated with the reported location coordinate:
1 = HORIZONTAL
2 = HORIZONTAL_VERTICAL
3 = HORIZONTAL_UNCERT
4 = HORIZONTAL_VERTICAL_UNCERT'
type: integer
x-etsi-mec-cardinality: '1'
x-etsi-mec-origin-type: Enum_inlined
verticalSpeed:
description: Vertical speed, expressed in km/h and defined in [14]. Present only if "velocityType" equals 2 or 4
type: integer
x-etsi-mec-cardinality: 0..1
x-etsi-mec-origin-type: Int
verticalUncertainty:
description: Vertical uncertainty, as defined in [14]. Present only if "velocityType" equals 4
type: integer
x-etsi-mec-cardinality: 0..1
x-etsi-mec-origin-type: UnsignedInt
required:
- velocityType
- bearing
- horizontalSpeed
type: object
x-etsi-mec-cardinality: 0..1
x-etsi-mec-origin-type: Structure (inlined)
required:
- latitude
- longitude
- shape
type: object
x-etsi-ref: 6.5.3
NotificationFormat:
enum:
- XML
- JSON
type: string
NotificationSubscriptionList:
properties:
circleNotificationSubscription:
description: Collection of CircleNotificationSubscription elements, see note 2.
items:
$ref: '#/components/schemas/CircleNotificationSubscription'
minItems: 0
type: array
x-etsi-mec-cardinality: 0.. N
x-etsi-mec-origin-type: CircleNotificationSubscription
distanceNotificationSubscription:
description: Collection of DistanceNotificationSubscription elements, see note 2.
items:
$ref: '#/components/schemas/DistanceNotificationSubscription'
minItems: 0
type: array
x-etsi-mec-cardinality: 0.. N
x-etsi-mec-origin-type: DistanceNotificationSubscription
periodicNotificationSubscription:
description: Collection of PeriodicNotificationSubscription elements, see note 2.
items:
$ref: '#/components/schemas/PeriodicNotificationSubscription'
minItems: 0
type: array
x-etsi-mec-cardinality: 0.. N
x-etsi-mec-origin-type: PeriodicNotificationSubscription
resourceURL:
description: Self-referring URL, see note 1.
format: uri
type: string
x-etsi-mec-cardinality: '1'
x-etsi-mec-origin-type: AnyURI
userTrackingSubscription:
description: Collection of UserTrackingSubscription elements, see note 1.
items:
$ref: '#/components/schemas/UserTrackingSubscription'
minItems: 0
type: array
x-etsi-mec-cardinality: 0.. N
x-etsi-mec-origin-type: UserTrackingSubscription
zonalTrafficSubscription:
description: Collection of ZonalTrafficSubscription elements, see note 1.
items:
$ref: '#/components/schemas/ZonalTrafficSubscription'
minItems: 0
type: array
x-etsi-mec-cardinality: 0.. N
x-etsi-mec-origin-type: ZonalTrafficSubscription
zoneStatusSubscription:
description: Collection of ZoneStatusSubscription elements, see note 1.
items:
$ref: '#/components/schemas/ZoneStatusSubscription'
minItems: 0
type: array
x-etsi-mec-cardinality: 0.. N
x-etsi-mec-origin-type: ZoneStatusSubscription
required:
- resourceURL
type: object
x-etsi-notes: "NOTE 1:\tAs specified in [5], clause 5.2.2.8.\nNOTE 2: \tAs specified in [6], clause 5.2.2.7."
x-etsi-ref: 6.3.3
OperationStatus:
enum:
- Serviceable
- Unserviceable
- Unknown
type: string
PeriodicNotificationSubscription:
description: A type containing data for periodic subscription.
properties:
address:
description: Address of terminals to monitor (e.g. "sip" URI, "tel" URI, "acr" URI)
items:
type: string
type: array
x-etsi-mec-cardinality: 1..N
x-etsi-mec-origin-type: anyURI
callbackReference:
$ref: '#/components/schemas/CallbackReference'
clientCorrelator:
description: A correlator that the client can use to tag this particular resource representation during a request to create a resource on the server.
type: string
x-etsi-mec-cardinality: 0..1
x-etsi-mec-origin-type: string
duration:
description: "Period of time (in seconds) notifications are provided for. If set to \u201C0\u201D (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."
type: integer
x-etsi-mec-cardinality: 0..1
x-etsi-mec-origin-type: int
frequency:
description: Maximum frequency (in seconds) of notifications (can also be considered minimum time between notifications) per subscription.
type: integer
x-etsi-mec-cardinality: 1
x-etsi-mec-origin-type: int
link:
description: Link to other resources that are in relationship with the resource.
items:
$ref: '#/components/schemas/Link'
type: array
x-etsi-mec-cardinality: 0..N
x-etsi-mec-origin-type: Link
requestedAccuracy:
description: Accuracy of the provided distance in meters.
type: integer
x-etsi-mec-cardinality: 1
x-etsi-mec-origin-type: int
requester:
description: Identifies the entity that is requesting the information (e.g. "sip" URI, "tel" URI, "acr" URI)
type: string
x-etsi-mec-cardinality: 0..1
x-etsi-mec-origin-type: anyURI
resourceURL:
description: Self referring URL
type: string
x-etsi-mec-cardinality: 0..1
x-etsi-mec-origin-type: anyURI
required:
- callbackReference
- address
- requestedAccuracy
- frequency
type: object
ProblemDetails:
properties:
detail:
description: A human-readable explanation specific to this occurrence of the problem
type: string
x-etsi-mec-cardinality: 0..1
x-etsi-mec-origin-type: String
instance:
description: A URI reference that identifies the specific occurrence of the problem
format: uri
type: string
x-etsi-mec-cardinality: 0..1
x-etsi-mec-origin-type: URI
status:
description: The HTTP status code for this occurrence of the problem
format: uint32
type: integer
x-etsi-mec-cardinality: 0..1
x-etsi-mec-origin-type: Uint32
title:
description: A short, human-readable summary of the problem type
type: string
x-etsi-mec-cardinality: 0..1
x-etsi-mec-origin-type: String
type:
description: A URI reference according to IETF RFC 3986 that identifies the problem type
format: uri
type: string
x-etsi-mec-cardinality: 0..1
x-etsi-mec-origin-type: URI
type: object
RetrievalStatus:
enum:
- Retrieved
- NotRetrieved
- Error
type: string
ServiceError:
description: used to indicate a notification termination or cancellation.
properties:
messageId:
description: Message identifier, either with prefix SVC or with prefix POL
type: string
x-etsi-mec-cardinality: 1
x-etsi-mec-origin-type: string
text:
description: Message text, with replacement variables marked with %n, where n is an index into the list of