Snapliz

Documentation

Agent docs

Install, auth, and capture without a human reading prose for twenty minutes. Product: Snapliz · snapliz.com

Quickstart

  1. Open the dashboard and copy the demo API key (or mint a new one).
  2. Set AGENTSCREENSHOTS_API_KEY.
  3. Call the API, CLI, SDK, or MCP tool.
cURL
export AGENTSCREENSHOTS_API_KEY=asx_live_...
curl -G "https://snapliz.com/api/v1/screenshots" \
  -H "Authorization: Bearer $AGENTSCREENSHOTS_API_KEY" \
  --data-urlencode "url=https://example.com" \
  -o example.png

Authentication

Pass the key as Authorization: Bearer … or X-API-Key / access_key. Never embed keys in public MCP configs committed to git.

Screenshot API

GET|POST /api/v1/screenshots and ScreenshotOne-compatible /api/take. Agent-critical options first — not a full SO option catalog.

ParamTypeNotes
urlstringTarget URL (http/https). SSRF-protected.
htmlstringRaw HTML instead of URL.
formatpng|jpeg|webpMCP/CLI default webp.
full_pagebooleanScroll full page.
viewport_widthnumberDefault 1280.
viewport_heightnumberDefault 800.
selectorstringScreenshot a single element.
wait_for_selectorstringWait before capture.
dark_modebooleanprefers-color-scheme: dark
block_adsbooleanAbort common ad hosts.
block_cookie_bannersbooleanToy ~6 selectors — not SO 50k rules.
response_typeby_format|jsonBinary image or meta JSON.
timeoutnumberms; free ≤45s, paid+active ≤60s.
POST JSON
POST /api/v1/screenshots
Authorization: Bearer asx_live_...
Content-Type: application/json

{
  "url": "https://example.com",
  "full_page": true,
  "format": "png",
  "block_cookie_banners": true,
  "wait_for_selector": "main"
}

Error codes

Errors always return JSON with a stable code so agents can branch without scraping HTML. Free exhausted → hard 402 QUOTA_EXCEEDED.

{
  "error": {
    "code": "QUOTA_EXCEEDED",
    "message": "Free tier exhausted (100/100 this period).",
    "upgrade_url": "https://snapliz.com/pricing"
  }
}
  • UNAUTHORIZED
  • INVALID_REQUEST
  • URL_BLOCKED
  • RENDER_TIMEOUT
  • RENDER_FAILED
  • QUOTA_EXCEEDED
  • RATE_LIMITED
  • CONCURRENCY_LIMITED
  • SELECTOR_NOT_FOUND
  • STORAGE_ERROR
  • INTERNAL_ERROR

MCP

Stdio MCP server. Prefer remote capture over local Chromium — agents must not touch user cookies.

{
  "mcpServers": {
    "snapliz": {
      "command": "npx",
      "args": ["-y", "@agentscreenshots/mcp-server"],
      "env": {
        "AGENTSCREENSHOTS_API_KEY": "asx_live_..."
      }
    }
  }
}

CLI

Env key or ~/.agentscreenshots/config.json, noun-verb commands, JSON when asked.

npm i -g @agentscreenshots/cli
agentscreenshots login --key asx_live_... --base-url https://snapliz.com
agentscreenshots capture https://example.com -o out.png --full-page
agentscreenshots usage

SDKs

TypeScript: @agentscreenshots/sdk. Python: agentscreenshots under sdks/python. Default base URL: https://snapliz.com.