Skip to main content
Version: 4.2

API Endpoints

FiestaBoard provides a REST API powered by FastAPI. Interactive API documentation is available at http://localhost:4420/api/docs when FiestaBoard is running.

Base URL

http://localhost:4420

When using the default deployment, prefix all paths with /api (e.g. GET http://localhost:4420/api/health).

System Endpoints

Health & Status

MethodEndpointDescription
GET/healthHealth check, returns service health status
GET/statusService status, uptime, and current configuration
GET/configCurrent configuration settings

Display Control

MethodEndpointDescription
POST/refreshRefresh the current display
POST/force-refreshForce refresh (bypasses preview cache)
POST/send-messageSend a custom message to the board

Service Control

MethodEndpointDescription
POST/startStart the display service
POST/stopStop the display service

Page Endpoints

MethodEndpointDescription
GET/pagesList all pages
POST/pagesCreate a new page
GET/pages/{id}Get a specific page
PUT/pages/{id}Update a page
DELETE/pages/{id}Delete a page
POST/pages/{id}/previewPreview a page (with variables resolved)

Page Fields

When creating or updating a page, the following fields are available:

FieldTypeDescription
namestringPage name (required)
typestring"template", "single", or "composite"
device_typestring"flagship" (22×6) or "note" (15×3). Default: "flagship"
templatestring[]Template lines for template-type pages
duration_secondsnumberHow long to display (10–3600s, default 300)

Batch Operations

MethodEndpointDescription
POST/pages/preview/batchPreview multiple pages at once
POST/displays/raw/batchGet raw display data for multiple pages

Schedule Endpoints

MethodEndpointDescription
GET/schedulesList all schedule entries
POST/schedulesCreate a new schedule entry
GET/schedules/{id}Get a specific schedule entry
PUT/schedules/{id}Update a schedule entry
DELETE/schedules/{id}Delete a schedule entry

Plugin Endpoints

MethodEndpointDescription
GET/pluginsList all plugins with status
GET/plugins/{id}Get plugin details
PUT/plugins/{id}/configUpdate plugin configuration
POST/plugins/{id}/enableEnable a plugin
POST/plugins/{id}/disableDisable a plugin
GET/plugins/{id}/dataGet current plugin data
GET/plugins/{id}/variablesGet available template variables

Settings Endpoints

MethodEndpointDescription
GET/settings/allGet all settings in a single call
GET/settings/transitionsGet transition animation settings
PUT/settings/transitionsUpdate transition settings
GET/settings/outputGet output target settings
PUT/settings/outputUpdate output target
GET/settings/boardGet board configuration
PUT/settings/boardUpdate board configuration

Board Management

MethodEndpointDescription
PUT/settings/boardUpdate board configuration (devices, connection)
POST/settings/board/addAdd a new board instance
DELETE/settings/board/{id}Remove a board instance

PUT /settings/board — request body fields

FieldTypeDescription
boardsobject[]Array of BoardInstance objects (V2 format)
devicesstring[]Device type list e.g. ["flagship", "note"] (backward-compatible)
board_typestringLegacy field — still accepted

Board Instance Fields

FieldTypeDescription
idstringUUID (auto-generated on create)
namestringDisplay name for this board
device_typestring"flagship" (22×6) or "note" (15×3)
board_colorstring"black" or "white"
api_modestring"local" or "cloud"
hoststringBoard IP address (local mode)
local_api_keystringLocal API key
cloud_keystringCloud Read/Write key
enabledbooleanWhether this board is active

Example Requests

Get Service Status

curl http://localhost:4420/api/status

Send a Message

curl -X POST http://localhost:4420/api/send-message \
-H "Content-Type: application/json" \
-d '{"message": "Hello World!"}'

List Plugins

curl http://localhost:4420/api/plugins

Preview a Page

curl -X POST http://localhost:4420/api/pages/1/preview

Interactive Documentation

For a complete interactive API explorer with request/response schemas, visit:

http://localhost:4420/api/docs

This provides a Swagger UI where you can try out any endpoint directly in your browser.

Next Steps