Screenshot API Integrations
Add website screenshots to your app in any language. Copy-paste code examples for Node.js, Python, PHP, Go, Java, Ruby, and cURL.
Node.js
Capture screenshots with native fetch() or axios. Zero npm dependencies, works with Express.js and Next.js out of the box.
View integrationPython
Use requests or httpx to capture screenshots. Sync and async examples, FastAPI proxy endpoint, retry logic included.
View integrationPHP
Capture screenshots with file_get_contents, cURL, or Guzzle. Laravel controller example, error handling, and retry logic included.
View integrationGo
Capture screenshots with the standard net/http library. Goroutine-based parallel captures, HTTP handler proxy, retry logic included.
View integrationJava
Capture screenshots with the built-in HttpClient or OkHttp. Spring Boot controller example, retry logic, and thread-safe concurrency.
View integrationRuby
Capture screenshots with net/http or Faraday. Rails controller proxy, retry logic, and zero gem dependencies required.
View integrationcURL
Capture screenshots from the command line with a single GET request. Batch scripts, cron jobs, CI/CD pipelines, and zero dependencies.
View integrationZapier
Automate website screenshots without code. Connect any Zapier trigger to ScreenshotRun via Webhooks and build workflows in minutes.
View integrationn8n
Capture screenshots with n8n's HTTP Request node. Branching logic, batch processing, self-hosting, and 40+ API parameters with zero code.
View integrationMake.com
Automate website screenshots with Make.com scenarios. Configure the HTTP module, use routers for parallel captures, and connect to 2,000+ apps with zero code.
View integrationGoogle Sheets
Capture website screenshots directly in Google Sheets. Apps Script menu button for single URLs, batch processing for entire columns, scheduled triggers, and Google Drive storage.
View integrationGitHub Actions
Automate website screenshots in your CI/CD pipeline. Post-deploy visual checks, scheduled monitoring, matrix strategy for multiple pages, and build artifacts storage.
View integrationWordPress
Add automated screenshots to any WordPress site with PHP shortcodes. Transient caching, Media Library integration, WP-Cron scheduling, and no plugin required.
View integrationOne Endpoint, Thirteen Ways In
Every integration on this page calls the same URL: GET https://api.screenshotrun.com/v1/screenshots/capture. No SDKs to install, no client libraries to keep updated, no version conflicts to debug at 2 AM. Pass your API key as a Bearer token in the Authorization header (the same pattern Stripe uses), add your parameters, and you get back a screenshot. That's the whole interface.
We made this choice deliberately. SDKs add a maintenance layer between you and the API. When a new parameter ships, SDK users wait for a library update. REST users just add a query string. Python's requests library, Go's net/http, PHP's built-in cURL, and every other HTTP client on this page already know how to make GET requests. Why wrap that in another dependency?
All 40+ parameters work identically across every integration. full_page=true behaves the same whether you send it from a Node.js Express route or a Zapier webhook. No feature gaps between languages. No "this parameter is only available in the Python SDK." One API surface, tested once, used everywhere.
What Can You Build With Code vs. No-Code?
Seven language integrations cover the backend side: Node.js, Python, PHP, Go, Java, Ruby, and cURL. Each page includes production-ready code with error handling, retry logic for transient failures, and framework-specific patterns (Express middleware, FastAPI proxy, Spring Boot controller, Rails route). I got tired of seeing website screenshot API docs that show a happy-path curl command and nothing else. Real code retries on 429s and handles timeouts.
Six no-code integrations cover the automation side: Make.com, n8n, Zapier, Google Sheets, GitHub Actions, and WordPress. The GitHub Actions integration is one I'm genuinely proud of because nobody else in this space offers it. If you're running visual smoke tests after every deploy, you don't need Puppeteer containers in your CI pipeline. One HTTP step, artifact storage, done.
Honest caveat: the no-code platforms impose their own rate limits and timeout ceilings. Zapier's webhook step has a 30-second timeout, which means complex pages with heavy JavaScript sometimes fail before the screenshot finishes rendering. For those cases, use webhook_url for async delivery instead.
Pick the Right Screenshot API Integration
If you already have a backend, grab the integration for your language and drop the HTTP call into your existing codebase. Five minutes, no new dependencies. If you're automating screenshots without writing code, start with whichever platform you already pay for. And if you're a DevOps team looking at visual regression in CI, the GitHub Actions integration replaces an entire Playwright container setup with a single workflow step.
Every integration page starts from zero: account creation, API key, first screenshot, then builds toward production patterns. The free tier gives you 200 screenshots per month with every parameter available, so you can test the full API before committing to anything. No credit card, no feature gating on free accounts.