Problem
The BYOS Hanami webhook format sends screenshots as screen.data (base64-encoded PNG). This worked with the old usetrmnl/byos_hanami repo, which explicitly supported "Base64 Encoded Data". However, the current usetrmnl/terminus repo dropped data support — its Screens API only accepts content (HTML) or uri (image URL). Every webhook request fails with 422.
Payload sent by trmnl-ha
{
"screen": {
"data": "<base64-encoded-image>",
"label": "HomeAssistant",
"name": "ha-dashboard",
"model_id": "11",
"file_name": "ha-dashboard.png"
}
}
Terminus error
HTTP 422: Unprocessable Content
"Invalid parameters: {model_id: 11, label: \"HomeAssistant\", name: \"ha-dashboard\"}."
Suggested fix
Replace data with uri pointing back to trmnl-ha's fetch URL + "preprocessed": true
Environment
- trmnl-ha:
ghcr.io/usetrmnl/trmnl-ha-amd64:0.7.0
- Terminus:
ghcr.io/usetrmnl/terminus:0.52.0
Problem
The BYOS Hanami webhook format sends screenshots as
screen.data(base64-encoded PNG). This worked with the oldusetrmnl/byos_hanamirepo, which explicitly supported "Base64 Encoded Data". However, the currentusetrmnl/terminusrepo droppeddatasupport — its Screens API only acceptscontent(HTML) oruri(image URL). Every webhook request fails with 422.Payload sent by trmnl-ha
{ "screen": { "data": "<base64-encoded-image>", "label": "HomeAssistant", "name": "ha-dashboard", "model_id": "11", "file_name": "ha-dashboard.png" } }Terminus error
Suggested fix
Replace
datawithuripointing back to trmnl-ha's fetch URL +"preprocessed": trueEnvironment
ghcr.io/usetrmnl/trmnl-ha-amd64:0.7.0ghcr.io/usetrmnl/terminus:0.52.0