Skip to content
Developers · REST API & webhooks

Your systems can drive the screens. Without us in the loop.

A REST API with an API key, webhooks signed with HMAC SHA-256 and IoT ingest endpoints. Everything you see below exists in production today — no waiting list, no beta form.

Base URL
api.digtria.com

One endpoint, hosted in the EU

Authentication
API key

Bearer token or X-Api-Key header, scoped to your organisation

Webhooks
8 events

Signed, queued and retried with backoff

Format
JSON

Same contract for every platform of player

REST API

Five endpoints that cover fleet operations.

Read the fleet, send a command, push a sensor reading or an anonymous audience count. The API key is created in the administration and can be revoked at any time.

GET/screens

List of screens with status, app version, free storage and resolution.

GET/screens/{id}

Detail of a single screen including the last heartbeat.

POST/screens/{id}/commands

Remote command: RESTART, REBOOT, FORCE_SYNC, SCREENSHOT, UPDATE_APP, WAKE, SLEEP, CLEAR_CACHE.

POST/sensors

IoT reading (temperature, CO₂, occupancy…) from a gateway, PLC or Home Assistant.

POST/audience

Anonymous audience aggregate from an AI camera: people, impressions, dwell time. No images, no identification.

Base URL of every call: https://api.digtria.com/api/v1/public/v1

digtria-api.shProduction
curl -s https://api.digtria.com/api/v1/public/v1/screens \
  -H "Authorization: Bearer sk_live_…"

# vzdialený príkaz obrazovke
curl -X POST https://api.digtria.com/api/v1/public/v1/screens/{id}/commands \
  -H "Authorization: Bearer sk_live_…" \
  -H "Content-Type: application/json" \
  -d '{"type":"FORCE_SYNC"}'

Webhooks: your system learns first.

Register a URL in the administration, pick the events and we deliver them through a queue with retries. Every call carries a signature so you can verify it really came from us.

Events

screen.onlinescreen.offlinestorage.criticaltemp.highrollout.haltedcampaign.endedmedia.approvedmedia.rejected

Delivery runs through a job queue — a failed call is retried with increasing delay, and the full history including request and response bodies is in the administration.

Signature

The body is signed with HMAC SHA-256 using the secret shown when you create the webhook. Compare it in constant time — see the sample on the left.

X-Digtria-Signature: sha256=<hmac>

The webhook debugger in the administration replays any call, so you can test your endpoint without waiting for a real incident.

Scoped to your organisationA key only ever sees the screens of the organisation that created it. Revoking a key takes effect immediately.
Keys under your controlCreate, name and revoke keys in Settings → API keys. The key is shown once; we store only its hash.
Hosted in the EUAPI, database and media storage run on EU infrastructure. A data processing agreement is part of the contract.
Stable contractFields are added, never silently removed. Breaking changes would come as a new path, not a surprise on a Monday morning.

Frequently asked questions

Is there an official SDK?
Not yet. The API is plain REST with JSON, so any HTTP client works — the samples above are complete. If a packaged SDK would decide a project for you, tell us which language and we will prioritise it.
What are the rate limits?
Normal operational use is not limited. Abusive traffic is throttled per key; if you plan a bulk import or polling of thousands of screens, write to us and we will agree the pattern — usually a webhook replaces polling entirely.
Can we run Digtria on our own servers?
Yes, an on-premise or dedicated instance is available for enterprise projects — the same API, your infrastructure. Ask us for the deployment document.

Security, SSO and data residency are described on Enterprise.

Deploy your screen network with one partner.

Hardware, software, content and operations — planned, delivered and supported by one team.