Navigator Initialization (v2)

The Navigator Initialization API provides access to retrieve site configuration and connection information to the Atrius position processing service. This API provides all of the information necessary to send position data into the Atrius system.

GetNavigatorConfigurationsByBeaconIDList

Retrieve site configuration and connection information to the Atrius position processing system for a given site and the highest number of beacons in the list of beacons.

Test Route

Try it

Note: When you click on the Try It button you may see the following warning message: "" You can ignore this warning message and proceed by entering appropriate values for any query parameters and required header values.

Request URL

Request parameters

string

A unique string device resource identifier.

string

An array of unique numerical beacon resource identifiers.

(optional)

string

Define the specific Lumicast version to use.

(optional)

string

Timestamp of last payload retrieved by calling device.

(optional)

boolean

Flag to determine whether to take the service status of the site resource into account (True = ignore).

Request headers

string

Environment in which to execute the request.

string

A GUID identifier for requesting partner specific resources.

string

String value representing userid or application name issuing the request.

string

A string identifier for authenticating subscription specific resources.

Request body

Response 200

Returns a navigation initialize with site list resource.

{
  "siteIDsWithCountForBeaconIDs": [
    {
      "siteName": "Demo Site",
      "serviceStatus": "ACTIVE",
      "siteId": 1,
      "beaconIDCount": 1
    }
  ],
  "eventHubSendUrl": "https://eventhub-url.servicebus.windows.net/eventhuburl/publishers/deviceId1/messages",
  "sasToken": "SharedAccessSignature sr=sb%3a%2f%2feventhub-url.servicebus.windows.net%2feventhuburl%2fPublishers%2fdeviceId1&sig=valuehere&se=valuehere&skn=Sender",
  "writeToEventHub": true,
  "siteId": 1,
  "siteName": "Demo Site",
  "lumicastEID": 1,
  "lumicastCID": 1,
  "lumicastConfigTag": "tag",
  "networkAnalystURL": "http://navigator-mapserver-103.acuitynext.io/arcgis/rest/services/acuity/Routes/NAServer/Route",
  "lumicastConfigProxyURL": "proxyURL",
  "bleFloorSpaceChangeEnabled": true,
  "lastUpdateUTCTimestamp": "2017-08-01T10:00:00Z",
  "beaconProximityUUID": "f5facb04-72e6-44c4-a98b-285f7b209578",
  "mobileSiteOptions": {
    "fallbackMilliseconds": 5000,
    "transmitFrequencyMilliseconds": 1000,
    "alwaysTransmitBLELocationCaptureWhenAvailable": true,
    "writeToEventHub": true,
    "millisecondsBetweenLocationCapture": 500,
    "useAdvertiserIdAsDeviceId": true,
    "useConfigCacheDuringNetworkUnavailability": true
  },
  "swCornerLatitude": 33.679309457918,
  "swCornerLongitude": -84.044262170791,
  "neCornerLatitude": 33.682813645533,
  "neCornerLongitude": -84.039101600646,
  "floorSpaces": [
    {
      "floorSpaceId": 1,
      "floorSpaceName": "Demo Floor Space",
      "mapOffsetX": 0,
      "mapOffsetY": 0,
      "coordinateConversionRule": 0,
      "mapAngleOffsetRadians": 0,
      "hasBLEBeacons": true,
      "floor_ID": 1,
      "gtXRotation": 9.6916E-08,
      "gtYRotation": -8.1282E-08,
      "gtWidth": -1.1056632E-05,
      "gtHeight": -9.24342E-06,
      "gtX": -84.0419236132,
      "gtY": 33.6800256587,
      "gtHeadingOffset": 3.14,
      "mobileFloorSpaceOptions": {
        "thresholdRssi": -80,
        "topBeaconThresholdRssi": 6,
        "accuracyBLE": 3,
        "floorRssiGain": 0,
        "staleBeaconThreshold": 5
      },
      "lights": [
        {
          "max_mounting_height": 10,
          "fixtureType": "BLT",
          "operatingPoint": 100,
          "lights": [
            {
              "luminairePositionId": 1,
              "floorSpace_ID": 1,
              "id": 1,
              "tag": "Tag",
              "x1": -8.737702,
              "x2": -8.737702,
              "x3": -8.966302,
              "y1": -1.8288,
              "y2": -3.048,
              "y3": -3.048,
              "z": 0,
              "BLEBeaconId": 1,
              "BLEBeaconUUId": null,
              "floorSpaceCatalog_ID": 1,
              "controlGroupId": 1,
              "flagNotes": "",
              "externalWidth": 2,
              "externalLength": 4,
              "VLCEnabled": false,
              "ciCode": "000000",
              "locationDescription": "Back Left Corner",
              "reportingType": "cls",
              "luminaireType_ID": "1",
              "luminaireTypeDisplayName": "TestLuminaire"
            }
          ]
        }
      ]
    }
  ],
  "buildings": [
    {
      "buildingID": 1,
      "site_ID": 1,
      "name": "Demo building",
      "active": true
    }
  ],
  "floors": [
    {
      "floorID": 1,
      "building_ID": 1,
      "name": "Demo floor",
      "level": "1",
      "verticalOrder": 0,
      "mapToken_ID": 1,
      "mapServiceType": "AGOL",
      "mapServiceURL": "http://tiles.arcgis.com/tiles/9zxxfC5qwWS4d1n9/arcgis/rest/services/combined_demo/MapServer",
      "active": true,
      "routeZ": 0,
      "token": "cb3793c4272243fdaab1169d2228e442243fdaab1169d2228e4493c4272243fdaab1d2228e448",
      "token_Expire_Date": "2017-01-23T23:59:59.999Z",
      "authType": "agol"
    }
  ],
  "zones": [
    {
      "geometry": {
        "type": "Polygon",
        "coordinates": [
          [
            [
              40.1894099,
              -77.2334465
            ],
            [
              40.1911071,
              -77.234697
            ],
            [
              40.1913009,
              -77.2334161
            ],
            [
              40.1894099,
              -77.2334465
            ]
          ]
        ]
      },
      "type": "Feature",
      "properties": {
        "dwellTriggerMS": "null",
        "name": "Demo zone",
        "enterTrigger": false,
        "floor_ID": 1,
        "exitTrigger": false,
        "site_ID": 1,
        "zoneType": "MetricZone",
        "messageContent": {},
        "zoneID": 1
      }
    }
  ]
}
{
  "type": "object",
  "properties": {
    "siteIDsWithCountForBeaconIDs": {
      "description": "Array of counts of beacon IDs for sites",
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "siteID": {
            "format": "int32",
            "description": "A unique numerical identifier of the siteId resource",
            "type": "integer"
          },
          "siteName": {
            "type": "string",
            "description": "Site Name"
          },
          "serviceStatus": {
            "type": "string",
            "description": "Service Status (ACTIVE, INACTIVE)"
          },
          "beaconIDCount": {
            "format": "int32",
            "description": "Count of beacons found at this site",
            "type": "integer"
          }
        },
        "example": {
          "siteID": 1,
          "siteName": "Demo Site",
          "serviceStatus": "ACTIVE",
          "beaconIDCount": 1
        }
      }
    },
    "eventHubSendUrl": {
      "description": "Event hub url to send position information",
      "type": "string"
    },
    "sasToken": {
      "description": "Authentication information for connecting to event hub",
      "type": "string"
    },
    "writeToEventHub": {
      "type": "boolean",
      "description": "Flag to define whether the client should send data to event hub"
    },
    "siteId": {
      "format": "int32",
      "description": "A unique numerical identifier of the siteId resource",
      "type": "integer"
    },
    "siteName": {
      "description": "User friendly name for site",
      "type": "string"
    },
    "lumicastEID": {
      "description": "EID for lumicast version",
      "type": "string"
    },
    "lumicastCID": {
      "description": "CID for lumicast version",
      "type": "string"
    },
    "lumicastConfigTag": {
      "description": "Tag value for luicast version",
      "type": "string"
    },
    "networkAnalystURL": {
      "description": "URL to arcgis server network analyst service",
      "type": "string"
    },
    "lumicastConfigProxyURL": {
      "description": "URL of proxy service to retrieve lumicast info",
      "type": "string"
    },
    "bleFloorSpaceChangeEnabled": {
      "type": "boolean",
      "description": "Flag to define whether change has been enabled for related floorspace"
    },
    "lastUpdateUTCTimestamp": {
      "description": "Timestamp when returned data retrieved",
      "type": "string"
    },
    "beaconProximityUUID": {
      "description": "UUID for related organization",
      "type": "string"
    },
    "mobileSiteOptions": {
      "description": "Mobile site options object",
      "type": "object",
      "properties": {
        "fallbackMilliseconds": {
          "format": "int32",
          "description": "Default timer value in milliseconds for site",
          "type": "integer"
        },
        "millisecondsBetweenLocationCapture": {
          "format": "int32",
          "description": "Time in milliseconds between position capture for site",
          "type": "integer"
        },
        "transmitFrequencyMilliseconds": {
          "format": "int32",
          "description": "Time between data transmissions for site",
          "type": "integer"
        },
        "useConfigCacheDuringNetworkUnavailability": {
          "type": "boolean",
          "description": "Whether or not to use config cache when network connection unavilable for site"
        },
        "writeToEventHub": {
          "type": "boolean",
          "description": "Whether caller should send data to Event Hub for site"
        },
        "alwaysTransmitBLELocationCaptureWhenAvailable": {
          "type": "boolean",
          "description": "whether or not to transmit location via BLE when available for site"
        },
        "useAdvertiserIdAsDeviceId": {
          "type": "boolean",
          "description": "A unique numerical identifier of the useAdvertiserIdAsDeviceId resource"
        }
      },
      "example": {
        "fallbackMilliseconds": 5000,
        "millisecondsBetweenLocationCapture": 500,
        "transmitFrequencyMilliseconds": 1000,
        "useConfigCacheDuringNetworkUnavailability": true,
        "writeToEventHub": true,
        "alwaysTransmitBLELocationCaptureWhenAvailable": true,
        "useAdvertiserIdAsDeviceId": true
      }
    },
    "swCornerLatitude": {
      "format": "double",
      "description": " Latitude of South West Corner in WGS84 ",
      "type": "number"
    },
    "swCornerLongitude": {
      "format": "double",
      "description": " Longitude of South West Corner in WGS84 ",
      "type": "number"
    },
    "neCornerLatitude": {
      "format": "double",
      "description": " Latitude of North East Corner in WGS84 ",
      "type": "number"
    },
    "neCornerLongitude": {
      "format": "double",
      "description": " Longitude of North East Corner in WGS84 ",
      "type": "number"
    },
    "floorSpaces": {
      "description": "Array of floor space resources",
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "floorSpaceId": {
            "format": "int32",
            "description": "A unique numerical identifier of the floorSpaceId resource",
            "type": "integer"
          },
          "floorSpaceName": {
            "description": "Name of the floorspace",
            "type": "string"
          },
          "mapOffsetX": {
            "description": "Floorspace offset on x-axis",
            "format": "double",
            "type": "number"
          },
          "mapOffsetY": {
            "description": "Floorspace offset on y-axis",
            "format": "double",
            "type": "number"
          },
          "coordinateConversionRule": {
            "format": "tinyint",
            "description": "Tinyint containing bits determining any coordinate conversion required",
            "type": "integer"
          },
          "mapAngleOffsetRadians": {
            "description": "Floorspace map angle offset in radians",
            "format": "double",
            "type": "number"
          },
          "hasBLEBeacons": {
            "description": "Whether floorspace has BLE beacons",
            "type": "boolean"
          },
          "floor_ID": {
            "format": "int32",
            "description": "A numerical identifier that associates a floorSpaceId to a floor resource",
            "type": "integer"
          },
          "gtXRotation": {
            "description": "GeoTransform rotation on x-axis",
            "format": "double",
            "type": "number"
          },
          "gtYRotation": {
            "description": "GeoTransform rotation on y-axis",
            "format": "double",
            "type": "number"
          },
          "gtWidth": {
            "description": "GeoTransform width",
            "format": "double",
            "type": "number"
          },
          "gtHeight": {
            "description": "GeoTransform length",
            "format": "double",
            "type": "number"
          },
          "gtX": {
            "description": "GeoTransform x-axis value",
            "format": "double",
            "type": "number"
          },
          "gtY": {
            "description": "GeoTransform y-axis value",
            "format": "double",
            "type": "number"
          },
          "gtHeadingOffset": {
            "description": "GeoTransform heading offset value",
            "format": "double",
            "type": "number"
          },
          "mobileFloorSpaceOptions": {
            "description": "Mobile Floor Space Options Object",
            "type": "object",
            "properties": {
              "thresholdRssi": {
                "format": "int32",
                "description": "Threshold RSSI value for floorspace",
                "type": "integer"
              },
              "topBeaconThresholdRssi": {
                "format": "int32",
                "description": "Highest beacon threshold RSSI value for floorspace",
                "type": "integer"
              },
              "accuracyBLE": {
                "format": "int32",
                "description": "Accuracy value for BLE for floorspace",
                "type": "integer"
              },
              "floorRssiGain": {
                "format": "int32",
                "description": "RSSI gain value for the floorspace",
                "type": "integer"
              },
              "staleBeaconThreshold": {
                "format": "int32",
                "description": "Threshold to consider beacon is stale",
                "type": "integer"
              }
            },
            "example": {
              "thresholdRssi": -80,
              "topBeaconThresholdRssi": 6,
              "accuracyBLE": 3,
              "floorRssiGain": 0,
              "staleBeaconThreshold": 5
            }
          },
          "lights": {
            "description": "Array of lights objects",
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "luminairePositionId": {
                  "format": "int32",
                  "description": "A unique numerical identifier of the luminaire position resource",
                  "type": "integer"
                },
                "floorSpace_ID": {
                  "format": "int32",
                  "description": "Foreign Key to the FloorSpace table",
                  "type": "integer"
                },
                "id": {
                  "format": "int32",
                  "description": "VLC Id of the light",
                  "type": "integer"
                },
                "tag": {
                  "description": "Status information for light",
                  "type": "string"
                },
                "x1": {
                  "format": "int32",
                  "description": "1st x coordinate of light position",
                  "type": "integer"
                },
                "x2": {
                  "format": "int32",
                  "description": "2nd x coordinate of light position",
                  "type": "integer"
                },
                "x3": {
                  "format": "int32",
                  "description": "3rd x coordinate of light position",
                  "type": "integer"
                },
                "y1": {
                  "format": "int32",
                  "description": "1st y coordinate of light position",
                  "type": "integer"
                },
                "y2": {
                  "format": "int32",
                  "description": "2nd y coordinate of light position",
                  "type": "integer"
                },
                "y3": {
                  "format": "int32",
                  "description": "3rd y coordinate of light position",
                  "type": "integer"
                },
                "z": {
                  "format": "int32",
                  "description": "z coordinate of light position",
                  "type": "integer"
                },
                "BLEBeaconId": {
                  "format": "int32",
                  "description": "BLE beacon id of light position",
                  "type": "integer"
                },
                "BLEBeaconUUId": {
                  "type": "string",
                  "description": "Floor Space Catalog Beacon UUID"
                },
                "floorSpaceCatalog_ID": {
                  "format": "int32",
                  "description": "A numerical identifier that associates a luminaire position to a floor space catalog resource",
                  "type": "integer"
                },
                "flagNotes": {
                  "description": "Status notes for light",
                  "type": "string"
                },
                "controlGroupId": {
                  "format": "int32",
                  "description": "Id of control group light belongs to",
                  "type": "integer"
                },
                "externalWidth": {
                  "description": "External width of light fixture",
                  "format": "double",
                  "type": "number"
                },
                "externalLength": {
                  "description": "External length of light fixture",
                  "format": "double",
                  "type": "number"
                },
                "VLCEnabled": {
                  "description": "wether or not VLC is enabled for light",
                  "type": "boolean"
                },
                "ciCode": {
                  "type": "string",
                  "description": "Luminaire Model Number"
                },
                "locationDescription": {
                  "type": "string",
                  "description": "Description of the location of Luminaire within the site"
                },
                "reportingType": {
                  "type": "string",
                  "description": "Reporting type"
                },
                "luminaireType_ID": {
                  "format": "int32",
                  "type": "integer",
                  "description": "FK to Luminaire Type"
                },
                "luminaireTypeDisplayName": {
                  "type": "string",
                  "description": "Luminaire Type Name"
                }
              },
              "example": {
                "luminairePositionId": 1,
                "floorSpace_ID": 1,
                "id": 1,
                "tag": "Tag",
                "x1": -8.737702,
                "x2": -8.737702,
                "x3": -8.966302,
                "y1": -1.8288,
                "y2": -3.048,
                "y3": -3.048,
                "z": 0,
                "BLEBeaconId": 1,
                "BLEBeaconUUId": null,
                "floorSpaceCatalog_ID": 1,
                "controlGroupId": 1,
                "flagNotes": "",
                "externalWidth": 2,
                "externalLength": 4,
                "VLCEnabled": false,
                "ciCode": "000000",
                "locationDescription": "Back Left Corner",
                "reportingType": "cls",
                "luminaireType_ID": "1",
                "luminaireTypeDisplayName": "TestLuminaire"
              }
            }
          }
        },
        "example": {
          "floorSpaceId": 1,
          "floorSpaceName": "Demo floor space",
          "mapOffsetX": 0,
          "mapOffsetY": 0,
          "coordinateConversionRule": 0,
          "mapAngleOffsetRadians": null,
          "hasBLEBeacons": true,
          "floor_ID": 1,
          "gtXRotation": 9.6916E-08,
          "gtYRotation": -8.1282E-08,
          "gtWidth": -1.1056632E-05,
          "gtHeight": -9.24342E-06,
          "gtX": -84.0419236132,
          "gtY": 33.6800256587,
          "gtHeadingOffset": 3.14,
          "mobileFloorSpaceOptions": {
            "thresholdRssi": -80,
            "topBeaconThresholdRssi": 6,
            "accuracyBLE": 3,
            "floorRssiGain": 0,
            "staleBeaconThreshold": 5
          },
          "lights": [
            {
              "max_mounting_height": 4,
              "fixtureType": "BLT",
              "operatingPoint": 100,
              "lights": [
                {
                  "luminairePositionId": 1,
                  "floorSpace_ID": 1,
                  "id": 1,
                  "tag": "Tag",
                  "x1": -8.737702,
                  "x2": -8.737702,
                  "x3": -8.966302,
                  "y1": -1.8288,
                  "y2": -3.048,
                  "y3": -3.048,
                  "z": 0,
                  "BLEBeaconId": 1,
                  "BLEBeaconUUId": null,
                  "floorSpaceCatalog_ID": 1,
                  "controlGroupId": 1,
                  "flagNotes": "",
                  "externalWidth": 2,
                  "externalLength": 4,
                  "VLCEnabled": false,
                  "ciCode": "000000",
                  "locationDescription": "Back Left Corner",
                  "reportingType": "cls",
                  "luminaireType_ID": "1",
                  "luminaireTypeDisplayName": "TestLuminaire"
                }
              ]
            }
          ]
        }
      }
    },
    "buildings": {
      "description": "Array of floor space resources",
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "buildingID": {
            "format": "int32",
            "description": "A unique numerical identifier of the building resource",
            "type": "integer"
          },
          "site_ID": {
            "format": "int32",
            "description": "A numerical identifier that associates a building to a site resource",
            "type": "integer"
          },
          "name": {
            "description": "The name of a building",
            "type": "string"
          },
          "active": {
            "description": "Whether or not the building is active",
            "type": "boolean"
          }
        },
        "example": {
          "buildingID": 1,
          "site_ID": 1,
          "name": "Demo building",
          "active": true
        }
      }
    },
    "floors": {
      "description": "Array of floor resources",
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "floorID": {
            "format": "int32",
            "description": "A unique numerical identifier of the floor resource",
            "type": "integer"
          },
          "building_ID": {
            "format": "int32",
            "description": "A numerical identifier that associates a floor to a building resource",
            "type": "integer"
          },
          "name": {
            "description": "The name of a floor",
            "type": "string"
          },
          "level": {
            "description": "Level of the floor",
            "type": "string"
          },
          "verticalOrder": {
            "format": "int32",
            "description": "Vertical order of the floor",
            "type": "integer"
          },
          "mapToken_ID": {
            "format": "int32",
            "description": "A numerical identifier that associates a floor to a map token resource",
            "type": "integer"
          },
          "mapServiceType": {
            "description": "Type of map service asscoiated with the floor",
            "type": "string"
          },
          "mapServiceURL": {
            "description": "URL of map service",
            "type": "string"
          },
          "active": {
            "description": "Whether or not the floor is active",
            "type": "boolean"
          },
          "routeZ": {
            "format": "int32",
            "description": "Defines floor elevation in meters for navigation routes",
            "type": "integer"
          },
          "token": {
            "description": "Auth token to retrieve map image",
            "type": "string"
          },
          "token_Expire_Date": {
            "description": "Date-time the token expires",
            "format": "date-time",
            "type": "string"
          },
          "authType": {
            "description": "Type of authentication token represents",
            "type": "string"
          }
        },
        "example": {
          "floorID": 1,
          "building_ID": 1,
          "name": "Demo floor",
          "level": "1",
          "verticalOrder": 0,
          "mapToken_ID": 1,
          "mapServiceType": "AGOL",
          "mapServiceURL": "http://tiles.arcgis.com/tiles/9zxxfC5qwWS4d1n9/arcgis/rest/services/combined_demo/MapServer",
          "active": true,
          "routeZ": 0,
          "token": "cb3793c4272243fdaab1169d2228e442243fdaab1169d2228e4493c4272243fdaab1d2228e448",
          "token_Expire_Date": "2017-01-23T23:59:59.999Z",
          "authType": "agol"
        }
      }
    },
    "zones": {
      "description": "Array of zone resources",
      "type": "array",
      "items": {
        "required": [
          "properties",
          "geometry"
        ],
        "type": "object",
        "properties": {
          "type": {
            "description": "GeoJSON Type. This value should always be Feature.",
            "type": "string"
          },
          "properties": {
            "required": [
              "site_ID",
              "name",
              "zoneType"
            ],
            "type": "object",
            "properties": {
              "zoneID": {
                "format": "int32",
                "description": "A unique numerical identifier of the zone resource",
                "type": "integer"
              },
              "site_ID": {
                "format": "int32",
                "description": "A numerical identifier that associates a zone to a site resource",
                "type": "integer"
              },
              "floor_ID": {
                "format": "int32",
                "description": "A numerical identifier that associates a zone to a floor resource",
                "type": "integer"
              },
              "name": {
                "description": "The name of a zone",
                "type": "string"
              },
              "zoneType": {
                "description": "Zone Type: Pick from MetricZone (Areas we will calculate metrics), CaptureArea (Max extent of position captures), or ActionZone (Area for client defined actions)",
                "type": "string"
              },
              "enterTrigger": {
                "description": "Trigger client action upon entering zone (ActionZone)",
                "type": "boolean"
              },
              "exitTrigger": {
                "description": "Trigger client action upon exiting zone (ActionZone)",
                "type": "boolean"
              },
              "dwellTriggerMS": {
                "format": "int32",
                "description": "Trigger client action after dwelling for a number of milliseconds (ActionZone)",
                "type": "integer"
              },
              "messageContent": {
                "description": "Client defined data zone (ActionZone)",
                "type": "string"
              },
              "hoursOfOperation": {
                "type": "string",
                "description": "Client defined Hours Of Operation for zone"
              }
            },
            "example": {
              "zoneID": 1,
              "site_ID": 1,
              "floor_ID": 1,
              "name": "Demo Action Zone",
              "zoneType": "ActionZone",
              "enterTrigger": true,
              "exitTrigger": true,
              "dwellTriggerMS": 0,
              "messageContent": {
                "description": "This is client defined information. The client can decide to use this information when the user enters the zone.",
                "title": "You entered the zone!"
              },
              "hoursOfOperation": null
            },
            "description": "Zone Properties"
          },
          "geometry": {
            "type": "object",
            "properties": {
              "type": {
                "type": "string",
                "description": "GeoJSON Geometry Type"
              },
              "coordinates": {
                "description": "Array of GeoJSON coordinates",
                "type": "array",
                "items": {
                  "type": "array",
                  "items": {
                    "format": "double",
                    "type": "number"
                  }
                }
              }
            },
            "example": {
              "type": "Polygon",
              "coordinates": [
                [
                  [
                    40.1894099,
                    -77.2334465
                  ],
                  [
                    40.1911071,
                    -77.234697
                  ],
                  [
                    40.1913009,
                    -77.2334161
                  ],
                  [
                    40.1894099,
                    -77.2334465
                  ]
                ]
              ]
            },
            "description": "GeoJSON Geometry in WGS84"
          }
        },
        "example": {
          "type": "Feature",
          "properties": {
            "zoneID": 1,
            "site_ID": 1,
            "floor_ID": 1,
            "name": "Demo Action Zone",
            "zoneType": "ActionZone",
            "enterTrigger": true,
            "exitTrigger": true,
            "dwellTriggerMS": 0,
            "messageContent": {
              "description": "This is client defined information. The client can decide to use this information when the user enters the zone.",
              "title": "You entered the zone!"
            }
          },
          "geometry": {
            "type": "Polygon",
            "coordinates": [
              [
                [
                  40.1894099,
                  -77.2334465
                ],
                [
                  40.1911071,
                  -77.234697
                ],
                [
                  40.1913009,
                  -77.2334161
                ],
                [
                  40.1894099,
                  -77.2334465
                ]
              ]
            ]
          }
        }
      }
    }
  },
  "example": {
    "siteIDsWithCountForBeaconIDs": [
      {
        "siteName": "Demo Site",
        "serviceStatus": "ACTIVE",
        "siteId": 1,
        "beaconIDCount": 1
      }
    ],
    "eventHubSendUrl": "https://eventhub-url.servicebus.windows.net/eventhuburl/publishers/deviceId1/messages",
    "sasToken": "SharedAccessSignature sr=sb%3a%2f%2feventhub-url.servicebus.windows.net%2feventhuburl%2fPublishers%2fdeviceId1&sig=valuehere&se=valuehere&skn=Sender",
    "writeToEventHub": true,
    "siteId": 1,
    "siteName": "Demo Site",
    "lumicastEID": 1,
    "lumicastCID": 1,
    "lumicastConfigTag": "tag",
    "networkAnalystURL": "http://navigator-mapserver-103.acuitynext.io/arcgis/rest/services/acuity/Routes/NAServer/Route",
    "lumicastConfigProxyURL": "proxyURL",
    "bleFloorSpaceChangeEnabled": true,
    "lastUpdateUTCTimestamp": "2017-08-01T10:00:00Z",
    "beaconProximityUUID": "f5facb04-72e6-44c4-a98b-285f7b209578",
    "mobileSiteOptions": {
      "fallbackMilliseconds": 5000,
      "transmitFrequencyMilliseconds": 1000,
      "alwaysTransmitBLELocationCaptureWhenAvailable": true,
      "writeToEventHub": true,
      "millisecondsBetweenLocationCapture": 500,
      "useAdvertiserIdAsDeviceId": true,
      "useConfigCacheDuringNetworkUnavailability": true
    },
    "swCornerLatitude": 33.679309457918,
    "swCornerLongitude": -84.044262170791,
    "neCornerLatitude": 33.682813645533,
    "neCornerLongitude": -84.039101600646,
    "floorSpaces": [
      {
        "floorSpaceId": 1,
        "floorSpaceName": "Demo Floor Space",
        "mapOffsetX": 0,
        "mapOffsetY": 0,
        "coordinateConversionRule": 0,
        "mapAngleOffsetRadians": 0,
        "hasBLEBeacons": true,
        "floor_ID": 1,
        "gtXRotation": 9.6916E-08,
        "gtYRotation": -8.1282E-08,
        "gtWidth": -1.1056632E-05,
        "gtHeight": -9.24342E-06,
        "gtX": -84.0419236132,
        "gtY": 33.6800256587,
        "gtHeadingOffset": 3.14,
        "mobileFloorSpaceOptions": {
          "thresholdRssi": -80,
          "topBeaconThresholdRssi": 6,
          "accuracyBLE": 3,
          "floorRssiGain": 0,
          "staleBeaconThreshold": 5
        },
        "lights": [
          {
            "max_mounting_height": 10,
            "fixtureType": "BLT",
            "operatingPoint": 100,
            "lights": [
              {
                "luminairePositionId": 1,
                "floorSpace_ID": 1,
                "id": 1,
                "tag": "Tag",
                "x1": -8.737702,
                "x2": -8.737702,
                "x3": -8.966302,
                "y1": -1.8288,
                "y2": -3.048,
                "y3": -3.048,
                "z": 0,
                "BLEBeaconId": 1,
                "BLEBeaconUUId": null,
                "floorSpaceCatalog_ID": 1,
                "controlGroupId": 1,
                "flagNotes": "",
                "externalWidth": 2,
                "externalLength": 4,
                "VLCEnabled": false,
                "ciCode": "000000",
                "locationDescription": "Back Left Corner",
                "reportingType": "cls",
                "luminaireType_ID": "1",
                "luminaireTypeDisplayName": "TestLuminaire"
              }
            ]
          }
        ]
      }
    ],
    "buildings": [
      {
        "buildingID": 1,
        "site_ID": 1,
        "name": "Demo building",
        "active": true
      }
    ],
    "floors": [
      {
        "floorID": 1,
        "building_ID": 1,
        "name": "Demo floor",
        "level": "1",
        "verticalOrder": 0,
        "mapToken_ID": 1,
        "mapServiceType": "AGOL",
        "mapServiceURL": "http://tiles.arcgis.com/tiles/9zxxfC5qwWS4d1n9/arcgis/rest/services/combined_demo/MapServer",
        "active": true,
        "routeZ": 0,
        "token": "cb3793c4272243fdaab1169d2228e442243fdaab1169d2228e4493c4272243fdaab1d2228e448",
        "token_Expire_Date": "2017-01-23T23:59:59.999Z",
        "authType": "agol"
      }
    ],
    "zones": [
      {
        "geometry": {
          "type": "Polygon",
          "coordinates": [
            [
              [
                40.1894099,
                -77.2334465
              ],
              [
                40.1911071,
                -77.234697
              ],
              [
                40.1913009,
                -77.2334161
              ],
              [
                40.1894099,
                -77.2334465
              ]
            ]
          ]
        },
        "type": "Feature",
        "properties": {
          "dwellTriggerMS": "null",
          "name": "Demo zone",
          "enterTrigger": false,
          "floor_ID": 1,
          "exitTrigger": false,
          "site_ID": 1,
          "zoneType": "MetricZone",
          "messageContent": {},
          "zoneID": 1
        }
      }
    ]
  }
}

