Serviço de renderização headless: envie o HTML gerado pelo seu agente e receba o arquivo final pronto (PNG, JPEG ou WebP) — no tamanho exato dos presets de redes sociais.
POST https://html-to-image.5.189.186.144.sslip.io/rendercurl -X <span class="k">POST</span> https://html-to-image.5.189.186.144.sslip.io/render \
-H <span class="k">'X-API-Key: SUA_CHAVE'</span> \
-H <span class="k">'Content-Type: application/json'</span> \
-d <span class="k">'{"html": "<div style='</span><span class="k">'padding:64px;font:700 72px sans-serif'</span><span class="k">'>Olá J5Soft</div>", "preset": "square"}'</span> \
-o post.png
Autenticação por API key: header X-API-Key, Authorization: Bearer … ou ?key=.
Recebe {"html": "…"} e devolve a imagem. Resposta binária por padrão; com "base64": true devolve JSON.
Status do serviço, versão do Chromium e carga atual. Usado no healthcheck do Coolify.
Lista os tamanhos prontos: square, story, portrait, og, twitter, linkedin, youtube.
Esta página de documentação.
Todos opcionais, exceto html. Podem ir no corpo JSON ou na query string.
| campo | padrão | descrição |
|---|---|---|
html | — | HTML completo ou fragmento. Cercas ```html e prosa antes/depois do documento que o agente costuma devolver são removidas automaticamente. |
preset | square | Tamanho pronto (ver /presets). |
width / height | 1080 / 1080 | Dimensões em px. Use "height": "auto" para altura livre (recorta o excesso). |
scale | 1 | Fator de escala do dispositivo (2 = retina, arquivo maior). |
format | png | png, jpeg ou webp. |
quality | 92 | Qualidade para jpeg/webp. |
background | #ffffff | Cor de fundo do canvas (hex). |
transparent | false | Fundo transparente (png/webp). |
trim | false | Recorta margens vazias ao redor do conteúdo. |
waitMs | 1500 | Tempo de espera para fontes, imagens e animações antes de capturar. |
css | — | CSS extra injetado no documento (ajustes finos sem mexer no HTML). Entra fora da camada, portanto vence o CSS do documento. |
inject | true | O reset de CSS da app entra em @layer hti-reset: por regra do cascade, o CSS do seu HTML (fora de camadas) sempre vence o reset. |
base64 | false | Devolve JSON com a imagem em base64 em vez do binário. |
noNetwork | false | Bloqueia DNS durante o render (determinismo e segurança). |
No fim do workflow, depois do node do agente que devolve o HTML.
POST, URL https://html-to-image.5.189.186.144.sslip.io/render.X-API-Key com o valor da sua chave.{"html": "{{ $json.html }}", "preset": "square", "scale": 1}File, Put Output in Field: data — o node passa a entregar o arquivo em binário.data no próximo node (upload, WhatsApp, e-mail, Drive, etc.).{
"html": "{{ $json.html }}",
"preset": "square",
"scale": 1,
"format": "png"
}
| status | code | quando acontece |
|---|---|---|
| 200 | — | Imagem gerada (headers X-Image-Width, X-Image-Height, X-Render-Ms). |
| 400 | bad_request | Parâmetro inválido (preset, formato, cor, dimensão). |
| 401 | unauthorized | API key ausente ou incorreta. |
| 413 | html_too_large | HTML acima de 2.000.000 bytes. |
| 429 | busy | Fila cheia — repita a chamada em alguns segundos. |
| 500 | render_failed | Falha do Chromium (informe o detail ao suporte). |
| 504 | render_timeout | Render passou de 60s. |