Sky Ledge API (v1.0)

Download OpenAPI specification:Download

Sky Ledge is the world's simplest API for displaying insights (or anything) on a map.

But Sky Ledge is more than just seeing stuff on a map or graph. Sky Ledge enables you to track, predict and respond to alerts.

You can receive notifications based on Event Types you define. You can also allow users to take actions based on the Event Types.

Control Rooms

Control Rooms are “containers of insights”.

Control Rooms can be created to organise insights geographically (e.g. Control Rooms for different regions, New York, Boston, San Fran).

They can also be used to organise insights by themes or types of insights (for example, different Control Rooms for the regulator, marketing team and logistics).

listControlRooms

Returns a list of Control Rooms within your Organization.

Authorizations:
ApiKey
query Parameters
sort
string
Example: sort=name&sort=createdAt,asc&sort=temperature,desc

Sorts by the specified parameter

page
integer >= 0
Default: 0

The current page (starts at 0)

size
integer [ 10 .. 100 ]
Default: 20

The size of the returned page

Responses

Response samples

Content type
application/json
{
  • "controlRooms": [
    ]
}

createControlRoom

Create a new Control Room within the Organization.

This request returns the newly created Control Room.

A filter can be added to limit which assets and events are displayed in the Control Room.

Authorizations:
ApiKey
Request Body schema: application/json
name
required
string
description
required
string
object (AttributeFilters)

A map of "event attribute" to AttributeFilters

Responses

Request samples

Content type
application/json
{
  • "name": "Vehicle Tracking",
  • "description": "Vehicle Tracking of Melbourne Fleet",
  • "filter": {
    }
}

Response samples

Content type
application/json
{
  • "id": "666bf2b9-d78c-45d1-9cb9-c8828f595852",
  • "ownerId": "666bf2b9-d78c-45d1-9cb9-c8828f595852",
  • "createdAt": "2019-02-05T09:32:08.080Z",
  • "name": "Vehicle Tracking",
  • "description": "Vehicle Tracking of Melbourne Fleet",
  • "collaborators": [
    ],
  • "filter": {
    },
  • "icon": "string"
}

retrieveControlRoom

Retrieve a Control Room.

Authorizations:
ApiKey
path Parameters
controlRoomId
required
string <uuid> (Id)
Example: 666bf2b9-d78c-45d1-9cb9-c8828f595852

The Control Room Id

Responses

Response samples

Content type
application/json
{
  • "id": "666bf2b9-d78c-45d1-9cb9-c8828f595852",
  • "ownerId": "666bf2b9-d78c-45d1-9cb9-c8828f595852",
  • "createdAt": "2019-02-05T09:32:08.080Z",
  • "name": "Vehicle Tracking",
  • "description": "Vehicle Tracking of Melbourne Fleet",
  • "collaborators": [
    ],
  • "filter": {
    },
  • "icon": "string"
}

updateControlRoom

Update an existing Control Room.

Authorizations:
ApiKey
path Parameters
controlRoomId
required
string <uuid> (Id)
Example: 666bf2b9-d78c-45d1-9cb9-c8828f595852

The Control Room Id

Request Body schema: application/json
name
string
description
string
object (AttributeFilters)

A map of "event attribute" to AttributeFilters

Responses

Request samples

Content type
application/json
{
  • "name": "Vehicle Tracking",
  • "description": "Vehicle Tracking of Melbourne Fleet",
  • "filter": {
    }
}

deleteControlRoom

Delete an existing Control Room.

Authorizations:
ApiKey
path Parameters
controlRoomId
required
string <uuid> (Id)
Example: 666bf2b9-d78c-45d1-9cb9-c8828f595852

The Control Room Id

Responses

retrieveConfiguration

Retrieve the Config for the specified Control Room.

Authorizations:
ApiKey
path Parameters
controlRoomId
required
string <uuid> (Id)
Example: 666bf2b9-d78c-45d1-9cb9-c8828f595852

The Control Room Id

Responses

Response samples

Content type
application/json
{
  • "controlRoomPageVisible": true
}

updateConfiguration

Update the Config for the specified Control Room.

Authorizations:
ApiKey
path Parameters
controlRoomId
required
string <uuid> (Id)
Example: 666bf2b9-d78c-45d1-9cb9-c8828f595852

The Control Room Id

Request Body schema: application/json
controlRoomPageVisible
boolean

If false, the Control Room Map page is not displayed.

Responses

Request samples

Content type
application/json
{
  • "controlRoomPageVisible": false
}

Event Types

Event Types describe the types of information or insights you'd like to see in your Control Room.

eventTypesForControlRoom

Retrieve a list of Event Types assigned to this Control Room.

Authorizations:
ApiKey
path Parameters
controlRoomId
required
string <uuid> (Id)
Example: 666bf2b9-d78c-45d1-9cb9-c8828f595852

The Control Room Id

Responses

Response samples

Content type
application/json
{
  • "eventTypes": [
    ]
}

createEventType

Create an Event Type.

Note that the title and description fields support placeholders within curly braces. These are placeholder values that will be specified by each Event created against this Asset Type.

For example, an Event Type might have the title {{vehicleRegistration}} broken down at {{locationName}}.

A specific instance of this Event might be YAS232 broken down at corner of North Road and McKenzie Ave.

The eventDisplay field can be used to specify the type and options for displaying the event, providing visual representation around the event occurrence.

Authorizations:
ApiKey
Request Body schema: application/json
name
string
title
string
description
string
locationType
string
state
string
Enum: "UNPUBLISHED" "PUBLISHED" "ARCHIVED"
category
string (EventTypeCategory)
Enum: "DISCRETE" "ONGOING"

The category of the event type. Discrete event types generate Complete events, whereas Ongoing event types generate Active events.

defaultImportanceLevel
integer
controlRooms
Array of strings <uuid> (IdList)
object (EventDisplay)

Optional event display configuration. If provided, it can specify the type and options for displaying the event.

Responses

Request samples

Content type
application/json
{
  • "name": "Battery level low",
  • "title": "Battery level low for {{deviceId}}",
  • "description": "Battery level low for {{deviceId}}",
  • "locationType": "Point",
  • "state": "UNPUBLISHED",
  • "category": "DISCRETE",
  • "defaultImportanceLevel": 0,
  • "controlRooms": [
    ],
  • "eventDisplay": {
    }
}

Response samples

Content type
application/json
{
  • "id": "666bf2b9-d78c-45d1-9cb9-c8828f595852",
  • "ownerId": "666bf2b9-d78c-45d1-9cb9-c8828f595852",
  • "createdAt": "2019-02-05T09:32:08.080Z",
  • "name": "Battery level low",
  • "title": "Battery level low for {{deviceId}}",
  • "description": "Battery level low for {{deviceId}}",
  • "locationType": "Point",
  • "state": "UNPUBLISHED",
  • "allowedStates": [
    ],
  • "category": "DISCRETE",
  • "defaultImportanceLevel": {
    },
  • "identifier": "battery-level-low",
  • "eventDisplay": {
    }
}

listEventTypes

Retrieve a list of Event Types that exist within the Organization.

Authorizations:
ApiKey

Responses

Response samples

Content type
application/json
{
  • "eventTypes": [
    ]
}

getEventType

Retrieve a single Event Type.

Authorizations:
ApiKey
path Parameters
eventTypeId
required
string <uuid> (Id)
Example: 666bf2b9-d78c-45d1-9cb9-c8828f595852

The Event Type Id

query Parameters
include
string
Example: include=controlRooms

If include=controlRooms is specified, an array of controlRooms this events lives under is returned as part of the response.

Responses

Response samples

Content type
application/json
{
  • "id": "666bf2b9-d78c-45d1-9cb9-c8828f595852",
  • "ownerId": "666bf2b9-d78c-45d1-9cb9-c8828f595852",
  • "createdAt": "2019-02-05T09:32:08.080Z",
  • "name": "Battery level low",
  • "title": "Battery level low for {{deviceId}}",
  • "description": "Battery level low for {{deviceId}}",
  • "locationType": "Point",
  • "state": "UNPUBLISHED",
  • "allowedStates": [
    ],
  • "category": "DISCRETE",
  • "defaultImportanceLevel": {
    },
  • "identifier": "battery-level-low",
  • "eventDisplay": {
    }
}

updateEventType

Update an Event Type.

Authorizations:
ApiKey
path Parameters
eventTypeId
required
string <uuid> (Id)
Example: 666bf2b9-d78c-45d1-9cb9-c8828f595852

The Event Type Id

Request Body schema: application/json
name
string
title
string
description
string
locationType
string
state
string
Enum: "UNPUBLISHED" "PUBLISHED" "ARCHIVED"
category
string (EventTypeCategory)
Enum: "DISCRETE" "ONGOING"

The category of the event type. Discrete event types generate Complete events, whereas Ongoing event types generate Active events.

defaultImportanceLevel
integer
object (EventDisplay)

Optional event display configuration. If provided, it can specify the type and options for displaying the event.

Responses

Request samples

Content type
application/json
{
  • "name": "Battery level low",
  • "title": "Battery level low for {{deviceId}}",
  • "description": "Battery level low for {{deviceId}}",
  • "locationType": "Point",
  • "state": "UNPUBLISHED",
  • "category": "DISCRETE",
  • "defaultImportanceLevel": 0,
  • "eventDisplay": {
    }
}

Events

Events are the alerts and notifications that flow into your Control Room.

retrieveEventsInControlRoom

Retrieve Events within a Control Room.

By default, this will return the 30 latest Events within a Control Room.

You can use the query parameters before or after to retrieve older Events.

Authorizations:
ApiKey
path Parameters
controlRoomId
required
string <uuid> (Id)
Example: 666bf2b9-d78c-45d1-9cb9-c8828f595852

