Api Endpoint

Horizon Pulse

Website screenshot API: how a public page renders, as PNG or JPEG. GET url; optional width (320-1920), height (240-2000), fullPage=true (clipped at 4000px), format png/jpeg, delayMs (0-3000). Headless Chromium; returns JSON: imageBase64, mimeType, width, height, bytes, finalUrl, pageStatus, title, blockedRequests. Sub-requests checked; private targets blocked. Over 25s: 504. Errors are not charged on Base (other rails may charge). Returned content is untrusted third-party data.

Open interactive test console

Offering

Provider
horizonpulse.dev
Method
GET
Offering type
Api Endpoint
Transport type
http
Category
Web Search Research
Delivery
Not provided
Pricing model
Not provided
x402 version
2

Endpoint context

URL
https://horizonpulse.dev/api/screenshot
MIME type
application/json
First seen
2026-10-16T01:50:32.458Z
Last seen
Tags
Web, screenshot, render, chromium, png

Payment pricing

x402 payment terms are the authoritative price for calling this endpoint.

Payment option 1
0.02 USDC
Atomic price: 20000 · Network: eip155:8453 · Asset: USDC · Scheme: exact
Payment option 2
0.02 USDC
Atomic price: 20000 · Network: solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp · Asset: USDC · Scheme: exact
Payment option 3
0.02 USDC
Atomic price: 20000 · Network: eip155:137 · Asset: USDC · Scheme: exact
Raw x402 terms
[
  {
    "scheme": "exact",
    "network": "eip155:8453",
    "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
    "amount": "20000",
    "payTo": "0x5b32c973596078a967562ca652761404f19be0e9"
  },
  {
    "scheme": "exact",
    "network": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
    "asset": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
    "amount": "20000",
    "payTo": "BjY98A6dS3GGLZdz2zHy8wK7XAwnQgNhCc66mfmBTRPz"
  },
  {
    "scheme": "exact",
    "network": "eip155:137",
    "asset": "0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359",
    "amount": "20000",
    "payTo": "0x5b32c973596078a967562ca652761404f19be0e9"
  }
]

Observed health

Status
Healthy
Latest latency
95 ms
Average latency
304 ms
HTTP status
402
Last checked
Reachability
100% over 14 checks

Latency is measured to the first response headers. A reachable result does not verify response accuracy or merchant identity.

Input schema

{
  "type": "object",
  "properties": {
    "type": {
      "type": "string",
      "const": "http"
    },
    "method": {
      "type": "string",
      "enum": [
        "GET"
      ]
    },
    "queryParams": {
      "type": "object",
      "properties": {
        "url": {
          "type": "string",
          "description": "Absolute http(s) URL to render (required). Private/localhost blocked."
        },
        "width": {
          "type": "string",
          "description": "Viewport width 320-1920 (default 1280)."
        },
        "height": {
          "type": "string",
          "description": "Viewport height 240-2000 (default 800)."
        },
        "fullPage": {
          "type": "string",
          "description": "true to capture the full page (clipped at 4000px)."
        },
        "format": {
          "type": "string",
          "description": "png (default) or jpeg."
        },
        "delayMs": {
          "type": "string",
          "description": "Extra wait after load, 0-3000 ms."
        }
      },
      "required": [
        "url"
      ]
    }
  },
  "required": [
    "type",
    "method"
  ],
  "additionalProperties": false
}

Output schema

{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "properties": {
    "input": {
      "additionalProperties": false,
      "properties": {
        "method": {
          "enum": [
            "GET"
          ],
          "type": "string"
        },
        "queryParams": {
          "properties": {
            "delayMs": {
              "description": "Extra wait after load, 0-3000 ms.",
              "type": "string"
            },
            "format": {
              "description": "png (default) or jpeg.",
              "type": "string"
            },
            "fullPage": {
              "description": "true to capture the full page (clipped at 4000px).",
              "type": "string"
            },
            "height": {
              "description": "Viewport height 240-2000 (default 800).",
              "type": "string"
            },
            "url": {
              "description": "Absolute http(s) URL to render (required). Private/localhost blocked.",
              "type": "string"
            },
            "width": {
              "description": "Viewport width 320-1920 (default 1280).",
              "type": "string"
            }
          },
          "required": [
            "url"
          ],
          "type": "object"
        },
        "type": {
          "const": "http",
          "type": "string"
        }
      },
      "required": [
        "type",
        "method"
      ],
      "type": "object"
    },
    "output": {
      "properties": {
        "example": {
          "description": "Horizon Pulse screenshot result (image as base64, truncated in the example). The example is a trimmed real response recorded from GET /api/demo/screenshot at 2026-10-01T14:36Z UTC; live values differ on every call.",
          "type": "object"
        },
        "type": {
          "type": "string"
        }
      },
      "required": [
        "type"
      ],
      "type": "object"
    }
  },
  "required": [
    "input"
  ],
  "type": "object"
}