API Reference
Complete reference for all Rendex Screenshot API endpoints.
Base URL
https://api.rendex.devPOST /v1/screenshot
Capture a screenshot and return the image as binary data (PNG or JPEG).
Request Headers
| Header | Required | Value |
|---|---|---|
Authorization | Yes | Bearer YOUR_API_KEY |
Content-Type | Yes | application/json |
Request Body
| Parameter | Type | Default | Description |
|---|---|---|---|
url | string | — | Required. The URL to capture. |
format | "png" | "jpeg" | "png" | Output image format. |
width | number | 1280 | Viewport width (320–3840). |
height | number | 800 | Viewport height (240–2160). |
fullPage | boolean | false | Capture the full scrollable page. |
darkMode | boolean | false | Emulate dark color scheme. |
blockAds | boolean | true | Block ads and trackers. |
quality | number | 80 | JPEG quality (1–100). Ignored for PNG. |
delay | number | 0 | Wait time in ms after page load (0–10000). |
deviceScaleFactor | number | 1 | Device pixel ratio (1–3) for retina captures. |
Response
Returns the image binary with appropriate Content-Type header. Screenshot metadata is returned in response headers:
x-screenshot-url— Captured URLx-screenshot-width— Image widthx-screenshot-height— Image heightx-screenshot-size— File size in bytesx-screenshot-captured-at— ISO timestampx-ratelimit-remaining— Remaining requestsx-ratelimit-reset— Rate limit reset time
POST /v1/screenshot/json
Same parameters as /v1/screenshot, but returns the image as a base64-encoded JSON response.
Response Body
{
"success": true,
"data": {
"image": "base64-encoded-string",
"contentType": "image/png",
"url": "https://example.com",
"width": 1280,
"height": 800,
"format": "png",
"bytesSize": 145832,
"capturedAt": "2026-03-26T12:00:00.000Z"
},
"meta": {
"requestId": "req_abc123",
"timestamp": "2026-03-26T12:00:00.000Z",
"usage": {
"credits": 1,
"remaining": 499
}
}
}GET /health
Returns a simple health check.
{
"status": "ok",
"product": "rendex",
"version": "0.1.0",
"timestamp": "2026-03-26T12:00:00.000Z"
}Error Responses
| Status | Code | Description |
|---|---|---|
| 400 | VALIDATION_ERROR | Invalid request parameters. |
| 401 | UNAUTHORIZED | Missing or invalid API key. |
| 403 | FORBIDDEN | API key disabled or insufficient permissions. |
| 429 | RATE_LIMITED | Rate limit exceeded. Check Retry-After header. |
| 500 | INTERNAL_ERROR | Server error. Retry after a brief delay. |