Browser Sessions

Drive a real browser
step by step

When a single screenshot isn't enough. Open a persistent, stateful browser over a simple REST API — log in, fill forms, click through pages, and read dynamic content across as many steps as your task needs.

Stateful by design

One browser, many actions

Every action runs against the same live page, so the browser remembers where it is. Three endpoints — create, act, close — are all you need.

Persistent browser
A real Chrome page that stays alive across requests — cookies, login state, and navigation history all persist between actions.
A full action set
Navigate, click, type, scroll, select, hover, wait, query the DOM, capture screenshots, and read page content — everything you need to automate a flow.
Desktop and device viewports
Start with a desktop-class viewport or emulate a mobile/tablet device, then change the live viewport before later screenshots.
Batch actions
Send navigate + click + type + screenshot in a single request to cut round-trips and keep multi-step flows fast.
Stealth & proxy
Bypass bot detection or route the session through your own proxy when a site needs it.
Connect over CDP
Need raw Chrome DevTools Protocol access? Flip on cdp: true and attach your own Puppeteer or Playwright client to the same cloud browser over the Capture connect gateway.
terminal

How it works

Create a session, drive it with actions, and close it when you're done.

01

Create

POST to /v1/sessions to spin up a dedicated browser. You get back a sessionId and an expiry — set a short TTL to keep costs tight.

02

Act

Send actions to /actions — "goto", "click", "type", "query", "screenshot", and more. State carries over between every call.

03

Close

DELETE the session as soon as you're done. Sessions are billed by duration, so closing promptly stops the meter.

Sessions are billed by duration — 1 credit per minute the session stays open (rounded up), charged when it closes or expires. A session can stay open for up to 15 minutes, and you can run up to 5 at once.

Connect over CDP

Bring your own Puppeteer or Playwright

Create a session with cdp: true and get back a connectUrl you can attach to with puppeteer.connect() or playwright.connectOverCDP(). Keep your existing automation code — Capture gives it a managed, always-warm cloud Chrome. No browsers to install, patch, or scale.

CDP sessions can be combined with proxy routing when client-created targets need the same configured proxy. Bot-detection bypass is only available for regular Capture action sessions.

puppeteer

Use Cases

Built for multi-step flows

Authenticated scraping

Log in, navigate behind the auth wall, and extract data from pages a single stateless request could never reach.

Form & checkout flows

Fill multi-step forms, select options, submit, and verify the result — all within one persistent browser context.

AI agents that browse

Give an LLM a live browser via MCP. It can read the page, decide the next action, and click through tasks on its own.

End-to-end checks

Script real user journeys, screenshot each step, and confirm the page behaves as expected after every interaction.

Dynamic content

Wait for selectors, trigger lazy-loaded content, and scroll through infinite feeds before capturing the final state.

Interactive workflows

Anything that needs more than one shot at a page — chaining clicks, inputs, and reads into a single coherent flow.

Very simple to use, great pricing model (no subscription service like most competitors) and responsive customer support. I highly recommend it!

Cédric Thiebaut
Justpack

Dead simple screenshot as a service api, we were able to integrate it into our app with practically no dev effort. Highly recommended if you're looking for a simple screenshot api thats fast & cost effective.

Aravind Vijayan
IOStash

Ready to get started?Get in touch or create an account.

Frequently asked questions

Do you offer free accounts?

All accounts will get 100 free credits, which can be used for evaluation of our product before making a purchase.

What counts as a unique screenshot?

A unique screenshot is any combination of url and parameters that you have not requested before.

Do you cache screenshots?

Yes, we cache screenshots for 7 days.

Can I connect Puppeteer or Playwright?

Yes. Browser Sessions can return a CDP connectUrl for Puppeteer or Playwright clients. CDP sessions can use your configured proxy, but bot-detection bypass is only available for regular Capture action sessions.

Am I limited to only one domain?

No, we don't limit you to any particular domain. We use the security hash to validate requests. You can make your requests from anywhere, curl on your laptop, your development server, or any number of production servers.