Getting Started
Quick Start
From sign-up to a live, updating dashboard in under 5 minutes.
Create your account and dashboard
Sign up at easyboard.live. You'll get a dashboard immediately — no credit card, no waiting.
After sign-up, your welcome email contains your write token. Save it — you'll need it to push data. You can also view it anytime from your dashboard settings (the gear icon).
Add a tile to your dashboard
Open your dashboard and click Add tile. For a first test, choose Metric — a large number with an optional unit. Give it a title like "Temperature" and set the unit to °C. Click save.
Find your tile ID
Each tile has a unique ID. The easiest way to find it is to call the tiles API. The command below hits a live public dashboard — paste it as-is to see real data come back, then swap in your own dashboard ID:
curl https://easyboard.live/api/d/608f596a55d6/tilesYou'll get a JSON array. Each object has an id field — copy the one for the tile you just created.
That ID is a real, always-on dashboard
It's our City Weather demo — current temperature in three cities, refreshed every 15 minutes. No token is needed to read it, because every EasyBoard dashboard is public to read and private to write.
Push your first value
Now update the tile. Swap in your dashboard ID, tile ID, and write token:
curl (macOS / Linux / WSL)
curl -X PATCH https://easyboard.live/api/d/<dashboard-id>/tiles \
-H "Authorization: Bearer <your-write-token>" \
-H "Content-Type: application/json" \
-d '{"updates": [{"target": {"id": "<tile-id>"}, "patch": {"value": "42"}}]}'Python
import os, requests
DASHBOARD_ID = os.environ["EASYBOARD_DASHBOARD_ID"]
WRITE_TOKEN = os.environ["EASYBOARD_WRITE_TOKEN"]
def update_tile(tile_id: str, value) -> None:
requests.patch(
f"https://easyboard.live/api/d/{DASHBOARD_ID}/tiles",
headers={"Authorization": f"Bearer {WRITE_TOKEN}"},
json={"updates": [{"target": {"id": tile_id}, "patch": {"value": str(value)}}]},
timeout=10,
)
update_tile("your-tile-id", 42)Switch back to your dashboard tab — the tile value should have changed instantly. No refresh needed. That's real-time via Server-Sent Events.
Tile value is always a string
Even numbers are sent as strings: "value": "42", not "value": 42. EasyBoard displays them with formatting (commas for thousands, etc.) automatically.
Update multiple tiles at once (optional)
If you have several tiles, a batch request updates them all in one API call:
curl -X PATCH https://easyboard.live/api/d/<dashboard-id>/tiles \
-H "Authorization: Bearer <your-write-token>" \
-H "Content-Type: application/json" \
-d '{
"updates": [
{"target": {"id": "<tile-id-1>"}, "patch": {"value": "24.3"}},
{"target": {"id": "<tile-id-2>"}, "patch": {"value": "Online"}}
]
}'Batch updates are atomic — if any tile fails (wrong ID, for example), none of them are saved.