The Control Room Id

query Parameters
before
string <date-time> (DateTime)
Example: before=2019-02-05T09:32:08.080Z

Request items before this time

after
string <date-time> (DateTime)
Example: after=2019-02-05T09:32:08.080Z

Request items after this time

Responses

Response samples

Content type
application/json
{
  • "totalCount": 0,
  • "events": [
    ]
}

clearEventsInControlRoom

Clear or unclear Events.

Cleared Events will not show up when performing GET /controlrooms/{controlRoomId}/events, however they can still be retrieved when searching for Events (POST /controlrooms/{controlRoomId}/events/search).

Authorizations:
ApiKey
path Parameters
controlRoomId
required
string <uuid> (Id)
Example: 666bf2b9-d78c-45d1-9cb9-c8828f595852

The Control Room Id

Request Body schema: application/json
eventIds
Array of strings <uuid> (IdList)
cleared
boolean

Responses

Request samples

Content type
application/json
{
  • "eventIds": [
    ],
  • "cleared": true
}

searchEventsInControlRoom

Search for Events.

Authorizations:
ApiKey
path Parameters
controlRoomId
required
string <uuid> (Id)
Example: 666bf2b9-d78c-45d1-9cb9-c8828f595852

The Control Room Id

query Parameters
before
string <date-time> (DateTime)
Example: before=2019-02-05T09:32:08.080Z

Request items before this time

after
string <date-time> (DateTime)
Example: after=2019-02-05T09:32:08.080Z

Request items after this time

count
boolean

If true, returns the total number of matching events, ignoring before/after timestamps

Request Body schema: application/json
startDate
string <date-time> (DateTime)
endDate
string <date-time> (DateTime)
before
string <date-time> (DateTime)
after
string <date-time> (DateTime)
eventIds
Array of strings <uuid> (IdList)
eventTypeIds
Array of strings <uuid> (IdList)
assetIds
Array of strings <uuid> (IdList)
assetIdentifiers
Array of strings
importanceLevels
Array of integers
bounds
string

The bounds within to search for events. Must be a csv string as follows - 'lat,lng;lat,lng'

object

A map of Event Type UUIDs to a Map of attributes and filter values. Also, The API supports the "all" keyword to apply a filter to all event types. As an Example, in the case of "task.severity": { "gt": 1 } which should filter all tasks with a severity greater than 1.

cleared
boolean
state
string (EventState)
Enum: "ACTIVE" "COMPLETE" "RESOLVED"

The different states an event can be in.

Responses

Request samples

Content type
application/json
{
  • "startDate": "2019-02-05T09:32:08.080Z",
  • "endDate": "2019-02-05T09:32:08.080Z",
  • "before": "2019-02-05T09:32:08.080Z",
  • "after": "2019-02-05T09:32:08.080Z",
  • "eventIds": [
    ],
  • "eventTypeIds": [
    ],
  • "assetIds": [
    ],
  • "assetIdentifiers": [
    ],
  • "importanceLevels": [
    ],
  • "bounds": "30,144;32,146",
  • "eventTypeAttributes": {
    },
  • "cleared": true,
  • "state": "ACTIVE"
}

Response samples

Content type
application/json
{
  • "totalCount": 0,
  • "events": [
    ]
}

summaryOfEventsInControlRoom

Summary of events within a control room. This will retrieve a count of all active / non-cleared events grouped by importance or event type.

Authorizations:
ApiKey
path Parameters
controlRoomId
required
string <uuid> (Id)
Example: 666bf2b9-d78c-45d1-9cb9-c8828f595852

The Control Room Id

query Parameters
groupBy
string
Example: groupBy=importance,eventType

If groupBy=importance is specified or groupBy param is not provided, event summary is created for Importance Level If groupBy=eventType is specified, event summary is created for event types

eventTypeId
string <uuid>
Example: eventTypeId=666bf2b9-d78c-45d1-9cb9-c8828f595852

Limit the results to only the specified event type. If not specified, all event types assigned to the control room are included.

startDate
string <date-time> (DateTime)
Example: startDate=2019-02-05T09:32:08.080Z
endDate
string <date-time> (DateTime)
Example: endDate=2019-02-05T09:32:08.080Z

Responses

Response samples

Content type
application/json
{
  • "eventTypeSummary": [
    ],
  • "importanceSummary": [
    ]
}

createEvent

Creates an Event.

The elements in the dynamicAttributes map will replace any {{}} placeholders specified in the Event Type title and description.

Only the EventId is returned as part of this request.

Note: Events are read-only, they cannot be changed once created (with the exception of ongoing events). However, Events can be cleared and hidden from view.

Authorizations:
ApiKey
path Parameters
eventTypeIdentifier
required
string (UUIDIdentifier)
Example: identifier-09785f00-9a2f-4d43-9681-ca6e4c8467a9

Event Type Identifier. Last 36 characters must be valid UUID.

Request Body schema: application/json
object (Attributes)
importanceLevel
integer
qualifier
string (Qualifier)

The qualifier differentiates ongoing events linked to an asset of the same event type, based on a sub-type, category, or unique reference number. Unique qualifiers allow multiple active events of the same type for a single asset, each differing by its qualifier.

timestamp
string <date-time> (DateTime)
Point (object) or LineString (object) or Polygon (object) or MultiPolygon (object) or MultiPoint (object) or MultiLineString (object) (ValidLocation)
object
assetId
string <uuid> (Id)
assetIdentifier
string (Identifier)

Responses

Request samples

Content type
application/json
{
  • "dynamicAttributes": {
    },
  • "importanceLevel": 0,
  • "qualifier": "ref-1234",
  • "timestamp": "2019-02-05T09:32:08.080Z",
  • "location": {
    },
  • "assetId": "666bf2b9-d78c-45d1-9cb9-c8828f595852",
  • "assetIdentifier": "identifier"
}

Response samples

Content type
application/json
{
  • "id": "666bf2b9-d78c-45d1-9cb9-c8828f595852"
}

updateAnEvent

Update an Event using the Event Id.

Currently, only the state of the event can be updated:

  • Active events can transition to Complete or Resolved.
  • Complete events can transition to Resolved.
  • Resolved events cannot be transitioned.
Authorizations:
ApiKey
path Parameters
eventId
required
string <uuid> (Id)
Example: 666bf2b9-d78c-45d1-9cb9-c8828f595852

The Event Id

Request Body schema: application/json
state
string (EventState)
Enum: "ACTIVE" "COMPLETE" "RESOLVED"

The different states an event can be in.

Responses

Request samples

Content type
application/json
{
  • "state": "ACTIVE"
}

getEvent

Get Event using the Event Id.

Authorizations:
ApiKey
path Parameters
eventId
required
string <uuid> (Id)
Example: 666bf2b9-d78c-45d1-9cb9-c8828f595852

The Event Id

query Parameters
include
string
Example: include=controlRooms

If include=controlRooms is specified, an array of controlRooms this events lives under is returned as part of the response.

Responses

Response samples

Content type
application/json
{
  • "id": "666bf2b9-d78c-45d1-9cb9-c8828f595852",
  • "eventTypeId": "666bf2b9-d78c-45d1-9cb9-c8828f595852",
  • "title": "Battery level low for {{deviceId}}",
  • "description": "Indicated battery level info",
  • "location": {
    },
  • "createdAt": "2019-02-05T09:32:08.080Z",
  • "lastModifiedAt": "2019-02-05T09:32:08.080Z",
  • "state": "ACTIVE",
  • "qualifier": "ref-1234",
  • "dynamicAttributes": {
    },
  • "controlRooms": [
    ]
}

searchEvents

Search for Events across the organization.

Authorizations:
ApiKey
path Parameters
controlRoomId
required
string <uuid> (Id)
Example: 666bf2b9-d78c-45d1-9cb9-c8828f595852

The Control Room Id

query Parameters
before
string <date-time> (DateTime)
Example: before=2019-02-05T09:32:08.080Z

Request items before this time

after
string <date-time> (DateTime)
Example: after=2019-02-05T09:32:08.080Z

Request items after this time

count
boolean

If true, returns the total number of matching events, ignoring before/after timestamps

Request Body schema: application/json
startDate
string <date-time> (DateTime)
endDate
string <date-time> (DateTime)
before
string <date-time> (DateTime)
after
string <date-time> (DateTime)
eventIds
Array of strings <uuid> (IdList)
eventTypeIds
Array of strings <uuid> (IdList)
assetIds
Array of strings <uuid> (IdList)
assetIdentifiers
Array of strings
importanceLevels
Array of integers
bounds
string

The bounds within to search for events. Must be a csv string as follows - 'lat,lng;lat,lng'

object

A map of Event Type UUIDs to a Map of attributes and filter values. Also, The API supports the "all" keyword to apply a filter to all event types. As an Example, in the case of "task.severity": { "gt": 1 } which should filter all tasks with a severity greater than 1.

state
string (EventState)
Enum: "ACTIVE" "COMPLETE" "RESOLVED"

The different states an event can be in.

Responses

Request samples

Content type
application/json
{
  • "startDate": "2019-02-05T09:32:08.080Z",
  • "endDate": "2019-02-05T09:32:08.080Z",
  • "before": "2019-02-05T09:32:08.080Z",
  • "after": "2019-02-05T09:32:08.080Z",
  • "eventIds": [
    ],
  • "eventTypeIds": [
    ],
  • "assetIds": [
    ],
  • "assetIdentifiers": [
    ],
  • "importanceLevels": [
    ],
  • "bounds": "30,144;32,146",
  • "eventTypeAttributes": {
    },
  • "state": "ACTIVE"
}

Response samples

Content type
application/json
{
  • "totalCount": 0,
  • "events": [
    ]
}

