MostlyRender

Captures d’écran

POST /v1/screenshots capture n’importe quel site web public en tant qu’image ou PDF — aucun modèle requis.

# Requête

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"
  }'
Champ Type Notes
url string Requis. Une URL http(s) publique.
width integer Largeur de la fenêtre. Par défaut 1200 (16–2400).
height integer Hauteur de la fenêtre. Par défaut 630 (16–2400).
fullPage boolean Capturer la hauteur complète du scroll. Par défaut false.
scale number Facteur d’échelle de l’appareil (retina). Jusqu’à 3.
output string png (par défaut), jpeg, webp, ou pdf.
paper string Avec output: "pdf", paginer dans un document de ce format de papier (A4, A3, A5, Letter, Legal, Tabloid, Ledger) avec marges, au lieu d’une capture pleine hauteur unique.
async boolean Mettre en file d’attente et retourner 202.
webhookUrl string Callback signé à la fin (implique async).
notifyEmail string Envoyer un e-mail à cette adresse quand le travail est terminé (implique async).

# Réponse

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

# Sécurité des URL

Les captures d’écran n’acceptent que des URL http(s) publiques. Les demandes vers des plages privées, loopback, link-local, ou les hôtes de métadonnées cloud sont rejetées avec 400 — et la vérification se refait après chaque redirection, donc une URL publique ne peut pas rebondir vers une URL interne.

# SDK

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

Les pages volumineuses peuvent être lentes — pour celles-ci, utilisez async + webhooks.