Response 400

Invalid Request.

{
  "msg": "Improper format for call.",
  "requestId": "273e4bb4-3019-42ea-8de9-f2c7853f7fdd",
  "code": "BadRequest"
}
{
  "type": "object",
  "properties": {
    "msg": {
      "description": "A descriptive message detailing the cause of the error",
      "type": "string"
    },
    "requestId": {
      "description": "A unique GUID identifier for the request",
      "type": "string"
    },
    "code": {
      "description": "A textual representation of the error code",
      "type": "string"
    }
  },
  "example": {
    "msg": "A descriptive message detailing the cause of the error",
    "requestId": "2269623a-af6a-419f-b15b-2c8391b50149",
    "code": "ErrorCode"
  }
}

Response 401

Not Authorized To Access This Resource.

{
  "msg": "Unauthorized to access this resource.",
  "requestId": "2269623a-af6a-419f-b15b-2c8391b50149",
  "code": "Unauthorized"
}
{
  "type": "object",
  "properties": {
    "msg": {
      "description": "A descriptive message detailing the cause of the error",
      "type": "string"
    },
    "requestId": {
      "description": "A unique GUID identifier for the request",
      "type": "string"
    },
    "code": {
      "description": "A textual representation of the error code",
      "type": "string"
    }
  },
  "example": {
    "msg": "A descriptive message detailing the cause of the error",
    "requestId": "2269623a-af6a-419f-b15b-2c8391b50149",
    "code": "ErrorCode"
  }
}

