Version: v1
Description: Obtiene capturas de pantalla de sitios web emulando un navegador
Esta es una API que permite realizar capturas de pantalla de sitios web permitiendo el uso de diversos parámetros que permiten personalizar la imagen final.
https://api.latinapi.com/api/webscreenshot/capturePOSTapplication/jsonEsta API tiene un costo de 0.5 créditos por cada solicitud, sin importar el tipo de captura (pantalla completa, móvil o el tamaño de la misma).
A continuación se describen los parámetros que acepta la API en formato JSON:
| Parámetro | Tipo | Requerido | Valor por defecto | Descripción |
|---|---|---|---|---|
url |
string | Sí | N/A | La URL de la página web a la que se le tomará la captura de pantalla. |
format |
string | No | base64 |
Formato de la captura (base64, jpg, jpeg, webp, o png). |
width |
integer | No | 1280 |
Ancho de la ventana del navegador (en píxeles). |
height |
integer | No | 800 |
Alto de la ventana del navegador (en píxeles). |
full_page |
boolean | No | false |
Determina si se captura la página completa. |
mobile |
boolean | No | false |
Habilita la vista móvil. |
dark_mode |
boolean | No | false |
Habilita el modo oscuro. |
delay |
integer | No | 0 |
Tiempo de espera antes de tomar la captura (en segundos). |
custom_js |
string | No | N/A | Código JavaScript personalizado a ejecutar en la página. |
user_agent |
string | No | N/A | Especifica el encabezado User-Agent para la solicitud. |
curl -X POST https://api.latinapi.com/api/webscreenshot/capture \
-H "Content-Type: application/json" \
-H "X-Api-Key: TULLAVEAPI" \
-d '{
"url": "https://www.google.com",
"format": "jpg",
"width": 1920,
"height": 1080,
"full_page": true,
"delay": 2
}'<?php
$apiUrl = "https://api.latinapi.com/api/webscreenshot/capture";
$payload = json_encode([
"url" => "https://www.google.com",
"format" => "png",
"mobile" => true,
"dark_mode" => true
]);
$ch = curl_init($apiUrl);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $payload);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
"Content-Type: application/json",
"X-Api-Key: TULLAVEAPI",
"Content-Length: " . strlen($payload)
]);
$response = curl_exec($ch);
$http_code = curl_getinfo($ch, CURLINFO_HTTP_CODE);
if (curl_errno($ch)) {
echo "Error en cURL: " . curl_error($ch);
} else {
echo "Código HTTP: " . $http_code . "\n";
echo "Respuesta:\n" . $response;
}
curl_close($ch);
fetch)const apiUrl = 'https://api.latinapi.com/api/webscreenshot/capture';
const data = {
url: 'https://www.google.com',
format: 'webp',
width: 1366,
height: 768,
delay: 1
};
fetch(apiUrl, {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'X-API-Key': 'TULLAVEAPI',
},
body: JSON.stringify(data)
})
.then(response => {
console.log('Status Code:', response.status);
return response.json();
})
.then(result => {
console.log('API Response:', result);
})
.catch(error => {
console.error('Error in request:', error);
});
const axios = require('axios');
const apiUrl = 'https://api.latinapi.com/api/webscreenshot/capture';
const requestPayload = {
url: 'https://www.google.com',
full_page: true,
dark_mode: false
};
axios.post(apiUrl, requestPayload)
.then(response => {
console.log('Status Code:', response.status);
console.log('Response Data:', response.data);
})
.catch(error => {
if (error.response) {
console.error('Status Code:', error.response.status);
console.error('Error Data:', error.response.data);
} else {
console.error('Error:', error.message);
}
});
data con base64 o información relevante)./capture.POST.url o un tipo de dato es incorrecto) o un error al conectar con la API real. En tal caso, el cuerpo de la respuesta contendrá detalles descriptivos bajo la clave messages o message del JSON devuelto.