Board 템플릿
최대 4개의 레이블 타일을 나란히 보여주는 간결한 대시보드입니다. 각 타일은 값, 선택적 단위, 아이콘, 색상, 추세 화살표, 그리고 자체 탭 대상을 담고 있어 — 여러 관련 지표를 한눈에 드러내기에 이상적입니다.

Fields
| Field | Type | Description |
|---|---|---|
template | string | Required. Must be "board" |
tiles | array | Required. 1–4 tile objects (see below). More than four are dropped to fit the layout |
title | string | Board heading shown above the tiles |
state | string | Status text shown beside the title (e.g. "All systems nominal") |
icon | string | SF Symbol name (e.g. "server.rack") or MDI icon with mdi: prefix |
accent_color | string | Named color or hex used for the heading icon and tile values. Default: blue |
background_color | string | Background color override |
text_color | string | Text color override |
Tile object
Each entry in tiles is an object:
| Field | Type | Description |
|---|---|---|
label | string | Required. Tile caption. Max 32 characters |
value | string | Required. Primary value. Max 16 characters |
unit | string | Unit suffix shown after the value (e.g. "%", "GB"). Max 8 characters |
icon | string | SF Symbol or MDI icon shown beside the label |
color | string | Named color or hex for this tile's value. Falls back to accent_color |
trend | string | One of up, down, flat — renders a trend arrow |
url_action | object | Per-tile tap target. Same shape as tap actions |
정보
Send 1 to 4 tiles. The board fits inside the same ~4 KB APNs payload as every other template, so keep labels and values short — long strings are truncated to the limits above.
Example: Service Status Board
서비스 상태 보드
{
"state": "ongoing",
"content": {
"template": "board",
"title": "Homelab",
"state": "All systems nominal",
"icon": "server.rack",
"accent_color": "green",
"tiles": [
{ "label": "Uptime", "value": "99.98", "unit": "%", "icon": "checkmark.circle", "color": "green", "trend": "flat" },
{ "label": "CPU", "value": "47", "unit": "%", "icon": "cpu", "color": "cyan", "trend": "up" },
{ "label": "Memory", "value": "6.2", "unit": "GB", "color": "blue" },
{
"label": "Errors",
"value": "3",
"unit": "/h",
"icon": "exclamationmark.triangle",
"color": "orange",
"trend": "down",
"url_action": { "url": "https://grafana.example.com/errors", "foreground": true }
}
]
}
}Typical Flow
- Start the board (
ended -> ongoing): Send the initial set of tiles - Update tiles (
ongoing -> ongoing): Re-send thetilesarray with new values — the board redraws in place - Finish (
ongoing -> ended): Optionally send a final snapshot, then end the activity
Buttons & tap targets
Each tile can carry its own url_action, so a single board can deep-link to several destinations — one per metric. See Tap actions for the action object shape.
Use Cases
- Infrastructure — uptime, CPU, memory, and error-rate at a glance
- Smart home — room temperatures, energy use, device states
- Media servers — active streams, queue depth, transcodes, library size
- Sports & finance — scoreboards, portfolio tickers, KPI dashboards