Apployee › API Docs

Apployee Public API

Reference for version v1 of the public business API.

Introduction

The D4DC public API gives programmatic access to your devices, telemetry, tachograph files, channels, streams, plugins, groups, calculators and device commands.

Base URL

https://portal.d4dc.nl/bff/business/api/pub/v1

All endpoint paths in this reference are relative to the base URL.

This reference lists methods and paths. Where request bodies, response schemas or parameters are not documented here, they are not specified in the supplied reference.

Authentication

Authenticate with a Bearer token. The documented device and telemetry requests use Accept: application/json.

Keep real tokens private. Do not commit them to source control or embed them in public frontend code.

Authorization: Bearer dh_live_YOUR_TOKEN
Accept: application/json

Create and revoke tokens in the D4DC portal. Manage tokens

Token scopes and rate limits are not specified in the supplied reference.

Example request

curl "https://portal.d4dc.nl/bff/business/api/pub/v1/devices" \
  -H "Authorization: Bearer dh_live_YOUR_TOKEN" \
  -H "Accept: application/json"

Devices

List, inspect, create and update devices, and read their telemetry, trips, refills and alerts.

GET /devices — List devices, optionally filtered by search term or group, with pagination.

List devices, optionally filtered by search term or group, with pagination.

Path parameters

None.

Query parameters

search
Filters on IMEI, name, device type or description.
group
Only devices tagged with this group ID.
per_page
Page size. Maximum 100.
page
Page number.

Response schema: Not specified in the supplied reference.

Example: First page

curl "https://portal.d4dc.nl/bff/business/api/pub/v1/devices?per_page=100&page=1" \
  -H "Authorization: Bearer dh_live_YOUR_TOKEN" \
  -H "Accept: application/json"
GET /devices/{id} — Retrieve a single device by id.

Retrieve a single device by id.

Path parameters

  • id Description not specified in the supplied reference.

Query parameters: Not specified in the supplied reference.

Response schema: Not specified in the supplied reference.

GET /devices/{id}/telemetry — Latest telemetry values for a device, or stored message history when a time window is supplied.

Latest telemetry values for a device, or stored message history when a time window is supplied.

Path parameters

  • id required Device id.

Query parameters

group
Only return the resource if it belongs to this group (404 otherwise).
from
Start of the time window. Switches to message history mode.
to
Inclusive end of the time window. Switches to message history mode.
select
Comma-separated list of signals. Latest mode only.
format
format=flat returns a key-to-value object instead of a signals array. Latest mode only.
per_page
History page size. Maximum 200.
page
History page number.

Without from or to, the endpoint returns the latest values. Supplying from and/or to switches to the stored message history, ordered newest first. The meta.mode field in the response identifies which mode was used; its exact values are not specified in the supplied reference.

WHERE filters (latest mode only) return data only if the device matches a condition, for example ignition being true. The exact query syntax for WHERE filters is not specified in the supplied reference.

Response schema is not specified in the supplied reference.

Example: Latest values

curl "https://portal.d4dc.nl/bff/business/api/pub/v1/devices/{id}/telemetry" \
  -H "Authorization: Bearer dh_live_YOUR_TOKEN" \
  -H "Accept: application/json"

Example: Latest, flat format

curl "https://portal.d4dc.nl/bff/business/api/pub/v1/devices/{id}/telemetry?format=flat" \
  -H "Authorization: Bearer dh_live_YOUR_TOKEN" \
  -H "Accept: application/json"

Example: Message history (illustrative dates)

curl "https://portal.d4dc.nl/bff/business/api/pub/v1/devices/{id}/telemetry?from=2025-01-01T00%3A00%3A00Z&to=2025-01-02T00%3A00%3A00Z&per_page=200&page=1" \
  -H "Authorization: Bearer dh_live_YOUR_TOKEN" \
  -H "Accept: application/json"

Dates in examples are illustrative only. Replace path placeholders such as {id} with real values.

GET /devices/all/telemetry — Telemetry across all devices.

Telemetry across all devices.