Response 404

Resource Not Found.

{
  "msg": "The resource requested was not found.",
  "requestId": "b9ff87b2-3397-45f7-a0b6-25482b0a7898",
  "code": "NotFound"
}
{
  "type": "object",
  "properties": {
    "msg": {
      "description": "A descriptive message detailing the cause of the error",
      "type": "string"
    },
    "requestId": {
      "description": "A unique GUID identifier for the request",
      "type": "string"
    },
    "code": {
      "description": "A textual representation of the error code",
      "type": "string"
    }
  },
  "example": {
    "msg": "A descriptive message detailing the cause of the error",
    "requestId": "2269623a-af6a-419f-b15b-2c8391b50149",
    "code": "ErrorCode"
  }
}

Code samples

@ECHO OFF

curl -v -X GET "https://api.us.atrius-iot.io/api/v2/navigator-configurations/device-id/{deviceID}/beacon-ids?beaconIDs={beaconIDs}?lumicastVersion=2.1.1&lastUpdateUTCTimestamp={string}&ignoreServiceStatus=False"
-H "atr-environment-id: atrdemo01us"
-H "atr-partner-id: "
-H "atr-request-source: "
-H "atr-subscription-key: {subscription key}"

--data-ascii "{body}" 
using System;
using System.Net.Http.Headers;
using System.Text;
using System.Net.Http;
using System.Web;

