Data Output

Measurement data produced by Haltian ENTRYWAY — MQTT streams and GraphQL queries

Overview

Haltian ENTRYWAY produces measurement data that you can access through the Haltian IoT Platform — receive JSON measurements via MQTT Stream API or query via GraphQL Service API.

This page documents the measurement types, payload formats, and how to access the data.


Haltian IoT Measurements

The ENTRYWAY sensor produces the following measurement types:

Measurement TypeDescription
entriesPeople who entered since last report
exitsPeople who exited since last report
batteryPercentageRemaining battery level

Entries & Exits

The primary measurement data. Reports directional people counts accumulated since the last report interval.

MQTT Topic:

haltian-iot/events/{integration-id}/{api-key-id}/measurements/peopleCounting/{device-uuid}

JSON Payload:

{
  "measured_at": "2026-01-28T08:52:11Z",
  "entries": 3,
  "exits": 1
}

Fields:

FieldTypeDescription
measured_atISO 8601 stringTimestamp of measurement
entriesInteger (0+)People who entered since last report
exitsInteger (0+)People who exited since last report

Reporting behavior:

  • Reports immediately on first movement detection
  • Reports every measurement interval (default 30s) during continued activity
  • Reports every idle reporting interval (default 1 hour) when no movement — values will be 0

GraphQL query example:

query {
  measurementLastPeopleCounting(
    where: {deviceId: {_eq: "6e5f8ac6-a099-44e5-bb28-25fd3d1f47a6"}}
  ) {
    deviceId
    measuredAt
    entries
    exits
  }
}

Related: Configuration — Measurement Interval | Operation — Data Transmission


batteryPercentage

Reports remaining battery level. Updated every 6 hours.

MQTT Topic:

haltian-iot/events/{integration-id}/{api-key-id}/measurements/batteryPercentage/{device-uuid}

JSON Payload:

{
  "measured_at": "2026-01-28T12:00:00Z",
  "batteryPercentage": 92
}

Fields:

FieldTypeDescription
measured_atISO 8601 stringTimestamp of measurement
batteryPercentageInteger (0–100)Remaining battery percentage

Reporting behavior:

  • Reported every 6 hours
  • Battery life is up to 4 years with 2x AA batteries

GraphQL query example:

query {
  measurementLastBatteryPercentage(
    where: {deviceId: {_eq: "6e5f8ac6-a099-44e5-bb28-25fd3d1f47a6"}}
  ) {
    deviceId
    measuredAt
    batteryPercentage
  }
}

Accessing Data

MQTT Stream API

Subscribe to real-time measurement events. See Stream API documentation for connection setup.

Service API (GraphQL)

Query historical and latest measurements. See Service API documentation for endpoint and authentication details.