MostlyRender

Capturas de pantalla

POST /v1/screenshots captura cualquier página web pública como imagen o PDF — sin plantilla requerida.

# Solicitud

bash
curl https://api.mostlyrender.com/v1/screenshots \
  -H "Authorization: Bearer mr_live_…" \
  -H "Content-Type: application/json" \
  -d '{
    "url": "https://stripe.com",
    "fullPage": true,
    "output": "png"
  }'
Campo Tipo Notas
url string Requerido. Una URL pública http(s).
width integer Ancho de la ventana gráfica. Por defecto 1200 (16–2400).
height integer Alto de la ventana gráfica. Por defecto 630 (16–2400).
fullPage boolean Capturar la altura completa del desplazamiento. Por defecto false.
scale number Factor de escala del dispositivo (retina). Hasta 3.
output string png (por defecto), jpeg, webp, o pdf.
paper string Con output: "pdf", paginar en un documento de este tamaño de papel (A4, A3, A5, Letter, Legal, Tabloid, Ledger) con márgenes, en lugar de una captura de altura completa única.
async boolean Encolar y devolver 202.
webhookUrl string Devolución de llamada firmada al completarse (implica async).
notifyEmail string Enviar un correo electrónico a esta dirección cuando finalice el trabajo (implica async).

# Respuesta

json
{
  "id": "shot_abc123",
  "url": "https://img.mostlyrender.com/mostlyrender/screenshots/shot_abc123.png",
  "output": "png"
}

# Seguridad de URL

Las capturas de pantalla solo aceptan URLs http(s) públicas. Las solicitudes a rangos privados, loopback, link-local u hosts de metadatos en la nube se rechazan con 400 — y la protección se vuelve a verificar después de cualquier redirección, por lo que una URL pública no puede rebotar a una interna.

# SDK

python
shot = mr.screenshot("https://stripe.com", full_page=True)
print(shot["url"])

Las páginas grandes pueden ser lentas — para esas, usa async + webhooks.