> ## Documentation Index
> Fetch the complete documentation index at: https://docs.cleariflow.com/llms.txt
> Use this file to discover all available pages before exploring further.

# API de capturas de pantalla web

> La API de capturas de pantalla web de Cleariflow captura imágenes pixel-perfect de cualquier URL pública a través de una interfaz JSON RESTful moderna con protección SSRF, control de viewport y opciones de automatización del navegador.

## Primeros pasos

<Card title="Captura de pantalla síncrona" icon="camera" href="screenshot/screenshot">
  El endpoint `screenshot` ejecuta una sesión de navegador y devuelve una imagen codificada en base64 en JSON — ideal para integraciones programáticas y el API Tester.
</Card>

<Card title="Trabajos asíncronos" icon="clock" href="screenshot/jobs">
  Los endpoints `jobs` encolan tareas de captura de pantalla y permiten consultar el estado y los resultados — ideal para alto volumen o páginas lentas.
</Card>

### Arquitectura REST

La API de capturas de pantalla web sigue los principios REST, con URLs predecibles orientadas a recursos y códigos de estado HTTP estándar para una integración fluida y manejo de errores.

### Seguridad HTTPS

Todas las comunicaciones con la API están protegidas con TLS 1.2 o superior para garantizar la integridad y privacidad de los datos.

### Versiones de la API

La API de capturas de pantalla web mantiene la compatibilidad hacia atrás mediante versionado y actualmente opera en la Version 1.

### Autenticación

Su clave API es la credencial exclusiva para acceder a la API de capturas de pantalla web. Cada servicio de Cleariflow requiere una clave única. Incluya su clave en el cuerpo JSON como `api_key`, o como parámetro de consulta para el endpoint GET legacy.

### URL base

```
https://screenshot.cleariflow.com
```

### Renderizado de páginas

Las páginas se renderizan en un navegador headless real. JavaScript se ejecuta completamente antes de capturar la pantalla. La protección SSRF integrada bloquea solicitudes a localhost y rangos de IP privadas.

## Códigos de respuesta y error

Cuando las solicitudes fallan, la API devuelve respuestas de error JSON estructuradas con códigos y descripciones específicos para una resolución eficaz de problemas.

| Código | Tipo                  | Detalles                                                                                                               |
| ------ | --------------------- | ---------------------------------------------------------------------------------------------------------------------- |
| 200    | OK                    | Captura de pantalla realizada correctamente.                                                                           |
| 202    | Accepted              | El trabajo asíncrono se encoló correctamente.                                                                          |
| 400    | Bad request           | Solicitud incorrecta — URL no válida, destino bloqueado o carga útil mal formada.                                      |
| 401    | Unauthorized          | La solicitud no fue aceptable. Normalmente porque falta la clave API o es incorrecta.                                  |
| 422    | Quota reached         | La solicitud se abortó por créditos API insuficientes. (Planes gratuitos)                                              |
| 429    | Too many requests     | Se alcanzó el límite de solicitudes por segundo. En planes gratuitos, las solicitudes están limitadas a 1 por segundo. |
| 500    | Internal server error | La solicitud no pudo completarse debido a un error del servidor.                                                       |