Asset Types

Asset Types describe the types of things and people you'd like to track in Sky Ledge.

listsAssetTypesInControlRoom

Retrieve a list of Asset Types that have been assigned to this Control Room.

Authorizations:
ApiKey
path Parameters
controlRoomId
required
string <uuid> (Id)
Example: 666bf2b9-d78c-45d1-9cb9-c8828f595852

The Control Room Id

Responses

Response samples

Content type
application/json
{
  • "assetTypes": [
    ]
}

assignsAssetTypeToControlRoom

Assigns an Asset Type to a Control Room.

Authorizations:
ApiKey
path Parameters
controlRoomId
required
string <uuid> (Id)
Example: 666bf2b9-d78c-45d1-9cb9-c8828f595852

The Control Room Id

assetTypeId
required
string <uuid> (Id)
Example: 666bf2b9-d78c-45d1-9cb9-c8828f595852

The Asset Type Id

Request Body schema: application/json
Array of AppView (object) or PopupView (object) or MapView (object) or ReportView (object) or UpdateView (object)

Responses

Request samples

Content type
application/json
{
  • "views": [
    ]
}

getAssignedAssetTypeOfControlRoom

Get an Assigned Asset Type of a Control Room.

Authorizations:
ApiKey
path Parameters
controlRoomId
required
string <uuid> (Id)
Example: 666bf2b9-d78c-45d1-9cb9-c8828f595852

The Control Room Id

assetTypeId
required
string <uuid> (Id)
Example: 666bf2b9-d78c-45d1-9cb9-c8828f595852

The Asset Type Id

Responses

Response samples

Content type
application/json
{
  • "views": [
    ]
}

createAssetType

Creates an Asset Type.

Authorizations:
ApiKey
Request Body schema: application/json
identifier
string

A unique identifier for this Asset Types. No two Asset Types can share an identifier. Identifiers starting with _ are reserved.

name
string
description
string
icon
string

Responses

Request samples

Content type
application/json
{
  • "identifier": "truck",
  • "name": "Cargo Truck",
  • "description": "A Cargo Truck",
  • "icon": "vehicle-truck"
}

Response samples

Content type
application/json
{
  • "id": "666bf2b9-d78c-45d1-9cb9-c8828f595852",
  • "ownerId": "666bf2b9-d78c-45d1-9cb9-c8828f595852",
  • "createdAt": "2019-02-05T09:32:08.080Z",
  • "lastModifiedAt": "2019-02-05T09:32:08.080Z",
  • "name": "Cargo Truck",
  • "description": "A Cargo Truck",
  • "identifier": "cargo-truck",
  • "icon": "vehicle-truck"
}

listAssetTypes

Retrieve a list of Asset Types that exist within the Organization.

Authorizations:
ApiKey

Responses

Response samples

Content type
application/json
{
  • "assetTypes": [
    ]
}

getAssetType

Retrieve a single Asset Type.

Authorizations:
ApiKey
path Parameters
assetTypeId
required
string <uuid> (Id)
Example: 666bf2b9-d78c-45d1-9cb9-c8828f595852

The Asset Type Id

Responses

Response samples

Content type
application/json
{
  • "id": "666bf2b9-d78c-45d1-9cb9-c8828f595852",
  • "ownerId": "666bf2b9-d78c-45d1-9cb9-c8828f595852",
  • "createdAt": "2019-02-05T09:32:08.080Z",
  • "lastModifiedAt": "2019-02-05T09:32:08.080Z",
  • "name": "Cargo Truck",
  • "description": "A Cargo Truck",
  • "identifier": "cargo-truck",
  • "icon": "vehicle-truck"
}

updateAssetType

Update an Asset Type.

Authorizations:
ApiKey
path Parameters
assetTypeId
required
string <uuid> (Id)
Example: 666bf2b9-d78c-45d1-9cb9-c8828f595852

The Asset Type Id

Request Body schema: application/json
name
string
description
string
icon
string

Responses

Request samples

Content type
application/json
{
  • "name": "Cargo Truck",
  • "description": "A Cargo Truck",
  • "icon": "vehicle-truck"
}

createAggregation

Creates an Aggregation.

An Aggregation returns aggregated data grouped by a specific asset.

Currently, the following aggregations are supported:

  • Asset metrics
  • Cycle attributes
  • Cycle duration

The aggregation can be limited to a date range by specifying start and end date as query parameters.

The results can be grouped by a date period by specifying the dateGrouping. Both period and timezone are required.

You can optionally retrieve the Assets returned in the results by passing embed=asset. This will add an array of assets to the results.

Authorizations:
ApiKey
path Parameters
assetTypeId
required
string <uuid> (Id)
Example: 666bf2b9-d78c-45d1-9cb9-c8828f595852

The Asset Type Id

query Parameters
page
integer >= 0
Default: 0

The current page (starts at 0)

size
integer [ 10 .. 100 ]
Default: 20

The size of the returned page

sort
string
Example: sort=cycle.sumDuration,asc

Sorts by the specified parameter. To sort by a cycle parameter, append "cycle."

embed
string
Example: embed=assets

If specified, assets are embedded in the response

include
string
Example: include=totalCount

If include=totalCount is specified, the total count is returned as part of the request.

startDate
string <date-time> (DateTime)
Example: startDate=2019-02-05T09:32:08.080Z
endDate
string <date-time> (DateTime)
Example: endDate=2019-02-05T09:32:08.080Z
Request Body schema: application/json
Array of objects

The parameters for the aggregation report.

Array of CycleDurationAggregationParameter (object) or CycleAttributeAggregationParameter (object)

The parameters for the aggregation report.

assetIds
Array of strings <uuid> (IdList)
assetIdentifiers
Array of strings
object

If date grouping is specified, the results are grouped by that period

Responses

Request samples

Content type
application/json
{
  • "parameters": [
    ],
  • "cycleParameters": [
    ],
  • "assetIds": [
    ],
  • "assetIdentifiers": [
    ],
  • "dateGrouping": {
    }
}

Response samples

Content type
application/json
{
  • "results": [
    ]
}

createPeriodAggregation

Creates a Period Aggregation for a single Asset.

This returns an Aggregation grouped by a specified time period. The only supported period is day. A timezone must be specified.

The maximum allowed date range is 1 year.

If no start and end date is specified, results for the last seven days are shown.

If a start date OR an end date is specified, results for 30 days are returned.

Authorizations:
ApiKey
path Parameters
assetId
required
string <uuid> (Id)
Example: 666bf2b9-d78c-45d1-9cb9-c8828f595852

The Asset Id

query Parameters
startDate
string <date-time> (DateTime)
Example: startDate=2019-02-05T09:32:08.080Z
endDate
string <date-time> (DateTime)
Example: endDate=2019-02-05T09:32:08.080Z
Request Body schema: application/json
Array of objects

The parameters for the aggregation report.

Responses

Request samples

Content type
application/json
{
  • "parameters": [
    ]
}

createPeriodAggregationByIdentifier

Creates a Period Aggregation for a single Asset.

This returns an Aggregation grouped by a specified time period. The only supported period is day. A timezone must be specified.

The maximum allowed date range is 1 year.

If no start and end date is specified, results for the last seven days are shown.

If a start date OR an end date is specified, results for 30 days are returned.

Authorizations:
ApiKey
path Parameters
assetIdentifier
required
string (Identifier)
Example: identifier

Asset Identifier. Last 36 characters must be valid UUID.

query Parameters
startDate
string <date-time> (DateTime)
Example: startDate=2019-02-05T09:32:08.080Z
endDate
string <date-time> (DateTime)
Example: endDate=2019-02-05T09:32:08.080Z
Request Body schema: application/json
Array of objects

The parameters for the aggregation report.

Responses

Request samples

Content type
application/json
{
  • "parameters": [
    ]
}

Assets

Assets are instances of things and assets.

listAssetsInControlRoom

Retrieve a list of Assets that exist in this Control Room.

For an Asset to exist in a Control Room, it's Asset Type must be assigned to the Control Room.

Authorizations:
ApiKey
path Parameters
controlRoomId
required
string <uuid> (Id)
Example: 666bf2b9-d78c-45d1-9cb9-c8828f595852

The Control Room Id

query Parameters
recordedAfter
string <date-time> (DateTime)
Example: recordedAfter=2019-02-05T09:32:08.080Z

Request items after this time

page
integer >= 0
Default: 0

The current page (starts at 0)

size
integer [ 10 .. 100 ]
Default: 20

The size of the returned page

Responses

Response samples

Content type
application/json
{
  • "totalCount": 0,
  • "assets": [
    ]
}

createAsset

Create an Asset.

Asset Identifiers

Each Asset must have a unique Asset Identifier. In practice, an Asset Identifier is a way to track Assets from your internal systems in Sky Ledge. For example, an Asset Identifier might map to a device id or an employee id in your database.

Attributes vs Metrics

An Asset Type has both attributes and metrics.

attributes can be thought as properties of an Asset that change infrequently or not at all. These can be properties such as name, model number, age, etc.

metrics are numeric values that change over time. These can be properties such as speed, temperature, rotations per minute, etc. Metrics can be queried historically.

Authorizations:
ApiKey
path Parameters
assetTypeId
required
string <uuid> (Id)
Example: 666bf2b9-d78c-45d1-9cb9-c8828f595852

The Asset Type Id

Request Body schema: application/json
assetIdentifier
string

A unique identifier for this asset. No two Assets can share an identifier.

name
string
description
string
object (Attributes)
object
timestamp
string <date-time>

Timestamp of the update. If not provided, the current time is used. Time cannot be more than 5 minutes before lastModifiedAt or more than 5 minutes in future