namespace CSHttpClientSample
{
    static class Program
    {
        static void Main()
        {
            MakeRequest();
            Console.WriteLine("Hit ENTER to exit...");
            Console.ReadLine();
        }
        
        static async void MakeRequest()
        {
            var client = new HttpClient();
            var queryString = HttpUtility.ParseQueryString(string.Empty);

            // Request headers
            client.DefaultRequestHeaders.Add("atr-environment-id", "atrdemo01us");
            client.DefaultRequestHeaders.Add("atr-partner-id", "");
            client.DefaultRequestHeaders.Add("atr-request-source", "");
            client.DefaultRequestHeaders.Add("atr-subscription-key", "{subscription key}");

            // Request parameters
            queryString["lumicastVersion"] = "2.1.1";
            queryString["lastUpdateUTCTimestamp"] = "{string}";
            queryString["ignoreServiceStatus"] = "False";
            var uri = "https://api.us.atrius-iot.io/api/v2/navigator-configurations/device-id/{deviceID}/beacon-ids?beaconIDs={beaconIDs}&" + queryString;

            var response = await client.GetAsync(uri);
        }
    }
}	
// // This sample uses the Apache HTTP client from HTTP Components (http://hc.apache.org/httpcomponents-client-ga/)
import java.net.URI;
import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.client.utils.URIBuilder;
import org.apache.http.impl.client.HttpClients;
import org.apache.http.util.EntityUtils;

