Screenshot
POST /v1/screenshots cattura qualsiasi pagina web pubblica come immagine o PDF — nessun modello richiesto.
# Request
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 | Obbligatorio. Un URL http(s) pubblico. |
width |
integer | Larghezza del viewport. Predefinito 1200 (16–2400). |
height |
integer | Altezza del viewport. Predefinito 630 (16–2400). |
fullPage |
boolean | Cattura l’altezza dello scorrimento completo. Predefinito false. |
scale |
number | Fattore di scala del dispositivo (retina). Fino a 3. |
output |
string | png (predefinito), jpeg, webp, o pdf. |
async |
boolean | Accoda e restituisce 202. |
webhookUrl |
string | Callback firmato al completamento (implica async). |
# Response
{
"id": "shot_abc123",
"url": "https://img.mostlyrender.com/mostlyrender/screenshots/shot_abc123.png",
"output": "png"
}
# URL safety
Gli screenshot accettano solo URL http(s) pubblici. Le richieste a intervalli privati, loopback, link-local o host di metadati cloud vengono rifiutate con 400 — e la protezione ri-controlla dopo ogni reindirizzamento, quindi un URL pubblico non può rimbalzare a uno interno.
# SDK
shot = mr.screenshot("https://stripe.com", full_page=True)
print(shot["url"])
Le pagine grandi possono essere lente — per quelle, utilizza async + webhooks.