Skip to main content

API Endpoints

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

Base URL

http://localhost:8000

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
POST/dev-modeToggle development mode

Service Control

MethodEndpointDescription
POST/service/startStart the display service
POST/service/stopStop the display service
POST/service/restartRestart 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
GET/pages/{id}/previewPreview a page (with variables resolved)

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
GET/plugins/{id}/configGet plugin configuration
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/settingsGet all settings
PUT/settingsUpdate settings
GET/settings/allGet all settings in a single call

Example Requests

Get Service Status

curl http://localhost:8000/status

Send a Message

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

List Plugins

curl http://localhost:8000/plugins

Preview a Page

curl http://localhost:8000/pages/1/preview

Interactive Documentation

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

http://localhost:8000/docs

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

Next Steps