public class JavaSample 
{
    public static void main(String[] args) 
    {
        HttpClient httpclient = HttpClients.createDefault();

        try
        {
            URIBuilder builder = new URIBuilder("https://api.us.atrius-iot.io/api/v2/navigator-configurations/device-id/{deviceID}/beacon-ids?beaconIDs={beaconIDs}");

            builder.setParameter("lumicastVersion", "2.1.1");
            builder.setParameter("lastUpdateUTCTimestamp", "{string}");
            builder.setParameter("ignoreServiceStatus", "False");

            URI uri = builder.build();
            HttpGet request = new HttpGet(uri);
            request.setHeader("atr-environment-id", "atrdemo01us");
            request.setHeader("atr-partner-id", "");
            request.setHeader("atr-request-source", "");
            request.setHeader("atr-subscription-key", "{subscription key}");


            // Request body
            StringEntity reqEntity = new StringEntity("{body}");
            request.setEntity(reqEntity);

            HttpResponse response = httpclient.execute(request);
            HttpEntity entity = response.getEntity();

            if (entity != null) 
            {
                System.out.println(EntityUtils.toString(entity));
            }
        }
        catch (Exception e)
        {
            System.out.println(e.getMessage());
        }
    }
}

<!DOCTYPE html>
<html>
<head>
    <title>JSSample</title>
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js"></script>
</head>
<body>