object
Point (object) or LineString (object) or Polygon (object) or MultiPolygon (object) or MultiPoint (object) or MultiLineString (object) (ValidLocation)

Responses

Request samples

Content type
application/json
{
  • "assetIdentifier": "ct_au383",
  • "name": "Cargo Truck AU383",
  • "description": "Truck for transporting equipment to the site.",
  • "attributes": {
    },
  • "metrics": {
    },
  • "timestamp": "2019-02-05T09:32:08.080Z",
  • "location": {
    }
}

createAssetByAssetTypeIdentifier

Create an Asset by Asset Type Identifier.

Asset Identifiers

Each Asset must have a unique Asset Identifier. In practice, an Asset Identifier is a way to track Assets from your internal systems in Sky Ledge. For example, an Asset Identifier might map to a device id or an employee id in your database.

Attributes vs Metrics

An Asset Type has both attributes and metrics.

attributes can be thought as properties of an Asset that change infrequently or not at all. These can be properties such as name, model number, age, etc.

metrics are numeric values that change over time. These can be properties such as speed, temperature, rotations per minute, etc. Metrics can be queried historically.

Authorizations:
ApiKey
path Parameters
assetTypeIdentifier
required
string (Identifier)
Example: identifier

Asset Type Identifier.

Request Body schema: application/json
assetIdentifier
string

A unique identifier for this asset. No two Assets can share an identifier.

name
string
description
string
object (Attributes)
object
timestamp
string <date-time>

Timestamp of the update. If not provided, the current time is used. Time cannot be more than 5 minutes before lastModifiedAt or more than 5 minutes in future

object
Point (object) or LineString (object) or Polygon (object) or MultiPolygon (object) or MultiPoint (object) or MultiLineString (object) (ValidLocation)

Responses

Request samples

Content type
application/json
{
  • "assetIdentifier": "ct_au383",
  • "name": "Cargo Truck AU383",
  • "description": "Truck for transporting equipment to the site.",
  • "attributes": {
    },
  • "metrics": {
    },
  • "timestamp": "2019-02-05T09:32:08.080Z",
  • "location": {
    }
}

listAssets

Retrieves a list of Assets within the Organization.

Authorizations:
ApiKey
query Parameters
page
integer >= 0
Default: 0

The current page (starts at 0)

size
integer [ 10 .. 100 ]
Default: 20

The size of the returned page

Responses

Response samples

Content type
application/json
{
  • "totalCount": 0,
  • "assets": [
    ]
}

searchAssetsInOrganization

Search for Assets.

Authorizations:
ApiKey
query Parameters
page
integer >= 0
Default: 0

The current page (starts at 0)

size
integer [ 10 .. 100 ]
Default: 20

The size of the returned page

Request Body schema: application/json
assetTypeIds
Array of strings <uuid> (IdList)
assetIds
Array of strings <uuid> (IdList)
assetIdentifiers
Array of strings
bounds
string

The bounds within to search for assets. Must be a csv string as follows - 'lat,lng;lat,lng'

object
recordedAfter
string <date-time> (DateTime)

Responses

Request samples

Content type
application/json
{
  • "assetTypeIds": [
    ],
  • "assetIds": [
    ],
  • "assetIdentifiers": [
    ],
  • "bounds": "30,144;32,146",
  • "attributes": {
    },
  • "recordedAfter": "2019-02-05T09:32:08.080Z"
}

Response samples

Content type
application/json
{
  • "totalCount": 0,
  • "assets": [
    ]
}

listAssetAttributeValuesInOrganization

List of distinct sorted asset attribute values for given attribute

Authorizations:
ApiKey
path Parameters
attributeKey
required
string (AttributeName)
Example: companyPath.name.last

Attribute Key

query Parameters
page
integer >= 0
Default: 0

The current page (starts at 0)

size
integer [ 10 .. 100 ]
Default: 20

The size of the returned page

Request Body schema: application/json
assetTypeIds
Array of strings <uuid> (IdList)

Responses

Request samples

Content type
application/json
{
  • "assetTypeIds": [
    ]
}

Response samples

Content type
application/json
{
  • "totalCount": 0,
  • "values": [
    ]
}

updateAsset

Update an Asset using the Asset Id.

This is a PATCH request. As such, you only need to specify properties that have changed. They will be merged into the existing Asset.

This also applies to attributes and metrics. For example, if your Asset is tracking both speed and temperature, you can update only the speed (without affecting temperature) as follows:

{ "metrics" { "speed": 40 } }

By default, the current UTC time is used. This can be overwritten by specifying timestamp in the request. timestamp cannot be:

  • more than 5 minutes in the future
  • more than 5 minutes prior to the asset's lastModifiedAt time
Authorizations:
ApiKey
path Parameters
assetId
required
string <uuid> (Id)
Example: 666bf2b9-d78c-45d1-9cb9-c8828f595852

The Asset Id

Request Body schema: application/json
name
string
description
string
object (Attributes)
object
object
timestamp
string

Timestamp of the update. If not provided, the current time is used. Time cannot be more than 5 minutes before lastModifiedAt or more than 5 minutes in future

Point (object) or LineString (object) or Polygon (object) or MultiPolygon (object) or MultiPoint (object) or MultiLineString (object) (ValidLocation)

Responses

Request samples

Content type
application/json
{
  • "name": "Cargo Truck AU383",
  • "description": "Truck for transporting equipment to the site.",
  • "attributes": {
    },
  • "metrics": {
    },
  • "timestamp": "string",
  • "location": {
    }
}

updateAsset (usingAssetIdentifier)

Update an Asset using the Asset Identifier.

This is a PATCH request. As such, you only need to specify properties that have changed. They will be merged into the existing Asset.

This also applies to attributes and metrics. For example, if your Asset is tracking both speed`and temperature, you can update only the speed (without affecting temperature) as follows:

{ "metrics" { "speed": 40 } }

By default, the current UTC time is used. This can be overwritten by specifying timestamp in the request. timestamp cannot be:

  • more than 5 minutes in the future
  • more than 5 minutes prior to the asset's lastModifiedAt time
Authorizations:
ApiKey
path Parameters
assetIdentifier
required
string (Identifier)
Example: identifier

Asset Identifier. Last 36 characters must be valid UUID.

Request Body schema: application/json
name
string
description
string
object (Attributes)
object
object
timestamp
string

Timestamp of the update. If not provided, the current time is used. Time cannot be more than 5 minutes before lastModifiedAt or more than 5 minutes in future

Point (object) or LineString (object) or Polygon (object) or MultiPolygon (object) or MultiPoint (object) or MultiLineString (object) (ValidLocation)

Responses

Request samples

Content type
application/json
{
  • "name": "Cargo Truck AU383",
  • "description": "Truck for transporting equipment to the site.",
  • "attributes": {
    },
  • "metrics": {
    },
  • "timestamp": "string",
  • "location": {
    }
}

metricHistory

History for a single metric.

This returns two equal-length arrays - one containing timestamps and one containing metric values. `

Authorizations:
ApiKey
path Parameters
assetId
required
string <uuid> (Id)
Example: 666bf2b9-d78c-45d1-9cb9-c8828f595852

The Asset Id

metric
required
string
Example: speed

Asset Metric.

query Parameters
page
integer >= 0
Default: 0

The current page (starts at 0)

size
integer [ 10 .. 100 ]
Default: 20

The size of the returned page

startDate
string <date-time> (DateTime)
Example: startDate=2019-02-05T09:32:08.080Z
endDate
string <date-time> (DateTime)
Example: endDate=2019-02-05T09:32:08.080Z

Responses

Response samples

Content type
application/json
{
  • "times": [
    ],
  • "locations": [
    ]
}

metricHistory (usingAssetIdentifier)

History for a single metric.

This returns two equal-length arrays - one containing timestamps and one containing metric values. `

Authorizations:
ApiKey
path Parameters
assetIdentifier
required
string (Identifier)
Example: identifier

Asset Identifier. Last 36 characters must be valid UUID.

metric
required
string
Example: speed

Asset Metric.

query Parameters
page
integer >= 0
Default: 0

The current page (starts at 0)

size
integer [ 10 .. 100 ]
Default: 20

The size of the returned page

startDate
string <date-time> (DateTime)
Example: startDate=2019-02-05T09:32:08.080Z
endDate
string <date-time> (DateTime)
Example: endDate=2019-02-05T09:32:08.080Z

Responses

Response samples

Content type
application/json
{
  • "times": [
    ],
  • "locations": [
    ]
}

locationHistory

Location history for an asset.

This returns two equal-length arrays - one containing timestamps and one containing geojson locations. `

Authorizations:
ApiKey
path Parameters
assetId
required
string <uuid> (Id)
Example: 666bf2b9-d78c-45d1-9cb9-c8828f595852

The Asset Id

query Parameters
page
integer >= 0
Default: 0

The current page (starts at 0)

size
integer [ 10 .. 100 ]
Default: 20

The size of the returned page

startDate
string <date-time> (DateTime)
Example: startDate=2019-02-05T09:32:08.080Z
endDate
string <date-time> (DateTime)
Example: endDate=2019-02-05T09:32:08.080Z

Responses

Response samples

Content type
application/json
{
  • "times": [
    ],
  • "locations": [
    ]
}

locationHistory (usingAssetIdentifier)

Location history for an asset.

