Developer Hub

Build on IoTX Platform

Open APIs, SDKs, and documentation to integrate smart city data into your applications. Everything you need to connect, query, and act on real-time urban intelligence.

Quickstart

Up and running in minutes

01

Get your API key

Log in to the IoTX Developer Portal and generate an API key for your project. Keys are scoped per module and environment (sandbox / production).

bash
# Request an API key from the Developer Portal
curl -X POST https://api.iotxplatform.com/v1/auth/keys \
  -H 'Content-Type: application/json' \
  -d '{"project": "my-city-app", "scopes": ["traffic:read", "parking:read"]}'
02

Make your first request

Query live sensor data from any active module. All responses are JSON. Pagination, filtering, and time-range parameters are supported on every endpoint.

bash
# Fetch real-time traffic density for a zone
curl https://api.iotxplatform.com/v1/traffic/zones \
  -H 'Authorization: Bearer YOUR_API_KEY' \
  -H 'Accept: application/json'

# Response
{
  "zones": [
    { "id": "zone-01", "name": "Central", "density": 0.72, "updated_at": "2026-10-01T13:00:00Z" },
    { "id": "zone-02", "name": "North Ring", "density": 0.41, "updated_at": "2026-10-01T13:00:00Z" }
  ],
  "meta": { "total": 2, "page": 1 }
}
03

Subscribe to real-time events

Use WebSocket streams or webhooks to receive push notifications when sensor thresholds are crossed, incidents are detected, or module states change.

javascript
// WebSocket stream — live parking occupancy
const ws = new WebSocket(
  'wss://stream.iotxplatform.com/v1/parking/occupancy',
  ['Bearer', 'YOUR_API_KEY']
);

ws.onmessage = (event) => {
  const data = JSON.parse(event.data);
  console.log('Occupancy update:', data);
  // { zone: 'P3-East', occupied: 142, capacity: 200, pct: 71 }
};

API reference

REST APIs for every city module

Every IoTX module exposes a versioned REST API. All endpoints share the same authentication, pagination, and error-response conventions.

Smart Traffic

Real-time and historical traffic density, incident detection, signal phase data, and zone-level congestion scores.

/v1/traffic
  • GET/zonesList all traffic zones with current density
  • GET/zones/{id}/historyHistorical density for a zone (time-range)
  • GET/incidentsActive traffic incidents and alerts
  • GET/signals/{id}Signal phase and timing for an intersection

SDKs & libraries

Official client libraries

Typed, well-documented SDKs for the most common languages. All SDKs wrap the REST API and handle authentication, retries, and pagination automatically.

JS

JavaScript / TypeScript

v2.4.1

Full TypeScript types, tree-shakeable, works in Node.js and the browser. Includes WebSocket stream helpers.

npm install @iotx/sdk
Py

Python

v2.3.0

Sync and async (asyncio) clients. Pydantic models for all response types. Compatible with Python 3.9+.

pip install iotx-sdk
JVM

Java / Kotlin

v1.8.2

Maven and Gradle support. Reactive (RxJava) and blocking clients. Android-compatible.

implementation 'com.iotx:sdk:1.8.2'
C#

C# / .NET

v1.6.0

Async/await throughout. NuGet package. Targets .NET 6, 7, and 8.

dotnet add package IoTX.SDK

Resources

Everything you need to build

Full API Reference

Complete endpoint documentation with request/response schemas, error codes, and live try-it console.

Sample Applications

Open-source reference apps: a city dashboard in React, a mobile parking finder in Flutter, and a Python data pipeline.

Sandbox Environment

A fully simulated city environment with synthetic sensor data. Test your integration without touching production data.

Security & Compliance

API security model, OAuth 2.0 flows, GDPR data residency options, and EU NIS2 compliance documentation.

Webhooks Guide

Configure event-driven webhooks for any module. Includes payload schemas, retry logic, and signature verification.

Changelog

API versioning policy, breaking-change notices, and the full history of additions and deprecations.

Ready to start building?

Request sandbox access and get your API keys in minutes. Our developer relations team is available to help with integration questions.