10 official SDKs, REST API compatibility with any language, and no-code automation. Ship in minutes, not days.
TypeScript types, ESM + CJS, Node.js & browsers. 86 tests.
npm install snapapiType hints, async via httpx. Django, FastAPI, Flask. 122 tests.
pip install snapapiContext support, functional options, zero dependencies.
go get github.com/Sleywill/snapapi-goPHP 8.1+, Guzzle HTTP, Laravel & Symfony. 53 tests.
composer require snapapi/snapapi-phpasync/await, Codable, iOS/macOS/watchOS. 77 tests.
.package(url: "snapapi-swift")Coroutines, Ktor, Android & JVM. 100 tests.
implementation("pics.snapapi:snapapi-kotlin:3.1.0")Connect SnapAPI to 7,000+ apps. Use "Webhooks by Zapier" or "Code by Zapier" to capture screenshots from form submissions, CRM updates, and more.
Visual automation builder with drag-and-drop workflows. Use the HTTP module to call any SnapAPI endpoint from your scenarios.
Self-hosted workflow automation. Use the HTTP Request node to call SnapAPI endpoints. Full control over your data and workflows.
BYOK: Bring your own OpenAI key. SnapAPI captures the page, extracts content, and sends it to GPT-4o for analysis. Structured JSON output.
BYOK: Use your Anthropic API key with Claude models. Perfect for compliance audits, competitive analysis, and content understanding.
Extract clean markdown from any webpage — optimized for LLM context windows. Feed directly into your RAG pipeline or knowledge base.
Let AI assistants use SnapAPI tools directly — screenshots, scraping, extraction, PDFs, and more — with zero code. Works with Claude Desktop, Claude Code, Cursor, Windsurf, VS Code, and Zed.
One command for Claude Code CLI. For other clients, add a small JSON config block.
claude mcp add snapapi -- npx -y snapapi-mcpClaude Desktop, Claude Code (CLI), Cursor, Windsurf, VS Code (Copilot), and Zed. Any MCP-compatible client works with the standard npx transport.
import { SnapAPI } from 'snapapi'; const snap = new SnapAPI('YOUR_API_KEY'); // Screenshot const png = await snap.screenshot({ url: 'https://example.com' }); // Extract markdown for LLMs const md = await snap.extract({ url: 'https://example.com', type: 'markdown' }); // Scrape structured data const data = await snap.scrape({ url: 'https://example.com', type: 'links' });
from snapapi import SnapAPI snap = SnapAPI("YOUR_API_KEY") # Screenshot png = snap.screenshot(url="https://example.com") # Extract markdown for LLMs md = snap.extract_markdown("https://example.com") # Scrape with proxy data = snap.scrape(url="https://example.com", premium_proxy=True)
client := snapapi.New("YOUR_API_KEY") // Screenshot img, _ := client.Screenshot(ctx, snapapi.ScreenshotParams{ URL: "https://example.com", }) // Extract markdown md, _ := client.Extract(ctx, snapapi.ExtractParams{ URL: "https://example.com", Type: "markdown", })
# Screenshot curl -X POST "https://api.snapapi.pics/v1/screenshot" \ -H "X-Api-Key: YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{"url":"https://example.com","format":"png"}' \ -o screenshot.png # Extract markdown curl -X POST "https://api.snapapi.pics/v1/extract" \ -H "X-Api-Key: YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{"url":"https://example.com","type":"markdown"}'