Numina Graph API API Reference
Welcome to the Numina Graph API!
Numina Graph is a GraphQL API for accessing all kinds of Numina data and analytics. This tutorial will:
- Cover high level concepts of the graph
- Show you how to get started
- Demo some data retrieval and analytics examples
If this is your first time working with GraphQL, you can get familiarized with the fundamentals here.
You can access the GraphQL endpoint at: https://api.numina.co/graphql
High Level Concepts
Numina-Graph provides access to two types of data:
- Relational data
- This includes static information about organizations, devices, and users
- Analytical data
- These are the metrics and other analytics produced by sensor inferences about the physical world
Users can issue GraphQL queries to learn about both types of data. In addition, mutations are used to authenticate and to configure certain types of relational data.
Key Terms
- Device - A Numina sensor that monitors the physical world and makes inferences about the activities of various objects. Devices are identified by a unique serial number.
- Object - A distinct thing that a Numina sensor can make inferences about.
- Object Class - A category or type of object. Currently Numina-Graph supports the following object classes:
- Pedestrian
- Bicycle
- Car
- Bus
- Truck
- Behavior Zone - A user defined polygon used as a spatial filter for analytics queries. Polygons can have an arbitrary number of vertices.
Example of a Behavior Zone.
API Sandbox
Our API Sandbox is geared towards third-party developers interested in getting their feet wet with the Numina API by exploring real, street-level data. We have created a "sandbox" environment with ten days of real data from a sensor deployment in Downtown Brooklyn in New York City. This data includes:
pedestrian
,car
,bicycle
,bus
,truck
data collected from a sensor positioned at the intersection of Fulton St and Hanover Pl in Downtown Brooklyn- Sensor coordinates: (40.688984, -73.9809795)
- Data collected from
2019-01-10T00:00:00-0500
(EST) through2019-01-20T00:00:00-0500
With this data, we hope that interested developers can understand how to perform data analyses on the impact of specific street-level phenomena (such as construction, weather, etc). If you're interested in this sandbox environment, please request access and check out our annotated blog post to see how you can leverage the Numina API to understand your streets better.
API Endpoints
Endpoint::
https://api.numina.co/graphql
Terms of Service: numina.co
Contact: api@numina.co
Version: 1.0.0
Authentication
Authentication Header
Numina-Graph uses JSON Web Tokens (JWT) to authenticate requests to our API. When you sign up with Numina, you will be given an account email and password to authenticate requests for your organization.
Example logIn mutation:
mutation {
logIn(
email:"you@youremail.com",
password:"yourpassword") {
jwt {
token
exp
}
}
}
To get a token, issue a logIn
mutation (as a POST
request) to the GraphQL endpoint with your username and password as parameters. If successful, the response will contain your token, as well as an expiry date and time. Tokens expire after 24 hours by default.
Example logIn response body:
{
"data": {
"logIn": {
"jwt": {
"exp": "2019-03-26T21:16:15.763782",
"token": "alongtokenstring"
}
}
}
}
Once you have a token, include the token value as the HTTP Authorization
header in subsequent POST
requests to authorize your queries and mutations.
Relational Data Queries
Queries
Users can query relational data that falls under the umbrella of their organization.
Example devices query:
query {
devices {
count
edges {
node {
rawId
name
serialno
}
}
}
}
For example, we can request information about any devices
that belong to our organization. A number of different fields could be requested; here, we're requesting just the device name and serial number, as well as a rawId
that can be used as a unique way to identify the device in other requests.
Send the following query as a POST
request to the GraphQL endpoint:
Example devices query response body:
{
"data": {
"devices": {
"count": 1,
"edges": [
{
"node": {
"name": "abc-12",
"serialno": "NUM200B000S0001",
"rawId": "39617ed712sd566babcac89jbdcc6f19"
}
}
]
}
}
}
organizations
Filter for Organization objects where name contains this
Filter for Organization objects where alias equals this
Field and direction to sort by
paginate results before cursor
paginate results after cursor
get first n results
get last n results
Example
Request Content-Types:
application/json
Query
query organizations($name: String, $alias: String, $sort: [OrganizationSortEnum], $before: String, $after: String, $first: Int, $last: Int){
organizations(name: $name, alias: $alias, sort: $sort, before: $before, after: $after, first: $first, last: $last){
count
}
}
Variables
{
"name": "string",
"alias": "string",
"sort": [
"string"
],
"before": "string",
"after": "string",
"first": "integer",
"last": "integer"
}
Try it now
query organizations($name: String, $alias: String, $sort: [OrganizationSortEnum], $before: String, $after: String, $first: Int, $last: Int){
organizations(name: $name, alias: $alias, sort: $sort, before: $before, after: $after, first: $first, last: $last){
count
}
}
{
"name": "string",
"alias": "string",
"sort": [
"string"
],
"before": "string",
"after": "string",
"first": "integer",
"last": "integer"
}
Successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": {
"organizations": {
"count": "integer"
}
}
}
devices
Filter for Device objects where serialno equals this
Filter for Device objects where name contains this
Field and direction to sort by
paginate results before cursor
paginate results after cursor
get first n results
get last n results
Example
Request Content-Types:
application/json
Query
query devices($serialno: String, $name: String, $sort: [DeviceSortEnum], $before: String, $after: String, $first: Int, $last: Int){
devices(serialno: $serialno, name: $name, sort: $sort, before: $before, after: $after, first: $first, last: $last){
count
}
}
Variables
{
"serialno": "string",
"name": "string",
"sort": [
"string"
],
"before": "string",
"after": "string",
"first": "integer",
"last": "integer"
}
Try it now
query devices($serialno: String, $name: String, $sort: [DeviceSortEnum], $before: String, $after: String, $first: Int, $last: Int){
devices(serialno: $serialno, name: $name, sort: $sort, before: $before, after: $after, first: $first, last: $last){
count
}
}
{
"serialno": "string",
"name": "string",
"sort": [
"string"
],
"before": "string",
"after": "string",
"first": "integer",
"last": "integer"
}
Successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": {
"devices": {
"count": "integer"
}
}
}
behaviorZones
Device serialno values
Field and direction to sort by
paginate results before cursor
paginate results after cursor
get first n results
get last n results
Example
Request Content-Types:
application/json
Query
query behaviorZones($serialnos: [String], $sort: [BehaviorZoneSortEnum], $before: String, $after: String, $first: Int, $last: Int){
behaviorZones(serialnos: $serialnos, sort: $sort, before: $before, after: $after, first: $first, last: $last){
count
}
}
Variables
{
"serialnos": [
"string"
],
"sort": [
"string"
],
"before": "string",
"after": "string",
"first": "integer",
"last": "integer"
}
Try it now
query behaviorZones($serialnos: [String], $sort: [BehaviorZoneSortEnum], $before: String, $after: String, $first: Int, $last: Int){
behaviorZones(serialnos: $serialnos, sort: $sort, before: $before, after: $after, first: $first, last: $last){
count
}
}
{
"serialnos": [
"string"
],
"sort": [
"string"
],
"before": "string",
"after": "string",
"first": "integer",
"last": "integer"
}
Successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": {
"behaviorZones": {
"count": "integer"
}
}
}
Relational Data Mutations
Mutations
Mutations allow you to update and delete relational data belonging to your organization, including modifying your organization, device, and Behavior Zone data.
Example updateDevice mutation:
mutation {
updateDevice(
deviceId:"d92d6xmayb324751b0c63f872nz08f95",
device:{name: "abc-15"}) {
device {
rawId
name
serialno
}
}
}
In this example, we use the updateDevice
mutation to edit the name of a given device. Here, the deviceId
is the rawID
obtained from the devices query in the previous section.
Example updateDevice response body:
{
"data": {
"updateDevice": {
"device": {
"name": "abc-15",
"rawId": "d92d6xmayb324751b0c63f872nz08f95",
"serialno": "NUM200B000S0001"
}
}
}
}
The response reflects the updated device name, showing that our mutation was successful.
Example createBehaviorZone mutation:
mutation {
createBehaviorZone(
serialno:"NUM200B000S0001",
demarcation:[[376,123],[459,94],[557,106],[543,185],[511,236],
[473,265],[361,247],[347,184]],
text: "My Zone") {
behaviorZone {
rawId
}
}
}
In this example, we use the createBehaviorZone
mutation to create a new Behavior Zone for a device. The Behavior Zone is defined by a demarcation
which is a set of [x,y]
pixel coordinates of the zone's vertices. We also describe the Behavior Zone with a text
description.
Sandbox users can use our
Behavior Zone Creator to design Behavior Zones visually.
Example createBehaviorZone response body:
{
"data": {
"createBehaviorZone": {
"behaviorZone": {
"rawId": 1770
}
}
}
}
The response here provides the ID of the newly created Behavior Zone, which can be used in subsequent analytics queries as a spatial filter on the sensor data.
createBehaviorZone
Line/fill color used when drawing behavior zone (default='red')
Coordinates (list of [x,y]) defining the shape of the behavior zone polygon on a 640x480 grid
serialno of the device this behavior zone will belong to
Descriptive text for the behavior zone
Type of behavior zone. Must be 'cpoly' or 'line' (default='cpoly')
Example
Request Content-Types:
application/json
Query
mutation createBehaviorZone($color: String, $demarcation: [[Int]]!, $serialno: String!, $text: String, $zoneType: String){
createBehaviorZone(color: $color, demarcation: $demarcation, serialno: $serialno, text: $text, zoneType: $zoneType){
}
}
Variables
{
"color": "string",
"demarcation": [
[
"integer"
]
],
"serialno": "string",
"text": "string",
"zoneType": "string"
}
Try it now
mutation createBehaviorZone($color: String, $demarcation: [[Int]]!, $serialno: String!, $text: String, $zoneType: String){
createBehaviorZone(color: $color, demarcation: $demarcation, serialno: $serialno, text: $text, zoneType: $zoneType){
}
}
{
"color": "string",
"demarcation": [
[
"integer"
]
],
"serialno": "string",
"text": "string",
"zoneType": "string"
}
Successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": {
"createBehaviorZone": {}
}
}
updateBehaviorZone
Line/fill color used when drawing behavior zone (default='red')
Coordinates (list of [x,y]) defining the shape of the behavior zone polygon on a 640x480 grid
Descriptive text for the behavior zone
rawId of the BehaviorZone object being updated
Example
Request Content-Types:
application/json
Query
mutation updateBehaviorZone($color: String, $demarcation: [[Int]], $text: String, $zoneId: Int!){
updateBehaviorZone(color: $color, demarcation: $demarcation, text: $text, zoneId: $zoneId){
}
}
Variables
{
"color": "string",
"demarcation": [
[
"integer"
]
],
"text": "string",
"zoneId": "integer"
}
Try it now
mutation updateBehaviorZone($color: String, $demarcation: [[Int]], $text: String, $zoneId: Int!){
updateBehaviorZone(color: $color, demarcation: $demarcation, text: $text, zoneId: $zoneId){
}
}
{
"color": "string",
"demarcation": [
[
"integer"
]
],
"text": "string",
"zoneId": "integer"
}
Successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": {
"updateBehaviorZone": {}
}
}
deleteBehaviorZone
rawId of the BehaviorZone object to be deleted
Example
Request Content-Types:
application/json
Query
mutation deleteBehaviorZone($zoneId: Int!){
deleteBehaviorZone(zoneId: $zoneId){
success
}
}
Variables
{
"zoneId": "integer"
}
Try it now
mutation deleteBehaviorZone($zoneId: Int!){
deleteBehaviorZone(zoneId: $zoneId){
success
}
}
{
"zoneId": "integer"
}
Successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": {
"deleteBehaviorZone": {
"success": "string"
}
}
}
deleteDevice
rawId of device being deleted
Example
Request Content-Types:
application/json
Query
mutation deleteDevice($deviceId: String!){
deleteDevice(deviceId: $deviceId){
success
}
}
Variables
{
"deviceId": "string"
}
Try it now
mutation deleteDevice($deviceId: String!){
deleteDevice(deviceId: $deviceId){
success
}
}
{
"deviceId": "string"
}
Successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": {
"deleteDevice": {
"success": "string"
}
}
}
updateDevice
device fields to be updated
rawId of device being updated
Example
Request Content-Types:
application/json
Query
mutation updateDevice($device: UpdateDeviceInput!, $deviceId: String!){
updateDevice(device: $device, deviceId: $deviceId){
}
}
Variables
{
"device": {
"serialno": "string",
"name": "string",
"notes": "string",
"tags": "string",
"alias": "string",
"status": "string",
"orgId": "string"
},
"deviceId": "string"
}
Try it now
mutation updateDevice($device: UpdateDeviceInput!, $deviceId: String!){
updateDevice(device: $device, deviceId: $deviceId){
}
}
{
"device": {
"serialno": "string",
"name": "string",
"notes": "string",
"tags": "string",
"alias": "string",
"status": "string",
"orgId": "string"
},
"deviceId": "string"
}
Successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": {
"updateDevice": {}
}
}
updateDeviceLocation
rawId of the Device object being updated
Device location data
Example
Request Content-Types:
application/json
Query
mutation updateDeviceLocation($deviceId: String!, $location: SensorLocationInput!){
updateDeviceLocation(deviceId: $deviceId, location: $location){
}
}
Variables
{
"deviceId": "string",
"location": {
"lat": "number",
"lon": "number",
"azi": "number",
"zipcode": "string",
"address": "string"
}
}
Try it now
mutation updateDeviceLocation($deviceId: String!, $location: SensorLocationInput!){
updateDeviceLocation(deviceId: $deviceId, location: $location){
}
}
{
"deviceId": "string",
"location": {
"lat": "number",
"lon": "number",
"azi": "number",
"zipcode": "string",
"address": "string"
}
}
Successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": {
"updateDeviceLocation": {}
}
}
logIn
User's email address
User's password
Example
Request Content-Types:
application/json
Query
mutation logIn($email: String!, $password: String!){
logIn(email: $email, password: $password){
}
}
Variables
{
"email": "string",
"password": "string"
}
Try it now
mutation logIn($email: String!, $password: String!){
logIn(email: $email, password: $password){
}
}
{
"email": "string",
"password": "string"
}
Successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": {
"logIn": {}
}
}
changePassword
Confirm new password
Issuing user's password
New password for issuing user
Example
Request Content-Types:
application/json
Query
mutation changePassword($confirmPassword: String!, $currentPassword: String!, $newPassword: String!){
changePassword(confirmPassword: $confirmPassword, currentPassword: $currentPassword, newPassword: $newPassword){
}
}
Variables
{
"confirmPassword": "string",
"currentPassword": "string",
"newPassword": "string"
}
Try it now
mutation changePassword($confirmPassword: String!, $currentPassword: String!, $newPassword: String!){
changePassword(confirmPassword: $confirmPassword, currentPassword: $currentPassword, newPassword: $newPassword){
}
}
{
"confirmPassword": "string",
"currentPassword": "string",
"newPassword": "string"
}
Successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": {
"changePassword": {}
}
}
resetPassword
Confirm new password
New password for user
Reset token, authenticates request
Example
Request Content-Types:
application/json
Query
mutation resetPassword($confirmPassword: String!, $newPassword: String!, $token: String!){
resetPassword(confirmPassword: $confirmPassword, newPassword: $newPassword, token: $token){
email
}
}
Variables
{
"confirmPassword": "string",
"newPassword": "string",
"token": "string"
}
Try it now
mutation resetPassword($confirmPassword: String!, $newPassword: String!, $token: String!){
resetPassword(confirmPassword: $confirmPassword, newPassword: $newPassword, token: $token){
email
}
}
{
"confirmPassword": "string",
"newPassword": "string",
"token": "string"
}
Successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": {
"resetPassword": {
"email": "string"
}
}
}
Volume Count Analytics
Counts
Counts queries are used to get counts of objects that were observed in a given time interval.
Example feedCountMetrics query:
query {
feedCountMetrics(
serialnos:["NUM200B1234"],
startTime:"2019-03-11T00:00:00",
endTime:"2019-03-12T00:00:00",
objClasses:["pedestrian"],
timezone:"America/New_York",
interval:"6h") {
edges {
node {
serialno
result
objClass
time
}
}
}
}
In this example, we're using the feedCountMetrics
query to find the number of pedestrians detected by a specified device on March 11, 2019, grouped by 6 hour intervals. Similarly, we could use the zoneCountMetrics
query to get counts of objects in a Behavior Zone.
Example feedCountMetrics response body:
{
"data": {
"feedCountMetrics": {
"edges": [
{
"node": {
"objClass": "pedestrian",
"result": 595.0,
"serialno": "NUM200B000S0001",
"time": "2019-03-11T00:00:00-04:00"
}
},
{
"node": {
"objClass": "pedestrian",
"result": 7479.0,
"serialno": "NUM200B000S0001",
"time": "2019-03-11T06:00:00-04:00"
}
},
{
"node": {
"objClass": "pedestrian",
"result": 28245.0,
"serialno": "NUM200B000S0001",
"time": "2019-03-11T12:00:00-04:00"
}
},
{
"node": {
"objClass": "pedestrian",
"result": 12146.0,
"serialno": "NUM200B000S0001",
"time": "2019-03-11T18:00:00-04:00"
}
}
]
}
}
}
The response body contains result sets for each 6 hour interval on March 11 - four intervals in total. Each interval is denoted by its start time.
feedCountMetrics
serialno values of Devices for which to compute metric
Start of analysis time range in ISO format (e.g '2019-01-01T00:00:00)
End of analysis time range in ISO format (e.g '2019-01-01T00:00:00)
Time interval to aggregate objects for metric, expects a string with an integer followed by an interval abbreviation (m:minutes, h:hour, d:day, w:week, mo:month,y:year) (e.g. '1h', '30m', '1d')
List of Object classes ('car', 'pedestrian', 'bus', 'truck', 'trash', 'dog')
Timezone in tz format to localize time range and intervals (e.g. 'America/New_York')
DataVersionEnum value for the data lake version to compute metrics with
paginate results before cursor
paginate results after cursor
get first n results
get last n results
Example
Request Content-Types:
application/json
Query
query feedCountMetrics($serialnos: [String]!, $startTime: DateTime!, $endTime: DateTime!, $interval: String, $objClasses: [String]!, $timezone: String, $dataVersion: DataVersionEnum, $before: String, $after: String, $first: Int, $last: Int){
feedCountMetrics(serialnos: $serialnos, startTime: $startTime, endTime: $endTime, interval: $interval, objClasses: $objClasses, timezone: $timezone, dataVersion: $dataVersion, before: $before, after: $after, first: $first, last: $last){
}
}
Variables
{
"serialnos": [
"string"
],
"interval": "string",
"objClasses": [
"string"
],
"timezone": "string",
"dataVersion": "string",
"before": "string",
"after": "string",
"first": "integer",
"last": "integer"
}
Try it now
query feedCountMetrics($serialnos: [String]!, $startTime: DateTime!, $endTime: DateTime!, $interval: String, $objClasses: [String]!, $timezone: String, $dataVersion: DataVersionEnum, $before: String, $after: String, $first: Int, $last: Int){
feedCountMetrics(serialnos: $serialnos, startTime: $startTime, endTime: $endTime, interval: $interval, objClasses: $objClasses, timezone: $timezone, dataVersion: $dataVersion, before: $before, after: $after, first: $first, last: $last){
}
}
{
"serialnos": [
"string"
],
"interval": "string",
"objClasses": [
"string"
],
"timezone": "string",
"dataVersion": "string",
"before": "string",
"after": "string",
"first": "integer",
"last": "integer"
}
Successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": {
"feedCountMetrics": {}
}
}
zoneCountMetrics
rawId values for BehaviorZone regions which objects intersect with. If multiple provided, objects must intersect with zone1 AND zone2 AND so on
Start of analysis time range in ISO format (e.g '2019-01-01T00:00:00)
End of analysis time range in ISO format (e.g '2019-01-01T00:00:00)
Time interval to aggregate objects for metric, expects a string with an integer followed by an interval abbreviation (m:minutes, h:hour, d:day, w:week, mo:month,y:year) (e.g. '1h', '30m', '1d')
List of Object classes ('car', 'pedestrian', 'bus', 'truck', 'trash', 'dog')
Timezone in tz format to localize time range and intervals (e.g. 'America/New_York')
DataVersionEnum value for the data lake version to compute metrics with
paginate results before cursor
paginate results after cursor
get first n results
get last n results
Example
Request Content-Types:
application/json
Query
query zoneCountMetrics($zoneIds: [Int]!, $startTime: DateTime!, $endTime: DateTime!, $interval: String, $objClasses: [String]!, $timezone: String, $dataVersion: DataVersionEnum, $before: String, $after: String, $first: Int, $last: Int){
zoneCountMetrics(zoneIds: $zoneIds, startTime: $startTime, endTime: $endTime, interval: $interval, objClasses: $objClasses, timezone: $timezone, dataVersion: $dataVersion, before: $before, after: $after, first: $first, last: $last){
}
}
Variables
{
"zoneIds": [
"integer"
],
"interval": "string",
"objClasses": [
"string"
],
"timezone": "string",
"dataVersion": "string",
"before": "string",
"after": "string",
"first": "integer",
"last": "integer"
}
Try it now
query zoneCountMetrics($zoneIds: [Int]!, $startTime: DateTime!, $endTime: DateTime!, $interval: String, $objClasses: [String]!, $timezone: String, $dataVersion: DataVersionEnum, $before: String, $after: String, $first: Int, $last: Int){
zoneCountMetrics(zoneIds: $zoneIds, startTime: $startTime, endTime: $endTime, interval: $interval, objClasses: $objClasses, timezone: $timezone, dataVersion: $dataVersion, before: $before, after: $after, first: $first, last: $last){
}
}
{
"zoneIds": [
"integer"
],
"interval": "string",
"objClasses": [
"string"
],
"timezone": "string",
"dataVersion": "string",
"before": "string",
"after": "string",
"first": "integer",
"last": "integer"
}
Successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": {
"zoneCountMetrics": {}
}
}
screenlineCountMetrics
rawId values for BehaviorZone regions which objects intersect with. If multiple provided, objects must intersect with zone1 AND zone2 AND so on
Start of analysis time range in ISO format (e.g '2019-01-01T00:00:00)
End of analysis time range in ISO format (e.g '2019-01-01T00:00:00)
Time interval to aggregate objects for metric, expects a string with an integer followed by an interval abbreviation (m:minutes, h:hour, d:day, w:week, mo:month,y:year) (e.g. '1h', '30m', '1d')
List of Object classes ('car', 'pedestrian', 'bus', 'truck', 'trash', 'dog')
Timezone in tz format to localize time range and intervals (e.g. 'America/New_York')
DataVersionEnum value for the data lake version to compute metrics with
paginate results before cursor
paginate results after cursor
get first n results
get last n results
Example
Request Content-Types:
application/json
Query
query screenlineCountMetrics($zoneIds: [Int]!, $startTime: DateTime!, $endTime: DateTime!, $interval: String, $objClasses: [String]!, $timezone: String, $dataVersion: DataVersionEnum, $before: String, $after: String, $first: Int, $last: Int){
screenlineCountMetrics(zoneIds: $zoneIds, startTime: $startTime, endTime: $endTime, interval: $interval, objClasses: $objClasses, timezone: $timezone, dataVersion: $dataVersion, before: $before, after: $after, first: $first, last: $last){
}
}
Variables
{
"zoneIds": [
"integer"
],
"interval": "string",
"objClasses": [
"string"
],
"timezone": "string",
"dataVersion": "string",
"before": "string",
"after": "string",
"first": "integer",
"last": "integer"
}
Try it now
query screenlineCountMetrics($zoneIds: [Int]!, $startTime: DateTime!, $endTime: DateTime!, $interval: String, $objClasses: [String]!, $timezone: String, $dataVersion: DataVersionEnum, $before: String, $after: String, $first: Int, $last: Int){
screenlineCountMetrics(zoneIds: $zoneIds, startTime: $startTime, endTime: $endTime, interval: $interval, objClasses: $objClasses, timezone: $timezone, dataVersion: $dataVersion, before: $before, after: $after, first: $first, last: $last){
}
}
{
"zoneIds": [
"integer"
],
"interval": "string",
"objClasses": [
"string"
],
"timezone": "string",
"dataVersion": "string",
"before": "string",
"after": "string",
"first": "integer",
"last": "integer"
}
Successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": {
"screenlineCountMetrics": {}
}
}
Behavior Analytics
Heatmaps
A heatmap is an array of values representing the spatial distribution of activity levels. Numina-Graph provides heatmaps of object counts that can be used to visualize what paths objects travel within the sensing area.
Example feedHeatmaps query:
query {
feedHeatmaps(
serialno: "NUM200B000S0001",
startTime:"2019-05-01T00:00:00",
endTime:"2019-05-02T00:00:00",
objClasses:["pedestrian"],
timezone:"America/New_York") {
edges {
node {
time
objClass
heatmap
}
}
}
}
In this example, we're using the feedHeatmaps
query to determine where pedestrian travel is concentrated over the course of a single day. Similarly, the zoneHeatmaps
query can be used to get heatmaps of objects in a Behavior Zone.
Example feedHeatmaps response body:
{
"data": {
"feedHeatmaps": {
"edges": [
{
"node": {
"heatmap": [
[244,60,0.204],
[246,60,0.204],
[247,60,0.408],
[239,61,0.322],
...
],
"objClass": "pedestrian"
}
}
]
}
}
}
The heatmap data in the response is an array of coordinate-value tuples, in the form [x,y,value]
where x
and y
are the horizontal and vertical pixel coordinates (top-left origin) for a 640x480
image.
feedHeatmaps
serialno value of Device for which to compute heatmap
serialno value of Device for which to compute heatmap
End of analysis time range in ISO format (e.g '2019-01-01T00:00:00)
Timezone in tz format to localize time range and intervals (e.g. 'America/New_York')
List of Object classes ('car', 'pedestrian', 'bus', 'truck', 'trash', 'dog')
Percent of objects to sample for heatmap (e.g. 0.1, 10.5, 25)
Integer value for days of the week to filter objects (e.g. 1, 2, 3, 4, 5, 6, 7)
TrendWindowEnum value for the window of time to compute trend over (e.g. 'MORNING_COMMUTE')
DataVersionEnum value for the data lake version to compute metrics with
paginate results before cursor
paginate results after cursor
get first n results
get last n results
Example
Request Content-Types:
application/json
Query
query feedHeatmaps($serialno: String!, $startTime: DateTime!, $endTime: DateTime!, $timezone: String, $objClasses: [String]!, $samplePercent: Float, $days: [Int], $window: TrendWindowEnum, $dataVersion: DataVersionEnum, $before: String, $after: String, $first: Int, $last: Int){
feedHeatmaps(serialno: $serialno, startTime: $startTime, endTime: $endTime, timezone: $timezone, objClasses: $objClasses, samplePercent: $samplePercent, days: $days, window: $window, dataVersion: $dataVersion, before: $before, after: $after, first: $first, last: $last){
}
}
Variables
{
"serialno": "string",
"timezone": "string",
"objClasses": [
"string"
],
"samplePercent": "number",
"days": [
"integer"
],
"window": "string",
"dataVersion": "string",
"before": "string",
"after": "string",
"first": "integer",
"last": "integer"
}
Try it now
query feedHeatmaps($serialno: String!, $startTime: DateTime!, $endTime: DateTime!, $timezone: String, $objClasses: [String]!, $samplePercent: Float, $days: [Int], $window: TrendWindowEnum, $dataVersion: DataVersionEnum, $before: String, $after: String, $first: Int, $last: Int){
feedHeatmaps(serialno: $serialno, startTime: $startTime, endTime: $endTime, timezone: $timezone, objClasses: $objClasses, samplePercent: $samplePercent, days: $days, window: $window, dataVersion: $dataVersion, before: $before, after: $after, first: $first, last: $last){
}
}
{
"serialno": "string",
"timezone": "string",
"objClasses": [
"string"
],
"samplePercent": "number",
"days": [
"integer"
],
"window": "string",
"dataVersion": "string",
"before": "string",
"after": "string",
"first": "integer",
"last": "integer"
}
Successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": {
"feedHeatmaps": {}
}
}
zoneHeatmaps
rawId values of BehaviorZone objects
Start of analysis time range in ISO format (e.g '2019-01-01T00:00:00)
End of analysis time range in ISO format (e.g '2019-01-01T00:00:00)
List of Object classes ('car', 'pedestrian', 'bus', 'truck', 'trash', 'dog')
Timezone in tz format to localize time range and intervals (e.g. 'America/New_York')
Percent of objects to sample for heatmap (e.g. 0.1, 10.5, 25)
Integer value for days of the week to filter objects (e.g. 1, 2, 3, 4, 5, 6, 7)
TrendWindowEnum value for the window of time to compute trend over (e.g. 'MORNING_COMMUTE')
DataVersionEnum value for the data lake version to compute metrics with
paginate results before cursor
paginate results after cursor
get first n results
get last n results
Example
Request Content-Types:
application/json
Query
query zoneHeatmaps($zoneIds: [Int]!, $startTime: DateTime!, $endTime: DateTime!, $objClasses: [String]!, $timezone: String, $samplePercent: Float, $days: [Int], $window: TrendWindowEnum, $dataVersion: DataVersionEnum, $before: String, $after: String, $first: Int, $last: Int){
zoneHeatmaps(zoneIds: $zoneIds, startTime: $startTime, endTime: $endTime, objClasses: $objClasses, timezone: $timezone, samplePercent: $samplePercent, days: $days, window: $window, dataVersion: $dataVersion, before: $before, after: $after, first: $first, last: $last){
}
}
Variables
{
"zoneIds": [
"integer"
],
"objClasses": [
"string"
],
"timezone": "string",
"samplePercent": "number",
"days": [
"integer"
],
"window": "string",
"dataVersion": "string",
"before": "string",
"after": "string",
"first": "integer",
"last": "integer"
}
Try it now
query zoneHeatmaps($zoneIds: [Int]!, $startTime: DateTime!, $endTime: DateTime!, $objClasses: [String]!, $timezone: String, $samplePercent: Float, $days: [Int], $window: TrendWindowEnum, $dataVersion: DataVersionEnum, $before: String, $after: String, $first: Int, $last: Int){
zoneHeatmaps(zoneIds: $zoneIds, startTime: $startTime, endTime: $endTime, objClasses: $objClasses, timezone: $timezone, samplePercent: $samplePercent, days: $days, window: $window, dataVersion: $dataVersion, before: $before, after: $after, first: $first, last: $last){
}
}
{
"zoneIds": [
"integer"
],
"objClasses": [
"string"
],
"timezone": "string",
"samplePercent": "number",
"days": [
"integer"
],
"window": "string",
"dataVersion": "string",
"before": "string",
"after": "string",
"first": "integer",
"last": "integer"
}
Successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": {
"zoneHeatmaps": {}
}
}
Occupancy Analytics
Volume Count queries
maxOccupancy
serialno values of Devices for which to compute metric
Start of analysis time range in ISO format (e.g '2019-01-01T00:00:00)
End of analysis time range in ISO format (e.g '2019-01-01T00:00:00)
Time interval to aggregate objects for metric, expects a string with an integer followed by an interval abbreviation (m:minutes, h:hour, d:day, w:week, mo:month,y:year) (e.g. '1h', '30m', '1d')
List of Object classes ('car', 'pedestrian', 'bus', 'truck', 'trash', 'dog')
Timezone in tz format to localize time range and intervals (e.g. 'America/New_York')
DataVersionEnum value for the data lake version to compute metrics with
paginate results before cursor
paginate results after cursor
get first n results
get last n results
Example
Request Content-Types:
application/json
Query
query maxOccupancy($serialnos: [String]!, $startTime: DateTime!, $endTime: DateTime!, $interval: String, $objClasses: [String]!, $timezone: String, $dataVersion: DataVersionEnum, $before: String, $after: String, $first: Int, $last: Int){
maxOccupancy(serialnos: $serialnos, startTime: $startTime, endTime: $endTime, interval: $interval, objClasses: $objClasses, timezone: $timezone, dataVersion: $dataVersion, before: $before, after: $after, first: $first, last: $last){
}
}
Variables
{
"serialnos": [
"string"
],
"interval": "string",
"objClasses": [
"string"
],
"timezone": "string",
"dataVersion": "string",
"before": "string",
"after": "string",
"first": "integer",
"last": "integer"
}
Try it now
query maxOccupancy($serialnos: [String]!, $startTime: DateTime!, $endTime: DateTime!, $interval: String, $objClasses: [String]!, $timezone: String, $dataVersion: DataVersionEnum, $before: String, $after: String, $first: Int, $last: Int){
maxOccupancy(serialnos: $serialnos, startTime: $startTime, endTime: $endTime, interval: $interval, objClasses: $objClasses, timezone: $timezone, dataVersion: $dataVersion, before: $before, after: $after, first: $first, last: $last){
}
}
{
"serialnos": [
"string"
],
"interval": "string",
"objClasses": [
"string"
],
"timezone": "string",
"dataVersion": "string",
"before": "string",
"after": "string",
"first": "integer",
"last": "integer"
}
Successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": {
"maxOccupancy": {}
}
}
zoneMaxOccupancy
rawId values of BehaviorZone objects
Start of analysis time range in ISO format (e.g '2019-01-01T00:00:00)
End of analysis time range in ISO format (e.g '2019-01-01T00:00:00)
Time interval to aggregate objects for metric, expects a string with an integer followed by an interval abbreviation (m:minutes, h:hour, d:day, w:week, mo:month,y:year) (e.g. '1h', '30m', '1d')
List of Object classes ('car', 'pedestrian', 'bus', 'truck', 'trash', 'dog')
Timezone in tz format to localize time range and intervals (e.g. 'America/New_York')
DataVersionEnum value for the data lake version to compute metrics with
paginate results before cursor
paginate results after cursor
get first n results
get last n results
Example
Request Content-Types:
application/json
Query
query zoneMaxOccupancy($zoneIds: [Int]!, $startTime: DateTime!, $endTime: DateTime!, $interval: String, $objClasses: [String]!, $timezone: String, $dataVersion: DataVersionEnum, $before: String, $after: String, $first: Int, $last: Int){
zoneMaxOccupancy(zoneIds: $zoneIds, startTime: $startTime, endTime: $endTime, interval: $interval, objClasses: $objClasses, timezone: $timezone, dataVersion: $dataVersion, before: $before, after: $after, first: $first, last: $last){
}
}
Variables
{
"zoneIds": [
"integer"
],
"interval": "string",
"objClasses": [
"string"
],
"timezone": "string",
"dataVersion": "string",
"before": "string",
"after": "string",
"first": "integer",
"last": "integer"
}
Try it now
query zoneMaxOccupancy($zoneIds: [Int]!, $startTime: DateTime!, $endTime: DateTime!, $interval: String, $objClasses: [String]!, $timezone: String, $dataVersion: DataVersionEnum, $before: String, $after: String, $first: Int, $last: Int){
zoneMaxOccupancy(zoneIds: $zoneIds, startTime: $startTime, endTime: $endTime, interval: $interval, objClasses: $objClasses, timezone: $timezone, dataVersion: $dataVersion, before: $before, after: $after, first: $first, last: $last){
}
}
{
"zoneIds": [
"integer"
],
"interval": "string",
"objClasses": [
"string"
],
"timezone": "string",
"dataVersion": "string",
"before": "string",
"after": "string",
"first": "integer",
"last": "integer"
}
Successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": {
"zoneMaxOccupancy": {}
}
}
recentMaxOccupancy
serialno values of Devices for which to compute metric
Start of analysis time range in ISO format (e.g '2019-01-01T00:00:00)
End of analysis time range in ISO format (e.g '2019-01-01T00:00:00)
Time interval to aggregate objects for metric, expects a string with an integer followed by an interval abbreviation (m:minutes, h:hour, d:day, w:week, mo:month,y:year) (e.g. '1h', '30m', '1d')
List of Object classes ('car', 'pedestrian', 'bus', 'truck', 'trash', 'dog')
Timezone in tz format to localize time range and intervals (e.g. 'America/New_York')
paginate results before cursor
paginate results after cursor
get first n results
get last n results
Example
Request Content-Types:
application/json
Query
query recentMaxOccupancy($serialno: String!, $startTime: DateTime!, $endTime: DateTime!, $interval: String, $objClass: String!, $timezone: String, $before: String, $after: String, $first: Int, $last: Int){
recentMaxOccupancy(serialno: $serialno, startTime: $startTime, endTime: $endTime, interval: $interval, objClass: $objClass, timezone: $timezone, before: $before, after: $after, first: $first, last: $last){
}
}
Variables
{
"serialno": "string",
"interval": "string",
"objClass": "string",
"timezone": "string",
"before": "string",
"after": "string",
"first": "integer",
"last": "integer"
}
Try it now
query recentMaxOccupancy($serialno: String!, $startTime: DateTime!, $endTime: DateTime!, $interval: String, $objClass: String!, $timezone: String, $before: String, $after: String, $first: Int, $last: Int){
recentMaxOccupancy(serialno: $serialno, startTime: $startTime, endTime: $endTime, interval: $interval, objClass: $objClass, timezone: $timezone, before: $before, after: $after, first: $first, last: $last){
}
}
{
"serialno": "string",
"interval": "string",
"objClass": "string",
"timezone": "string",
"before": "string",
"after": "string",
"first": "integer",
"last": "integer"
}
Successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": {
"recentMaxOccupancy": {}
}
}
Dwell Analytics
Dwell Analytics
zoneDwellTimeDistribution
rawId values for BehaviorZone regions which objects intersect with. If multiple provided, objects must intersect with zone1 AND zone2 AND so on
Start of analysis time range in ISO format (e.g '2019-01-01T00:00:00)
End of analysis time range in ISO format (e.g '2019-01-01T00:00:00)
Timezone in tz format to localize time range and intervals (e.g. 'America/New_York')
List of Object classes ('car', 'pedestrian', 'bus', 'truck', 'trash', 'dog')
Time interval to aggregate objects for metric, expects a string with an integer followed by an interval abbreviation (m:minutes, h:hour, d:day, w:week, mo:month,y:year) (e.g. '1h', '30m', '1d')
DataVersionEnum value for the data lake version to compute metrics with
paginate results before cursor
paginate results after cursor
get first n results
get last n results
Example
Request Content-Types:
application/json
Query
query zoneDwellTimeDistribution($zoneIds: [Int]!, $startTime: DateTime!, $endTime: DateTime!, $timezone: String, $objClasses: [String]!, $interval: String, $dataVersion: DataVersionEnum, $before: String, $after: String, $first: Int, $last: Int){
zoneDwellTimeDistribution(zoneIds: $zoneIds, startTime: $startTime, endTime: $endTime, timezone: $timezone, objClasses: $objClasses, interval: $interval, dataVersion: $dataVersion, before: $before, after: $after, first: $first, last: $last){
}
}
Variables
{
"zoneIds": [
"integer"
],
"timezone": "string",
"objClasses": [
"string"
],
"interval": "string",
"dataVersion": "string",
"before": "string",
"after": "string",
"first": "integer",
"last": "integer"
}
Try it now
query zoneDwellTimeDistribution($zoneIds: [Int]!, $startTime: DateTime!, $endTime: DateTime!, $timezone: String, $objClasses: [String]!, $interval: String, $dataVersion: DataVersionEnum, $before: String, $after: String, $first: Int, $last: Int){
zoneDwellTimeDistribution(zoneIds: $zoneIds, startTime: $startTime, endTime: $endTime, timezone: $timezone, objClasses: $objClasses, interval: $interval, dataVersion: $dataVersion, before: $before, after: $after, first: $first, last: $last){
}
}
{
"zoneIds": [
"integer"
],
"timezone": "string",
"objClasses": [
"string"
],
"interval": "string",
"dataVersion": "string",
"before": "string",
"after": "string",
"first": "integer",
"last": "integer"
}
Successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": {
"zoneDwellTimeDistribution": {}
}
}
feedDwellTimeDistribution
serialno values of Devices for which to compute metric
Start of analysis time range in ISO format (e.g '2019-01-01T00:00:00)
End of analysis time range in ISO format (e.g '2019-01-01T00:00:00)
Timezone in tz format to localize time range and intervals (e.g. 'America/New_York')
List of Object classes ('car', 'pedestrian', 'bus', 'truck', 'trash', 'dog')
Time interval to aggregate objects for metric, expects a string with an integer followed by an interval abbreviation (m:minutes, h:hour, d:day, w:week, mo:month,y:year) (e.g. '1h', '30m', '1d')
DataVersionEnum value for the data lake version to compute metrics with
paginate results before cursor
paginate results after cursor
get first n results
get last n results
Example
Request Content-Types:
application/json
Query
query feedDwellTimeDistribution($serialnos: [String]!, $startTime: DateTime!, $endTime: DateTime!, $timezone: String, $objClasses: [String]!, $interval: String, $dataVersion: DataVersionEnum, $before: String, $after: String, $first: Int, $last: Int){
feedDwellTimeDistribution(serialnos: $serialnos, startTime: $startTime, endTime: $endTime, timezone: $timezone, objClasses: $objClasses, interval: $interval, dataVersion: $dataVersion, before: $before, after: $after, first: $first, last: $last){
}
}
Variables
{
"serialnos": [
"string"
],
"timezone": "string",
"objClasses": [
"string"
],
"interval": "string",
"dataVersion": "string",
"before": "string",
"after": "string",
"first": "integer",
"last": "integer"
}
Try it now
query feedDwellTimeDistribution($serialnos: [String]!, $startTime: DateTime!, $endTime: DateTime!, $timezone: String, $objClasses: [String]!, $interval: String, $dataVersion: DataVersionEnum, $before: String, $after: String, $first: Int, $last: Int){
feedDwellTimeDistribution(serialnos: $serialnos, startTime: $startTime, endTime: $endTime, timezone: $timezone, objClasses: $objClasses, interval: $interval, dataVersion: $dataVersion, before: $before, after: $after, first: $first, last: $last){
}
}
{
"serialnos": [
"string"
],
"timezone": "string",
"objClasses": [
"string"
],
"interval": "string",
"dataVersion": "string",
"before": "string",
"after": "string",
"first": "integer",
"last": "integer"
}
Successful operation
Response Content-Types: application/json
Response Example (200 OK)
{
"data": {
"feedDwellTimeDistribution": {}
}
}
Schema Definitions
ABCompareBlockInput: object
The A and B Analysis Blocks to use for comparison.
- a:
-
Analysis Block A
- b:
-
Analysis Block B
- objClasses:
-
Object Classes
- aTitle:
-
An optional title to provide to the A analysis block to describe it's content.
- bTitle:
-
An optional title to provide to the B analysis block to describe it's content.
Example
{
"a": {
"zone": "string",
"objClasses": [
"string"
],
"filterStartTime": "object",
"filterEndTime": "object"
},
"b": {
"zone": "string",
"objClasses": [
"string"
],
"filterStartTime": "object",
"filterEndTime": "object"
},
"objClasses": [
"string"
],
"aTitle": "object",
"bTitle": "object"
}
AdminLogInMutation: object
Admin-only mutation to log into internal services. (admin-only)
-
user:
object
-
User object for given credentials
-
- return:
-
arguments:
object
-
-
jwt:
object
-
JWTToken object containing auth token info
-
- return:
-
arguments:
object
-
Example
{
"user": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"email": {
"return": "string",
"arguments": {}
},
"name": {
"return": "string",
"arguments": {}
},
"orgId": {
"return": "string",
"arguments": {}
},
"joined": {
"return": "object",
"arguments": {}
},
"position": {
"return": "string",
"arguments": {}
},
"admin": {
"return": "boolean",
"arguments": {}
},
"apiKey": {
"return": "string",
"arguments": {}
},
"authLevel": {
"return": "string",
"arguments": {}
},
"phone": {
"return": "string",
"arguments": {}
},
"lowerEmail": {
"return": "string",
"arguments": {}
},
"organization": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"name": {
"return": "string",
"arguments": {}
},
"joined": {
"return": "object",
"arguments": {}
},
"timezone": {
"return": "string",
"arguments": {}
},
"zoomLevel": {
"return": "number",
"arguments": {}
},
"orgLat": {
"return": "number",
"arguments": {}
},
"orgLon": {
"return": "number",
"arguments": {}
},
"alias": {
"return": "string",
"arguments": {}
},
"orgId": {
"return": "string",
"arguments": {}
},
"devices": {
"return": {
"pageInfo": {
"return": {
"hasNextPage": {
"return": "boolean",
"arguments": {}
},
"hasPreviousPage": {
"return": "boolean"
}
}
}
}
}
}
}
}
}
}
AdminUpdateUserMutation: object
A mutation for admins to update data pertaining to a User object in the Numina database. Includes changing user organization and admin status. (admin-only)
-
user:
object
-
- return:
-
arguments:
object
-
Example
{
"user": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"email": {
"return": "string",
"arguments": {}
},
"name": {
"return": "string",
"arguments": {}
},
"orgId": {
"return": "string",
"arguments": {}
},
"joined": {
"return": "object",
"arguments": {}
},
"position": {
"return": "string",
"arguments": {}
},
"admin": {
"return": "boolean",
"arguments": {}
},
"apiKey": {
"return": "string",
"arguments": {}
},
"authLevel": {
"return": "string",
"arguments": {}
},
"phone": {
"return": "string",
"arguments": {}
},
"lowerEmail": {
"return": "string",
"arguments": {}
},
"organization": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"name": {
"return": "string",
"arguments": {}
},
"joined": {
"return": "object",
"arguments": {}
},
"timezone": {
"return": "string",
"arguments": {}
},
"zoomLevel": {
"return": "number",
"arguments": {}
},
"orgLat": {
"return": "number",
"arguments": {}
},
"orgLon": {
"return": "number",
"arguments": {}
},
"alias": {
"return": "string",
"arguments": {}
},
"orgId": {
"return": "string",
"arguments": {}
},
"devices": {
"return": {
"pageInfo": {
"return": {
"hasNextPage": {
"return": "boolean",
"arguments": {}
},
"hasPreviousPage": {
"return": "boolean"
}
}
}
}
}
}
}
}
}
}
AnalysisBlockInput: object
The set of parameters required for creating a subsection of a report.
- zone:
-
Zone Name
- objClasses:
-
Object Classes
- filterStartTime:
-
Filter Start Time
- filterEndTime:
-
Filter End Time
Example
{
"zone": "string",
"objClasses": [
"string"
],
"filterStartTime": "object",
"filterEndTime": "object"
}
BehaviorZone: object
A spatial region defined on a Numina sensor device's field of view, used for filtering and analysis of street-level movement.
-
zoneType:
object
-
Type of behaviorzone: cpoly, which means polygon, or line, which means line
-
- return:
-
arguments:
object
-
-
id:
object
-
The ID of the object.
-
- return:
-
arguments:
object
-
-
demarcation:
object
-
Coordinates (list of [x,y]) defining the shape of the behavior zone polygon on a 640x480 grid
-
-
return:
object[][]
-
arguments:
object
-
-
return:
-
feedId:
object
-
Database id of the Feed object this BehaviorZone belongs to.
-
- return:
-
arguments:
object
-
-
text:
object
-
Text describing the behavior zone
-
- return:
-
arguments:
object
-
-
color:
object
-
Color selected by the user when drawing the behavior zone
-
- return:
-
arguments:
object
-
-
isCoverageZone:
object
-
Acts as the coverage zone for the linked Feed
-
- return:
-
arguments:
object
-
-
feed:
object
-
- return:
-
arguments:
object
-
-
rawId:
object
-
Database ID for this object
-
- return:
-
arguments:
object
-
Example
{
"zoneType": {
"return": "string",
"arguments": {}
},
"id": {
"return": "object",
"arguments": {}
},
"demarcation": {
"return": [
[
"number"
]
],
"arguments": {}
},
"feedId": {
"return": "string",
"arguments": {}
},
"text": {
"return": "string",
"arguments": {}
},
"color": {
"return": "string",
"arguments": {}
},
"isCoverageZone": {
"return": "boolean",
"arguments": {}
},
"feed": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"name": {
"return": "string",
"arguments": {}
},
"created": {
"return": "object",
"arguments": {}
},
"description": {
"return": "string",
"arguments": {}
},
"device": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"serialno": {
"return": "string",
"arguments": {}
},
"name": {
"return": "string",
"arguments": {}
},
"alias": {
"return": "string",
"arguments": {}
},
"tags": {
"return": "string",
"arguments": {}
},
"notes": {
"return": "string",
"arguments": {}
},
"status": {
"return": "string",
"arguments": {}
},
"created": {
"return": "object",
"arguments": {}
},
"orgId": {
"return": "string",
"arguments": {}
},
"locationId": {
"return": "string",
"arguments": {}
},
"feedId": {
"return": "string",
"arguments": {}
},
"samplingRate": {
"return": "string"
}
}
}
}
}
}
BehaviorZoneConnection: object
-
pageInfo:
object
-
Pagination data for this connection.
-
- return:
-
arguments:
object
-
-
edges:
object
-
Contains the nodes in this connection.
-
- return:
-
arguments:
object
-
Example
{
"pageInfo": {
"return": {
"hasNextPage": {
"return": "boolean",
"arguments": {}
},
"hasPreviousPage": {
"return": "boolean",
"arguments": {}
},
"startCursor": {
"return": "string",
"arguments": {}
},
"endCursor": {
"return": "string",
"arguments": {}
}
},
"arguments": {}
},
"edges": {
"return": [
{
"node": {
"return": {
"zoneType": {
"return": "string",
"arguments": {}
},
"id": {
"return": "object",
"arguments": {}
},
"demarcation": {
"return": [
[
"number"
]
],
"arguments": {}
},
"feedId": {
"return": "string",
"arguments": {}
},
"text": {
"return": "string",
"arguments": {}
},
"color": {
"return": "string",
"arguments": {}
},
"isCoverageZone": {
"return": "boolean",
"arguments": {}
},
"feed": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"name": {
"return": "string",
"arguments": {}
},
"created": {
"return": "object",
"arguments": {}
},
"description": {
"return": "string",
"arguments": {}
},
"device": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"serialno": {
"return": "string",
"arguments": {}
},
"name": {
"return": "string",
"arguments": {}
},
"alias": {
"return": "string",
"arguments": {}
},
"tags": {
"return": "string",
"arguments": {}
}
}
}
}
}
}
}
}
]
}
}
BehaviorZoneEdge: object
A Relay edge containing a BehaviorZone
and its cursor.
-
node:
object
-
The item at the end of the edge
-
- return:
-
arguments:
object
-
-
cursor:
object
-
A cursor for use in pagination
-
- return:
-
arguments:
object
-
Example
{
"node": {
"return": {
"zoneType": {
"return": "string",
"arguments": {}
},
"id": {
"return": "object",
"arguments": {}
},
"demarcation": {
"return": [
[
"number"
]
],
"arguments": {}
},
"feedId": {
"return": "string",
"arguments": {}
},
"text": {
"return": "string",
"arguments": {}
},
"color": {
"return": "string",
"arguments": {}
},
"isCoverageZone": {
"return": "boolean",
"arguments": {}
},
"feed": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"name": {
"return": "string",
"arguments": {}
},
"created": {
"return": "object",
"arguments": {}
},
"description": {
"return": "string",
"arguments": {}
},
"device": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"serialno": {
"return": "string",
"arguments": {}
},
"name": {
"return": "string",
"arguments": {}
},
"alias": {
"return": "string",
"arguments": {}
},
"tags": {
"return": "string",
"arguments": {}
},
"notes": {
"return": "string",
"arguments": {}
},
"status": {
"return": "string",
"arguments": {}
},
"created": {
"return": "object",
"arguments": {}
},
"orgId": {
"return": "string",
"arguments": {}
},
"locationId": {
"return": "string",
"arguments": {}
},
"feedId": {
"return": "string",
"arguments": {}
}
}
}
}
}
}
}
}
BehaviorZoneSortEnum: string
An enumeration.
-
objectTYPE_ASC
-
objectTYPE_DESC
-
objectID_ASC
-
objectID_DESC
-
objectDEMARCATION_ASC
-
objectDEMARCATION_DESC
-
objectFEED_ID_ASC
-
objectFEED_ID_DESC
-
objectTEXT_ASC
-
objectTEXT_DESC
-
objectCOLOR_ASC
-
objectCOLOR_DESC
-
objectIS_COVERAGE_ZONE_ASC
-
objectIS_COVERAGE_ZONE_DESC
BehaviorZonesConnection: object
Connection to BehaviorZone nodes
-
pageInfo:
object
-
Pagination data for this connection.
-
- return:
-
arguments:
object
-
-
edges:
object
-
Contains the nodes in this connection.
-
- return:
-
arguments:
object
-
-
count:
object
-
Number of BehaviorZone nodes
-
- return:
-
arguments:
object
-
Example
{
"pageInfo": {
"return": {
"hasNextPage": {
"return": "boolean",
"arguments": {}
},
"hasPreviousPage": {
"return": "boolean",
"arguments": {}
},
"startCursor": {
"return": "string",
"arguments": {}
},
"endCursor": {
"return": "string",
"arguments": {}
}
},
"arguments": {}
},
"edges": {
"return": [
{
"node": {
"return": {
"zoneType": {
"return": "string",
"arguments": {}
},
"id": {
"return": "object",
"arguments": {}
},
"demarcation": {
"return": [
[
"number"
]
],
"arguments": {}
},
"feedId": {
"return": "string",
"arguments": {}
},
"text": {
"return": "string",
"arguments": {}
},
"color": {
"return": "string",
"arguments": {}
},
"isCoverageZone": {
"return": "boolean",
"arguments": {}
},
"feed": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"name": {
"return": "string",
"arguments": {}
},
"created": {
"return": "object",
"arguments": {}
},
"description": {
"return": "string",
"arguments": {}
},
"device": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"serialno": {
"return": "string",
"arguments": {}
},
"name": {
"return": "string",
"arguments": {}
},
"alias": {
"return": "string",
"arguments": {}
},
"tags": {
"return": "string",
"arguments": {}
}
}
}
}
}
}
}
}
]
}
}
BehaviorZonesEdge: object
A Relay edge containing a BehaviorZones
and its cursor.
-
node:
object
-
The item at the end of the edge
-
- return:
-
arguments:
object
-
-
cursor:
object
-
A cursor for use in pagination
-
- return:
-
arguments:
object
-
Example
{
"node": {
"return": {
"zoneType": {
"return": "string",
"arguments": {}
},
"id": {
"return": "object",
"arguments": {}
},
"demarcation": {
"return": [
[
"number"
]
],
"arguments": {}
},
"feedId": {
"return": "string",
"arguments": {}
},
"text": {
"return": "string",
"arguments": {}
},
"color": {
"return": "string",
"arguments": {}
},
"isCoverageZone": {
"return": "boolean",
"arguments": {}
},
"feed": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"name": {
"return": "string",
"arguments": {}
},
"created": {
"return": "object",
"arguments": {}
},
"description": {
"return": "string",
"arguments": {}
},
"device": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"serialno": {
"return": "string",
"arguments": {}
},
"name": {
"return": "string",
"arguments": {}
},
"alias": {
"return": "string",
"arguments": {}
},
"tags": {
"return": "string",
"arguments": {}
},
"notes": {
"return": "string",
"arguments": {}
},
"status": {
"return": "string",
"arguments": {}
},
"created": {
"return": "object",
"arguments": {}
},
"orgId": {
"return": "string",
"arguments": {}
},
"locationId": {
"return": "string",
"arguments": {}
},
"feedId": {
"return": "string",
"arguments": {}
}
}
}
}
}
}
}
}
ChangePasswordMutation: object
Allows users to change their own password, provided they know their current password.
-
user:
object
-
The issuing user's User object, upon success
-
- return:
-
arguments:
object
-
Example
{
"user": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"email": {
"return": "string",
"arguments": {}
},
"name": {
"return": "string",
"arguments": {}
},
"orgId": {
"return": "string",
"arguments": {}
},
"joined": {
"return": "object",
"arguments": {}
},
"position": {
"return": "string",
"arguments": {}
},
"admin": {
"return": "boolean",
"arguments": {}
},
"apiKey": {
"return": "string",
"arguments": {}
},
"authLevel": {
"return": "string",
"arguments": {}
},
"phone": {
"return": "string",
"arguments": {}
},
"lowerEmail": {
"return": "string",
"arguments": {}
},
"organization": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"name": {
"return": "string",
"arguments": {}
},
"joined": {
"return": "object",
"arguments": {}
},
"timezone": {
"return": "string",
"arguments": {}
},
"zoomLevel": {
"return": "number",
"arguments": {}
},
"orgLat": {
"return": "number",
"arguments": {}
},
"orgLon": {
"return": "number",
"arguments": {}
},
"alias": {
"return": "string",
"arguments": {}
},
"orgId": {
"return": "string",
"arguments": {}
},
"devices": {
"return": {
"pageInfo": {
"return": {
"hasNextPage": {
"return": "boolean",
"arguments": {}
},
"hasPreviousPage": {
"return": "boolean"
}
}
}
}
}
}
}
}
}
}
CheckSensorStatus: object
Message defining desired sensor status - not implemented on sensor until restart mode takes one of two values, configuration
or operation
-
status:
object
-
Serial No. of sensor to change mode
-
- return:
-
arguments:
object
-
-
mode:
object
-
Serial No. of sensor to change mode
-
- return:
-
arguments:
object
-
-
version:
object
-
Current software version of sensor
-
- return:
-
arguments:
object
-
Example
{
"status": {
"return": "string",
"arguments": {}
},
"mode": {
"return": "string",
"arguments": {}
},
"version": {
"return": "string",
"arguments": {}
}
}
CreateBehaviorZone: object
Create a BehaviorZone object for a Device in the Numina database
-
behaviorZone:
object
-
BehaviorZone object that was created
-
- return:
-
arguments:
object
-
Example
{
"behaviorZone": {
"return": {
"zoneType": {
"return": "string",
"arguments": {}
},
"id": {
"return": "object",
"arguments": {}
},
"demarcation": {
"return": [
[
"number"
]
],
"arguments": {}
},
"feedId": {
"return": "string",
"arguments": {}
},
"text": {
"return": "string",
"arguments": {}
},
"color": {
"return": "string",
"arguments": {}
},
"isCoverageZone": {
"return": "boolean",
"arguments": {}
},
"feed": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"name": {
"return": "string",
"arguments": {}
},
"created": {
"return": "object",
"arguments": {}
},
"description": {
"return": "string",
"arguments": {}
},
"device": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"serialno": {
"return": "string",
"arguments": {}
},
"name": {
"return": "string",
"arguments": {}
},
"alias": {
"return": "string",
"arguments": {}
},
"tags": {
"return": "string",
"arguments": {}
},
"notes": {
"return": "string",
"arguments": {}
},
"status": {
"return": "string",
"arguments": {}
},
"created": {
"return": "object",
"arguments": {}
},
"orgId": {
"return": "string",
"arguments": {}
},
"locationId": {
"return": "string",
"arguments": {}
},
"feedId": {
"return": "string",
"arguments": {}
}
}
}
}
}
}
}
}
CreateComparisonReport: object
Starts a standard report in aws batch.
-
result:
object
-
'Success' upon success.
-
- return:
-
arguments:
object
-
Example
{
"result": {
"return": "string",
"arguments": {}
}
}
CreateOrganization: object
Create an Organization object in the Numina database. (admin-only)
-
organization:
object
-
Organization object that was just created
-
- return:
-
arguments:
object
-
Example
{
"organization": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"name": {
"return": "string",
"arguments": {}
},
"joined": {
"return": "object",
"arguments": {}
},
"timezone": {
"return": "string",
"arguments": {}
},
"zoomLevel": {
"return": "number",
"arguments": {}
},
"orgLat": {
"return": "number",
"arguments": {}
},
"orgLon": {
"return": "number",
"arguments": {}
},
"alias": {
"return": "string",
"arguments": {}
},
"orgId": {
"return": "string",
"arguments": {}
},
"devices": {
"return": {
"pageInfo": {
"return": {
"hasNextPage": {
"return": "boolean",
"arguments": {}
},
"hasPreviousPage": {
"return": "boolean",
"arguments": {}
},
"startCursor": {
"return": "string",
"arguments": {}
},
"endCursor": {
"return": "string",
"arguments": {}
}
},
"arguments": {}
},
"edges": {
"return": [
{
"node": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"serialno": {
"return": "string",
"arguments": {}
},
"name": {
"return": "string",
"arguments": {}
},
"alias": {
"return": "string",
"arguments": {}
},
"tags": {
"return": "string",
"arguments": {}
},
"notes": {
"return": "string",
"arguments": {}
},
"status": {
"return": "string",
"arguments": {}
},
"created": {}
}
}
}
]
}
}
}
}
}
}
CreateStandardReport: object
Starts a standard report in aws batch.
-
result:
object
-
'Success' upon success.
-
- return:
-
arguments:
object
-
Example
{
"result": {
"return": "string",
"arguments": {}
}
}
CreateUserMutation: object
Create a User object in the Numina database (admin only). Upon successful creation, this mutation sends a welcome email to the user's email address, and adds the user's email to Mailchimp. (admin-only)
-
user:
object
-
User object that just got created
-
- return:
-
arguments:
object
-
Example
{
"user": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"email": {
"return": "string",
"arguments": {}
},
"name": {
"return": "string",
"arguments": {}
},
"orgId": {
"return": "string",
"arguments": {}
},
"joined": {
"return": "object",
"arguments": {}
},
"position": {
"return": "string",
"arguments": {}
},
"admin": {
"return": "boolean",
"arguments": {}
},
"apiKey": {
"return": "string",
"arguments": {}
},
"authLevel": {
"return": "string",
"arguments": {}
},
"phone": {
"return": "string",
"arguments": {}
},
"lowerEmail": {
"return": "string",
"arguments": {}
},
"organization": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"name": {
"return": "string",
"arguments": {}
},
"joined": {
"return": "object",
"arguments": {}
},
"timezone": {
"return": "string",
"arguments": {}
},
"zoomLevel": {
"return": "number",
"arguments": {}
},
"orgLat": {
"return": "number",
"arguments": {}
},
"orgLon": {
"return": "number",
"arguments": {}
},
"alias": {
"return": "string",
"arguments": {}
},
"orgId": {
"return": "string",
"arguments": {}
},
"devices": {
"return": {
"pageInfo": {
"return": {
"hasNextPage": {
"return": "boolean",
"arguments": {}
},
"hasPreviousPage": {
"return": "boolean"
}
}
}
}
}
}
}
}
}
}
DateTime: object
The DateTime
scalar type represents a DateTime value as specified by
iso8601.
Example
object
DeleteBehaviorZone: object
Delete a BehaviorZone object from the Numina database.
-
success:
object
-
Returns the deleted BehaviorZone object's ID on success
-
- return:
-
arguments:
object
-
Example
{
"success": {
"return": "string",
"arguments": {}
}
}
DeleteDevice: object
Delete a device object (admin only)
-
success:
object
-
returns device rawId if delete successful
-
- return:
-
arguments:
object
-
Example
{
"success": {
"return": "string",
"arguments": {}
}
}
DeleteOrganization: object
Delete an Organization object from the Numina database (admin-only)
-
success:
object
-
- return:
-
arguments:
object
-
Example
{
"success": {
"return": "string",
"arguments": {}
}
}
DeleteUserMutation: object
Delete a User object from the Numina database. (admin-only)
-
success:
object
-
User object's rawId value if successfully deleted
-
- return:
-
arguments:
object
-
Example
{
"success": {
"return": "string",
"arguments": {}
}
}
Device: object
A Numina sensor device. Non-admin users can only see devices belonging to their organization.
-
id:
object
-
The ID of the object.
-
- return:
-
arguments:
object
-
-
serialno:
object
-
Serial number, set by Numina
-
- return:
-
arguments:
object
-
-
name:
object
-
Name for this sensor
-
- return:
-
arguments:
object
-
-
alias:
object
-
Auto-generated, human readable short name for this sensor
-
- return:
-
arguments:
object
-
-
tags:
object
-
Additional tags to categorize the sensor (not fully supported)
-
- return:
-
arguments:
object
-
-
notes:
object
-
Additional notes describing the sensor
-
- return:
-
arguments:
object
-
-
status:
object
-
Device reporting status
-
- return:
-
arguments:
object
-
-
created:
object
-
UTC timestamp at which this device was added to the database
-
- return:
-
arguments:
object
-
-
orgId:
object
-
Database id for the Organization object this device belongs to
-
- return:
-
arguments:
object
-
-
locationId:
object
-
Database id for the Location object corresponding to this device
-
- return:
-
arguments:
object
-
-
feedId:
object
-
Database id for the Feed object corresponding to this device
-
- return:
-
arguments:
object
-
-
samplingRate:
object
-
- return:
-
arguments:
object
-
-
organization:
object
-
- return:
-
arguments:
object
-
-
location:
object
-
- return:
-
arguments:
object
-
-
feed:
object
-
- return:
-
arguments:
object
-
-
rawId:
object
-
Database ID for this object
-
- return:
-
arguments:
object
-
Example
{
"id": {
"return": "object",
"arguments": {}
},
"serialno": {
"return": "string",
"arguments": {}
},
"name": {
"return": "string",
"arguments": {}
},
"alias": {
"return": "string",
"arguments": {}
},
"tags": {
"return": "string",
"arguments": {}
},
"notes": {
"return": "string",
"arguments": {}
},
"status": {
"return": "string",
"arguments": {}
},
"created": {
"return": "object",
"arguments": {}
},
"orgId": {
"return": "string",
"arguments": {}
},
"locationId": {
"return": "string",
"arguments": {}
},
"feedId": {
"return": "string",
"arguments": {}
},
"samplingRate": {
"return": "string",
"arguments": {}
},
"organization": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"name": {
"return": "string",
"arguments": {}
},
"joined": {
"return": "object",
"arguments": {}
},
"timezone": {
"return": "string",
"arguments": {}
},
"zoomLevel": {
"return": "number",
"arguments": {}
},
"orgLat": {
"return": "number",
"arguments": {}
},
"orgLon": {
"return": "number",
"arguments": {}
},
"alias": {
"return": "string",
"arguments": {}
},
"orgId": {
"return": "string",
"arguments": {}
},
"devices": {
"return": {
"pageInfo": {
"return": {
"hasNextPage": {
"return": "boolean",
"arguments": {}
},
"hasPreviousPage": {}
}
}
}
}
}
}
}
DeviceSortEnum: string
An enumeration.
-
objectID_ASC
-
objectID_DESC
-
objectSERIALNO_ASC
-
objectSERIALNO_DESC
-
objectNAME_ASC
-
objectNAME_DESC
-
objectALIAS_ASC
-
objectALIAS_DESC
-
objectTAGS_ASC
-
objectTAGS_DESC
-
objectNOTES_ASC
-
objectNOTES_DESC
-
objectSTATUS_ASC
-
objectSTATUS_DESC
-
objectCREATED_ASC
-
objectCREATED_DESC
-
objectORG_ID_ASC
-
objectORG_ID_DESC
-
objectLOCATION_ID_ASC
-
objectLOCATION_ID_DESC
-
objectFEED_ID_ASC
-
objectFEED_ID_DESC
-
objectSAMPLING_RATE_ASC
-
objectSAMPLING_RATE_DESC
DevicesConnection: object
Connection to Device nodes
-
pageInfo:
object
-
Pagination data for this connection.
-
- return:
-
arguments:
object
-
-
edges:
object
-
Contains the nodes in this connection.
-
- return:
-
arguments:
object
-
-
count:
object
-
- return:
-
arguments:
object
-
Example
{
"pageInfo": {
"return": {
"hasNextPage": {
"return": "boolean",
"arguments": {}
},
"hasPreviousPage": {
"return": "boolean",
"arguments": {}
},
"startCursor": {
"return": "string",
"arguments": {}
},
"endCursor": {
"return": "string",
"arguments": {}
}
},
"arguments": {}
},
"edges": {
"return": [
{
"node": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"serialno": {
"return": "string",
"arguments": {}
},
"name": {
"return": "string",
"arguments": {}
},
"alias": {
"return": "string",
"arguments": {}
},
"tags": {
"return": "string",
"arguments": {}
},
"notes": {
"return": "string",
"arguments": {}
},
"status": {
"return": "string",
"arguments": {}
},
"created": {
"return": "object",
"arguments": {}
},
"orgId": {
"return": "string",
"arguments": {}
},
"locationId": {
"return": "string",
"arguments": {}
},
"feedId": {
"return": "string",
"arguments": {}
},
"samplingRate": {
"return": "string",
"arguments": {}
},
"organization": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"name": {
"return": "string",
"arguments": {}
},
"joined": {
"return": "object",
"arguments": {}
},
"timezone": {
"return": "string",
"arguments": {}
},
"zoomLevel": {
"return": "number",
"arguments": {}
},
"orgLat": {}
}
}
}
}
}
]
}
}
DevicesEdge: object
A Relay edge containing a Devices
and its cursor.
-
node:
object
-
The item at the end of the edge
-
- return:
-
arguments:
object
-
-
cursor:
object
-
A cursor for use in pagination
-
- return:
-
arguments:
object
-
Example
{
"node": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"serialno": {
"return": "string",
"arguments": {}
},
"name": {
"return": "string",
"arguments": {}
},
"alias": {
"return": "string",
"arguments": {}
},
"tags": {
"return": "string",
"arguments": {}
},
"notes": {
"return": "string",
"arguments": {}
},
"status": {
"return": "string",
"arguments": {}
},
"created": {
"return": "object",
"arguments": {}
},
"orgId": {
"return": "string",
"arguments": {}
},
"locationId": {
"return": "string",
"arguments": {}
},
"feedId": {
"return": "string",
"arguments": {}
},
"samplingRate": {
"return": "string",
"arguments": {}
},
"organization": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"name": {
"return": "string",
"arguments": {}
},
"joined": {
"return": "object",
"arguments": {}
},
"timezone": {
"return": "string",
"arguments": {}
},
"zoomLevel": {
"return": "number",
"arguments": {}
},
"orgLat": {
"return": "number",
"arguments": {}
},
"orgLon": {
"return": "number",
"arguments": {}
},
"alias": {
"return": "string",
"arguments": {}
},
"orgId": {
"return": "string",
"arguments": {}
},
"devices": {
"return": {
"pageInfo": {
"return": {
"hasNextPage": {
"return": "boolean"
}
}
}
}
}
}
}
}
}
}
EventCount: object
List of counts and event names
-
id:
object
-
The ID of the object.
-
- return:
-
arguments:
object
-
-
time:
object
-
Start of time interval for metric
-
- return:
-
arguments:
object
-
-
event:
object
-
name of event (e.g. 'trash pickup')
-
- return:
-
arguments:
object
-
-
result:
object
-
number of events in interval (e.g. 3)
-
- return:
-
arguments:
object
-
Example
{
"id": {
"return": "object",
"arguments": {}
},
"time": {
"return": "object",
"arguments": {}
},
"event": {
"return": "string",
"arguments": {}
},
"result": {
"return": "number",
"arguments": {}
}
}
EventCountsConnection: object
connection to EventCount nodes
-
pageInfo:
object
-
Pagination data for this connection.
-
- return:
-
arguments:
object
-
-
edges:
object
-
Contains the nodes in this connection.
-
- return:
-
arguments:
object
-
Example
{
"pageInfo": {
"return": {
"hasNextPage": {
"return": "boolean",
"arguments": {}
},
"hasPreviousPage": {
"return": "boolean",
"arguments": {}
},
"startCursor": {
"return": "string",
"arguments": {}
},
"endCursor": {
"return": "string",
"arguments": {}
}
},
"arguments": {}
},
"edges": {
"return": [
{
"node": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"time": {
"return": "object",
"arguments": {}
},
"event": {
"return": "string",
"arguments": {}
},
"result": {
"return": "number",
"arguments": {}
}
},
"arguments": {}
},
"cursor": {
"return": "string",
"arguments": {}
}
}
],
"arguments": {}
}
}
EventCountsEdge: object
A Relay edge containing a EventCounts
and its cursor.
-
node:
object
-
The item at the end of the edge
-
- return:
-
arguments:
object
-
-
cursor:
object
-
A cursor for use in pagination
-
- return:
-
arguments:
object
-
Example
{
"node": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"time": {
"return": "object",
"arguments": {}
},
"event": {
"return": "string",
"arguments": {}
},
"result": {
"return": "number",
"arguments": {}
}
},
"arguments": {}
},
"cursor": {
"return": "string",
"arguments": {}
}
}
Feed: object
Internally referenced representation of a data 'feed' produced from a Device object. Not used for externally facing API queries or mutations.
-
id:
object
-
The ID of the object.
-
- return:
-
arguments:
object
-
-
name:
object
-
- return:
-
arguments:
object
-
-
created:
object
-
- return:
-
arguments:
object
-
-
description:
object
-
- return:
-
arguments:
object
-
-
device:
object
-
- return:
-
arguments:
object
-
-
behaviorZones:
object
-
- return:
-
arguments:
object
-
- before:
- after:
- first:
- last:
-
rawId:
object
-
Database ID for this object
-
- return:
-
arguments:
object
-
Example
{
"id": {
"return": "object",
"arguments": {}
},
"name": {
"return": "string",
"arguments": {}
},
"created": {
"return": "object",
"arguments": {}
},
"description": {
"return": "string",
"arguments": {}
},
"device": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"serialno": {
"return": "string",
"arguments": {}
},
"name": {
"return": "string",
"arguments": {}
},
"alias": {
"return": "string",
"arguments": {}
},
"tags": {
"return": "string",
"arguments": {}
},
"notes": {
"return": "string",
"arguments": {}
},
"status": {
"return": "string",
"arguments": {}
},
"created": {
"return": "object",
"arguments": {}
},
"orgId": {
"return": "string",
"arguments": {}
},
"locationId": {
"return": "string",
"arguments": {}
},
"feedId": {
"return": "string",
"arguments": {}
},
"samplingRate": {
"return": "string",
"arguments": {}
},
"organization": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"name": {
"return": "string",
"arguments": {}
},
"joined": {
"return": "object",
"arguments": {}
},
"timezone": {
"return": "string",
"arguments": {}
},
"zoomLevel": {
"return": "number",
"arguments": {}
},
"orgLat": {
"return": "number",
"arguments": {}
},
"orgLon": {
"return": "number",
"arguments": {}
},
"alias": {}
}
}
}
}
}
FeedDwellTimeMetric: object
A dwell time distribution metric representing aggregate object dwell times for objects detected by a set of sensors, of a given object class and in a given time interval. (e.g. pedestrian dwell time distribution passing through zone 1 at the time interval starting on 2019-01-01T00:00:00) Distributions are expressed as average dwell time value, as well as quartile values.
-
id:
object
-
The ID of the object.
-
- return:
-
arguments:
object
-
-
objClass:
object
-
Object class for the metric
-
- return:
-
arguments:
object
-
-
feedid:
object
-
rawId of this device's feed
-
- return:
-
arguments:
object
-
-
serialno:
object
-
serialno of the device
-
- return:
-
arguments:
object
-
-
pct100:
object
-
Max value (i.e. 100th percentile dwell time in zone)
-
- return:
-
arguments:
object
-
-
pct75:
object
-
75th percentile dwell time in zone
-
- return:
-
arguments:
object
-
-
pct50:
object
-
50th percentile dwell time in zone
-
- return:
-
arguments:
object
-
-
pct25:
object
-
25th percentile dwell time in zone
-
- return:
-
arguments:
object
-
-
mean:
object
-
mean dwell time in zone
-
- return:
-
arguments:
object
-
-
count:
object
-
number of objects in zone
-
- return:
-
arguments:
object
-
-
time:
object
-
Start of time interval
-
- return:
-
arguments:
object
-
Example
{
"id": {
"return": "object",
"arguments": {}
},
"objClass": {
"return": "string",
"arguments": {}
},
"feedid": {
"return": "string",
"arguments": {}
},
"serialno": {
"return": "string",
"arguments": {}
},
"pct100": {
"return": "number",
"arguments": {}
},
"pct75": {
"return": "number",
"arguments": {}
},
"pct50": {
"return": "number",
"arguments": {}
},
"pct25": {
"return": "number",
"arguments": {}
},
"mean": {
"return": "number",
"arguments": {}
},
"count": {
"return": "number",
"arguments": {}
},
"time": {
"return": "object",
"arguments": {}
}
}
FeedDwellTimeMetricConnection: object
Connection to FeedDwellTimeMetric nodes
-
pageInfo:
object
-
Pagination data for this connection.
-
- return:
-
arguments:
object
-
-
edges:
object
-
Contains the nodes in this connection.
-
- return:
-
arguments:
object
-
Example
{
"pageInfo": {
"return": {
"hasNextPage": {
"return": "boolean",
"arguments": {}
},
"hasPreviousPage": {
"return": "boolean",
"arguments": {}
},
"startCursor": {
"return": "string",
"arguments": {}
},
"endCursor": {
"return": "string",
"arguments": {}
}
},
"arguments": {}
},
"edges": {
"return": [
{
"node": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"objClass": {
"return": "string",
"arguments": {}
},
"feedid": {
"return": "string",
"arguments": {}
},
"serialno": {
"return": "string",
"arguments": {}
},
"pct100": {
"return": "number",
"arguments": {}
},
"pct75": {
"return": "number",
"arguments": {}
},
"pct50": {
"return": "number",
"arguments": {}
},
"pct25": {
"return": "number",
"arguments": {}
},
"mean": {
"return": "number",
"arguments": {}
},
"count": {
"return": "number",
"arguments": {}
},
"time": {
"return": "object",
"arguments": {}
}
},
"arguments": {}
},
"cursor": {
"return": "string",
"arguments": {}
}
}
],
"arguments": {}
}
}
FeedDwellTimeMetricEdge: object
A Relay edge containing a FeedDwellTimeMetric
and its cursor.
-
node:
object
-
The item at the end of the edge
-
- return:
-
arguments:
object
-
-
cursor:
object
-
A cursor for use in pagination
-
- return:
-
arguments:
object
-
Example
{
"node": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"objClass": {
"return": "string",
"arguments": {}
},
"feedid": {
"return": "string",
"arguments": {}
},
"serialno": {
"return": "string",
"arguments": {}
},
"pct100": {
"return": "number",
"arguments": {}
},
"pct75": {
"return": "number",
"arguments": {}
},
"pct50": {
"return": "number",
"arguments": {}
},
"pct25": {
"return": "number",
"arguments": {}
},
"mean": {
"return": "number",
"arguments": {}
},
"count": {
"return": "number",
"arguments": {}
},
"time": {
"return": "object",
"arguments": {}
}
},
"arguments": {}
},
"cursor": {
"return": "string",
"arguments": {}
}
}
FeedHeatmap: object
Heatmap node returned by feedHeatmaps analytics query. Contains heatmap for a given object class and time interval. Heatmaps are a representation of how objects move about the street scene, with higher data values for a given pixel meaning more objects moved through that pixel
In the case of FeedHeatmaps, in particular, only objects that were detected by the given device are included in the heatmap compution.
-
id:
object
-
The ID of the object.
-
- return:
-
arguments:
object
-
-
objClass:
object
-
Object class for the heatmap (e.g. 'car')
-
- return:
-
arguments:
object
-
-
feedid:
object
-
rawId of this device's feed
-
- return:
-
arguments:
object
-
-
serialno:
object
-
serialno of the device
-
- return:
-
arguments:
object
-
-
time:
object
-
Start of time interval for heatmap
-
- return:
-
arguments:
object
-
-
heatmap:
object
-
Heatmap as a list of [x,y,data] values
-
- return:
-
arguments:
object
-
Example
{
"id": {
"return": "object",
"arguments": {}
},
"objClass": {
"return": "string",
"arguments": {}
},
"feedid": {
"return": "string",
"arguments": {}
},
"serialno": {
"return": "string",
"arguments": {}
},
"time": {
"return": "object",
"arguments": {}
},
"heatmap": {
"return": "object",
"arguments": {}
}
}
FeedHeatmapsConnection: object
Connection to FeedHeatmap nodes
-
pageInfo:
object
-
Pagination data for this connection.
-
- return:
-
arguments:
object
-
-
edges:
object
-
Contains the nodes in this connection.
-
- return:
-
arguments:
object
-
Example
{
"pageInfo": {
"return": {
"hasNextPage": {
"return": "boolean",
"arguments": {}
},
"hasPreviousPage": {
"return": "boolean",
"arguments": {}
},
"startCursor": {
"return": "string",
"arguments": {}
},
"endCursor": {
"return": "string",
"arguments": {}
}
},
"arguments": {}
},
"edges": {
"return": [
{
"node": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"objClass": {
"return": "string",
"arguments": {}
},
"feedid": {
"return": "string",
"arguments": {}
},
"serialno": {
"return": "string",
"arguments": {}
},
"time": {
"return": "object",
"arguments": {}
},
"heatmap": {
"return": "object",
"arguments": {}
}
},
"arguments": {}
},
"cursor": {
"return": "string",
"arguments": {}
}
}
],
"arguments": {}
}
}
FeedHeatmapsEdge: object
A Relay edge containing a FeedHeatmaps
and its cursor.
-
node:
object
-
The item at the end of the edge
-
- return:
-
arguments:
object
-
-
cursor:
object
-
A cursor for use in pagination
-
- return:
-
arguments:
object
-
Example
{
"node": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"objClass": {
"return": "string",
"arguments": {}
},
"feedid": {
"return": "string",
"arguments": {}
},
"serialno": {
"return": "string",
"arguments": {}
},
"time": {
"return": "object",
"arguments": {}
},
"heatmap": {
"return": "object",
"arguments": {}
}
},
"arguments": {}
},
"cursor": {
"return": "string",
"arguments": {}
}
}
FeedMetric: object
A metric (e.g. count) representing aggregate object behavior for objects of a given object class, device (feed), and time interval. (e.g. pedestrian counts for device 1 at the time interval starting on 2019-01-01T00:00:00)
-
id:
object
-
The ID of the object.
-
- return:
-
arguments:
object
-
-
metric:
object
-
type of metric (e.g. 'count')
-
- return:
-
arguments:
object
-
-
objClass:
object
-
Object class for the metric
-
- return:
-
arguments:
object
-
-
feedid:
object
-
rawId of this device's feed
-
- return:
-
arguments:
object
-
-
serialno:
object
-
serialno of the device
-
- return:
-
arguments:
object
-
-
result:
object
-
metric value (e.g. 102.0)
-
- return:
-
arguments:
object
-
-
time:
object
-
Start of time interval for metric
-
- return:
-
arguments:
object
-
Example
{
"id": {
"return": "object",
"arguments": {}
},
"metric": {
"return": "string",
"arguments": {}
},
"objClass": {
"return": "string",
"arguments": {}
},
"feedid": {
"return": "string",
"arguments": {}
},
"serialno": {
"return": "string",
"arguments": {}
},
"result": {
"return": "number",
"arguments": {}
},
"time": {
"return": "object",
"arguments": {}
}
}
FeedMetricsConnection: object
Connection to FeedMetric nodes
-
pageInfo:
object
-
Pagination data for this connection.
-
- return:
-
arguments:
object
-
-
edges:
object
-
Contains the nodes in this connection.
-
- return:
-
arguments:
object
-
Example
{
"pageInfo": {
"return": {
"hasNextPage": {
"return": "boolean",
"arguments": {}
},
"hasPreviousPage": {
"return": "boolean",
"arguments": {}
},
"startCursor": {
"return": "string",
"arguments": {}
},
"endCursor": {
"return": "string",
"arguments": {}
}
},
"arguments": {}
},
"edges": {
"return": [
{
"node": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"metric": {
"return": "string",
"arguments": {}
},
"objClass": {
"return": "string",
"arguments": {}
},
"feedid": {
"return": "string",
"arguments": {}
},
"serialno": {
"return": "string",
"arguments": {}
},
"result": {
"return": "number",
"arguments": {}
},
"time": {
"return": "object",
"arguments": {}
}
},
"arguments": {}
},
"cursor": {
"return": "string",
"arguments": {}
}
}
],
"arguments": {}
}
}
FeedMetricsEdge: object
A Relay edge containing a FeedMetrics
and its cursor.
-
node:
object
-
The item at the end of the edge
-
- return:
-
arguments:
object
-
-
cursor:
object
-
A cursor for use in pagination
-
- return:
-
arguments:
object
-
Example
{
"node": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"metric": {
"return": "string",
"arguments": {}
},
"objClass": {
"return": "string",
"arguments": {}
},
"feedid": {
"return": "string",
"arguments": {}
},
"serialno": {
"return": "string",
"arguments": {}
},
"result": {
"return": "number",
"arguments": {}
},
"time": {
"return": "object",
"arguments": {}
}
},
"arguments": {}
},
"cursor": {
"return": "string",
"arguments": {}
}
}
Float: number
The Float
scalar type represents signed double-precision fractional values as specified by
IEEE 754.
Example
number
HeatmapScalar: object
Scalar type to return heatmap data as list of [x (int), y (int), data (float)] entries
Example
object
ID: object
The ID
scalar type represents a unique identifier, often used to refetch an object or as key for a cache. The ID type appears in a JSON response as a String; however, it is not intended to be human-readable. When expected as an input type, any string (such as "4"
) or integer (such as 4
) input value will be accepted as an ID.
Example
object
InstallSensorDeviceInput: object
Administrative data for a sensor Device being added to database with InstallSensor mutation
- serialno:
-
The sensor's serialno
- name:
-
The sensor's name
- alias:
-
The sensor's alias
- notes:
-
Assorted notes about the sensor
- tags:
-
Identifying tags, currently unused.
Example
{
"serialno": "string",
"name": "string",
"alias": "string",
"notes": "string",
"tags": "string"
}
InstallSensorMutation: object
Add a Device, and its dependencies, to the Numina database when a sensor is installed. (admin-only)
-
device:
object
-
Device object that was just created
-
- return:
-
arguments:
object
-
Example
{
"device": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"serialno": {
"return": "string",
"arguments": {}
},
"name": {
"return": "string",
"arguments": {}
},
"alias": {
"return": "string",
"arguments": {}
},
"tags": {
"return": "string",
"arguments": {}
},
"notes": {
"return": "string",
"arguments": {}
},
"status": {
"return": "string",
"arguments": {}
},
"created": {
"return": "object",
"arguments": {}
},
"orgId": {
"return": "string",
"arguments": {}
},
"locationId": {
"return": "string",
"arguments": {}
},
"feedId": {
"return": "string",
"arguments": {}
},
"samplingRate": {
"return": "string",
"arguments": {}
},
"organization": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"name": {
"return": "string",
"arguments": {}
},
"joined": {
"return": "object",
"arguments": {}
},
"timezone": {
"return": "string",
"arguments": {}
},
"zoomLevel": {
"return": "number",
"arguments": {}
},
"orgLat": {
"return": "number",
"arguments": {}
},
"orgLon": {
"return": "number",
"arguments": {}
},
"alias": {
"return": "string",
"arguments": {}
},
"orgId": {
"return": "string",
"arguments": {}
},
"devices": {
"return": {
"pageInfo": {
"return": {
"hasNextPage": {
"return": "boolean"
}
}
}
}
}
}
}
}
}
}
Int: number
The Int
scalar type represents non-fractional signed whole numeric values. Int can represent values between -(2^31 - 1) and 2^31 - 1 since represented in JSON as double-precision floating point numbers specifiedby
IEEE 754.
Example
number
JWTToken: object
A JSON Web Token (JWT) and expiry date issued upon successful authentication.
-
token:
object
-
JSON Web Token
-
- return:
-
arguments:
object
-
-
exp:
object
-
Expiry date of token
-
- return:
-
arguments:
object
-
Example
{
"token": {
"return": "string",
"arguments": {}
},
"exp": {
"return": "object",
"arguments": {}
}
}
Location: object
Location data for a Numina sensor, including latitude, longitude, and azimuth (aim angle).
-
id:
object
-
The ID of the object.
-
- return:
-
arguments:
object
-
-
azi:
object
-
Azimuth, used to draw sensor view range
-
- return:
-
arguments:
object
-
-
lat:
object
-
Latitude of a sensor's location
-
- return:
-
arguments:
object
-
-
lon:
object
-
Longitude of a sensor's location
-
- return:
-
arguments:
object
-
-
address:
object
-
Addresss of a sensor's location, if applicable
-
- return:
-
arguments:
object
-
-
exposure:
object
-
- return:
-
arguments:
object
-
-
zipcode:
object
-
Zip code of a sensor's location, if applicable
-
- return:
-
arguments:
object
-
-
created:
object
-
Timestamp at which this location was created
-
- return:
-
arguments:
object
-
-
rawId:
object
-
Database ID for this object
-
- return:
-
arguments:
object
-
Example
{
"id": {
"return": "object",
"arguments": {}
},
"azi": {
"return": "number",
"arguments": {}
},
"lat": {
"return": "number",
"arguments": {}
},
"lon": {
"return": "number",
"arguments": {}
},
"address": {
"return": "string",
"arguments": {}
},
"exposure": {
"return": "string",
"arguments": {}
},
"zipcode": {
"return": "string",
"arguments": {}
},
"created": {
"return": "object",
"arguments": {}
},
"rawId": {
"return": "string",
"arguments": {}
}
}
LogInMutation: object
Log in to the Numina API or dashboard, by retrieving a JSON Web Token upon authentication.
-
user:
object
-
User object for given credentials
-
- return:
-
arguments:
object
-
-
jwt:
object
-
JWTToken object containing auth token info
-
- return:
-
arguments:
object
-
Example
{
"user": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"email": {
"return": "string",
"arguments": {}
},
"name": {
"return": "string",
"arguments": {}
},
"orgId": {
"return": "string",
"arguments": {}
},
"joined": {
"return": "object",
"arguments": {}
},
"position": {
"return": "string",
"arguments": {}
},
"admin": {
"return": "boolean",
"arguments": {}
},
"apiKey": {
"return": "string",
"arguments": {}
},
"authLevel": {
"return": "string",
"arguments": {}
},
"phone": {
"return": "string",
"arguments": {}
},
"lowerEmail": {
"return": "string",
"arguments": {}
},
"organization": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"name": {
"return": "string",
"arguments": {}
},
"joined": {
"return": "object",
"arguments": {}
},
"timezone": {
"return": "string",
"arguments": {}
},
"zoomLevel": {
"return": "number",
"arguments": {}
},
"orgLat": {
"return": "number",
"arguments": {}
},
"orgLon": {
"return": "number",
"arguments": {}
},
"alias": {
"return": "string",
"arguments": {}
},
"orgId": {
"return": "string",
"arguments": {}
},
"devices": {
"return": {
"pageInfo": {
"return": {
"hasNextPage": {
"return": "boolean",
"arguments": {}
},
"hasPreviousPage": {
"return": "boolean"
}
}
}
}
}
}
}
}
}
}
Node: object
An object with an ID
-
id:
object
-
The ID of the object.
-
- return:
-
arguments:
object
-
Example
{
"id": {
"return": "object",
"arguments": {}
}
}
ObjectClasses: string
-
objectPEDESTRIAN
-
objectBICYCLE
-
objectCAR
-
objectTRUCK
-
objectBUS
-
objectMOTORBIKE
-
objectDOG
-
objectALL
Organization: object
The basic Numina customer unit. Users and devices point to an Organization object.
-
id:
object
-
The ID of the object.
-
- return:
-
arguments:
object
-
-
name:
object
-
Name of customer organization
-
- return:
-
arguments:
object
-
-
joined:
object
-
Timestamp at which this organization was created
-
- return:
-
arguments:
object
-
-
timezone:
object
-
Timezone of organization, in tz database format
-
- return:
-
arguments:
object
-
-
zoomLevel:
object
-
Map zoom_level such that all org devices visible on map
-
- return:
-
arguments:
object
-
-
orgLat:
object
-
Latitude of organization for devices map visualization
-
- return:
-
arguments:
object
-
-
orgLon:
object
-
Longitude of organization for devices map visualization
-
- return:
-
arguments:
object
-
-
alias:
object
-
Short, readable name used as internal reference(e.g.'dbp')
-
- return:
-
arguments:
object
-
-
orgId:
object
-
- return:
-
arguments:
object
-
-
devices:
object
-
Devices belonging to this organization
-
- return:
-
arguments:
object
-
- name:
- serialno:
- sort: "ID_ASC"
-
Field and direction to sort by
- before:
-
paginate results before cursor
- after:
-
paginate results after cursor
- first:
-
get first n results
- last:
-
get last n results
-
users:
object
-
Users belonging to this organization
-
- return:
-
arguments:
object
-
- sort: "ID_ASC"
-
Field and direction to sort by
- before:
-
paginate results before cursor
- after:
-
paginate results after cursor
- first:
-
get first n results
- last:
-
get last n results
-
rawId:
object
-
Database ID for this object
-
- return:
-
arguments:
object
-
Example
{
"id": {
"return": "object",
"arguments": {}
},
"name": {
"return": "string",
"arguments": {}
},
"joined": {
"return": "object",
"arguments": {}
},
"timezone": {
"return": "string",
"arguments": {}
},
"zoomLevel": {
"return": "number",
"arguments": {}
},
"orgLat": {
"return": "number",
"arguments": {}
},
"orgLon": {
"return": "number",
"arguments": {}
},
"alias": {
"return": "string",
"arguments": {}
},
"orgId": {
"return": "string",
"arguments": {}
},
"devices": {
"return": {
"pageInfo": {
"return": {
"hasNextPage": {
"return": "boolean",
"arguments": {}
},
"hasPreviousPage": {
"return": "boolean",
"arguments": {}
},
"startCursor": {
"return": "string",
"arguments": {}
},
"endCursor": {
"return": "string",
"arguments": {}
}
},
"arguments": {}
},
"edges": {
"return": [
{
"node": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"serialno": {
"return": "string",
"arguments": {}
},
"name": {
"return": "string",
"arguments": {}
},
"alias": {
"return": "string",
"arguments": {}
},
"tags": {
"return": "string",
"arguments": {}
},
"notes": {
"return": "string",
"arguments": {}
},
"status": {
"return": "string",
"arguments": {}
},
"created": {
"return": "object",
"arguments": {}
},
"orgId": {}
}
}
}
]
}
}
}
}
OrganizationAuthorizedNode: object
-
id:
object
-
The ID of the object.
-
- return:
-
arguments:
object
-
Example
{
"id": {
"return": "object",
"arguments": {}
}
}
OrganizationCount: object
A count of detections per sensor for a given date range
-
id:
object
-
The ID of the object.
-
- return:
-
arguments:
object
-
-
startTime:
object
-
start of the time range
-
- return:
-
arguments:
object
-
-
endTime:
object
-
end of the time range
-
- return:
-
arguments:
object
-
-
count:
object
-
number of detections in the time range
-
- return:
-
arguments:
object
-
-
serialno:
object
-
serial number of the device
-
- return:
-
arguments:
object
-
-
name:
object
-
name of the device
-
- return:
-
arguments:
object
-
-
organizationName:
object
-
organization name
-
- return:
-
arguments:
object
-
-
organizationAlias:
object
-
organization alias
-
- return:
-
arguments:
object
-
Example
{
"id": {
"return": "object",
"arguments": {}
},
"startTime": {
"return": "object",
"arguments": {}
},
"endTime": {
"return": "object",
"arguments": {}
},
"count": {
"return": "number",
"arguments": {}
},
"serialno": {
"return": "string",
"arguments": {}
},
"name": {
"return": "string",
"arguments": {}
},
"organizationName": {
"return": "string",
"arguments": {}
},
"organizationAlias": {
"return": "string",
"arguments": {}
}
}
OrganizationCountsConnection: object
Connection to OrganizationCount nodes
-
pageInfo:
object
-
Pagination data for this connection.
-
- return:
-
arguments:
object
-
-
edges:
object
-
Contains the nodes in this connection.
-
- return:
-
arguments:
object
-
Example
{
"pageInfo": {
"return": {
"hasNextPage": {
"return": "boolean",
"arguments": {}
},
"hasPreviousPage": {
"return": "boolean",
"arguments": {}
},
"startCursor": {
"return": "string",
"arguments": {}
},
"endCursor": {
"return": "string",
"arguments": {}
}
},
"arguments": {}
},
"edges": {
"return": [
{
"node": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"startTime": {
"return": "object",
"arguments": {}
},
"endTime": {
"return": "object",
"arguments": {}
},
"count": {
"return": "number",
"arguments": {}
},
"serialno": {
"return": "string",
"arguments": {}
},
"name": {
"return": "string",
"arguments": {}
},
"organizationName": {
"return": "string",
"arguments": {}
},
"organizationAlias": {
"return": "string",
"arguments": {}
}
},
"arguments": {}
},
"cursor": {
"return": "string",
"arguments": {}
}
}
],
"arguments": {}
}
}
OrganizationCountsEdge: object
A Relay edge containing a OrganizationCounts
and its cursor.
-
node:
object
-
The item at the end of the edge
-
- return:
-
arguments:
object
-
-
cursor:
object
-
A cursor for use in pagination
-
- return:
-
arguments:
object
-
Example
{
"node": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"startTime": {
"return": "object",
"arguments": {}
},
"endTime": {
"return": "object",
"arguments": {}
},
"count": {
"return": "number",
"arguments": {}
},
"serialno": {
"return": "string",
"arguments": {}
},
"name": {
"return": "string",
"arguments": {}
},
"organizationName": {
"return": "string",
"arguments": {}
},
"organizationAlias": {
"return": "string",
"arguments": {}
}
},
"arguments": {}
},
"cursor": {
"return": "string",
"arguments": {}
}
}
OrganizationSortEnum: string
An enumeration.
-
objectID_ASC
-
objectID_DESC
-
objectNAME_ASC
-
objectNAME_DESC
-
objectJOINED_ASC
-
objectJOINED_DESC
-
objectTIMEZONE_ASC
-
objectTIMEZONE_DESC
-
objectZOOM_LEVEL_ASC
-
objectZOOM_LEVEL_DESC
-
objectORG_LAT_ASC
-
objectORG_LAT_DESC
-
objectORG_LON_ASC
-
objectORG_LON_DESC
-
objectALIAS_ASC
-
objectALIAS_DESC
OrganizationsConnection: object
Connection to Organization nodes
-
pageInfo:
object
-
Pagination data for this connection.
-
- return:
-
arguments:
object
-
-
edges:
object
-
Contains the nodes in this connection.
-
- return:
-
arguments:
object
-
-
count:
object
-
Number of Organization nodes
-
- return:
-
arguments:
object
-
Example
{
"pageInfo": {
"return": {
"hasNextPage": {
"return": "boolean",
"arguments": {}
},
"hasPreviousPage": {
"return": "boolean",
"arguments": {}
},
"startCursor": {
"return": "string",
"arguments": {}
},
"endCursor": {
"return": "string",
"arguments": {}
}
},
"arguments": {}
},
"edges": {
"return": [
{
"node": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"name": {
"return": "string",
"arguments": {}
},
"joined": {
"return": "object",
"arguments": {}
},
"timezone": {
"return": "string",
"arguments": {}
},
"zoomLevel": {
"return": "number",
"arguments": {}
},
"orgLat": {
"return": "number",
"arguments": {}
},
"orgLon": {
"return": "number",
"arguments": {}
},
"alias": {
"return": "string",
"arguments": {}
},
"orgId": {
"return": "string",
"arguments": {}
},
"devices": {
"return": {
"pageInfo": {
"return": {
"hasNextPage": {
"return": "boolean",
"arguments": {}
},
"hasPreviousPage": {
"return": "boolean",
"arguments": {}
},
"startCursor": {
"return": "string",
"arguments": {}
},
"endCursor": {
"return": "string",
"arguments": {}
}
},
"arguments": {}
},
"edges": {
"return": [
{
"node": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"serialno": {}
}
}
}
]
}
}
}
}
}
}
]
}
}
OrganizationsEdge: object
A Relay edge containing a Organizations
and its cursor.
-
node:
object
-
The item at the end of the edge
-
- return:
-
arguments:
object
-
-
cursor:
object
-
A cursor for use in pagination
-
- return:
-
arguments:
object
-
Example
{
"node": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"name": {
"return": "string",
"arguments": {}
},
"joined": {
"return": "object",
"arguments": {}
},
"timezone": {
"return": "string",
"arguments": {}
},
"zoomLevel": {
"return": "number",
"arguments": {}
},
"orgLat": {
"return": "number",
"arguments": {}
},
"orgLon": {
"return": "number",
"arguments": {}
},
"alias": {
"return": "string",
"arguments": {}
},
"orgId": {
"return": "string",
"arguments": {}
},
"devices": {
"return": {
"pageInfo": {
"return": {
"hasNextPage": {
"return": "boolean",
"arguments": {}
},
"hasPreviousPage": {
"return": "boolean",
"arguments": {}
},
"startCursor": {
"return": "string",
"arguments": {}
},
"endCursor": {
"return": "string",
"arguments": {}
}
},
"arguments": {}
},
"edges": {
"return": [
{
"node": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"serialno": {
"return": "string",
"arguments": {}
},
"name": {
"return": "string",
"arguments": {}
},
"alias": {
"return": "string",
"arguments": {}
},
"tags": {
"return": "string",
"arguments": {}
},
"notes": {
"return": "string",
"arguments": {}
},
"status": {
"return": "string",
"arguments": {}
},
"created": {}
}
}
}
]
}
}
}
}
}
}
PageInfo: object
The Relay compliant PageInfo
type, containing data necessary to paginate this connection.
-
hasNextPage:
object
-
When paginating forwards, are there more items?
-
- return:
-
arguments:
object
-
-
hasPreviousPage:
object
-
When paginating backwards, are there more items?
-
- return:
-
arguments:
object
-
-
startCursor:
object
-
When paginating backwards, the cursor to continue.
-
- return:
-
arguments:
object
-
-
endCursor:
object
-
When paginating forwards, the cursor to continue.
-
- return:
-
arguments:
object
-
Example
{
"hasNextPage": {
"return": "boolean",
"arguments": {}
},
"hasPreviousPage": {
"return": "boolean",
"arguments": {}
},
"startCursor": {
"return": "string",
"arguments": {}
},
"endCursor": {
"return": "string",
"arguments": {}
}
}
RedirectEnum: string
-
objectdashboard
-
Numina Dashboard
-
objectdeveloper
-
Numina API documentation page
-
objecttrash
-
Numina Trash Application
ResetDBMutation: object
Sends default_db
command to an MQTT sensor - resets the DB with the firmware command default_database
:
-
sensorstatus:
object
-
Serial No. of sensor to change mode
-
- return:
-
arguments:
object
-
Example
{
"sensorstatus": {
"return": {
"status": {
"return": "string",
"arguments": {}
},
"mode": {
"return": "string",
"arguments": {}
},
"version": {
"return": "string",
"arguments": {}
}
},
"arguments": {}
}
}
ResetPasswordMutation: object
Reset a user's password if they pass in a valid reset token
-
email:
object
-
User's email address, if password successfully reset
-
- return:
-
arguments:
object
-
Example
{
"email": {
"return": "string",
"arguments": {}
}
}
SampleImage: object
Contains URL to sample image update requested by user for a specific date
-
id:
object
-
The ID of the object.
-
- return:
-
arguments:
object
-
-
s3Key:
object
-
s3 URI of image file
-
- return:
-
arguments:
object
-
-
presignedUrl:
object
-
publically accessible presigned URL
-
- return:
-
arguments:
object
-
Example
{
"id": {
"return": "object",
"arguments": {}
},
"s3Key": {
"return": "string",
"arguments": {}
},
"presignedUrl": {
"return": "string",
"arguments": {}
}
}
SampleImagesConnection: object
Connection to SampleImage nodes
-
pageInfo:
object
-
Pagination data for this connection.
-
- return:
-
arguments:
object
-
-
edges:
object
-
Contains the nodes in this connection.
-
- return:
-
arguments:
object
-
Example
{
"pageInfo": {
"return": {
"hasNextPage": {
"return": "boolean",
"arguments": {}
},
"hasPreviousPage": {
"return": "boolean",
"arguments": {}
},
"startCursor": {
"return": "string",
"arguments": {}
},
"endCursor": {
"return": "string",
"arguments": {}
}
},
"arguments": {}
},
"edges": {
"return": [
{
"node": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"s3Key": {
"return": "string",
"arguments": {}
},
"presignedUrl": {
"return": "string",
"arguments": {}
}
},
"arguments": {}
},
"cursor": {
"return": "string",
"arguments": {}
}
}
],
"arguments": {}
}
}
SampleImagesEdge: object
A Relay edge containing a SampleImages
and its cursor.
-
node:
object
-
The item at the end of the edge
-
- return:
-
arguments:
object
-
-
cursor:
object
-
A cursor for use in pagination
-
- return:
-
arguments:
object
-
Example
{
"node": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"s3Key": {
"return": "string",
"arguments": {}
},
"presignedUrl": {
"return": "string",
"arguments": {}
}
},
"arguments": {}
},
"cursor": {
"return": "string",
"arguments": {}
}
}
ScreenlineMetric: object
A metric (e.g. count) representing aggregate object behavior for objects that passed through a list of screenlines (defined as a line type behavior zone),of a given object class and in a given time interval. (e.g. pedestrian counts passing through line zone at the time interval starting on 2019-01-01T00:00:00)
-
id:
object
-
The ID of the object.
-
- return:
-
arguments:
object
-
-
metric:
object
-
type of metric (e.g. 'count')
-
- return:
-
arguments:
object
-
-
objClass:
object
-
Object class for the metric
-
- return:
-
arguments:
object
-
-
zoneIds:
object
-
rawIds of all screenLine objects passedthrough
-
- return:
-
arguments:
object
-
-
result:
object
-
metric value (e.g. 102.0)
-
- return:
-
arguments:
object
-
-
time:
object
-
Start of time interval for metric
-
- return:
-
arguments:
object
-
Example
{
"id": {
"return": "object",
"arguments": {}
},
"metric": {
"return": "string",
"arguments": {}
},
"objClass": {
"return": "string",
"arguments": {}
},
"zoneIds": {
"return": [
"number"
],
"arguments": {}
},
"result": {
"return": "number",
"arguments": {}
},
"time": {
"return": "object",
"arguments": {}
}
}
ScreenlineMetricsConnection: object
Connection to ScreenlineMetric nodes
-
pageInfo:
object
-
Pagination data for this connection.
-
- return:
-
arguments:
object
-
-
edges:
object
-
Contains the nodes in this connection.
-
- return:
-
arguments:
object
-
Example
{
"pageInfo": {
"return": {
"hasNextPage": {
"return": "boolean",
"arguments": {}
},
"hasPreviousPage": {
"return": "boolean",
"arguments": {}
},
"startCursor": {
"return": "string",
"arguments": {}
},
"endCursor": {
"return": "string",
"arguments": {}
}
},
"arguments": {}
},
"edges": {
"return": [
{
"node": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"metric": {
"return": "string",
"arguments": {}
},
"objClass": {
"return": "string",
"arguments": {}
},
"zoneIds": {
"return": [
"number"
],
"arguments": {}
},
"result": {
"return": "number",
"arguments": {}
},
"time": {
"return": "object",
"arguments": {}
}
},
"arguments": {}
},
"cursor": {
"return": "string",
"arguments": {}
}
}
],
"arguments": {}
}
}
ScreenlineMetricsEdge: object
A Relay edge containing a ScreenlineMetrics
and its cursor.
-
node:
object
-
The item at the end of the edge
-
- return:
-
arguments:
object
-
-
cursor:
object
-
A cursor for use in pagination
-
- return:
-
arguments:
object
-
Example
{
"node": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"metric": {
"return": "string",
"arguments": {}
},
"objClass": {
"return": "string",
"arguments": {}
},
"zoneIds": {
"return": [
"number"
],
"arguments": {}
},
"result": {
"return": "number",
"arguments": {}
},
"time": {
"return": "object",
"arguments": {}
}
},
"arguments": {}
},
"cursor": {
"return": "string",
"arguments": {}
}
}
SensorLocationInput: object
Location data for a sensor Device being added to database with InstallSensor mutation
- lat:
-
Latitude
- lon:
-
Longitude
- azi:
-
Azimuth, center of aim angle
- zipcode:
-
Zip code of sensor location
- address:
-
Address of sensor location
Example
{
"lat": "number",
"lon": "number",
"azi": "number",
"zipcode": "string",
"address": "string"
}
SensorStatusConnection: object
Connection to FeedMetric nodes
-
pageInfo:
object
-
Pagination data for this connection.
-
- return:
-
arguments:
object
-
-
edges:
object
-
Contains the nodes in this connection.
-
- return:
-
arguments:
object
-
Example
{
"pageInfo": {
"return": {
"hasNextPage": {
"return": "boolean",
"arguments": {}
},
"hasPreviousPage": {
"return": "boolean",
"arguments": {}
},
"startCursor": {
"return": "string",
"arguments": {}
},
"endCursor": {
"return": "string",
"arguments": {}
}
},
"arguments": {}
},
"edges": {
"return": [
{
"node": {
"return": {
"status": {
"return": "string",
"arguments": {}
},
"mode": {
"return": "string",
"arguments": {}
},
"version": {
"return": "string",
"arguments": {}
}
},
"arguments": {}
},
"cursor": {
"return": "string",
"arguments": {}
}
}
],
"arguments": {}
}
}
SensorStatusEdge: object
A Relay edge containing a SensorStatus
and its cursor.
-
node:
object
-
The item at the end of the edge
-
- return:
-
arguments:
object
-
-
cursor:
object
-
A cursor for use in pagination
-
- return:
-
arguments:
object
-
Example
{
"node": {
"return": {
"status": {
"return": "string",
"arguments": {}
},
"mode": {
"return": "string",
"arguments": {}
},
"version": {
"return": "string",
"arguments": {}
}
},
"arguments": {}
},
"cursor": {
"return": "string",
"arguments": {}
}
}
SetSensorMutation: object
Set sensor mode to configuration
, operation
, calibration
, sequence
, or klt_sample
Mutation handles both the change of mode and the Numina Proc restart
-
sensorstatus:
object
-
Serial No. of sensor to change mode
-
- return:
-
arguments:
object
-
Example
{
"sensorstatus": {
"return": {
"status": {
"return": "string",
"arguments": {}
},
"mode": {
"return": "string",
"arguments": {}
},
"version": {
"return": "string",
"arguments": {}
}
},
"arguments": {}
}
}
SsoLoginMutation: object
Complete SSO log in to the Numina API or dashboard
-
user:
object
-
User object for given credentials
-
- return:
-
arguments:
object
-
-
jwt:
object
-
JWTToken object containing auth token info
-
- return:
-
arguments:
object
-
Example
{
"user": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"email": {
"return": "string",
"arguments": {}
},
"name": {
"return": "string",
"arguments": {}
},
"orgId": {
"return": "string",
"arguments": {}
},
"joined": {
"return": "object",
"arguments": {}
},
"position": {
"return": "string",
"arguments": {}
},
"admin": {
"return": "boolean",
"arguments": {}
},
"apiKey": {
"return": "string",
"arguments": {}
},
"authLevel": {
"return": "string",
"arguments": {}
},
"phone": {
"return": "string",
"arguments": {}
},
"lowerEmail": {
"return": "string",
"arguments": {}
},
"organization": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"name": {
"return": "string",
"arguments": {}
},
"joined": {
"return": "object",
"arguments": {}
},
"timezone": {
"return": "string",
"arguments": {}
},
"zoomLevel": {
"return": "number",
"arguments": {}
},
"orgLat": {
"return": "number",
"arguments": {}
},
"orgLon": {
"return": "number",
"arguments": {}
},
"alias": {
"return": "string",
"arguments": {}
},
"orgId": {
"return": "string",
"arguments": {}
},
"devices": {
"return": {
"pageInfo": {
"return": {
"hasNextPage": {
"return": "boolean",
"arguments": {}
},
"hasPreviousPage": {
"return": "boolean"
}
}
}
}
}
}
}
}
}
}
StartResetWorkflow: object
Start the password reset workflow by creating a reset token and emailing a tokenized URL to the requested email address.
-
result:
object
-
'Success' upon success.
-
- return:
-
arguments:
object
-
Example
{
"result": {
"return": "string",
"arguments": {}
}
}
String: string
The String
scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.
TrendWindowEnum: string
-
objectEARLY_MORNING
-
objectMORNING_COMMUTE
-
objectMORNING
-
objectNOON
-
objectAFTERNOON
-
objectEVENING_COMMUTE
-
objectEVENING
-
objectNIGHT
UpdateBehaviorZone: object
Update data pertaining to a BehaviorZone object in the Numina database
-
behaviorZone:
object
-
BehaviorZone object that was updated
-
- return:
-
arguments:
object
-
Example
{
"behaviorZone": {
"return": {
"zoneType": {
"return": "string",
"arguments": {}
},
"id": {
"return": "object",
"arguments": {}
},
"demarcation": {
"return": [
[
"number"
]
],
"arguments": {}
},
"feedId": {
"return": "string",
"arguments": {}
},
"text": {
"return": "string",
"arguments": {}
},
"color": {
"return": "string",
"arguments": {}
},
"isCoverageZone": {
"return": "boolean",
"arguments": {}
},
"feed": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"name": {
"return": "string",
"arguments": {}
},
"created": {
"return": "object",
"arguments": {}
},
"description": {
"return": "string",
"arguments": {}
},
"device": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"serialno": {
"return": "string",
"arguments": {}
},
"name": {
"return": "string",
"arguments": {}
},
"alias": {
"return": "string",
"arguments": {}
},
"tags": {
"return": "string",
"arguments": {}
},
"notes": {
"return": "string",
"arguments": {}
},
"status": {
"return": "string",
"arguments": {}
},
"created": {
"return": "object",
"arguments": {}
},
"orgId": {
"return": "string",
"arguments": {}
},
"locationId": {
"return": "string",
"arguments": {}
},
"feedId": {
"return": "string",
"arguments": {}
}
}
}
}
}
}
}
}
UpdateDevice: object
Update all non-location data pertaining to a device object (admin required)
-
device:
object
-
Device object that was updated
-
- return:
-
arguments:
object
-
Example
{
"device": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"serialno": {
"return": "string",
"arguments": {}
},
"name": {
"return": "string",
"arguments": {}
},
"alias": {
"return": "string",
"arguments": {}
},
"tags": {
"return": "string",
"arguments": {}
},
"notes": {
"return": "string",
"arguments": {}
},
"status": {
"return": "string",
"arguments": {}
},
"created": {
"return": "object",
"arguments": {}
},
"orgId": {
"return": "string",
"arguments": {}
},
"locationId": {
"return": "string",
"arguments": {}
},
"feedId": {
"return": "string",
"arguments": {}
},
"samplingRate": {
"return": "string",
"arguments": {}
},
"organization": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"name": {
"return": "string",
"arguments": {}
},
"joined": {
"return": "object",
"arguments": {}
},
"timezone": {
"return": "string",
"arguments": {}
},
"zoomLevel": {
"return": "number",
"arguments": {}
},
"orgLat": {
"return": "number",
"arguments": {}
},
"orgLon": {
"return": "number",
"arguments": {}
},
"alias": {
"return": "string",
"arguments": {}
},
"orgId": {
"return": "string",
"arguments": {}
},
"devices": {
"return": {
"pageInfo": {
"return": {
"hasNextPage": {
"return": "boolean"
}
}
}
}
}
}
}
}
}
}
UpdateDeviceInput: object
Non-location data for a sensor Device being added to database with InstallSensor mutation
- serialno:
-
Serial number of device
- name:
-
Human-readable name of device
- notes:
-
Miscellaneous notes
- tags:
-
Identifying tags, currently unused.
- alias:
-
Internal shorthand (auto-generated)
- status:
-
Device reporting status
- orgId:
-
Organization ID
Example
{
"serialno": "string",
"name": "string",
"notes": "string",
"tags": "string",
"alias": "string",
"status": "string",
"orgId": "string"
}
UpdateDeviceLocation: object
Update location data associated with a Device object in the Numina database
-
device:
object
-
- return:
-
arguments:
object
-
Example
{
"device": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"serialno": {
"return": "string",
"arguments": {}
},
"name": {
"return": "string",
"arguments": {}
},
"alias": {
"return": "string",
"arguments": {}
},
"tags": {
"return": "string",
"arguments": {}
},
"notes": {
"return": "string",
"arguments": {}
},
"status": {
"return": "string",
"arguments": {}
},
"created": {
"return": "object",
"arguments": {}
},
"orgId": {
"return": "string",
"arguments": {}
},
"locationId": {
"return": "string",
"arguments": {}
},
"feedId": {
"return": "string",
"arguments": {}
},
"samplingRate": {
"return": "string",
"arguments": {}
},
"organization": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"name": {
"return": "string",
"arguments": {}
},
"joined": {
"return": "object",
"arguments": {}
},
"timezone": {
"return": "string",
"arguments": {}
},
"zoomLevel": {
"return": "number",
"arguments": {}
},
"orgLat": {
"return": "number",
"arguments": {}
},
"orgLon": {
"return": "number",
"arguments": {}
},
"alias": {
"return": "string",
"arguments": {}
},
"orgId": {
"return": "string",
"arguments": {}
},
"devices": {
"return": {
"pageInfo": {
"return": {
"hasNextPage": {
"return": "boolean"
}
}
}
}
}
}
}
}
}
}
UpdateDeviceSampleImage: object
Updates the sample image of a device for a given date (admin-only)
-
success:
object
-
returns s3 URI of sample image file if successful
-
- return:
-
arguments:
object
-
Example
{
"success": {
"return": "string",
"arguments": {}
}
}
UpdateOrganization: object
Update data pertaining to an Organization object in the Numina database (admin-only)
-
organization:
object
-
Updated Organization object
-
- return:
-
arguments:
object
-
Example
{
"organization": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"name": {
"return": "string",
"arguments": {}
},
"joined": {
"return": "object",
"arguments": {}
},
"timezone": {
"return": "string",
"arguments": {}
},
"zoomLevel": {
"return": "number",
"arguments": {}
},
"orgLat": {
"return": "number",
"arguments": {}
},
"orgLon": {
"return": "number",
"arguments": {}
},
"alias": {
"return": "string",
"arguments": {}
},
"orgId": {
"return": "string",
"arguments": {}
},
"devices": {
"return": {
"pageInfo": {
"return": {
"hasNextPage": {
"return": "boolean",
"arguments": {}
},
"hasPreviousPage": {
"return": "boolean",
"arguments": {}
},
"startCursor": {
"return": "string",
"arguments": {}
},
"endCursor": {
"return": "string",
"arguments": {}
}
},
"arguments": {}
},
"edges": {
"return": [
{
"node": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"serialno": {
"return": "string",
"arguments": {}
},
"name": {
"return": "string",
"arguments": {}
},
"alias": {
"return": "string",
"arguments": {}
},
"tags": {
"return": "string",
"arguments": {}
},
"notes": {
"return": "string",
"arguments": {}
},
"status": {
"return": "string",
"arguments": {}
},
"created": {}
}
}
}
]
}
}
}
}
}
}
UpdateUserMutation: object
Update data pertaining to the requesting User's User object in the Numina database.
-
user:
object
-
Updated User object
-
- return:
-
arguments:
object
-
Example
{
"user": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"email": {
"return": "string",
"arguments": {}
},
"name": {
"return": "string",
"arguments": {}
},
"orgId": {
"return": "string",
"arguments": {}
},
"joined": {
"return": "object",
"arguments": {}
},
"position": {
"return": "string",
"arguments": {}
},
"admin": {
"return": "boolean",
"arguments": {}
},
"apiKey": {
"return": "string",
"arguments": {}
},
"authLevel": {
"return": "string",
"arguments": {}
},
"phone": {
"return": "string",
"arguments": {}
},
"lowerEmail": {
"return": "string",
"arguments": {}
},
"organization": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"name": {
"return": "string",
"arguments": {}
},
"joined": {
"return": "object",
"arguments": {}
},
"timezone": {
"return": "string",
"arguments": {}
},
"zoomLevel": {
"return": "number",
"arguments": {}
},
"orgLat": {
"return": "number",
"arguments": {}
},
"orgLon": {
"return": "number",
"arguments": {}
},
"alias": {
"return": "string",
"arguments": {}
},
"orgId": {
"return": "string",
"arguments": {}
},
"devices": {
"return": {
"pageInfo": {
"return": {
"hasNextPage": {
"return": "boolean",
"arguments": {}
},
"hasPreviousPage": {
"return": "boolean"
}
}
}
}
}
}
}
}
}
}
UpgradeSensorMutation: object
Sends upgrade
command to an MQTT sensor and triggers an upgrade to a new sensor firmware version
The version should be the calendar version folder to look under inside the numina-firmware-versions S3 bucket.
-
sensorstatus:
object
-
Serial No. of sensor to change mode
-
- return:
-
arguments:
object
-
Example
{
"sensorstatus": {
"return": {
"status": {
"return": "string",
"arguments": {}
},
"mode": {
"return": "string",
"arguments": {}
},
"version": {
"return": "string",
"arguments": {}
}
},
"arguments": {}
}
}
User: object
A user account in the Numina database
-
id:
object
-
The ID of the object.
-
- return:
-
arguments:
object
-
-
email:
object
-
User's email address
-
- return:
-
arguments:
object
-
-
name:
object
-
User's name
-
- return:
-
arguments:
object
-
-
orgId:
object
-
Database id of the organization this user belongs to
-
- return:
-
arguments:
object
-
-
joined:
object
-
Timestamp at which this user was created
-
- return:
-
arguments:
object
-
-
position:
object
-
User's position in their organization (e.g. 'manager')
-
- return:
-
arguments:
object
-
-
admin:
object
-
User's administrator status for internal Numina services
-
- return:
-
arguments:
object
-
-
apiKey:
object
-
User's API key for future API authentication; not currently used
-
- return:
-
arguments:
object
-
-
authLevel:
object
-
User's authorization level within the Numina API system, not currently being enforced
-
- return:
-
arguments:
object
-
-
phone:
object
-
User's phone number
-
- return:
-
arguments:
object
-
-
lowerEmail:
object
-
- return:
-
arguments:
object
-
-
organization:
object
-
- return:
-
arguments:
object
-
-
rawId:
object
-
Database ID for this object
-
- return:
-
arguments:
object
-
-
mailchimpTags:
object
-
Mailchimp tags for this user
-
- return:
-
arguments:
object
-
Example
{
"id": {
"return": "object",
"arguments": {}
},
"email": {
"return": "string",
"arguments": {}
},
"name": {
"return": "string",
"arguments": {}
},
"orgId": {
"return": "string",
"arguments": {}
},
"joined": {
"return": "object",
"arguments": {}
},
"position": {
"return": "string",
"arguments": {}
},
"admin": {
"return": "boolean",
"arguments": {}
},
"apiKey": {
"return": "string",
"arguments": {}
},
"authLevel": {
"return": "string",
"arguments": {}
},
"phone": {
"return": "string",
"arguments": {}
},
"lowerEmail": {
"return": "string",
"arguments": {}
},
"organization": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"name": {
"return": "string",
"arguments": {}
},
"joined": {
"return": "object",
"arguments": {}
},
"timezone": {
"return": "string",
"arguments": {}
},
"zoomLevel": {
"return": "number",
"arguments": {}
},
"orgLat": {
"return": "number",
"arguments": {}
},
"orgLon": {
"return": "number",
"arguments": {}
},
"alias": {
"return": "string",
"arguments": {}
},
"orgId": {
"return": "string",
"arguments": {}
},
"devices": {
"return": {
"pageInfo": {
"return": {
"hasNextPage": {
"return": "boolean",
"arguments": {}
},
"hasPreviousPage": {
"return": "boolean",
"arguments": {}
},
"startCursor": {}
}
}
}
}
}
}
}
UserConnection: object
Connection to User nodes
-
pageInfo:
object
-
Pagination data for this connection.
-
- return:
-
arguments:
object
-
-
edges:
object
-
Contains the nodes in this connection.
-
- return:
-
arguments:
object
-
-
count:
object
-
Number of User nodes
-
- return:
-
arguments:
object
-
Example
{
"pageInfo": {
"return": {
"hasNextPage": {
"return": "boolean",
"arguments": {}
},
"hasPreviousPage": {
"return": "boolean",
"arguments": {}
},
"startCursor": {
"return": "string",
"arguments": {}
},
"endCursor": {
"return": "string",
"arguments": {}
}
},
"arguments": {}
},
"edges": {
"return": [
{
"node": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"email": {
"return": "string",
"arguments": {}
},
"name": {
"return": "string",
"arguments": {}
},
"orgId": {
"return": "string",
"arguments": {}
},
"joined": {
"return": "object",
"arguments": {}
},
"position": {
"return": "string",
"arguments": {}
},
"admin": {
"return": "boolean",
"arguments": {}
},
"apiKey": {
"return": "string",
"arguments": {}
},
"authLevel": {
"return": "string",
"arguments": {}
},
"phone": {
"return": "string",
"arguments": {}
},
"lowerEmail": {
"return": "string",
"arguments": {}
},
"organization": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"name": {
"return": "string",
"arguments": {}
},
"joined": {
"return": "object",
"arguments": {}
},
"timezone": {
"return": "string",
"arguments": {}
},
"zoomLevel": {
"return": "number",
"arguments": {}
},
"orgLat": {
"return": "number",
"arguments": {}
},
"orgLon": {}
}
}
}
}
}
]
}
}
UserEdge: object
A Relay edge containing a User
and its cursor.
-
node:
object
-
The item at the end of the edge
-
- return:
-
arguments:
object
-
-
cursor:
object
-
A cursor for use in pagination
-
- return:
-
arguments:
object
-
Example
{
"node": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"email": {
"return": "string",
"arguments": {}
},
"name": {
"return": "string",
"arguments": {}
},
"orgId": {
"return": "string",
"arguments": {}
},
"joined": {
"return": "object",
"arguments": {}
},
"position": {
"return": "string",
"arguments": {}
},
"admin": {
"return": "boolean",
"arguments": {}
},
"apiKey": {
"return": "string",
"arguments": {}
},
"authLevel": {
"return": "string",
"arguments": {}
},
"phone": {
"return": "string",
"arguments": {}
},
"lowerEmail": {
"return": "string",
"arguments": {}
},
"organization": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"name": {
"return": "string",
"arguments": {}
},
"joined": {
"return": "object",
"arguments": {}
},
"timezone": {
"return": "string",
"arguments": {}
},
"zoomLevel": {
"return": "number",
"arguments": {}
},
"orgLat": {
"return": "number",
"arguments": {}
},
"orgLon": {
"return": "number",
"arguments": {}
},
"alias": {
"return": "string",
"arguments": {}
},
"orgId": {
"return": "string",
"arguments": {}
},
"devices": {
"return": {
"pageInfo": {
"return": {
"hasNextPage": {
"return": "boolean",
"arguments": {}
},
"hasPreviousPage": {
"return": "boolean"
}
}
}
}
}
}
}
}
}
}
UserSortEnum: string
An enumeration.
-
objectID_ASC
-
objectID_DESC
-
objectEMAIL_ASC
-
objectEMAIL_DESC
-
objectNAME_ASC
-
objectNAME_DESC
-
objectORG_ID_ASC
-
objectORG_ID_DESC
-
objectJOINED_ASC
-
objectJOINED_DESC
-
objectPOSITION_ASC
-
objectPOSITION_DESC
-
objectADMIN_ASC
-
objectADMIN_DESC
-
objectAPI_KEY_ASC
-
objectAPI_KEY_DESC
-
objectAUTH_LEVEL_ASC
-
objectAUTH_LEVEL_DESC
-
objectPHONE_ASC
-
objectPHONE_DESC
ZoneDwellTimeMetric: object
A dwell time distribution metric representing aggregate object dwell times for objects that passed through a set of behavior zones, of a given object class and in a given time interval. (e.g. pedestrian dwell time distribution passing through zone 1 at the time interval starting on 2019-01-01T00:00:00) Distributions are expressed as average dwell time value, as well as quartile values.
-
id:
object
-
The ID of the object.
-
- return:
-
arguments:
object
-
-
objClass:
object
-
Object class for the metric
-
- return:
-
arguments:
object
-
-
zoneIds:
object
-
rawIds of all behaviorZones objects passedthrough
-
- return:
-
arguments:
object
-
-
pct100:
object
-
Max value (i.e. 100th percentile dwell time in zone)
-
- return:
-
arguments:
object
-
-
pct75:
object
-
75th percentile dwell time in zone
-
- return:
-
arguments:
object
-
-
pct50:
object
-
50th percentile dwell time in zone
-
- return:
-
arguments:
object
-
-
pct25:
object
-
25th percentile dwell time in zone
-
- return:
-
arguments:
object
-
-
mean:
object
-
mean dwell time in zone
-
- return:
-
arguments:
object
-
-
count:
object
-
number of objects in zone
-
- return:
-
arguments:
object
-
-
time:
object
-
Start of time interval
-
- return:
-
arguments:
object
-
Example
{
"id": {
"return": "object",
"arguments": {}
},
"objClass": {
"return": "string",
"arguments": {}
},
"zoneIds": {
"return": [
"number"
],
"arguments": {}
},
"pct100": {
"return": "number",
"arguments": {}
},
"pct75": {
"return": "number",
"arguments": {}
},
"pct50": {
"return": "number",
"arguments": {}
},
"pct25": {
"return": "number",
"arguments": {}
},
"mean": {
"return": "number",
"arguments": {}
},
"count": {
"return": "number",
"arguments": {}
},
"time": {
"return": "object",
"arguments": {}
}
}
ZoneDwellTimeMetricConnection: object
Connection to ZoneDwellTimeMetric nodes
-
pageInfo:
object
-
Pagination data for this connection.
-
- return:
-
arguments:
object
-
-
edges:
object
-
Contains the nodes in this connection.
-
- return:
-
arguments:
object
-
Example
{
"pageInfo": {
"return": {
"hasNextPage": {
"return": "boolean",
"arguments": {}
},
"hasPreviousPage": {
"return": "boolean",
"arguments": {}
},
"startCursor": {
"return": "string",
"arguments": {}
},
"endCursor": {
"return": "string",
"arguments": {}
}
},
"arguments": {}
},
"edges": {
"return": [
{
"node": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"objClass": {
"return": "string",
"arguments": {}
},
"zoneIds": {
"return": [
"number"
],
"arguments": {}
},
"pct100": {
"return": "number",
"arguments": {}
},
"pct75": {
"return": "number",
"arguments": {}
},
"pct50": {
"return": "number",
"arguments": {}
},
"pct25": {
"return": "number",
"arguments": {}
},
"mean": {
"return": "number",
"arguments": {}
},
"count": {
"return": "number",
"arguments": {}
},
"time": {
"return": "object",
"arguments": {}
}
},
"arguments": {}
},
"cursor": {
"return": "string",
"arguments": {}
}
}
],
"arguments": {}
}
}
ZoneDwellTimeMetricEdge: object
A Relay edge containing a ZoneDwellTimeMetric
and its cursor.
-
node:
object
-
The item at the end of the edge
-
- return:
-
arguments:
object
-
-
cursor:
object
-
A cursor for use in pagination
-
- return:
-
arguments:
object
-
Example
{
"node": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"objClass": {
"return": "string",
"arguments": {}
},
"zoneIds": {
"return": [
"number"
],
"arguments": {}
},
"pct100": {
"return": "number",
"arguments": {}
},
"pct75": {
"return": "number",
"arguments": {}
},
"pct50": {
"return": "number",
"arguments": {}
},
"pct25": {
"return": "number",
"arguments": {}
},
"mean": {
"return": "number",
"arguments": {}
},
"count": {
"return": "number",
"arguments": {}
},
"time": {
"return": "object",
"arguments": {}
}
},
"arguments": {}
},
"cursor": {
"return": "string",
"arguments": {}
}
}
ZoneHeatmap: object
Heatmap node returned by zoneHeatmaps analytics query. Contains heatmap for a given object class and time interval. Heatmaps are a representation of how objects move about the street scene, with higher data values for a given pixel meaning more objects moved through that pixel.
In the case of ZoneHeatmaps, in particular, only objects that passed through the zone's encompassed space are included in the heatmap compution.
-
id:
object
-
The ID of the object.
-
- return:
-
arguments:
object
-
-
objClass:
object
-
Object class for the heatmap (e.g. 'car')
-
- return:
-
arguments:
object
-
-
zoneIds:
object
-
rawIds of all behaviorZones tracks passed through
-
- return:
-
arguments:
object
-
-
time:
object
-
Start of time interval for heatmap
-
- return:
-
arguments:
object
-
-
heatmap:
object
-
Heatmap as a list of [x,y,data] values
-
- return:
-
arguments:
object
-
Example
{
"id": {
"return": "object",
"arguments": {}
},
"objClass": {
"return": "string",
"arguments": {}
},
"zoneIds": {
"return": [
"number"
],
"arguments": {}
},
"time": {
"return": "object",
"arguments": {}
},
"heatmap": {
"return": "object",
"arguments": {}
}
}
ZoneHeatmapsConnection: object
Connection to ZoneHeatmap nodes
-
pageInfo:
object
-
Pagination data for this connection.
-
- return:
-
arguments:
object
-
-
edges:
object
-
Contains the nodes in this connection.
-
- return:
-
arguments:
object
-
Example
{
"pageInfo": {
"return": {
"hasNextPage": {
"return": "boolean",
"arguments": {}
},
"hasPreviousPage": {
"return": "boolean",
"arguments": {}
},
"startCursor": {
"return": "string",
"arguments": {}
},
"endCursor": {
"return": "string",
"arguments": {}
}
},
"arguments": {}
},
"edges": {
"return": [
{
"node": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"objClass": {
"return": "string",
"arguments": {}
},
"zoneIds": {
"return": [
"number"
],
"arguments": {}
},
"time": {
"return": "object",
"arguments": {}
},
"heatmap": {
"return": "object",
"arguments": {}
}
},
"arguments": {}
},
"cursor": {
"return": "string",
"arguments": {}
}
}
],
"arguments": {}
}
}
ZoneHeatmapsEdge: object
A Relay edge containing a ZoneHeatmaps
and its cursor.
-
node:
object
-
The item at the end of the edge
-
- return:
-
arguments:
object
-
-
cursor:
object
-
A cursor for use in pagination
-
- return:
-
arguments:
object
-
Example
{
"node": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"objClass": {
"return": "string",
"arguments": {}
},
"zoneIds": {
"return": [
"number"
],
"arguments": {}
},
"time": {
"return": "object",
"arguments": {}
},
"heatmap": {
"return": "object",
"arguments": {}
}
},
"arguments": {}
},
"cursor": {
"return": "string",
"arguments": {}
}
}
ZoneMaxOccupancy: object
A metric (e.g. count) representing max occupancy for objects that passed through a set of behavior zones, of a given object class and in a given time interval. (e.g. pedestrian counts passing through zone 1 at the time interval starting on 2019-01-01T00:00:00)
-
id:
object
-
The ID of the object.
-
- return:
-
arguments:
object
-
-
objClass:
object
-
Object class for the metric
-
- return:
-
arguments:
object
-
-
zoneIds:
object
-
rawIds of all behaviorZones objects passedthrough
-
- return:
-
arguments:
object
-
-
result:
object
-
Max occupancy value (e.g. 6)
-
- return:
-
arguments:
object
-
-
time:
object
-
Start of time interval for metric
-
- return:
-
arguments:
object
-
-
left:
object
-
Min x of the behavior zone box
-
- return:
-
arguments:
object
-
-
right:
object
-
Max x of the behavior zone box
-
- return:
-
arguments:
object
-
-
top:
object
-
Min y of the behavior zone box
-
- return:
-
arguments:
object
-
-
bottom:
object
-
Max y of the behavior zone box
-
- return:
-
arguments:
object
-
Example
{
"id": {
"return": "object",
"arguments": {}
},
"objClass": {
"return": "string",
"arguments": {}
},
"zoneIds": {
"return": [
"number"
],
"arguments": {}
},
"result": {
"return": "number",
"arguments": {}
},
"time": {
"return": "object",
"arguments": {}
},
"left": {
"return": "number",
"arguments": {}
},
"right": {
"return": "number",
"arguments": {}
},
"top": {
"return": "number",
"arguments": {}
},
"bottom": {
"return": "number",
"arguments": {}
}
}
ZoneMaxOccupancyConnection: object
Connection to ZoneMetric nodes
-
pageInfo:
object
-
Pagination data for this connection.
-
- return:
-
arguments:
object
-
-
edges:
object
-
Contains the nodes in this connection.
-
- return:
-
arguments:
object
-
Example
{
"pageInfo": {
"return": {
"hasNextPage": {
"return": "boolean",
"arguments": {}
},
"hasPreviousPage": {
"return": "boolean",
"arguments": {}
},
"startCursor": {
"return": "string",
"arguments": {}
},
"endCursor": {
"return": "string",
"arguments": {}
}
},
"arguments": {}
},
"edges": {
"return": [
{
"node": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"objClass": {
"return": "string",
"arguments": {}
},
"zoneIds": {
"return": [
"number"
],
"arguments": {}
},
"result": {
"return": "number",
"arguments": {}
},
"time": {
"return": "object",
"arguments": {}
},
"left": {
"return": "number",
"arguments": {}
},
"right": {
"return": "number",
"arguments": {}
},
"top": {
"return": "number",
"arguments": {}
},
"bottom": {
"return": "number",
"arguments": {}
}
},
"arguments": {}
},
"cursor": {
"return": "string",
"arguments": {}
}
}
],
"arguments": {}
}
}
ZoneMaxOccupancyEdge: object
A Relay edge containing a ZoneMaxOccupancy
and its cursor.
-
node:
object
-
The item at the end of the edge
-
- return:
-
arguments:
object
-
-
cursor:
object
-
A cursor for use in pagination
-
- return:
-
arguments:
object
-
Example
{
"node": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"objClass": {
"return": "string",
"arguments": {}
},
"zoneIds": {
"return": [
"number"
],
"arguments": {}
},
"result": {
"return": "number",
"arguments": {}
},
"time": {
"return": "object",
"arguments": {}
},
"left": {
"return": "number",
"arguments": {}
},
"right": {
"return": "number",
"arguments": {}
},
"top": {
"return": "number",
"arguments": {}
},
"bottom": {
"return": "number",
"arguments": {}
}
},
"arguments": {}
},
"cursor": {
"return": "string",
"arguments": {}
}
}
ZoneMetric: object
A metric (e.g. count) representing aggregate object behavior for objects that passed through a set of behavior zones, of a given object class and in a given time interval. (e.g. pedestrian counts passing through zone 1 at the time interval starting on 2019-01-01T00:00:00)
-
id:
object
-
The ID of the object.
-
- return:
-
arguments:
object
-
-
metric:
object
-
type of metric (e.g. 'count')
-
- return:
-
arguments:
object
-
-
objClass:
object
-
Object class for the metric
-
- return:
-
arguments:
object
-
-
zoneIds:
object
-
rawIds of all behaviorZones objects passedthrough
-
- return:
-
arguments:
object
-
-
result:
object
-
metric value (e.g. 102.0)
-
- return:
-
arguments:
object
-
-
time:
object
-
Start of time interval for metric
-
- return:
-
arguments:
object
-
Example
{
"id": {
"return": "object",
"arguments": {}
},
"metric": {
"return": "string",
"arguments": {}
},
"objClass": {
"return": "string",
"arguments": {}
},
"zoneIds": {
"return": [
"number"
],
"arguments": {}
},
"result": {
"return": "number",
"arguments": {}
},
"time": {
"return": "object",
"arguments": {}
}
}
ZoneMetricsConnection: object
Connection to ZoneMetric nodes
-
pageInfo:
object
-
Pagination data for this connection.
-
- return:
-
arguments:
object
-
-
edges:
object
-
Contains the nodes in this connection.
-
- return:
-
arguments:
object
-
Example
{
"pageInfo": {
"return": {
"hasNextPage": {
"return": "boolean",
"arguments": {}
},
"hasPreviousPage": {
"return": "boolean",
"arguments": {}
},
"startCursor": {
"return": "string",
"arguments": {}
},
"endCursor": {
"return": "string",
"arguments": {}
}
},
"arguments": {}
},
"edges": {
"return": [
{
"node": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"metric": {
"return": "string",
"arguments": {}
},
"objClass": {
"return": "string",
"arguments": {}
},
"zoneIds": {
"return": [
"number"
],
"arguments": {}
},
"result": {
"return": "number",
"arguments": {}
},
"time": {
"return": "object",
"arguments": {}
}
},
"arguments": {}
},
"cursor": {
"return": "string",
"arguments": {}
}
}
],
"arguments": {}
}
}
ZoneMetricsEdge: object
A Relay edge containing a ZoneMetrics
and its cursor.
-
node:
object
-
The item at the end of the edge
-
- return:
-
arguments:
object
-
-
cursor:
object
-
A cursor for use in pagination
-
- return:
-
arguments:
object
-
Example
{
"node": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"metric": {
"return": "string",
"arguments": {}
},
"objClass": {
"return": "string",
"arguments": {}
},
"zoneIds": {
"return": [
"number"
],
"arguments": {}
},
"result": {
"return": "number",
"arguments": {}
},
"time": {
"return": "object",
"arguments": {}
}
},
"arguments": {}
},
"cursor": {
"return": "string",
"arguments": {}
}
}
ZoneUtilizationMetric: object
A metric representing time an object spent utilizing (spending 5 or more seconds in) a section of a given behavior zone, of a given object class in a given time interval. (e.g. pedestrians utilizing zone 1 at the time interval starting on 2019-01-01T00:00:00 and ending on 2019-01-31T00:00:00)
-
id:
object
-
The ID of the object.
-
- return:
-
arguments:
object
-
-
objClass:
object
-
Object class for the metric
-
- return:
-
arguments:
object
-
-
utilizationTimeMs:
object
-
Milliseconds of Utilization Time
-
- return:
-
arguments:
object
-
-
startX:
object
-
Start X coordinate of the utilization area
-
- return:
-
arguments:
object
-
-
startY:
object
-
Start Y coordinate of the utilization area
-
- return:
-
arguments:
object
-
-
zoneIds:
object
-
Zone IDs
-
- return:
-
arguments:
object
-
Example
{
"id": {
"return": "object",
"arguments": {}
},
"objClass": {
"return": "string",
"arguments": {}
},
"utilizationTimeMs": {
"return": "number",
"arguments": {}
},
"startX": {
"return": "number",
"arguments": {}
},
"startY": {
"return": "number",
"arguments": {}
},
"zoneIds": {
"return": [
"string"
],
"arguments": {}
}
}
ZoneUtilizationMetricConnection: object
Connection to ZoneUtilizationlMetric nodes
-
pageInfo:
object
-
Pagination data for this connection.
-
- return:
-
arguments:
object
-
-
edges:
object
-
Contains the nodes in this connection.
-
- return:
-
arguments:
object
-
Example
{
"pageInfo": {
"return": {
"hasNextPage": {
"return": "boolean",
"arguments": {}
},
"hasPreviousPage": {
"return": "boolean",
"arguments": {}
},
"startCursor": {
"return": "string",
"arguments": {}
},
"endCursor": {
"return": "string",
"arguments": {}
}
},
"arguments": {}
},
"edges": {
"return": [
{
"node": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"objClass": {
"return": "string",
"arguments": {}
},
"utilizationTimeMs": {
"return": "number",
"arguments": {}
},
"startX": {
"return": "number",
"arguments": {}
},
"startY": {
"return": "number",
"arguments": {}
},
"zoneIds": {
"return": [
"string"
],
"arguments": {}
}
},
"arguments": {}
},
"cursor": {
"return": "string",
"arguments": {}
}
}
],
"arguments": {}
}
}
ZoneUtilizationMetricEdge: object
A Relay edge containing a ZoneUtilizationMetric
and its cursor.
-
node:
object
-
The item at the end of the edge
-
- return:
-
arguments:
object
-
-
cursor:
object
-
A cursor for use in pagination
-
- return:
-
arguments:
object
-
Example
{
"node": {
"return": {
"id": {
"return": "object",
"arguments": {}
},
"objClass": {
"return": "string",
"arguments": {}
},
"utilizationTimeMs": {
"return": "number",
"arguments": {}
},
"startX": {
"return": "number",
"arguments": {}
},
"startY": {
"return": "number",
"arguments": {}
},
"zoneIds": {
"return": [
"string"
],
"arguments": {}
}
},
"arguments": {}
},
"cursor": {
"return": "string",
"arguments": {}
}
}