Skip to main content

Payload Format

This document outlines the specifications for our payloads. It includes a general section applicable to all devices and specific sections for each application.

Global

Keepalive

Keepalive messages are sent every 10 minutes to check connection integrity.

GET https://{webhook_url}?source=VIZIOSENSE&id={device_id} HTTP/1.1
User-Agent: axios/1.3.5
Content-Type: application/json
Accept: application/json, text/plain, */*

Query string parameters sent:

  • source: Source of the message (always set to VIZIOSENSE).
  • id: The ID of your device.

Applications

Every application payload follows a common pattern:

POST https://{webhook_url} HTTP/1.1
User-Agent: axios/1.3.5
Content-Type: application/json
Accept: application/json, text/plain, */*

{
"stream_id": "<your_device_id>",
"type": "<application_type>",
"timestamp": "<event_timestamp>",
"payload": "<application_specific_payload>"
}

Message attributes:

  • stream_id: The ID of your device.
  • timestamp: The timestamp in UNIX time format (UTC) of the message.
  • type: The application type code, defining the payload format for each application:
  • payload: The application-specific payload (as specified below).

Viziopark

Viziopark payloads are sent every time a monitored place has a state change. There is a rate limit of 1 payload every 30 seconds to avoid flooding:

[
{
"name": "P-0",
"is_active": true,
"deactivated": false,
"cls": "car",
"id": "c2b69525-974e-4d26-a80c-70817a628e08",
"event_ts": 1705682525
},
{
"name": "P-1",
"is_active": true,
"deactivated": false,
"cls": "truck",
"id": "20acf01e-9ed0-4211-8ccd-67c931bb41a5",
"event_ts": 1705682280
},
{
"name": "P-2",
"is_active": false,
"deactivated": false,
"cls": null,
"id": "be4efad5-cf22-40a2-bf75-7dcf16ef801f",
"event_ts": 1705682577
}
]

Payload attributes:

  • id: The ID of the parking spot.
  • event_ts: The timestamp in UNIX time format (UTC) of the event.
  • name: The name of the parking spot as defined in the integrator platform.
  • is_active: The current state of the monitored spot (true if occupied).
  • deactivated: The current deactivation state of the monitored spot (true if deactivated).
  • cls: The class of the parked vehicle (e.g., car, bus, truck) or null if the spot is available or deactivated. It's an optional attribute.
  • plate: The license plate text of the parked vehicle (e.g., ER-891-WJ) or null if the spot is available or deactivated. It's an optional attribute.

Vizioyard

Vizioyard payloads are sent every time a monitored yard slot has a state change. There is a rate limit of 1 payload every 30 seconds to avoid flooding:

[
{
"name": "Y-0",
"is_active": true,
"deactivated": false,
"cls": "truck",
"plate": "EC-562-WJ",
"id": "5e1f581d-cf32-42ac-81d4-b9ec3af91159",
"event_ts": 1770909921
},
{
"name": "Y-1",
"is_active": true,
"deactivated": false,
"cls": "truck",
"plate": "BZ-348-BY",
"id": "a17b7fdf-0dd8-4621-b89d-c3183f19c371",
"event_ts": 1770908400
},
{
"name": "Y-2",
"is_active": false,
"deactivated": false,
"cls": null,
"plate": null,
"id": "71d35b0e-5c46-4816-a2ef-417a73280cf3",
"event_ts": 1770907200
}
]

Payload attributes:

  • id: The ID of the yard slot.
  • event_ts: The timestamp in UNIX time format (UTC) of the event.
  • name: The name of the yard slot as defined in the integrator platform.
  • is_active: The current state of the monitored yard slot (true if occupied).
  • deactivated: The current deactivation state of the monitored yard slot (true if deactivated).
  • cls: The class of the parked vehicle (e.g., truck, trucktrailer, truckhead) or null if the yard slot is available or deactivated. It's an optional attribute.
  • plate: The license plate text of the parked vehicle (e.g., ER-891-WJ) or null if the yard slot is available or deactivated. It's an optional attribute.
  • ocr: A specific text detected on the vehicle (e.g., container or trailer ID), or null if the yard slot is available or deactivated. It's an optional attribute.

Viziocount

count by zone

Counts the number of objects in a zone. Payloads are sent at the end of each counting period (default: 30 seconds), only if the count has changed.

[
{
"name": "Polygon_1",
"id": "ba3b60ab-659f-469f-bf5e-4b19124a055d",
"event_ts": 1705938983,
"objects": [
{
"count": 10,
"cls": "person"
}
]
}
]

Payload attributes:

  • id: The ID of the counting zone.
  • event_ts: The timestamp in UNIX time format (UTC) of the event.
  • name: The name of the counting zone as defined in the integrator platform.
  • objects: An array of detected objects.
    • cls: The class of the detected object (e.g., person, car, bus, truck, motorcycle).
    • count: The number of objects counted within the zone.

count by barrier

Counts objects crossing a barrier over a period (default: 30 seconds). Payloads are sent at the end of each counting period, only if count is greater than 0.

[
{
"name": "Entry",
"start_ts": 1705938983,
"id": "ba3b60ab-659f-469f-bf5e-4b19124a055d",
"end_ts": 1705939013,
"objects": [
{
"count": 1,
"cls": "vehicle"
}
]
},
{
"name": "Exit",
"start_ts": 1705938983,
"id": "aead1317-44e8-4143-8d74-7740c30c5752",
"end_ts": 1705939013,
"objects": [
{
"count": 1,
"cls": "vehicle"
}
]
}
]

Payload attributes:

  • id: The ID of the barrier.
  • start_ts: The start timestamp in UNIX time format (UTC).
  • end_ts: The end timestamp in UNIX time format (UTC).
  • name: The name of the barrier as defined in the integrator platform.
  • objects: An array of detected objects.
    • cls: The class of the detected object (e.g., person, car, bus, truck, motorcycle).
    • count: The cumulative number of objects that crossed the barrier during the defined period.

Viziocrowd

Viziocrowd provides crowd metrics for different counting zones. It includes the minimum, maximum, and average number of people present in each zone over a specified period (default: 10 minutes).

[
{
"name": "Polygon_1",
"start_ts": 1705685956,
"id": "9a6f509b-14dc-4338-8fda-dd14e0baadaf",
"end_ts": 1705686557,
"objects": [
{
"cls": "person",
"min": 0,
"avg": 6,
"max": 49
}
]
},
{
"name": "Polygon_2",
"start_ts": 1705685956,
"id": "438ba09c-8f49-409d-9e5a-50070ce66f30",
"end_ts": 1705686557,
"objects": [
{
"cls": "person",
"min": 0,
"avg": 0,
"max": 7
}
]
}
]

Payload attributes:

  • id: The ID of the crowd detection zone.
  • start_ts: The start timestamp in UNIX time format (UTC).
  • end_ts: The end timestamp in UNIX time format (UTC).
  • name: The name of the crowd detection zone as defined in the integrator platform.
  • objects: An array of detected objects.
    • cls: The class of the object detected (person).
    • min: The minimum number of objects detected over the aggregation period.
    • avg: The average number of objects detected over the aggregation period.
    • max: The maximum number of objects detected over the aggregation period.

Payload Details

Loading ....