Skip to content

IoT Platform

Connect, manage, and monitor IoT devices over MQTT. Register devices, collect telemetry, define alarm rules, organize fleets into groups, and receive notifications when thresholds are breached.

Best for: sensor networks, building automation, industrial monitoring, fleet tracking, and any project that needs to collect data from connected devices and act on it.

Activate IoT Platform | IoT API reference


What this is

WAYSCloud IoT Platform is a managed device management and telemetry service. Devices connect via MQTT to mqtt.wayscloud.services on port 1883 (TCP) or 8883 (TLS). You register devices through the API or dashboard, and the platform stores telemetry, evaluates alarm rules against incoming data, and sends notifications through configured channels (webhook, email, Slack, SMS).

The platform organizes devices into groups, applies configuration profiles to device types, and provides a fleet-level overview with online/offline status, health scores, and alarm summaries. There are 59 API endpoints covering devices, groups, profiles, datapoints, rules, alarms, channels, and notification policies.


When to use it

Use this when:

  • You have devices that send telemetry over MQTT (temperature, humidity, GPS, energy, custom)
  • You need alarm rules that trigger when values exceed thresholds or devices go offline
  • You want fleet management with groups, profiles, and batch operations
  • You need notification routing: different alarms to different channels

Consider something else when:

  • You need cellular connectivity for devices without WiFi — add GlobalSIM
  • You need to store large files from devices (images, firmware) — use Object Storage
  • You need a general-purpose database — use Databases

What you get

  • MQTT broker at mqtt.wayscloud.services — ports 1883 (TCP), 8883 (TLS), 8083 (WebSocket)
  • Device registry: name, type, metadata, tags, status, health score
  • Telemetry storage with named datapoints and historical queries
  • Alarm rules: threshold, offline detection, missing data
  • Notification channels: webhook, email, Slack, SMS
  • Groups and profiles for fleet organization and configuration templates
  • 59 API endpoints for full programmatic control
  • Dashboard with device list, fleet overview, alarm timeline, and telemetry charts

Pricing

All prices exclude VAT.

Plans

PlanEUR/monthNOK/monthSEK/monthDKK/month
IoT Starter9999969
IoT Business49499499349
IoT Enterprise399399939992799
IoT Scale99999999699
IoT Growth19199199149
IoT Fleet199199919991399
IoT FreeFreeFreeFreeFree

Usage

ItemEURNOKSEKDKK
IoT Notification SMS0.10110.75
IoT Notification Voice0.50553.50
IoT Overage0.30332

Free plan includes 5 devices.

View all plans in dashboard


How it works

  1. Activate the IoT Platform in the dashboard and choose a plan.
  2. Register a device via the API or dashboard. Provide a name, device type, and optional metadata.
  3. Get MQTT credentials from the API. Each customer gets a unique MQTT username and password.
  4. Connect the device to mqtt.wayscloud.services:1883 (or :8883 for TLS) using the credentials.
  5. Publish telemetry to the device's MQTT topic. The platform ingests, parses, and stores the data.
  6. Set alarm rules that evaluate incoming data against thresholds. When a rule triggers, an alarm is created and notifications are sent through your configured channels.

What you see in the dashboard

  • Fleet overview: total devices, online count, messages per second, active alarm count
  • Device list: name, status (online/offline), last seen, device type, health score, signal strength
  • Device detail: metadata, tags, telemetry charts (time series), connection history
  • Alarms panel: active alarms with severity, affected device, message, and timeline
  • Groups: organize devices by location, function, or project
  • Profiles: configuration templates applied to device types
  • Notification channels: list of configured webhook, email, Slack, and SMS endpoints
  • Rules: alarm rules with conditions, severity, and linked actions

Fastest way to get started

Dashboard

  1. Open my.wayscloud.services and go to IoT then IoT Platform
  2. Click Activate and choose the Free plan (5 devices)
  3. Click Add Device, enter a name and device type (e.g., "ESP32")
  4. Copy the MQTT credentials and connect your device

API

bash
# Register a device
curl -X POST https://api.wayscloud.services/v1/iot/devices \
  -H "X-API-Key: wayscloud_iot_abc12_YOUR_SECRET" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Warehouse Temp Sensor",
    "device_type": "ESP32",
    "metadata": {"firmware": "2.3.1", "location": "oslo-warehouse-a"}
  }'

# Get MQTT connection details
curl https://api.wayscloud.services/v1/iot/credentials \
  -H "X-API-Key: wayscloud_iot_abc12_YOUR_SECRET"

Example request and response

Request: Register a device

bash
curl -X POST https://api.wayscloud.services/v1/iot/devices \
  -H "X-API-Key: wayscloud_iot_abc12_YOUR_SECRET" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Cold Room Monitor B",
    "device_type": "RuuviTag",
    "metadata": {"firmware": "3.30.4", "location": "trondheim-cold-room-2"}
  }'

Response:

json
{
  "device_id": "dev-7f2a3b4c",
  "name": "Cold Room Monitor B",
  "device_type": "RuuviTag",
  "is_active": true,
  "is_online": false,
  "metadata": {"firmware": "3.30.4", "location": "trondheim-cold-room-2"},
  "created_at": "2026-03-30T10:00:00Z"
}

Get MQTT credentials:

bash
curl https://api.wayscloud.services/v1/iot/credentials \
  -H "X-API-Key: wayscloud_iot_abc12_YOUR_SECRET"

Response:

json
{
  "mqtt_broker": {
    "host": "mqtt.wayscloud.services",
    "port": 1883,
    "tls_port": 8883,
    "websocket_port": 8083,
    "protocol": "mqtt"
  }
}

Create an alarm rule:

bash
curl -X POST https://api.wayscloud.services/v1/iot/rules \
  -H "X-API-Key: wayscloud_iot_abc12_YOUR_SECRET" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Cold room temperature critical",
    "rule_type": "threshold",
    "config": {"datapoint_id": "dp-temp-b", "operator": "gt", "value": -2},
    "severity": "critical",
    "actions": ["create_alarm", "notify"]
  }'

Common use cases

  • Cold chain monitoring — track temperature in storage and transit, alert on threshold breaches
  • Building automation — collect HVAC, lighting, and energy data from building sensors
  • Industrial equipment — monitor machine vibration, pressure, and operating hours
  • Fleet tracking — GPS-enabled devices reporting location and vehicle diagnostics
  • Agriculture — soil moisture, weather station data, and irrigation control
  • Energy metering — real-time power consumption with alarm rules for anomalies

  • GlobalSIM — cellular connectivity for devices without WiFi
  • Object Storage — store large files from devices (images, firmware updates)
  • LLM API — analyze telemetry patterns with language models
  • SMS — send alert notifications to on-call staff

Open in dashboard