Overview

A run-through of some concepts and structures that you may encounter throughout our environment when using our services and devices.

We have attempted to create a flexible yet simple hierarchy for organizing your projects, devices, and services. The following image shows an overview of how the different components interact with each other, whereas a brief introductory overview is provided below.

Organizations

When using our environment, the Organization represents the operation of your company. It encapsulates the different projects where devices and other service applications reside, acting as an umbrella for control. Depending on the Organizational Structure, this can be useful when Managing Access Rights.

Inventory Project

New devices are automatically placed in an organization's inventory project, marked by a badge in DT Studio or the boolean inventory flag when listed using our REST API. It is automatically created as a part of new organizations but can otherwise be used as a normal project.

Members

Currently, the only role available in an organization is that of Project Administrator. This can be provided to a user or Service Account by granting them a membership, resulting in full read-write access to the organization itself and every project and contents thereof.

Projects

When managing installations internally or through your own partners, projects allow you to organize devices, services, and access rights for each use-case.

Member

Unlike organizations, users or Service Accounts granted memberships to projects only have access to the ones specified. This allows for more fine-grained control, and additional roles ranging from simple read-only access to full admin rights are also available.

Service Accounts

All programmatic interaction with the Disruptive Technologies API is done via a logged-in Service Account. Once a client has been authenticated, the program interacting with the API will be able to perform operations that are within the role access level granted to the Service Account

When initially created, a Service Account does not have elevated rights in the owning project. It is when provided with a role that the Service Account is granted membership and accompanying rights. Different memberships can be provided with different roles in other projects and organizations.

Keys

These are the credentials used by an application or user to authenticate the APIs. Any number of keys can be created for a Service Account. A single key contains a unique Key ID and secret and may be used by one or several people or machine-to-machine applications at the same time.

Data Connectors

With their many quality-of-life features, Data Connectors can be used for reliable integrations with 3rd party service, like continuous storage of data in an external database or sending requests to HTTP endpoints. A Data Connector will forward events of devices in real-time, but only within a single project.

Devices

A term that includes both sensors and cloud connectors. The following three names are commonly used throughout our resources when specifying different uses.

  • Sensor: All types of Wireless sensors in our offering.

  • Cloud Connector: Includes both ethernet and 4g Cloud Connectors.

  • Device: Refers to both sensors and cloud connectors.

Events

While they come in several different types, an Event's structure remains the same for all devices and can be encountered in the following four places.

  1. The last known state of a device returned by the Device Endpoint.

  2. When Streaming Events of devices in real-time.

  3. When forwarded by a Data Connector to an external server.

  4. When fetching historical event data using the Event History Endpoint.

The outer layer contains a metadata structure similar in all event types, whereas the data field holds type-specific data related to the source device type.

{
"eventMetaData": "...",
"data" {
"typeSpecificData": "..."
}
}

Labels

Useful for organizing your devices both in- and outside projects, attaching labels of text makes it easy to differentiate between installations quickly. They can be added, modified, and removed using either DT Studio or our various REST API Endpoints.