<script type="text/javascript">
    $(function() {
        var params = {
            // Request parameters
            "lumicastVersion": "2.1.1",
            "lastUpdateUTCTimestamp": "{string}",
            "ignoreServiceStatus": "False",
        };
      
        $.ajax({
            url: "https://api.us.atrius-iot.io/api/v2/navigator-configurations/device-id/{deviceID}/beacon-ids?beaconIDs={beaconIDs}&" + $.param(params),
            beforeSend: function(xhrObj){
                // Request headers
                xhrObj.setRequestHeader("atr-environment-id","atrdemo01us");
                xhrObj.setRequestHeader("atr-partner-id","");
                xhrObj.setRequestHeader("atr-request-source","");
                xhrObj.setRequestHeader("atr-subscription-key","{subscription key}");
            },
            type: "GET",
            // Request body
            data: "{body}",
        })
        .done(function(data) {
            alert("success");
        })
        .fail(function() {
            alert("error");
        });
    });
</script>
</body>
</html>
#import <Foundation/Foundation.h>

int main(int argc, const char * argv[])
{
    NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
    
    NSString* path = @"https://api.us.atrius-iot.io/api/v2/navigator-configurations/device-id/{deviceID}/beacon-ids?beaconIDs={beaconIDs}";
    NSArray* array = @[
                         // Request parameters
                         @"entities=true",
                         @"lumicastVersion=2.1.1",
                         @"lastUpdateUTCTimestamp={string}",
                         @"ignoreServiceStatus=False",
                      ];
    
    NSString* string = [array componentsJoinedByString:@"&"];
    path = [path stringByAppendingFormat:@"?%@", string];

    NSLog(@"%@", path);

    NSMutableURLRequest* _request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:path]];
    [_request setHTTPMethod:@"GET"];
    // Request headers
    [_request setValue:@"atrdemo01us" forHTTPHeaderField:@"atr-environment-id"];
    [_request setValue:@"" forHTTPHeaderField:@"atr-partner-id"];
    [_request setValue:@"" forHTTPHeaderField:@"atr-request-source"];
    [_request setValue:@"{subscription key}" forHTTPHeaderField:@"atr-subscription-key"];
    // Request body
    [_request setHTTPBody:[@"{body}" dataUsingEncoding:NSUTF8StringEncoding]];
    
    NSURLResponse *response = nil;
    NSError *error = nil;
    NSData* _connectionData = [NSURLConnection sendSynchronousRequest:_request returningResponse:&response error:&error];

    if (nil != error)
    {
        NSLog(@"Error: %@", error);
    }
    else
    {
        NSError* error = nil;
        NSMutableDictionary* json = nil;
        NSString* dataString = [[NSString alloc] initWithData:_connectionData encoding:NSUTF8StringEncoding];
        NSLog(@"%@", dataString);
        
        if (nil != _connectionData)
        {
            json = [NSJSONSerialization JSONObjectWithData:_connectionData options:NSJSONReadingMutableContainers error:&error];
        }
        
        if (error || !json)
        {
            NSLog(@"Could not parse loaded json with error:%@", error);
        }
        
        NSLog(@"%@", json);
        _connectionData = nil;
    }
    
    [pool drain];

    return 0;
}
<?php
// This sample uses the Apache HTTP client from HTTP Components (http://hc.apache.org/httpcomponents-client-ga/)
require_once 'HTTP/Request2.php';

