This guide outlines the process for building software integration solutions between third party dispatch systems and the Atlas Labs MobileCAD API.
This API is implemented using the RESTful type of web services architechural style, including the following conventions:
api/Job/100
. The list of all Jobs may be returned using
the path api/Job
.The previous are just a few highlights of RESTful APIs. Developers should familiarize themselves with REST web service concepts before proceeding, if not already proficient.
Access to this API requires valid credentials. To manage these credentials, log into the administrator portal or contact Atlas Labs Support for additional assistance.
This API references nomenclature that may vary between CAD vendors or industries. To prevent ambiguity, integrators should be aware of how Atlas Labs interprets these definitions.
User authentication is provided using bearer tokens. The process for logging in is as follows:
/Token
using HTTP POST. The following fields may be submitted, using x-www-form-urlencoded
for encoding:
Authorization
header of subsequent requests and should be prepended with the token type.Authorization
header value.Authorization
header for API requests requiring authentication.See the Authentication example for additional information.
Following successful authentication, integrators should initialize their systems by synchronizing the following API objects with customer dispatch platforms.
Initialization is typically accomplished by retrieving a list of objects previously defined in the API and comparing against the dispatch system. Any discrepancies should be corrected by submitting updates, deletions, and additions back to the API so as to bring it to the same state as the dispatch system.
Alternatively, Priorities and Service Levels may be added automatically by the API as Jobs are imported, if a Service Level or Priority does not yet exist. Vehicles however are NOT automatically added, and must be created by the integrator, or the user via the Management Portal.
See the Initialization example for additional information.
Once the API priorities, service levels, and vehicles are in sync with the customer CAD system, the API will be ready to receive and process job and destination information.
Jobs may be created by POSTING a job object to the appropriate URL. If a valid vehicle identifier is specified in the job object, the job will automatically be assigned to the specified vehicle at time of creation.
If a vehicle identifier is not included when a job is initially created, then a vehicle may be assigned using the Assign endpoint of the Job controller. Conversely, a job may be unassigned using the Unassign action of the Job controller.
Timestamps may be added to API jobs from customer CAD systems or the Mobile CAD client. When timestamps originate from the Mobile CAD client, they will be added to a queue such that integrators/CAD systems may retrieve them via polling. Alternatively, integrators may receive timestamps in realtime using a WebSocket connection to the API.
See the WebSockets page for additional information on implementation of the WebSockets API interfaces.