MostlyRender

Screenshots

POST /v1/screenshots captura qualquer página web pública como uma imagem ou PDF — nenhum template necessário.

# Request

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 Obrigatório. Uma URL pública http(s).
width integer Largura do viewport. Padrão 1200 (16–2400).
height integer Altura do viewport. Padrão 630 (16–2400).
fullPage boolean Captura a altura total de rolagem. Padrão false.
scale number Fator de escala do dispositivo (retina). Até 3.
output string png (padrão), jpeg, webp, ou pdf.
paper string Com output: "pdf", pagina em um documento deste tamanho de papel (A4, A3, A5, Letter, Legal, Tabloid, Ledger) com margens, em vez de uma captura de altura total única.
async boolean Fila e retorna 202.
webhookUrl string Callback assinado na conclusão (implica async).
notifyEmail string Envie um email para este endereço quando o trabalho terminar (implica async).

# Response

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

# URL safety

Screenshots aceitam apenas URLs http(s) públicas. Solicitações para intervalos privados, loopback, link-local ou hosts de metadados em nuvem são rejeitadas com 400 — e a proteção verifica novamente após qualquer redirecionamento, para que uma URL pública não possa redirecionar para uma interna.

# SDK

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

Páginas grandes podem ser lentas — para essas, use async + webhooks.