$request = new Http_Request2('https://api.us.atrius-iot.io/api/v2/navigator-configurations/device-id/{deviceID}/beacon-ids?beaconIDs={beaconIDs}');
$url = $request->getUrl();

$headers = array(
    // Request headers
    'atr-environment-id' => 'atrdemo01us',
    'atr-partner-id' => '',
    'atr-request-source' => '',
    'atr-subscription-key' => '{subscription key}',
);

$request->setHeader($headers);

$parameters = array(
    // Request parameters
    'lumicastVersion' => '2.1.1',
    'lastUpdateUTCTimestamp' => '{string}',
    'ignoreServiceStatus' => 'False',
);

$url->setQueryVariables($parameters);

$request->setMethod(HTTP_Request2::METHOD_GET);

// Request body
$request->setBody("{body}");

try
{
    $response = $request->send();
    echo $response->getBody();
}
catch (HttpException $ex)
{
    echo $ex;
}

?>
########### Python 2.7 #############
import httplib, urllib, base64

headers = {
    # Request headers
    'atr-environment-id': 'atrdemo01us',
    'atr-partner-id': '',
    'atr-request-source': '',
    'atr-subscription-key': '{subscription key}',
}

params = urllib.urlencode({
    # Request parameters
    'lumicastVersion': '2.1.1',
    'lastUpdateUTCTimestamp': '{string}',
    'ignoreServiceStatus': 'False',
})

