API de HTML a imagen
Convierte HTML y CSS en imágenes PNG, JPEG o WebP con una sola llamada. Le mandas tu diseño (o el nombre de una plantilla y tus textos) y te devuelve la imagen, lista para guardar, enviar o publicar. Sin montar servidores ni navegadores, y lista para n8n, Make, Zapier, tu código o tu asistente de IA.
Crear cuenta gratis Referencia de la API
50 créditos gratis al mes, sin tarjeta. 1 imagen = 1 crédito.
Pruébalo en 10 segundos
Cambia los textos y pulsa Generar: esto es justo lo que tu automatización recibiría como imagen. Sin cuenta y sin programar.
Úsalo desde donde ya trabajas
- n8n: un nodo HTTP Request. Guía paso a paso y flujo listo para importar.
- Make: el módulo HTTP → Make a request. Guía paso a paso.
- Zapier: Webhooks by Zapier. Guía paso a paso.
- Tu código: curl, JavaScript o Python (ejemplos abajo, en el modo Técnico), o la referencia interactiva con OpenAPI y Postman.
- Asistentes de IA: Claude, ChatGPT o Cursor por MCP. Cómo conectarlo.
Para qué se usa
- Imágenes de Open Graph para que cada artículo o producto se vea bien al compartirlo.
- Una tarjeta para redes por cada fila de una hoja de cálculo o cada post nuevo.
- Certificados, entradas y recibos personalizados con los datos de cada persona.
- Miniaturas de YouTube, banners para emails o newsletters.
- Convertir un informe o un resumen en HTML en una imagen para Slack, Telegram o WhatsApp.
Qué incluye
- PNG, JPEG o WebP, hasta 3840 × 2160 píxeles, con calidad ajustable y captura de página completa.
- Imágenes y tipografías de internet (Google Fonts, logos, fotos de fondo) con su enlace
https://…. - Plantillas con datos: manda
template+datay el diseño lo pone el servidor, con tus textos escapados. - Tres formas de recibir el resultado: el archivo, base64 en JSON o un enlace de descarga que dura 15 minutos.
- Privacidad: ni tu HTML ni la imagen se guardan; se generan al momento.
- Un solo bote de créditos para las 25 herramientas: HTML a PDF, capturas de webs, QR, gráficos, PDF…
Plantillas listas para usar
¿No quieres hacer el diseño desde cero? Tenemos una galería de plantillas (tarjetas para redes, facturas, certificados, miniaturas…) que copias con un clic y pegas directamente en tu flujo. La vamos ampliando.
Cómo funciona
Esta herramienta convierte un diseño en HTML (texto con el aspecto que quieres) en una imagen (PNG, JPEG o WebP). Tú le mandas el diseño y te devuelve la imagen, lista para guardar, enviar por email o publicar en redes.
Está pensada para usarla desde plataformas no-code como n8n, Make o Zapier, sin programar, y también desde cualquier lenguaje.
Lo único que necesitas
- Tu API key (tu “contraseña” para la herramienta). La creas en tu panel con “+ Crear llave”. Se muestra una sola vez, así que cópiala y guárdala.
- En tu plataforma de automatización, un paso de tipo “HTTP Request” / “Hacer una petición HTTP” (lo tienen n8n, Make, Zapier, Pipedream…).
Cómo usarlo en n8n (paso a paso)
Le envías tu HTML tal cual y te devuelve la imagen directamente, lista para usar. Sin pasos de conversión. En el nodo HTTP Request:
- Method:
POST - URL:
https://api.cofferdock.com/capture - Send Query Parameters: actívalo y añade el tamaño en campos separados (cómodo, sin tocar el enlace):
width=1200,height=630. (Puedes añadir más:format,full_page… ver la tabla de abajo.) - Send Headers: actívalo y añade dos:
x-api-key= tu llave, yContent-Type=text/html - Send Body: actívalo → Body Content Type: Raw → en Body pega tu HTML (o conéctalo desde un paso anterior)
- En Options → Response → Response Format: elige File
La salida del nodo ya es la imagen como archivo: conéctala directamente a Drive, email, Telegram, redes… Un solo nodo y listo.
En Make (módulo HTTP → Make a request): mismo método y URL, en Query String añade width y height, en Headers las dos cabeceras, Body type: Raw, Content type: text/html y pega tu HTML en Request content. La respuesta ya es el archivo de imagen.
En resumen: POST a …/capture, width y height como Query Parameters, las cabeceras x-api-key y Content-Type: text/html, el HTML en Body en modo Raw y Response Format en File.
Opciones (en Query Parameters)
Opciones que puedes añadir como Query Parameters (campos name/value en n8n/Make):
| Opción | Por defecto | Para qué sirve |
|---|---|---|
width | 1200 | Ancho de la imagen en píxeles. |
height | 630 | Alto de la imagen en píxeles. |
format | png | Formato: png, jpeg o webp. |
full_page | false | Si tu diseño es más largo que el alto, ponlo en true para capturarlo entero. |
wait_ms | 0 | Esperar unos milisegundos antes de la foto (por si algo tarda en cargar). Máx. 5000. |
output | image | Ponlo en url si prefieres un enlace de descarga (dura 15 minutos) en vez del archivo. |
Imágenes y fuentes de internet: puedes usar fotos de fondo, logos o tipografías alojadas en internet poniendo su enlace (https://…) dentro del HTML/CSS, y se cargarán en la imagen final. El diseño se renderiza sin ejecutar JavaScript, así que usa HTML y CSS (no scripts).
Resumen de la API
- Endpoint:
POST https://api.cofferdock.com/capture - Auth: cabecera
x-api-key: TU_LLAVE. - Entrada: el HTML va en el cuerpo como
text/html(a pelo) o comoapplication/jsonen el campohtml. En JSON también puedes mandartemplate+data(lista en /templates.json). - Salida: por defecto, con
text/htmldevuelve el binario de la imagen (image/png,image/jpegoimage/webp); con JSON devuelve base64. Añadeoutput=imagepara forzar el binario en cualquier caso, ooutput=urlpara recibir un enlace temporal de descarga (dura 15 minutos; ideal para Zapier, Bubble o asistentes de IA). - Referencia completa: las 25 herramientas con sus opciones y un formulario para probarlas en /api (también en OpenAPI y Postman).
- Opciones: en Query Parameters o en el JSON (si coinciden, gana el JSON).
- Límites: HTML máx. 5 MB; timeout 30 s; JavaScript desactivado (solo HTML/CSS); llamadas por minuto según tu plan (30 en el gratis).
Opciones
| Opción | Por defecto | Descripción |
|---|---|---|
width | 1200 | Ancho en px (100–3840). |
height | 630 | Alto en px (100–2160). |
format | png | png, jpeg o webp. |
quality | 90 | Calidad (1–100). Solo aplica a jpeg y webp. |
full_page | false | Captura toda la altura del contenido. |
wait_ms | 0 | Espera antes de capturar, en ms (máx. 5000). |
output | según modo | image (binario), json (base64) o url (enlace de 15 minutos). |
Ejemplos
curl (HTML a pelo, guarda la imagen en un fichero):
curl -X POST "https://api.cofferdock.com/capture?width=1200&height=630" \
-H "x-api-key: TU_LLAVE" \
-H "Content-Type: text/html" \
--data-binary "<h1 style='color:#8a5210'>Hola</h1>" \
-o imagen.png
JavaScript (Node 18+):
const r = await fetch('https://api.cofferdock.com/capture?width=1200&height=630', {
method: 'POST',
headers: { 'x-api-key': 'TU_LLAVE', 'Content-Type': 'text/html' },
body: '<h1>Hola</h1>',
});
const buffer = Buffer.from(await r.arrayBuffer());
require('fs').writeFileSync('imagen.png', buffer);
Python:
import requests
r = requests.post(
'https://api.cofferdock.com/capture',
params={'width': 1200, 'height': 630},
headers={'x-api-key': 'TU_LLAVE', 'Content-Type': 'text/html'},
data='<h1>Hola</h1>'.encode('utf-8'),
)
open('imagen.png', 'wb').write(r.content)
Modo JSON (respuesta en base64)
Con Content-Type: application/json, el HTML va en html y las opciones en el mismo objeto. La respuesta trae la imagen en base64:
{ "html": "<h1>Hola</h1>", "width": 1200, "height": 630 }
→ { "success": true, "image": "iVBORw0KGgo…", "mime_type": "image/png",
"meta": { "used": 12, "remaining": 488, "size_bytes": 8421 } }
Añade "output": "image" al JSON para recibir el binario en lugar del base64.
Lo que recibes
La imagen directamente (un archivo PNG, JPEG o WebP), lista para guardar, enviar por email o publicar. No hay que convertir nada: el paso siguiente de tu automatización ya recibe el archivo. (En el modo técnico con JSON, la imagen llega en base64.)
Si en un pico recibes “ocupado”
En momentos de mucha demanda, la API puede responder “ocupado” (código 503) y pedirte que esperes unos segundos. Es raro y puntual, pero para que tu automatización lo resuelva sola, activa el reintento en el paso de la petición:
- En n8n: en el nodo HTTP Request, pestaña Settings, activa “Retry On Fail”. Con 2–3 intentos sobra.
- En Make: añade un manejador de errores al módulo (clic derecho → Add error handler) con la directiva Break, que reintenta automáticamente.
Nuestra respuesta incluye la cabecera Retry-After con los segundos que conviene esperar. Con el reintento activado, tu flujo ni se entera.
Preguntas frecuentes
¿Qué es una API de HTML a imagen?
Un servicio al que le mandas un diseño hecho con HTML y CSS y te devuelve una foto de ese diseño como archivo de imagen. Así generas imágenes automáticamente sin abrir un programa de diseño.
¿Se ejecuta JavaScript?
No. El diseño se pinta solo con HTML y CSS, lo que lo hace más rápido y seguro. Si necesitas una web con JavaScript, usa la captura de webs.
¿Puedo usar Google Fonts o mis propias tipografías?
Sí, enlazándolas con su dirección https://… en el CSS. Si alguna tarda en cargar, añade wait_ms.
¿Guardáis mi HTML o las imágenes?
No. Se generan al momento y no se guardan. Solo si pides output=url, la imagen se guarda en memoria 15 minutos para que puedas descargarla.
¿Cuánto cuesta?
Cada imagen gasta 1 crédito. El plan gratis trae 50 créditos al mes sin tarjeta y los planes de pago comparten los créditos entre las 25 herramientas.
¿Hay un nodo para n8n?
No hace falta: basta el nodo HTTP Request. Tienes el flujo listo para importar y la guía paso a paso.
Herramientas relacionadas
- HTML a PDF: el mismo HTML, convertido en un PDF (facturas, informes).
- Captura de webs: una foto de cualquier web a partir de su enlace.
- JSON a gráfico: gráficos de barras, líneas o tarta como imagen.
- Imágenes: redimensionar, convertir y comprimir la imagen resultante.