All APIs used to interact with Moab communicate over HTTPS with JSON data payloads to maintain simplicity and ensure it will work with any endpoint, regardless of hardware, operating system or programming language. Transport Layer Security (TLS) is used to encrypt communications and unique identifiers plus security tokens authenticate each endpoint and authorize the appropriate use of system capabilities. Moab follows the OpenAPI (Swagger) specification to ensure all APIs are uniformly described and discoverable.

Moab APIs utilize the following RESTful principles to manipulate data in the system:

HTTP VerbOutcome
POSTCreates a new data element
GETReads one or many data elements
DELETEDeletes an existing data element

Each Moab API call must include the following HTTP Headers:

HTTP HeaderValue
Content-Typeapplication/json
Moab operates by sending JSON documents
between Endpoints and Edge + Core nodes.
AuthorizationBearer <identity>.<security token>
The word “Bearer” and a space, then the Endpoint’s numeric Id, a “.” and then the numeric Security Token.


Provisioning

Step 1: Install and configure

Provisioning the Moab platform involves the configuration of application and database software on either bare metal or virtualized server hardware running on-premise or in the cloud. Click the Provisioning link to learn how to install and configure Moab.

Organizations

Step 2: Organizational tenants come first

Organizations represent an isolated tenant containing groups, users, and things to facilitate operations within a particular organization. Provisioning a new tenant on the Moab platform begins with the creation of a new Organization. Click the Organizations link to learn about the required API calls needed to get up and running.

User Groups

Step 3: Groups organize users

User Groups help to organize users within a particular organization. Once an Organization and associated Global group has been created, you can create one or more User Groups as needed. Click the User Groups link to learn about the required API calls.

Users

Step 4: Add users to groups to manage system

Users are people within a particular organization who administer, manage and view Moab. Click the User link to learn about the required API calls.

User Login

Step 5: Users log into the system

To login to Moab, Users enter their email address and password and get back the unique identity and security token that allows them to make subsequent API calls. Click the User Login link to learn about the required API calls.

Roles

Step 6: Roles define user rights

Roles define the level of rights a user has to manage Moab within the scope of the organization they belong to. Click the Roles link to learn about the required API calls.

Thing Groups

Step 7: Groups organize things

Thing Groups help to organize things within a particular organization. Click the Thing Groups link to learn about the required API calls.

Thing Models

Step 8: Models define thing capabilities

Thing Models represent a blueprint for a class of things within a particular organization. Rather than repeatedly configuring properties, methods and events for individual things that are of the same type, this configuration can be done just once for a single thing model and reused over and over. Click the Thing Models link to learn about the required API calls.

Dynamic Properties

Step 9: Dynamic Properties are things to measure

Blah

Calculated Properties

Virtual properties based on dynamic properties

blah

Fixed Properties

Information that doesn’t change

blah

Things

Step 9: Add things to groups

Things represent people and machines that send performance, health, and state data about themselves within a particular organization. Click the Things link to learn about the required API calls.

Telemetry

Step 10: Send data to Moab for analysis + action

Things within a particular organization send their data to the Telemetry API in a JSON format that matches the predefined Thing Model structure. Click the Telemetry link to learn about the required API calls.