try:
    conn = httplib.HTTPSConnection('api.us.atrius-iot.io')
    conn.request("GET", "/api/v2/navigator-configurations/device-id/{deviceID}/beacon-ids?beaconIDs={beaconIDs}&%s" % params, "{body}", headers)
    response = conn.getresponse()
    data = response.read()
    print(data)
    conn.close()
except Exception as e:
    print("[Errno {0}] {1}".format(e.errno, e.strerror))

####################################

########### Python 3.2 #############
import http.client, urllib.request, urllib.parse, urllib.error, base64

headers = {
    # Request headers
    'atr-environment-id': 'atrdemo01us',
    'atr-partner-id': '',
    'atr-request-source': '',
    'atr-subscription-key': '{subscription key}',
}

params = urllib.parse.urlencode({
    # Request parameters
    'lumicastVersion': '2.1.1',
    'lastUpdateUTCTimestamp': '{string}',
    'ignoreServiceStatus': 'False',
})

try:
    conn = http.client.HTTPSConnection('api.us.atrius-iot.io')
    conn.request("GET", "/api/v2/navigator-configurations/device-id/{deviceID}/beacon-ids?beaconIDs={beaconIDs}&%s" % params, "{body}", headers)
    response = conn.getresponse()
    data = response.read()
    print(data)
    conn.close()
except Exception as e:
    print("[Errno {0}] {1}".format(e.errno, e.strerror))

####################################
require 'net/http'

uri = URI('https://api.us.atrius-iot.io/api/v2/navigator-configurations/device-id/{deviceID}/beacon-ids?beaconIDs={beaconIDs}')

query = URI.encode_www_form({
    # Request parameters
    'lumicastVersion' => '2.1.1',
    'lastUpdateUTCTimestamp' => '{string}',
    'ignoreServiceStatus' => 'False'
})
if query.length > 0
  if uri.query && uri.query.length > 0
    uri.query += '&' + query
  else
    uri.query = query
  end
end

request = Net::HTTP::Get.new(uri.request_uri)
# Request headers
request['atr-environment-id'] = 'atrdemo01us'
# Request headers
request['atr-partner-id'] = ''
# Request headers
request['atr-request-source'] = ''
# Request headers
request['atr-subscription-key'] = '{subscription key}'
# Request body
request.body = "{body}"

response = Net::HTTP.start(uri.host, uri.port, :use_ssl => uri.scheme == 'https') do |http|
    http.request(request)
end

puts response.body