LocationAPI.json 54.6 KB
Newer Older
{
  "swagger": "2.0",
  "info": {
    "title": "Location API",
    "version": "1.1.1",
    "description": "The ETSI MEC ISG MEC012 Location API described using OpenAPI. The API is based on the Open Mobile Alliance's specification RESTful Network API for Zonal Presence",
    "license": {
      "name": "ETSI Forge copyright notice",
      "url": "https://forge.etsi.org/etsi-forge-copyright-notice.txt"
    }
  },
  "externalDocs": {
    "description": "ETSI MEC013 V1.1.1 Location Service API",
    "url": "http://www.etsi.org/deliver/etsi_gs/MEC/001_099/013/01.01.01_60/gs_mec013v010101p.pdf"
  },
  "host": "127.0.0.1:8081",
  "schemes": [
    "http",
    "https"
  ],
  "consumes": [
    "application/json"
  ],
  "produces": [
    "application/json"
  ],
  "tags": [
    {
      "name": "zones"
    },
    {
      "name": "users"
    },
    {
      "name": "subscriptions"
    }
  ],
  "parameters": {
    "Body.UserTrackingSubscription": {
      "name": "userTrackingSubscription",
      "in": "body",
      "description": "User Tracking Subscription",
      "required": true,
      "schema": {
        "$ref": "#/definitions/UserTrackingSubscription"
      }
    },
    "Body.ZonalTrafficSubscription": {
      "name": "zonalTrafficSubscription",
      "in": "body",
      "description": "Zonal Traffic Subscription",
      "required": true,
      "schema": {
        "$ref": "#/definitions/ZonalTrafficSubscription"
      }
    },
    "Body.ZoneStatusSubscription": {
      "name": "zoneStatusSubscription",
      "in": "body",
      "description": "Zone Status Subscription",
      "required": true,
      "schema": {
        "$ref": "#/definitions/ZoneStatusSubscription"
      }
    },
    "Path.AccessPointId": {
      "name": "accessPointId",
      "in": "path",
      "description": "Access Point ID",
      "required": true,
      "type": "string"
    },
    "Path.SubscriptionId": {
      "name": "subscriptionId",
      "in": "path",
      "description": "Subscription ID",
      "required": true,
      "type": "string"
    },
    "Path.UserId": {
      "name": "userId",
      "in": "path",
      "description": "User ID",
      "required": true,
      "type": "string"
    },
    "Path.ZoneId": {
      "name": "zoneId",
      "in": "path",
      "description": "Zone ID",
      "required": true,
      "type": "string"
    },
    "Query.AccessPointId": {
      "name": "accessPointId",
      "in": "query",
      "description": "Identifier of access point, reference \"definitions\" for string format",
      "required": false,
      "type": "string"
    },
    "Query.InterestRealm": {
      "name": "interestRealm",
      "in": "query",
      "description": "Interest realm of access point (e.g. geographical area, a type of industry etc.).",
      "required": false,
      "type": "string"
    },
    "Query.ZoneId": {
      "name": "zoneId",
      "in": "query",
      "description": "Zone ID",
      "required": true,
      "type": "string"
    }
  },
  "paths": {
    "/zones": {
      "get": {
        "description": "Used to get a list of identifiers for zones authorized for use by the application.",
        "produces": [
          "application/json"
        ],
        "responses": {
          "200": {
            "description": "Successful response to a query regarding the status of a zone",
            "schema": {
              "properties": {
                "zoneList": {
                  "$ref": "#/definitions/ZoneList"
                }
              }
            },
            "examples": {
              "application/json": {
                "zoneList": {
                  "zone": [
                    {
                      "zoneId": "zone01",
                      "numberOfAccessPoints": "3",
                      "numberOfUnserviceableAccessPoints": "1",
                      "numberOfUsers": "10",
                      "resourceURL": "http://example.com/exampleAPI/location/v1/zones/zone01"
                    },
                    {
                      "zoneId": "zone02",
                      "numberOfAccessPoints": "12",
                      "numberOfUnserviceableAccessPoints": "0",
                      "numberOfUsers": "36",
                      "resourceURL": "http://example.com/exampleAPI/location/v1/zones/zone02"
                    }
                  ],
                  "resourceURL": "http://example.com/exampleAPI/location/v1/zones"
                }
              }
            }
          }
        }
      }
    },
    "/zones/{zoneId}": {
        "description": "Used to get the status of a zone.",
        "produces": [
          "application/json"
        ],
        "responses": {
          "200": {
            "description": "Successful response to a query regarding the status of a zone",
            "schema": {
              "properties": {
                "zoneInfo": {
                  "$ref": "#/definitions/ZoneInfo"
                }
              }
            },
            "examples": {
              "application/json": {
                "zoneInfo": {
                  "zoneId": "zone01",
                  "numberOfAccessPoints": "3",
                  "numberOfUnserviceableAccessPoints": "1",
                  "numberOfUsers": "10",
                  "resourceURL": "http://example.com/exampleAPI/location/v1/zones/zone01"
                }
              }
            }
          }
        }
      }
    },
    "/zones/{zoneId}/accessPoints": {
        "description": "Access point status can be retrieved for sets of access points matching attribute in the request.",
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "$ref": "#/parameters/Query.InterestRealm"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful response to a query a named set of access point status request",
            "schema": {
              "properties": {
                "accessPointList": {
                  "$ref": "#/definitions/AccessPointList"
                }
              }
            },
            "examples": {
              "application/json": {
                "accessPointList": {
                  "zoneId": "zone01",
                  "accessPoint": [
                    {
                      "accessPointId": "001010000000000000000000000000001",
                      "locationInfo": {
                        "latitude": "90.123",
                        "longitude": "80.123",
                        "altitude": "10.0",
                        "accuracy": "0"
                      },
                      "connectionType": "Macro",
                      "operationStatus": "Serviceable",
                      "numberOfUsers": "5",
                      "interestRealm": "LA",
                      "resourceURL": "http://example.com/exampleAPI/location/v1/zones/zone01/accessPoints/ap001"
                    },
                    {
                      "accessPointId": "001010000000000000000000000000010",
                      "locationInfo": {
                        "latitude": "91.123",
                        "longitude": "81.123",
                        "altitude": "12.0",
                        "accuracy": "1"
                      },
                      "connectionType": "Macro",
                      "operationStatus": "Unserviceable",
                      "numberOfUsers": "0",
                      "interestRealm": "DC",
                      "resourceURL": "http://example.com/exampleAPI/location/v1/zones/zone01/accessPoints/ap002"
                    },
                    {
                      "accessPointId": "001010000000000000000000000000011",
                      "locationInfo": {
                        "latitude": "93.123",
                        "longitude": "83.123",
                        "altitude": "16.0",
                        "accuracy": "3"
                      },
                      "connectionType": "Macro",
                      "operationStatus": "Serviceable",
                      "numberOfUsers": "5",
                      "interestRealm": "NJ",
                      "resourceURL": "http://example.com/exampleAPI/location/v1/zones/zone01/accessPoints/ap003"
                    }
                  ],
                  "resourceURL": "http://example.com/exampleAPI/location/v1/zones/zone01/accessPoints"
                }
              }
            }
          }
        }
      }
    },
    "/zones/{zoneId}/accessPoints/{accessPointId}": {
      "parameters": [
        {
          "$ref": "#/parameters/Path.ZoneId"
        },
        {
          "$ref": "#/parameters/Path.AccessPointId"
        }
      ],
        "tags": [
          "zones"
        ],
        "operationId": "zonesByIdGetApsById",
        "description": "Access point status can be retrieved for sets of access points matching attribute in the request.",
        "produces": [
          "application/json"
        ],
        "responses": {
          "200": {
            "description": "Successful response to a query a named set of access point status request",
            "schema": {
              "properties": {
                "accessPointInfo": {
                  "$ref": "#/definitions/AccessPointInfo"
                }
              }
            },
            "examples": {
              "application/json": {
                "accessPointInfo": {
                  "accessPointId": "001010000000000000000000000000001",
                  "locationInfo": {
                    "latitude": "90.123",
                    "longitude": "80.123",
                    "altitude": "10.0",
                    "accuracy": "0"
                  },
                  "connectionType": "Macro",
                  "operationStatus": "Serviceable",
                  "numberOfUsers": "5",
                  "interestRealm": "LA",
                  "resourceURL": "http://example.com/exampleAPI/location/v1/zones/zone001/accessPoints/ap001"
                }
              }
            }
          }
        }
      }
    },
    "/users": {
      "get": {
        "description": "Users currently using a zone may be retrieved for sets of access points matching attribute in the request",
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "$ref": "#/parameters/Query.ZoneId"
          },
          {
            "$ref": "#/parameters/Query.AccessPointId"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful response to a query users within a zone request",
            "schema": {
              "properties": {
                "userList": {
                  "$ref": "#/definitions/UserList"
                }
              }
            },
            "examples": {
              "application/json": {
                "userList": {
                  "user": [
                    {
                      "address": "acr:192.0.2.1",
                      "accessPointId": "001010000000000000000000000000001",
                      "zoneId": "zone01",
                      "resourceURL": "http://example.com/exampleAPI/location/v1/users/acr%3A192.0.2.1"
                    },
                    {
                      "address": "acr:192.0.2.2",
                      "accessPointId": "001010000000000000000000000000001",
                      "zoneId": "zone01",
                      "resourceURL": "http://example.com/exampleAPI/location/v1/users/acr%3A192.0.2.2"
                    },
                    {
                      "address": "acr:192.0.2.3",
                      "accessPointId": "001010000000000000000000000000010",
                      "zoneId": "zone01",
                      "resourceURL": "http://example.com/exampleAPI/location/v1/users/acr%3A192.0.2.3"
                    },
                    {
                      "address": "acr:192.0.2.4",
                      "accessPointId": "001010000000000000000000000000001",
                      "zoneId": "zone02",
                      "resourceURL": "http://example.com/exampleAPI/location/v1/users/acr%3A192.0.2.4"
                    },
                    {
                      "address": "acr:192.0.2.5",
                      "accessPointId": "001010000000000000000000000000010",
                      "zoneId": "zone02",
                      "resourceURL": "http://example.com/exampleAPI/location/v1/users/acr%3A192.0.2.5"
                    }
                  ],
                  "resourceURL": "http://example.com/exampleAPI/location/v1/users"
                }
              }
            }
          }
        }
      }
    },
    "/users/{userId}": {
        "description": "Users currently using a zone may be retrieved for sets of access points matching attribute in the request",
        "produces": [
          "application/json"
        ],
        "responses": {
          "200": {
            "description": "Successful response to a query users within a zone request",
            "schema": {
              "properties": {
                "userInfo": {
                  "$ref": "#/definitions/UserInfo"
                }
              }
            },
            "examples": {
              "application/json": {
                "userInfo": {
                  "address": "acr:192.0.2.1",
                  "accessPointId": "001010000000000000000000000000001",
                  "zoneId": "zone01",
                  "resourceURL": "http://example.com/exampleAPI/location/v1/users/acr%3A192.0.2.1",
                  "locationInfo": {
                    "latitude": "90.123",
                    "longitude": "80.123",
                    "altitude": "10.0",
                    "accuracy": "0"
                  },
                  "contextLocationInfo": "GroundFloor"
                }
              }
            }
          }
        }
      }
    },
    "/subscriptions/zonalTraffic": {
      "get": {
        "tags": [
          "subscriptions"
        ],
        "operationId": "zonalTrafficSubGet",
        "description": "This operation is used for retrieving all active subscriptions to zonal traffic change notifications.",
        "produces": [
          "application/json"
        ],
        "responses": {
          "200": {
            "description": "Response to retrieve zonal traffic subscriptions",
            "schema": {
              "type": "object",
              "properties": {
                "notificationSubscriptionList": {
                  "type": "object",
                  "properties": {
                    "zonalTrafficSubscription": {
                      "type": "array",
                      "items": {
                        "$ref": "#/definitions/ZonalTrafficSubscription"
                      }
                    },
                    "resourceURL": {
                      "$ref": "#/definitions/ResourceURL"
                    }
                  }
                }
              }
            },
            "examples": {
              "application/json": {
                "notificationSubscriptionList": {
                  "zonalTrafficSubscription": [
                    {
                      "clientCorrelator": "0123",
                      "resourceURL": "http://example.com/exampleAPI/location/v1/subscriptions/zonalTraffic/subscription123",
                      "callbackReference": {
                        "notifyURL": "http://clientApp.example.com/location_notifications/123456"
                      },
                      "zoneId": "zone01",
                      "interestRealm": "LA",
                      "userEventCriteria": "Transferring"
                    },
                    {
                      "clientCorrelator": "0124",
                      "resourceURL": "http://example.com/exampleAPI/location/v1/subscriptions/zonalTraffic/subscription124",
                      "callbackReference": {
                        "notifyURL": "http://clientApp.example.com/location_notifications/123457"
                      },
                      "zoneId": "zone02",
                      "interestRealm": "LA",
                      "userEventCriteria": "Transferring"
                    }
                  ],
                  "resourceURL": "http://example.com/exampleAPI/location/v1/zonalTraffic"
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "subscriptions"
        ],
        "operationId": "zonalTrafficSubPost",
        "description": "This operation is used for creating a new subscription to zonal traffic change notification.",
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "$ref": "#/parameters/Body.ZonalTrafficSubscription"
          }
        ],
        "responses": {
          "201": {
            "description": "Response to create new zonal traffic subscription",
            "schema": {
              "properties": {
                "zonalTrafficSubscription": {
                  "$ref": "#/definitions/ZonalTrafficSubscription"
                }
              }
            },
            "examples": {
              "application/json": {
                "zonalTrafficSubscription": {
                  "clientCorrelator": "0123",
                  "resourceURL": "http://example.com/exampleAPI/location/v1/subscriptions/zonalTraffic/subscription123",
                  "callbackReference": {
                    "notifyURL": "http://clientApp.example.com/location_notifications/123456"
                  },
                  "zoneId": "zone01",
                  "interestRealm": "LA",
                  "userEventCriteria": "Transferring"
                }
              }
            }
          }
        }
      }
    },
    "/subscriptions/zonalTraffic/{subscriptionId}": {
      "parameters": [
        {
          "$ref": "#/parameters/Path.SubscriptionId"
        }
      ],
        "tags": [
          "subscriptions"
        ],
        "operationId": "zonalTrafficSubGetById",
        "description": "This operation is used for updating an individual subscription to zonal traffic change notification.",
        "produces": [
          "application/json"
        ],
        "responses": {
          "200": {
            "description": "Response to retrieve individual zonal traffic subscription",
            "schema": {
              "properties": {
                "zonalTrafficSubscription": {
                  "$ref": "#/definitions/ZonalTrafficSubscription"
                }
              }
            },
            "examples": {
              "application/json": {
                "zonalTrafficSubscription": {
                  "clientCorrelator": "0123",
                  "resourceURL": "http://example.com/exampleAPI/location/v1/subscriptions/zonalTraffic/subscription123",
                  "callbackReference": {
                    "notifyURL": "http://clientApp.example.com/location_notifications/123456"
                  },
                  "zoneId": "zone01",
                  "interestRealm": "LA",
                  "userEventCriteria": "Transferring"
                }
              }
            }
          }
        }
      },
      "put": {
        "tags": [
          "subscriptions"
        ],
        "operationId": "zonalTrafficSubPutById",
        "description": "This operation is used for updating an individual subscription to zonal traffic change notification.",
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "$ref": "#/parameters/Body.ZonalTrafficSubscription"
          }
        ],
        "responses": {
          "200": {
            "description": "Response to update individual zonal traffic subscription",
            "schema": {
              "properties": {
                "zonalTrafficSubscription": {
                  "$ref": "#/definitions/ZonalTrafficSubscription"
                }
              }
            },
            "examples": {
              "application/json": {
                "zonalTrafficSubscription": {
                  "clientCorrelator": "0123",
                  "resourceURL": "http://example.com/exampleAPI/location/v1/subscriptions/zonalTraffic/subscription123",
                  "callbackReference": {
                    "notifyURL": "http://clientApp.example.com/location_notifications/123456"
                  },
                  "zoneId": "zone01",
                  "interestRealm": "LA",
                  "userEventCriteria": "Transferring"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "subscriptions"
        ],
        "operationId": "zonalTrafficSubDelById",
        "description": "This operation is used for cancelling a subscription and stopping corresponding notifications.",
        "produces": [
          "application/json"
        ],
        "responses": {
          "204": {
            "description": "No content"
          }
        }
      }
    },
    "/subscriptions/userTracking": {
      "get": {
        "tags": [
          "subscriptions"
        ],
        "operationId": "userTrackingSubGet",
        "description": "This operation is used for retrieving all active subscriptions to user tracking change notifications.",
        "produces": [
          "application/json"
        ],
        "responses": {
          "200": {
            "description": "Response to retrieve user tracking subscriptions",
            "schema": {
              "type": "object",
              "properties": {
                "notificationSubscriptionList": {
                  "type": "object",
                  "properties": {
                    "userTrackingSubscription": {
                      "type": "array",
                      "items": {
                        "$ref": "#/definitions/UserTrackingSubscription"
                      }
                    },
                    "resourceURL": {
                      "$ref": "#/definitions/ResourceURL"
                    }
                  }
                }
              }
            },
            "examples": {
              "application/json": {
                "notificationSubscriptionList": {
                  "userTrackingSubscription": [
                    {
                      "clientCorrelator": "0123",
                      "resourceURL": "http://example.com/exampleAPI/location/v1/subscriptions/userTracking/subscription123",
                      "callbackReference": {
                        "notifyURL": "http://clientApp.example.com/location_notifications/123456"
                      },
                      "address": "acr:192.0.2.1",
                      "userEventCriteria": "Transferring"
                    },
                    {
                      "clientCorrelator": "0124",
                      "resourceURL": "http://example.com/exampleAPI/location/v1/subscriptions/userTracking/subscription124",
                      "callbackReference": {
                        "notifyURL": "http://clientApp.example.com/location_notifications/123456"
                      },
                      "address": "acr:192.0.2.2",
                      "userEventCriteria": "Transferring"
                    }
                  ],
                  "resourceURL": "http://example.com/exampleAPI/location/v1/subscriptions/userTracking"
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "subscriptions"
        ],
        "operationId": "userTrackingSubPost",
        "description": "This operation is used for creating a new subscription to user tracking change notification",
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "$ref": "#/parameters/Body.UserTrackingSubscription"
          }
        ],
        "responses": {
          "201": {
            "description": "Response to create new user tracking subscription",
            "schema": {
              "properties": {
                "userTrackingSubscription": {
                  "$ref": "#/definitions/UserTrackingSubscription"
                }
              }
            },
            "examples": {
              "application/json": {
                "userTrackingSubscription": {
                  "clientCorrelator": "0123",
                  "resourceURL": "http://example.com/exampleAPI/location/v1/subscriptions/userTracking/subscription123",
                  "callbackReference": {
                    "notifyURL": "http://clientApp.example.com/location_notifications/123456"
                  },
                  "address": "acr:192.0.2.1",
                  "userEventCriteria": "Transferring"
                }
              }
            }
          }
        }
      }
    },
    "/subscriptions/userTracking/{subscriptionId}": {
      "parameters": [
        {
          "$ref": "#/parameters/Path.SubscriptionId"
        }
      ],
        "tags": [
          "subscriptions"
        ],
        "operationId": "userTrackingSubGetById",
        "description": "This operation is used for retrieving an individual subscription to user tracking change notification.",
        "produces": [
          "application/json"
        ],
        "responses": {
          "200": {
            "description": "Response to retrieve individual user tracking subscription",
            "schema": {
              "properties": {
                "userTrackingSubscription": {
                  "$ref": "#/definitions/UserTrackingSubscription"
                }
              }
            },
            "examples": {
              "application/json": {
                "userTrackingSubscription": {
                  "clientCorrelator": "0123",
                  "resourceURL": "http://example.com/exampleAPI/location/v1/subscriptions/userTracking/subscription123",
                  "callbackReference": {
                    "notifyURL": "http://clientApp.example.com/location_notifications/123456"
                  },
                  "address": "acr:192.0.2.1",
                  "userEventCriteria": "Transferring"
                }
              }
            }
          }
        }
      },
      "put": {
        "tags": [
          "subscriptions"
        ],
        "operationId": "userTrackingSubPutById",
        "description": "This operation is used for updating an individual subscription to user tracking change notification.",
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "$ref": "#/parameters/Body.UserTrackingSubscription"
          }
        ],
        "responses": {
          "200": {
            "description": "Response to update individual user tracking subscription",
            "schema": {
              "properties": {
                "userTrackingSubscription": {
                  "$ref": "#/definitions/UserTrackingSubscription"
                }
              }
            },
            "examples": {
              "application/json": {
                "userTrackingSubscription": {
                  "clientCorrelator": "0123",
                  "resourceURL": "http://example.com/exampleAPI/location/v1/subscriptions/userTracking/subscription123",
                  "callbackReference": {
                    "notifyURL": "http://clientApp.example.com/location_notifications/123456"
                  },
                  "address": "acr:192.0.2.1",
                  "userEventCriteria": "Transferring"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "subscriptions"
        ],
        "operationId": "userTrackingSubDelById",
        "description": "This operation is used for retrieving an individual subscription to user tracking change notification.",
        "produces": [
          "application/json"
        ],
        "responses": {
          "204": {
            "description": "No Content"
          }
        }
      }
    },
    "/subscriptions/zonalStatus": {
      "get": {
        "tags": [
          "subscriptions"
        ],
        "operationId": "zoneStatusGet",
        "description": "This operation is used for creating a new subscription to zone status change notification.",
        "produces": [
          "application/json"
        ],
        "responses": {
          "200": {
            "description": "Response to retrieve zone status subscriptions",
            "schema": {
              "type": "object",
              "properties": {
                "notificationSubscriptionList": {
                  "type": "object",
                  "properties": {
                    "zonalTrafficSubscription": {
                      "type": "array",
                      "items": {
                        "$ref": "#/definitions/ZoneStatusSubscription"
                      }
                    },
                    "resourceURL": {
                      "$ref": "#/definitions/ResourceURL"
                    }
                  }
                }
              }
            },
            "examples": {
              "application/json": {
                "notificationSubscriptionList": {
                  "zoneStatusSubscription": [
                    {
                      "clientCorrelator": "0123",
                      "resourceURL": "http://example.com/exampleAPI/location/v1/subscriptions/zoneStatus/subscription123",
                      "callbackReference": {
                        "notifyURL": "http://clientApp.example.com/location_notifications/123456"
                      },
                      "zoneId": "zone01",
                      "numberOfUsersZoneThreshold": "500",
                      "operationStatus": "Serviceable"
                    },
                    {
                      "clientCorrelator": "0124",
                      "resourceURL": "http://example.com/exampleAPI/location/v1/subscriptions/zoneStatus/subscription124",
                      "callbackReference": {
                        "notifyURL": "http://clientApp.example.com/location_notifications/123457"
                      },
                      "zoneId": "zone02",
                      "numberOfUsersAPThreshold": "50",
                      "operationStatus": "Serviceable"
                    }
                  ],
                  "resourceURL": "http://example.com/exampleAPI/location/v1/subscriptions/zoneStatus"
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "subscriptions"
        ],
        "operationId": "zoneStatusPost",
        "description": "This operation is used for creating a new subscription to zone status change notification.",
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "$ref": "#/parameters/Body.ZoneStatusSubscription"
          }
        ],
        "responses": {
          "201": {
            "description": "Response to create new zone status subscription",
            "schema": {
              "properties": {
                "zonalTrafficSubscription": {
                  "$ref": "#/definitions/ZoneStatusSubscription"
                }
              }
            },
            "examples": {
              "application/json": {
                "zoneStatusSubscription": {
                  "clientCorrelator": "0123",
                  "resourceURL": "http://example.com/exampleAPI/location/v1/subscriptions/zoneStatus/subscription123",
                  "callbackReference": {
                    "notifyURL": "http://clientApp.example.com/location_notifications/123456"
                  },
                  "zoneId": "zone01",
                  "numberOfUsersZoneThreshold": "500",
                  "operationStatus": "Serviceable"
                }
              }
            }
          }
        }
      }
    },
    "/subscriptions/zoneStatus/{subscriptionId}": {
      "parameters": [
        {
          "$ref": "#/parameters/Path.SubscriptionId"
        }
      ],
        "tags": [
          "subscriptions"
        ],
        "operationId": "zoneStatusGetById",
        "description": "This operation is used for retrieving an individual subscription to zone status change notification.",
        "produces": [
          "application/json"
        ],
        "responses": {
          "200": {
            "description": "Response to retrieve individual zone status subscription",
            "schema": {
              "properties": {
                "zoneStatusSubscription": {
                  "$ref": "#/definitions/ZoneStatusSubscription"
                }
              }
            },
            "examples": {
              "application/json": {
                "zoneStatusSubscription": {
                  "clientCorrelator": "0123",
                  "resourceURL": "http://example.com/exampleAPI/location/v1/subscriptions/zoneStatus/subscription123",
                  "callbackReference": {
                    "notifyURL": "http://clientApp.example.com/location_notifications/123456"