Path parameters

None.

Query parameters: Not specified in the supplied reference.

Response schema: Not specified in the supplied reference.

GET /devices/{id}/trips — Trips recorded for a device.

Trips recorded for a device.

Path parameters

  • id Description not specified in the supplied reference.

Query parameters: Not specified in the supplied reference.

Response schema: Not specified in the supplied reference.

GET /devices/{id}/refills — Refills recorded for a device.

Refills recorded for a device.

Path parameters

  • id Description not specified in the supplied reference.

Query parameters: Not specified in the supplied reference.

Response schema: Not specified in the supplied reference.

GET /devices/{id}/alerts — Alerts raised for a device.

Alerts raised for a device.

Path parameters

  • id Description not specified in the supplied reference.

Query parameters: Not specified in the supplied reference.

Response schema: Not specified in the supplied reference.

POST /devices — Create a device.

Create a device.

Path parameters

None.

Query parameters: Not specified in the supplied reference.

Request body: Not specified in the supplied reference.

Response schema: Not specified in the supplied reference.

PATCH /devices/{id} — Update a device.

Update a device.

Path parameters

  • id Description not specified in the supplied reference.

Query parameters: Not specified in the supplied reference.

Request body: Not specified in the supplied reference.

Response schema: Not specified in the supplied reference.

PATCH /devices/bulk — Update multiple devices in one request.

Update multiple devices in one request.

Path parameters

None.

Query parameters: Not specified in the supplied reference.

Request body: Not specified in the supplied reference.

Response schema: Not specified in the supplied reference.

POST /devices/{id}/messages — Device messages endpoint. Message format and processing behaviour are not specified in the supplied reference.

Device messages endpoint. Message format and processing behaviour are not specified in the supplied reference.

Path parameters

  • id Description not specified in the supplied reference.

Query parameters: Not specified in the supplied reference.

Request body: Not specified in the supplied reference.

Response schema: Not specified in the supplied reference.

Tachograph

List and download tachograph files.

GET /tacho/files — List tachograph files.

List tachograph files.

Path parameters

None.

Query parameters: Not specified in the supplied reference.

Response schema: Not specified in the supplied reference.

GET /tacho/files/{fileId}/download — Download a tachograph file.

Download a tachograph file.

Path parameters

  • fileId Description not specified in the supplied reference.

Query parameters: Not specified in the supplied reference.

Response schema: Not specified in the supplied reference.

Channels

List, inspect and create channels.

GET /channels — List channels.

List channels.

Path parameters

None.

Query parameters: Not specified in the supplied reference.

Response schema: Not specified in the supplied reference.

GET /channels/{channel} — Retrieve a single channel.

Retrieve a single channel.

Path parameters

  • channel Description not specified in the supplied reference.

Query parameters: Not specified in the supplied reference.

Response schema: Not specified in the supplied reference.

POST /channels — Create a channel.

Create a channel.

Path parameters

None.

Query parameters: Not specified in the supplied reference.

Request body: Not specified in the supplied reference.

Response schema: Not specified in the supplied reference.

Streams

List and create streams.

GET /streams — List streams.

List streams.

Path parameters

None.

Query parameters: Not specified in the supplied reference.

Response schema: Not specified in the supplied reference.

POST /streams — Create a stream.

Create a stream.

Path parameters

None.

Query parameters: Not specified in the supplied reference.

Request body: Not specified in the supplied reference.

Response schema: Not specified in the supplied reference.

Plugins

Discover plugins, manage subscriptions and device assignments.

GET /plugins — List plugins.

List plugins.

Path parameters

None.

Query parameters: Not specified in the supplied reference.

Response schema: Not specified in the supplied reference.

POST /plugins/{code}/subscribe — Subscribe to a plugin.

Subscribe to a plugin.

Path parameters

  • code Description not specified in the supplied reference.

Query parameters: Not specified in the supplied reference.

Request body: Not specified in the supplied reference.

Response schema: Not specified in the supplied reference.

