Zendu Connect API Integration Guide

Written By Philip Stanoev

Overview

The Zendu Connect public REST API and SDK provide robust tools for automating tasks and working with GoZen data. GoZen utilizes APIs extensively within systems to automate processes and facilitate communication between components. Multiple APIs enable developers to interact with raw data accessible in ZenduOne application, including devices, video feeds, exceptions, and dispatch data.

Purpose

This integration guide walks through utilizing data available via APIs and SDK to create user interfaces or integrate GoZen data with existing tools.

Getting Started

Setting up Testing Environment

Zendu Connect APIs documentation available at: https://one-api-docs.zenduit.com/#intro

Test all APIs in Postman by clicking "Run in Postman" button at top right of documentation page.

API Authentication & Access

Required Credentials

Authentication requires Auth endpoint (first endpoint in API documentation) with following request body parameters:

  • Database: Database identifier

  • Username: User credentials

  • Password: User credentials

Contact servicedesk@zenduit.com to obtain authentication parameters. Auth endpoint provides session ID in response for use with all other API endpoints. Session ID requires regeneration every 14 days.

Available Endpoints

Core Modules

  • Jobs: CRUD operations on Jobs module and work order submission

  • Device: Retrieve device information including latest status

  • Forms: Manage forms including retrieval and deletion

  • Products: CRUD operations on Products module

  • Zone: CRUD operations on Locations

  • Users: CRUD operations on Users module and password reset functionality

  • Groups: CRUD operations on Groups module

Data & Monitoring

  • Exception: Retrieve device exceptions

  • Logs: Retrieve GPS log records for devices

  • Trips: Retrieve device trips within specified date ranges

  • Rules: Retrieve all system-configured rules

Media & Storage

  • Media: Camera-related endpoints for live streams, historical streams, camera wake-up, snapshot requests, and video requests

  • Custom Data: CRUD operations on custom data for key/value pair storage

  • File: Store files in cloud storage and retrieve via provided URLs

Device Information

  • Tracker Types: Retrieve all tracker types available in ZenduIoT

Sample Use Cases

Fetching Vehicle Information

Authenticated device details retrieval:

curl --location 'https://one-service.zenduit.com/api/' \
--header 'Content-Type: application/x-www-form-urlencoded' \ 
--data-urlencode 'JSON-RPC={  
"method": "Get",  
"params": {  
"typeName": "Device",  
"search": { 
"deviceSearch": { "id": "deviceId" }  
},  
"credentials": {  
"sessionId": ""  
}  
},  
"type": "trax"  
}'

Live Stream Video Access

Device live stream access:

curl --location 'https://one-service.zenduit.com/api/' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode 'JSON-RPC={
"method": "Get",
"params": {
"typeName": "LiveMedia",
"search": {  
"device": { "id": "deviceId" }
},
"credentials": {
"sessionId": "sessionId"  
}  
},  "type": "trax"  
}'

Development Resources

SDK

ZenduConnect provides SDK for application development with functions for direct use in JavaScript applications.

SDK Documentation: https://www.npmjs.com/package/zen-open-api?activeTab=readme

Installation:

npm i zen-open-api

Developer Support

Getting Started

Contact servicedesk@zenduit.com to obtain credentials and begin building with ZenduConnect API.

API Documentation: https://one-api-docs.zenduit.com/

Additional Support

For integration questions, contact integrations@zenduit.com for technical assistance and development guidance.

Slide below has been added for reference