This returns two equal-length arrays - one containing timestamps and one containing geojson locations. `

Authorizations:
ApiKey
path Parameters
assetIdentifier
required
string (Identifier)
Example: identifier

Asset Identifier. Last 36 characters must be valid UUID.

query Parameters
page
integer >= 0
Default: 0

The current page (starts at 0)

size
integer [ 10 .. 100 ]
Default: 20

The size of the returned page

startDate
string <date-time> (DateTime)
Example: startDate=2019-02-05T09:32:08.080Z
endDate
string <date-time> (DateTime)
Example: endDate=2019-02-05T09:32:08.080Z

Responses

Response samples

Content type
application/json
{
  • "times": [
    ],
  • "locations": [
    ]
}

Place Types

Place Types describe the types of places you'd like to track in Sky Ledge.

listsPlaceTypesInControlRoom

Retrieve a list of Place Types that have been assigned to this Control Room.

Authorizations:
ApiKey
path Parameters
controlRoomId
required
string <uuid> (Id)
Example: 666bf2b9-d78c-45d1-9cb9-c8828f595852

The Control Room Id

query Parameters
page
integer >= 0
Default: 0

The current page (starts at 0)

size
integer [ 10 .. 100 ]
Default: 20

The size of the returned page

Responses

Response samples

Content type
application/json
{
  • "placeTypes": [
    ]
}

assignsPlaceTypeToControlRoom

Assigns a Place Type to a Control Room. When a Place Type is assigned to a Control Room, any Places of that type will appear within the Control Room.

Authorizations:
ApiKey
path Parameters
controlRoomId
required
string <uuid> (Id)
Example: 666bf2b9-d78c-45d1-9cb9-c8828f595852

The Control Room Id

placeTypeId
required
string <uuid> (Id)
Example: 666bf2b9-d78c-45d1-9cb9-c8828f595852

The Place Type Id

Responses

createPlaceType

Creates a Place Type.

Authorizations:
ApiKey
Request Body schema: application/json
name
string
identifier
string

A unique identifier for this place type. No two Place Types can share an identifier.

description
string
controlRooms
Array of strings <uuid> (IdList)

Responses

Request samples

Content type
application/json
{
  • "name": "Customer sites",
  • "identifier": "ct_au383",
  • "description": "Customer sites",
  • "controlRooms": [
    ]
}

Response samples

Content type
application/json
{
  • "id": "666bf2b9-d78c-45d1-9cb9-c8828f595852",
  • "ownerId": "666bf2b9-d78c-45d1-9cb9-c8828f595852",
  • "createdAt": "2019-02-05T09:32:08.080Z",
  • "name": "Customer",
  • "description": "Customer Sites",
  • "identifier": "customer"
}

listPlaceTypes

Retrieve a list of Place Types that exist within the Organization.

Authorizations:
ApiKey

Responses

Response samples

Content type
application/json
{
  • "placeTypes": [
    ]
}

getPlaceType

Retrieve a single Place Type.

Authorizations:
ApiKey
path Parameters
placeTypeId
required
string <uuid> (Id)
Example: 666bf2b9-d78c-45d1-9cb9-c8828f595852

The Place Type Id

Responses

Response samples

Content type
application/json
{
  • "id": "666bf2b9-d78c-45d1-9cb9-c8828f595852",
  • "ownerId": "666bf2b9-d78c-45d1-9cb9-c8828f595852",
  • "createdAt": "2019-02-05T09:32:08.080Z",
  • "name": "Customer",
  • "description": "Customer Sites",
  • "identifier": "customer"
}

updatePlaceType

Update a Place Type.

Authorizations:
ApiKey
path Parameters
placeTypeId
required
string <uuid> (Id)
Example: 666bf2b9-d78c-45d1-9cb9-c8828f595852

The Place Type Id

Request Body schema: application/json
name
string
description
string

Responses

Request samples

Content type
application/json
{
  • "name": "Customer sites",
  • "description": "Customer sites"
}

Places

Places are instances of Place Types. They refer to individual locations you want to track.

listPlacesInControlRoom

Retrieve a list of Places that exist in this Control Room.

For an Place to exist in a Control Room, it's Place Type must be assigned to the Control Room.

Authorizations:
ApiKey
path Parameters
controlRoomId
required
string <uuid> (Id)
Example: 666bf2b9-d78c-45d1-9cb9-c8828f595852

The Control Room Id

Responses

Response samples

Content type
application/json
{
  • "places": [
    ]
}

createPlace

Create a Place.

Place Identifiers

Each Place must have a unique Place Identifier. For example, an Place Identifier might map to an address or entry in your database.

Authorizations:
ApiKey
path Parameters
placeTypeIdentifier
required
string (Identifier)
Example: identifier

The Place Type Identifier.

Request Body schema: application/json
name
string
description
string

Responses

Request samples

Content type
application/json
{
  • "name": "Sky Ledge Headquarters",
  • "description": "The super-secret, ultra official Sky Ledge Headquarters",
  • "location": {
    }
}

listPlaces

List Places within the organization.

Authorizations:
ApiKey
query Parameters
page
integer >= 0
Default: 0

The current page (starts at 0)

size
integer [ 10 .. 100 ]
Default: 20

The size of the returned page

Responses

Response samples

Content type
application/json
{
  • "places": [
    ]
}

retrievePlace (usingPlaceId)

Retrieves a Single Place by Id.

Authorizations:
ApiKey
path Parameters
placeId
required
string (Identifier)
Example: identifier

The Place Id

Responses

Response samples

Content type
application/json
{
  • "id": "666bf2b9-d78c-45d1-9cb9-c8828f595852",
  • "placeTypeId": "666bf2b9-d78c-45d1-9cb9-c8828f595852",
  • "placeIdentifier": "place-123",
  • "createdAt": "2019-02-05T09:32:08.080Z",
  • "lastModifiedAt": "2019-02-05T09:32:08.080Z",
  • "name": "Sky Ledge Headquarters",
  • "description": "The super-secret, ultra official Sky Ledge Headquarters",
  • "location": {
    }
}

updatePlace

Update a Place using the Place Id.

This is a PATCH request. As such, you only need to specify properties that have changed. They will be merged into the existing Place.

Authorizations:
ApiKey
path Parameters
placeId
required
string (Identifier)
Example: identifier

The Place Id

Request Body schema: application/json
name
string
description
string

Responses

Request samples

Content type
application/json
{
  • "name": "Sky Ledge Headquarters",
  • "description": "The super-secret, ultra official Sky Ledge Headquarters",
  • "location": {
    }
}

deletePlace

Deletes an Place using Place Id.

Authorizations:
ApiKey
path Parameters
placeId
required
string (Identifier)
Example: identifier

The Place Id

Responses

retrievePlace (usingPlaceIdentifier)

Retrieves a Single Place by Identifier.

Authorizations:
ApiKey
path Parameters
placeIdentifier
required
string (Identifier)
Example: identifier

The Place Identifier. Last 36 characters must be valid UUID.

Responses

Response samples

Content type
application/json
{
  • "id": "666bf2b9-d78c-45d1-9cb9-c8828f595852",
  • "placeTypeId": "666bf2b9-d78c-45d1-9cb9-c8828f595852",
  • "placeIdentifier": "place-123",
  • "createdAt": "2019-02-05T09:32:08.080Z",
  • "lastModifiedAt": "2019-02-05T09:32:08.080Z",
  • "name": "Sky Ledge Headquarters",
  • "description": "The super-secret, ultra official Sky Ledge Headquarters",
  • "location": {
    }
}

updatePlace (usingPlaceIdentifier)

Update an Place using the Place Identifier.

This is a PATCH request. As such, you only need to specify properties that have changed. They will be merged into the existing Place.

Authorizations:
ApiKey
path Parameters
placeIdentifier
required
string (Identifier)
Example: identifier

The Place Identifier. Last 36 characters must be valid UUID.

Request Body schema: application/json
name
string
description
string

Responses

Request samples

Content type
application/json
{
  • "name": "Sky Ledge Headquarters",
  • "description": "The super-secret, ultra official Sky Ledge Headquarters",
  • "location": {
    }
}

deletePlace (usingPlaceIdentifier)

Deletes an Place using Place Identifier.

Authorizations:
ApiKey
path Parameters
placeIdentifier
required
string (Identifier)
Example: identifier

The Place Identifier. Last 36 characters must be valid UUID.

Responses

Collaborators

People who have access to view your Control Room.

listControlRoomCollaborators

List Collaborators with access to a Control Room.

Authorizations:
ApiKey
path Parameters
controlRoomId
required
string <uuid> (Id)
Example: 666bf2b9-d78c-45d1-9cb9-c8828f595852

The Control Room Id

Responses

Response samples

Content type
application/json
{
  • "name": "Jessica Smith",
  • "role": "operator",
  • "pending": true
}

addControlRoomCollaborators

Invite Collaborators to a Control Room.

If a Collaborator is already part of the Organization, they will be added automatically.

If the Collaborator doesn't have an account, they will be invited to join Sky Ledge and will be added upon creating an account.

Authorizations:
ApiKey
path Parameters
controlRoomId
required
string <uuid> (Id)
Example: 666bf2b9-d78c-45d1-9cb9-c8828f595852

The Control Room Id

Request Body schema: application/json
Array of objects (ControlRoomCollaboratorRequest)

Responses

Request samples

Content type
application/json
{
  • "collaborators": [
    ]
}

Users

People who are using the Control Room.

listUsers

Retrieve a list of Users that exist within the Organization.

Authorizations:
ApiKey
query Parameters
page
integer >= 0
Default: 0

The current page (starts at 0)

size
integer [ 10 .. 100 ]
Default: 20

The size of the returned page

Responses

Response samples

Content type
application/json
{
  • "users": [
    ]
}

Apps

installControlRoomApp

Installs an App within a Control Room. The appIdentifier must be a pre-defined App for this to work correctly. weight is used to control where the App appears in the Control Room sidenav. The higher the weight, the lower the app will appear in the sidenav menu.

Authorizations:
ApiKey
path Parameters
controlRoomId
required
string <uuid> (Id)
Example: 666bf2b9-d78c-45d1-9cb9-c8828f595852

The Control Room Id

Request Body schema: application/json
weight
number
object

Responses

Request samples

Content type
application/json
{
  • "weight": 30,
  • "appConfig": {
    }
}

Response samples

Content type
application/json
{
  • "id": "666bf2b9-d78c-45d1-9cb9-c8828f595852",
  • "appIdentifier": "fleets/maintenance",
  • "weight": 30,
  • "appConfig": {
    }
}

listControlRoomApps

Retrieve a list of Apps that have been installed in this Control Room.

Authorizations:
ApiKey
path Parameters
controlRoomId
required
string <uuid> (Id)
Example: 666bf2b9-d78c-45d1-9cb9-c8828f595852

The Control Room Id

Responses

Response samples

Content type
application/json
{
  • "placeTypes": [
    ]
}

retrieveControlRoomApp

Retrieves a single Control Room App.

Authorizations:
ApiKey
path Parameters
controlRoomId
required
string <uuid> (Id)
Example: 666bf2b9-d78c-45d1-9cb9-c8828f595852

The Control Room Id

appInstanceId
required
string (Identifier)
Example: identifier

The App Instance Id. This is an id to uniquely identify an instance of an app within a Control Room.

Responses

Response samples

Content type
application/json
{
  • "id": "666bf2b9-d78c-45d1-9cb9-c8828f595852",
  • "appIdentifier": "fleets/maintenance",
  • "weight": 30,
  • "appConfig": {
    }
}

updateControlRoomApp

Updates an installed App. This primarily lets you update the configuaration of the App as well as the weight of the App (where it appears in the Control Room sidenav).

Authorizations:
ApiKey
path Parameters
controlRoomId
required
string <uuid> (Id)
Example: 666bf2b9-d78c-45d1-9cb9-c8828f595852

The Control Room Id

appInstanceId
required
string (Identifier)
Example: identifier

The App Instance Id. This is an id to uniquely identify an instance of an app within a Control Room.

Request Body schema: application/json
weight
number
object

Responses

Request samples

Content type
application/json
{
  • "weight": 30,
  • "appConfig": {
    }
}

uninstallControlRoomApp

Uninstall an App from a Control Room. The App will no longer be accessible from the Control Room.

Authorizations:
ApiKey
path Parameters
controlRoomId
required
string <uuid> (Id)
Example: 666bf2b9-d78c-45d1-9cb9-c8828f595852

The Control Room Id

appInstanceId
required
string (Identifier)
Example: identifier

The App Instance Id. This is an id to uniquely identify an instance of an app within a Control Room.

Responses

Tasks

createTask

Creates a Task.

Authorizations:
ApiKey
path Parameters
taskTypeId
required
string <uuid> (Id)
Example: 666bf2b9-d78c-45d1-9cb9-c8828f595852

The Task Type Id

Request Body schema: application/json
eventId
required
string <uuid> (Id)
qualifier
required
string

A unique identifier for this task. No two Tasks can share an identifier.

object (Attributes)
status
string
Enum: "OPEN" "PROCESSED" "COMPLETED"
dueDate
string <date-time> (DateTime)
notes
string

Responses

Request samples

Content type
application/json
{
  • "eventId": "666bf2b9-d78c-45d1-9cb9-c8828f595852",
  • "qualifier": "ct_au383",
  • "attributes": {
    },
  • "status": "OPEN",
  • "dueDate": "2019-02-05T09:32:08.080Z",
  • "notes": "Task notes"
}

Response samples

Content type
application/json
{
  • "id": "666bf2b9-d78c-45d1-9cb9-c8828f595852",
  • "eventId": "666bf2b9-d78c-45d1-9cb9-c8828f595852",
  • "qualifier": "ct_au383",
  • "title": "Task Title",
  • "description": "Task Description",
  • "event": {
    },
  • "asset": {
    },
  • "attributes": {
    },
  • "status": "OPEN",
  • "dueDate": "2019-02-05T09:32:08.080Z",
  • "notes": "Task notes",
  • "createdAt": "2019-02-05T09:32:08.080Z",
  • "lastModifiedAt": "2019-02-05T09:32:08.080Z",
  • "properties": [
    ],
  • "changeLogs": [
    ]
}

listTasks

Retrieve a list of Tasks that exist within the Organization.

Authorizations:
ApiKey
path Parameters
taskTypeId
required
string <uuid> (Id)
Example: 666bf2b9-d78c-45d1-9cb9-c8828f595852

The Task Type Id

Responses

Response samples

Content type
application/json
{
  • "tasks": [
    ]
}

searchTasks

Search for Tasks across the organization.

Authorizations:
ApiKey
query Parameters
page
integer >= 0
Default: 0

The current page (starts at 0)

size
integer [ 10 .. 100 ]
Default: 20

The size of the returned page

Request Body schema: application/json
object (DateRange)
object (DateRange)
taskIds
Array of strings <uuid> (IdList)
taskTypeIds
Array of strings <uuid> (IdList)
eventIds
Array of strings <uuid> (IdList)
eventTypeIds
Array of strings <uuid> (IdList)
assetIds
Array of strings <uuid> (IdList)
assetTypeIds
Array of strings <uuid> (IdList)
assetIdentifiers
Array of strings
object

A map of Task Type UUIDs to a Map of attributes and filter values. Also, The API supports the "all" keyword to apply a filter to all task types. As an Example, in the case of "task.severity": { "gt": 1 } which should filter all tasks with a severity greater than 1.

status
Array of strings
Items Enum: "OPEN" "PROCESSED" "COMPLETED"

Responses

Request samples

Content type
application/json
{
  • "createdAt": {
    },
  • "dueAt": {
    },
  • "taskIds": [
    ],
  • "taskTypeIds": [
    ],
  • "eventIds": [
    ],
  • "eventTypeIds": [
    ],
  • "assetIds": [
    ],
  • "assetTypeIds": [
    ],
  • "assetIdentifiers": [
    ],
  • "taskAttributes": {
    },
  • "status": [
    ]
}

Response samples

Content type
application/json
{
  • "tasks": [
    ]
}

searchTasksWithinControlRoom

Search for Tasks in a Control Room.

Authorizations:
ApiKey
path Parameters
controlRoomId
required
string <uuid> (Id)
Example: 666bf2b9-d78c-45d1-9cb9-c8828f595852

The Control Room Id

query Parameters
page
integer >= 0
Default: 0

The current page (starts at 0)

size
integer [ 10 .. 100 ]
Default: 20

The size of the returned page

Request Body schema: application/json
object (DateRange)
object (DateRange)
taskIds
Array of strings <uuid> (IdList)
taskTypeIds
Array of strings <uuid> (IdList)
eventIds
Array of strings <uuid> (IdList)
eventTypeIds
Array of strings <uuid> (IdList)
assetIds
Array of strings <uuid> (IdList)
assetTypeIds
Array of strings <uuid> (IdList)
assetIdentifiers
Array of strings
object

A map of Task Type UUIDs to a Map of attributes and filter values. Also, The API supports the "all" keyword to apply a filter to all task types. As an Example, in the case of "task.severity": { "gt": 1 } which should filter all tasks with a severity greater than 1.

status
Array of strings
Items Enum: "OPEN" "PROCESSED" "COMPLETED"

Responses

Request samples

Content type
application/json
{
  • "createdAt": {
    },
  • "dueAt": {
    },
  • "taskIds": [
    ],
  • "taskTypeIds": [
    ],
  • "eventIds": [
    ],
  • "eventTypeIds": [
    ],
  • "assetIds": [
    ],
  • "assetTypeIds": [
    ],
  • "assetIdentifiers": [
    ],
  • "taskAttributes": {
    },
  • "status": [
    ]
}

Response samples

Content type
application/json
{
  • "tasks": [
    ]
}

getTask

Retrieve a single Task.

Authorizations:
ApiKey
path Parameters
taskId
required
string <uuid> (Id)
Example: 666bf2b9-d78c-45d1-9cb9-c8828f595852

The Task Id

Responses

Response samples

Content type
application/json
{
  • "id": "666bf2b9-d78c-45d1-9cb9-c8828f595852",
  • "eventId": "666bf2b9-d78c-45d1-9cb9-c8828f595852",
  • "qualifier": "ct_au383",
  • "title": "Task Title",
  • "description": "Task Description",
  • "event": {
    },
  • "asset": {
    },
  • "attributes": {
    },
  • "status": "OPEN",
  • "dueDate": "2019-02-05T09:32:08.080Z",
  • "notes": "Task notes",
  • "createdAt": "2019-02-05T09:32:08.080Z",
  • "lastModifiedAt": "2019-02-05T09:32:08.080Z",
  • "properties": [
    ],
  • "changeLogs": [
    ]
}

updateTask

Update a single Task.

Authorizations:
ApiKey
path Parameters
taskId
required
string <uuid> (Id)
Example: 666bf2b9-d78c-45d1-9cb9-c8828f595852

The Task Id

Request Body schema: application/json
dueDate
string <date-time> (DateTime)
notes
string
object (Attributes)
status
string
Enum: "OPEN" "PROCESSED" "COMPLETED"

Responses

Request samples

Content type
application/json
{
  • "dueDate": "2019-02-05T09:32:08.080Z",
  • "notes": "Task notes",
  • "attributes": {
    },
  • "status": "OPEN"
}

Task Types

createTaskType

Creates a Task Type.

Authorizations:
ApiKey
Request Body schema: application/json
identifier
required
string

A unique identifier for this task type. No two task Types can share an identifier.

icon
string
name
string
title
string
description
string
object (Attributes)
Array of objects (TaskTypeProperty)
Array of objects (TaskTypeCustomFilter)

Responses

Request samples

Content type
application/json
{
  • "identifier": "ct_au383",
  • "icon": "taskType",
  • "name": "Customer sites",
  • "title": "Task Type Title",
  • "description": "Task Type Description",
  • "attributes": {
    },
  • "properties": [
    ],
  • "customFilters": [
    ]
}

Response samples

Content type
application/json
{
  • "id": "666bf2b9-d78c-45d1-9cb9-c8828f595852",
  • "identifier": "ct_au383",
  • "ownerId": "666bf2b9-d78c-45d1-9cb9-c8828f595852",
  • "icon": "taskType",
  • "name": "Customer sites",
  • "title": "Task Type Title",
  • "description": "Task Type Description",
  • "createdAt": "2019-02-05T09:32:08.080Z",
  • "lastModifiedAt": "2019-02-05T09:32:08.080Z",
  • "attributes": {
    },
  • "properties": [
    ],
  • "customFilters": [
    ]
}

listTaskTypes

Retrieve a list of Task Types that exist within the Organization.

Authorizations:
ApiKey

Responses

Response samples

Content type
application/json
{
  • "taskTypes": [
    ]
}

getTaskType

Retrieve a single Task Type.

Authorizations:
ApiKey
path Parameters
taskTypeId
required
string <uuid> (Id)
Example: 666bf2b9-d78c-45d1-9cb9-c8828f595852

The Task Type Id

Responses

Response samples

Content type
application/json
{
  • "id": "666bf2b9-d78c-45d1-9cb9-c8828f595852",
  • "identifier": "ct_au383",
  • "ownerId": "666bf2b9-d78c-45d1-9cb9-c8828f595852",
  • "icon": "taskType",
  • "name": "Customer sites",
  • "title": "Task Type Title",
  • "description": "Task Type Description",
  • "createdAt": "2019-02-05T09:32:08.080Z",
  • "lastModifiedAt": "2019-02-05T09:32:08.080Z",
  • "attributes": {
    },
  • "properties": [
    ],
  • "customFilters": [
    ]
}

updateTaskType

Update a single Task Type.

Authorizations:
ApiKey
path Parameters
taskTypeId
required
string <uuid> (Id)
Example: 666bf2b9-d78c-45d1-9cb9-c8828f595852

The Task Type Id

Request Body schema: application/json
name
string
title
string
description
string
object (Attributes)
Array of objects (TaskTypeProperty)
Array of objects (TaskTypeCustomFilter)

Responses

Request samples

Content type
application/json
{
  • "name": "Customer sites",
  • "title": "Task Type Title",
  • "description": "Task Type Description",
  • "attributes": {
    },
  • "properties": [
    ],
  • "customFilters": [
    ]
}

Forms

listForms

Retrieves a list of Forms within the Organization.

Authorizations:
ApiKey

Responses

Response samples

Content type
application/json
{
  • "totalCount": 0,
  • "forms": [
    ]
}

createForm

Creates a Form.

Authorizations:
ApiKey
Request Body schema: application/json
formIdentifier
required
string
name
required
string
description
string
required
Array of objects (Form Definition)
Array of Create Event Action (object) or Send Email Action (object) or Send Webhook Action (object) (FormAction)

Responses

Request samples

Content type
application/json
{
  • "formIdentifier": "incidentForm",
  • "name": "Incident Form",
  • "description": "Form to submit incidents",
  • "formDefinition": [
    ],
  • "actions": [
    ]
}

Response samples

Content type
application/json
{
  • "id": "666bf2b9-d78c-45d1-9cb9-c8828f595852",
  • "formIdentifier": "incidentForm",
  • "createdAt": "2019-02-05T09:32:08.080Z",
  • "lastModifiedAt": "2019-02-05T09:32:08.080Z",
  • "name": "Incident Form",
  • "description": "Form to submit incidents",
  • "version": 1,
  • "formDefinition": null,
  • "actions": [
    ]
}

retrieveForm (usingFormId)

Retrieves a Single form by Id.

Authorizations:
ApiKey
path Parameters
formId
required
string <uuid> (Id)
Example: 666bf2b9-d78c-45d1-9cb9-c8828f595852

The Form Id

Responses

Response samples

Content type
application/json
{
  • "id": "666bf2b9-d78c-45d1-9cb9-c8828f595852",
  • "formIdentifier": "incidentForm",
  • "createdAt": "2019-02-05T09:32:08.080Z",
  • "lastModifiedAt": "2019-02-05T09:32:08.080Z",
  • "name": "Incident Form",
  • "description": "Form to submit incidents",
  • "version": 1,
  • "formDefinition": null,
  • "actions": [
    ]
}

updateForm (usingFormId)

Updates a Form.

You are only able to update the latest version of a form. You must specify expectedVersion as part of the body. This is to ensure that only the latest version can be updated.

Authorizations:
ApiKey
path Parameters
formId
required
string <uuid> (Id)
Example: 666bf2b9-d78c-45d1-9cb9-c8828f595852

The Form Id

Request Body schema: application/json
expectedVersion
required
integer

The version of the form you are updating. This must be the most current version or else the request will fail.

name
required
string
description
required
string
Array of objects (Form Definition)
Array of Create Event Action (object) or Send Email Action (object) or Send Webhook Action (object) (FormAction)

Responses

Request samples

Content type
application/json
{
  • "expectedVersion": 1,
  • "name": "Incident Form",
  • "description": "Form to submit incidents",
  • "formDefinition": [
    ],
  • "actions": [
    ]
}

retrieveForm (usingFormIdentifier)

Retrieves a Single form by Identifier.

Authorizations:
ApiKey
path Parameters
formIdentifier
required
string (Identifier)
Example: identifier

Form Identifier

Responses

Response samples

Content type
application/json
{
  • "id": "666bf2b9-d78c-45d1-9cb9-c8828f595852",
  • "formIdentifier": "incidentForm",
  • "createdAt": "2019-02-05T09:32:08.080Z",
  • "lastModifiedAt": "2019-02-05T09:32:08.080Z",
  • "name": "Incident Form",
  • "description": "Form to submit incidents",
  • "version": 1,
  • "formDefinition": null,
  • "actions": [
    ]
}

updateForm (usingFormIdentifier)

Updates a Form.

You are only able to update the latest version of a form. You must specify expectedVersion as part of the body. This is to ensure that only the latest version can be updated.

Authorizations:
ApiKey
path Parameters
formIdentifier
required
string (Identifier)
Example: identifier

Form Identifier

Request Body schema: application/json
expectedVersion
required
integer

The version of the form you are updating. This must be the most current version or else the request will fail.

name
required
string
description
required
string
Array of objects (Form Definition)
Array of Create Event Action (object) or Send Email Action (object) or Send Webhook Action (object) (FormAction)

Responses

Request samples

Content type
application/json
{
  • "expectedVersion": 1,
  • "name": "Incident Form",
  • "description": "Form to submit incidents",
  • "formDefinition": [
    ],
  • "actions": [
    ]
}

listResponsesForForm

Retrieves a list of Responses for the Form

Authorizations:
ApiKey
path Parameters
formId
required
string <uuid> (Id)
Example: 666bf2b9-d78c-45d1-9cb9-c8828f595852

The Form Id

Responses

Response samples

Content type
application/json
{
  • "totalCount": 0,
  • "responses": [
    ]
}

createAResponseForForm

Creates a Form Response.

Authorizations:
ApiKey
path Parameters
formId
required
string <uuid> (Id)
Example: 666bf2b9-d78c-45d1-9cb9-c8828f595852

The Form Id

Request Body schema: application/json
response
object

Responses

Request samples

Content type
application/json
{
  • "response": {
    }
}

Response samples

Content type
application/json
{
  • "id": "666bf2b9-d78c-45d1-9cb9-c8828f595852",
  • "formId": "666bf2b9-d78c-45d1-9cb9-c8828f595852",
  • "formIdentifier": "incidentForm",
  • "version": 1,
  • "createdAt": "2019-02-05T09:32:08.080Z",
  • "response": {
    }
}

listResponsesForFormByIdentifier

Retrieves a list of Responses for the Form

Authorizations:
ApiKey
path Parameters
formIdentifier
required
string (Identifier)
Example: identifier

Form Identifier

Responses

Response samples

Content type
application/json
{
  • "totalCount": 0,
  • "responses": [
    ]
}

createFormResponseByIdentifier

Creates a Form Response.

Authorizations:
ApiKey
path Parameters
formIdentifier
required
string (Identifier)
Example: identifier

Form Identifier

Request Body schema: application/json
response
object

Responses

Request samples

Content type
application/json
{
  • "response": {
    }
}

Response samples

Content type
application/json
{
  • "id": "666bf2b9-d78c-45d1-9cb9-c8828f595852",
  • "formId": "666bf2b9-d78c-45d1-9cb9-c8828f595852",
  • "formIdentifier": "incidentForm",
  • "version": 1,
  • "createdAt": "2019-02-05T09:32:08.080Z",
  • "response": {
    }
}

retrieveAnIndividualFormResponse

Retrieve an individual Form Response

Authorizations:
ApiKey
path Parameters
formId
required
string <uuid> (Id)
Example: 666bf2b9-d78c-45d1-9cb9-c8828f595852

The Form Id

formResponseId
required
string <uuid> (Id)
Example: 666bf2b9-d78c-45d1-9cb9-c8828f595852

The Form Response Id

Responses

Response samples

Content type
application/json
{
  • "id": "666bf2b9-d78c-45d1-9cb9-c8828f595852",
  • "formId": "666bf2b9-d78c-45d1-9cb9-c8828f595852",
  • "formIdentifier": "incidentForm",
  • "version": 1,
  • "createdAt": "2019-02-05T09:32:08.080Z",
  • "response": {
    }
}

retrieveFormResponseByIdentifier

Retrieve an individual Form Response

Authorizations:
ApiKey
path Parameters
formIdentifier
required
string (Identifier)
Example: identifier

Form Identifier

formResponseId
required
string <uuid> (Id)
Example: 666bf2b9-d78c-45d1-9cb9-c8828f595852

The Form Response Id

Responses

Response samples

Content type
application/json
{
  • "id": "666bf2b9-d78c-45d1-9cb9-c8828f595852",
  • "formId": "666bf2b9-d78c-45d1-9cb9-c8828f595852",
  • "formIdentifier": "incidentForm",
  • "version": 1,
  • "createdAt": "2019-02-05T09:32:08.080Z",
  • "response": {
    }
}

Cycle Types

createCycleType

Creates a Cycle Type. Cycle Type identifier cannot start with _, as these are reserved cycle type ids.

Authorizations:
ApiKey
Request Body schema: application/json
name
string
identifier
string

A unique identifier for this Cycle Type. No two Cycle Types can share an identifier. Cycle Type Identifiers starting with _ are reserved.

description
string

Responses

Request samples

Content type
application/json
{
  • "name": "Jobs",
  • "identifier": "jobs",
  • "description": "Jobs"
}

Response samples

Content type
application/json
{
  • "id": "666bf2b9-d78c-45d1-9cb9-c8828f595852",
  • "ownerId": "666bf2b9-d78c-45d1-9cb9-c8828f595852",
  • "createdAt": "2019-02-05T09:32:08.080Z",
  • "name": "Jobs",
  • "description": "Job cycles",
  • "identifier": "jobs"
}

listCycleTypes

Retrieve a list of Cycle Types that exist within the Organization.

Authorizations:
ApiKey

Responses

Response samples

Content type
application/json
{
  • "placeTypes": [
    ]
}

getCycleType

Retrieve a single Cycle Type.

Authorizations:
ApiKey
path Parameters
cycleTypeId
required
string <uuid> (Id)
Example: 666bf2b9-d78c-45d1-9cb9-c8828f595852

The Cycle Type Id

Responses

Response samples

Content type
application/json
{
  • "id": "666bf2b9-d78c-45d1-9cb9-c8828f595852",
  • "ownerId": "666bf2b9-d78c-45d1-9cb9-c8828f595852",
  • "createdAt": "2019-02-05T09:32:08.080Z",
  • "name": "Jobs",
  • "description": "Job cycles",
  • "identifier": "jobs"
}

updateCycleType

Update a Cycle Type.

Authorizations:
ApiKey
path Parameters
cycleTypeId
required
string <uuid> (Id)
Example: 666bf2b9-d78c-45d1-9cb9-c8828f595852

The Cycle Type Id

Request Body schema: application/json
name
string
description
string

Responses

Request samples

Content type
application/json
{
  • "name": "Jobs",
  • "description": "Jobs"
}

Cycles

createCycle

Create a Cycle.

Cycles have a start and end time. If the startTime is not specified, it will default to the createdAt time.

If the endTime is not set, the cycle is assumed to be currently active.

startLocation and endLocation are option. The request will fail if endLocation is set without endTime.

Authorizations:
ApiKey
path Parameters
cycleTypeId
required
string <uuid> (Id)
Example: 666bf2b9-d78c-45d1-9cb9-c8828f595852

The Cycle Type Id

Request Body schema: application/json
assetId
required
string <uuid> (Id)
name
string

Cycle name

description
string
startTime
string <date-time> (DateTime)
endTime
string <date-time> (DateTime)
Point (object) or LineString (object) or Polygon (object) or MultiPolygon (object) or MultiPoint (object) or MultiLineString (object) (ValidLocation)
Point (object) or LineString (object) or Polygon (object) or MultiPolygon (object) or MultiPoint (object) or MultiLineString (object) (ValidLocation)
object (Attributes)

Responses

Request samples

Content type
application/json
{
  • "assetId": "666bf2b9-d78c-45d1-9cb9-c8828f595852",
  • "name": "Job - Sky Ledge Headquarters",
  • "description": "Building the Sky Ledge Headquarters",
  • "startTime": "2019-02-05T09:32:08.080Z",
  • "endTime": "2019-02-05T09:32:08.080Z",
  • "startLocation": {
    },
  • "endLocation": {
    },
  • "attributes": {
    }
}

createCycleByIdentifier

Create a Cycle by identifier.

Cycles have a start and end time. If the startTime is not specified, it will default to the createdAt time.

If the endTime is not set, the cycle is assumed to be currently active.

startLocation and endLocation are option. The request will fail if endLocation is set without endTime.

Authorizations:
ApiKey
path Parameters
cycleTypeIdentifier
required
string (Identifier)
Example: identifier

The Cycle Type Identifier

Request Body schema: application/json
assetId
required
string <uuid> (Id)
name
string

Cycle name

description
string
startTime
string <date-time> (DateTime)
endTime
string <date-time> (DateTime)
Point (object) or LineString (object) or Polygon (object) or MultiPolygon (object) or MultiPoint (object) or MultiLineString (object) (ValidLocation)
Point (object) or LineString (object) or Polygon (object) or MultiPolygon (object) or MultiPoint (object) or MultiLineString (object) (ValidLocation)
object (Attributes)

Responses

Request samples

Content type
application/json
{
  • "assetId": "666bf2b9-d78c-45d1-9cb9-c8828f595852",
  • "name": "Job - Sky Ledge Headquarters",
  • "description": "Building the Sky Ledge Headquarters",
  • "startTime": "2019-02-05T09:32:08.080Z",
  • "endTime": "2019-02-05T09:32:08.080Z",
  • "startLocation": {
    },
  • "endLocation": {
    },
  • "attributes": {
    }
}

listCyclesInOrganization

Retrieve a list of Cycles that exist in this Organization.

Authorizations:
ApiKey
query Parameters
page
integer >= 0
Default: 0

The current page (starts at 0)

size
integer [ 10 .. 100 ]
Default: 20

The size of the returned page

include
string
Example: include=attributes

If include=attributes is specified, the cycle attributes are returned as part of the request.

Responses

Response samples

Content type
application/json
{
  • "totalCount": 0,
  • "cycles": [
    ]
}

retrieveCycle

Retrieves a Single Cycle.

Authorizations:
ApiKey
path Parameters
cycleId
required
string (Identifier)
Example: identifier

The Cycle Id

Responses

Response samples

Content type
application/json
{
  • "id": "666bf2b9-d78c-45d1-9cb9-c8828f595852",
  • "cycleTypeId": "666bf2b9-d78c-45d1-9cb9-c8828f595852",
  • "createdAt": "2019-02-05T09:32:08.080Z",
  • "lastModifiedAt": "2019-02-05T09:32:08.080Z",
  • "startTime": "2019-02-05T09:32:08.080Z",
  • "endTime": "2019-02-05T09:32:08.080Z",
  • "name": "Job - Sky Ledge Headquarters",
  • "description": "Building the Sky Ledge Headquarters",
  • "startLocation": {
    },
  • "endLocation": {
    },
  • "isActive": true
}

updateCycle

Update a Cycle.

This is a PATCH request. As such, you only need to specify properties that have changed. They will be merged into the existing Cycle.

Authorizations:
ApiKey
path Parameters
cycleId
required
string (Identifier)
Example: identifier

The Cycle Id

Request Body schema: application/json
name
string

Cycle name

description
string
endTime
string <date-time> (DateTime)
Point (object) or LineString (object) or Polygon (object) or MultiPolygon (object) or MultiPoint (object) or MultiLineString (object) (ValidLocation)
Point (object) or LineString (object) or Polygon (object) or MultiPolygon (object) or MultiPoint (object) or MultiLineString (object) (ValidLocation)
object (Attributes)

Responses

Request samples

Content type
application/json
{
  • "name": "Job - Sky Ledge Headquarters",
  • "description": "Building the Sky Ledge Headquarters",
  • "endTime": "2019-02-05T09:32:08.080Z",
  • "startLocation": {
    },
  • "endLocation": {
    },
  • "attributes": {
    }
}

searchCyclesInOrganization

Search for Cycles.

Authorizations:
ApiKey
query Parameters
page
integer >= 0
Default: 0

The current page (starts at 0)

size
integer [ 10 .. 100 ]
Default: 20

The size of the returned page

Request Body schema: application/json
active
boolean

If true, returns only active cycles. If false, returns only inactive cycles. Returns all cycles if not set

assetIds
Array of strings <uuid> (IdList)
placeIds
Array of strings <uuid> (IdList)
cycleTypeIds
Array of strings <uuid> (IdList)
cycleIdentifiers
Array of strings
startDate
string <date-time> (DateTime)
endDate
string <date-time> (DateTime)

Responses

Request samples

Content type
application/json
{
  • "active": true,
  • "assetIds": [
    ],
  • "placeIds": [
    ],
  • "cycleTypeIds": [
    ],
  • "cycleIdentifiers": [
    ],
  • "startDate": "2019-02-05T09:32:08.080Z",
  • "endDate": "2019-02-05T09:32:08.080Z"
}

Response samples

Content type
application/json
{
  • "totalCount": 0,
  • "cycles": [
    ]
}

summariseCyclesInOrganization

Summarise Cycles.

Authorizations:
ApiKey
query Parameters
page
integer >= 0
Default: 0

The current page (starts at 0)

size
integer [ 10 .. 100 ]
Default: 20

The size of the returned page

Request Body schema: application/json
entityType
string
Enum: "PLACE" "ASSET"

The entity type to summarise by

object (CycleSearchRequest)

Responses

Request samples

Content type
application/json
{
  • "entityType": "PLACE",
  • "filter": {
    }
}

Response samples

Content type
application/json
{
  • "places": [
    ]
}