Captures d’écran
POST /v1/screenshots capture n’importe quelle page web publique sous forme d’image ou de PDF — aucun modèle requis.
# Demande
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 | Remarques |
|---|---|---|
url |
string | Requis. Une URL http(s) publique. |
width |
integer | Largeur de la fenêtre d’affichage. Par défaut 1200 (16–2400). |
height |
integer | Hauteur de la fenêtre d’affichage. Par défaut 630 (16–2400). |
fullPage |
boolean | Capture la hauteur de défilement complète. 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. |
async |
boolean | File d’attente et retour 202. |
webhookUrl |
string | Rappel signé à la fin (implique async). |
# Réponse
{
"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 les URLs http(s) publiques. Les demandes aux plages privées, loopback, link-local, ou aux hôtes de métadonnées du cloud sont rejetées avec 400 — et la protection revérifie après toute redirection, donc une URL publique ne peut pas rebondir vers une URL interne.
# SDK
shot = mr.screenshot("https://stripe.com", full_page=True)
print(shot["url"])
Les grandes pages peuvent être lentes — pour celles-ci, utilisez async + webhooks.