cdpfleet Docs Sign up free

cdpfleet documentation

cdpfleet runs real browsers for you. One HTTPS call launches a browser and returns a WebSocket URL; you connect to it with Playwright from Node.js, Python, Java, C# or Go and drive it like a local browser.

How it works

  1. Launch. POST https://starter.cdpfleet.com/<browser>/session with your API key and launch options — including your proxy (without one, the free, shared Community proxy is used; on dedicated plans you can use your own VPN instead). You get back { sessionId, wsUrl }.
  2. Connect. Open wsUrl with Playwright's connect() for the browser's family (chromium, firefox or webkit), sending your API key again.
  3. Drive. Create pages, navigate, intercept requests, take screenshots — anything Playwright does.
  4. Close. browser.close() ends the session immediately and stops billing.
Playwright protocol by default, CDP when you ask. Sessions speak Playwright's own protocol: use browserType.connect(wsUrl) with a Playwright client of the same minor version as the server — 1.60 (1.52 for Rebrowser). Every example on this site pins the right version. Want Puppeteer, connectOverCDP() or a raw CDP client instead? Launch with "cdp": true and connect to the cdpUrl it returns — see CDP & Puppeteer.

Start here

Authentication

Every request carries your API key (cdpf_…) in the x-api-key header. Create and revoke keys in the dashboard; to try code at once or hand it to an AI assistant, the dashboard's code builder can copy it with a temporary key that expires after an hour. Connect to a session with the same key that launched it: send it as the x-api-key header of connect(), as the examples do, or append ?api_key=… to wsUrl (or cdpUrl) if your client can't set headers.

Keep keys out of source code — the examples read CDPFLEET_API_KEY from the environment.