POST /plugins/{code}/unsubscribe — Unsubscribe from a plugin.

Unsubscribe from a plugin.

Path parameters

  • code Description not specified in the supplied reference.

Query parameters: Not specified in the supplied reference.

Request body: Not specified in the supplied reference.

Response schema: Not specified in the supplied reference.

PUT /plugins/{code}/devices — Set the devices for a plugin.

Set the devices for a plugin.

Path parameters

  • code Description not specified in the supplied reference.

Query parameters: Not specified in the supplied reference.

Request body: Not specified in the supplied reference.

Response schema: Not specified in the supplied reference.

POST /plugins/{code}/devices/assign — Assign devices to a plugin.

Assign devices to a plugin.

Path parameters

  • code Description not specified in the supplied reference.

Query parameters: Not specified in the supplied reference.

Request body: Not specified in the supplied reference.

Response schema: Not specified in the supplied reference.

POST /plugins/{code}/devices/unassign — Unassign devices from a plugin.

Unassign devices from a plugin.

Path parameters

  • code Description not specified in the supplied reference.

Query parameters: Not specified in the supplied reference.

Request body: Not specified in the supplied reference.

Response schema: Not specified in the supplied reference.

Groups

Create device groups.

POST /groups — Create a group.

Create a group.

Path parameters

None.

Query parameters: Not specified in the supplied reference.

Request body: Not specified in the supplied reference.

Response schema: Not specified in the supplied reference.

Calculators

Read calculator intervals.

GET /calculators/{calculatorId}/intervals — List intervals for a calculator.

List intervals for a calculator.

Path parameters

  • calculatorId Description not specified in the supplied reference.

Query parameters: Not specified in the supplied reference.

Response schema: Not specified in the supplied reference.

Commands

Browse the command catalogue, send commands and manage the command queue.

GET /devices/{deviceId}/commands/catalogue — Commands available for a device.

Commands available for a device.

Path parameters

  • deviceId Description not specified in the supplied reference.

Query parameters: Not specified in the supplied reference.

Response schema: Not specified in the supplied reference.

POST /devices/commands/bulk — Send commands to multiple devices.

Send commands to multiple devices.

Path parameters

None.

Query parameters: Not specified in the supplied reference.

Request body: Not specified in the supplied reference.

Response schema: Not specified in the supplied reference.

POST /devices/{deviceId}/commands — Send a command to a device.

Send a command to a device.

Path parameters

  • deviceId Description not specified in the supplied reference.

Query parameters: Not specified in the supplied reference.

Request body: Not specified in the supplied reference.

Response schema: Not specified in the supplied reference.

GET /devices/{deviceId}/commands — List commands sent to a device.

List commands sent to a device.

Path parameters

  • deviceId Description not specified in the supplied reference.

Query parameters: Not specified in the supplied reference.

Response schema: Not specified in the supplied reference.

GET /devices/{deviceId}/commands/{commandId} — Retrieve a single command.

Retrieve a single command.

Path parameters

  • deviceId Description not specified in the supplied reference.
  • commandId Description not specified in the supplied reference.

Query parameters: Not specified in the supplied reference.

Response schema: Not specified in the supplied reference.

GET /devices/{deviceId}/commands-queue — View the command queue of a device.

View the command queue of a device.

Path parameters

  • deviceId Description not specified in the supplied reference.

Query parameters: Not specified in the supplied reference.

Response schema: Not specified in the supplied reference.

POST /devices/{deviceId}/commands-queue — Add a command to the device queue.

Add a command to the device queue.

Path parameters

  • deviceId Description not specified in the supplied reference.

Query parameters: Not specified in the supplied reference.

Request body: Not specified in the supplied reference.

Response schema: Not specified in the supplied reference.

DELETE /devices/{deviceId}/commands-queue/{commandId} — Remove a queued command.

Remove a queued command.

Path parameters

  • deviceId Description not specified in the supplied reference.
  • commandId Description not specified in the supplied reference.

Query parameters: Not specified in the supplied reference.

Response schema: Not specified in the supplied reference.