MostlyRender

Capturas de pantalla

POST /v1/screenshots captura cualquier página web pública como una imagen o PDF — no se requiere plantilla.

# 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"
  }'
Field Type Notes
url string Requerido. Una URL http(s) pública.
width integer Ancho de ventana gráfica. Predeterminado 1200 (16–2400).
height integer Alto de ventana gráfica. Predeterminado 630 (16–2400).
fullPage boolean Captura toda la altura de desplazamiento. Predeterminado false.
scale number Factor de escala del dispositivo (retina). Hasta 3.
output string png (predeterminado), jpeg, webp, o pdf.
async boolean Encolar y devolver 202.
webhookUrl string Devolución de llamada firmada al finalizar (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 de nube se rechazan con 400 — y el guard vuelve a verificar después de cualquier redirección, por lo que una URL pública no puede redirigirse 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 esos casos, use async + webhooks.