Introduction to Browserless Offerings
Browserless is a cloud-based service for running headless browsers at scale. It provides multiple offerings for different use cases, all using the same cloud infrastructure but accessed in various ways. This overview introduces the three main Browserless offerings (excluding legacy v1, which is deprecated) and when to use each:
-
BrowserQL (BQL) – A GraphQL-based API for browser automation. BQL is a first-class, stealth-focused solution ideal for bypassing CAPTCHAs and bot detectors. It comes with a fully-featured web IDE and uses a minimalistic, scriptable query language instead of traditional code.
-
Browsers as a Service (BaaS) v2 – A direct browser-as-a-service API that you can connect to using standard libraries like Puppeteer or Playwright. BaaS v2 closely mimics running a browser locally, allowing you to use familiar code by simply changing the connection URL to point at Browserless. It's best for running your own automation scripts (especially when bot-detection is not a concern).
-
RESTful APIs – A set of ready-made HTTP endpoints for common browser tasks (such as generating PDFs or screenshots, scraping content, etc.). These endpoints let you perform automation via simple HTTP(S) requests without writing a full script. They are great for quick integrations or one-off tasks, although not as flexible for complex flows. For heavily protected sites (advanced bot detection), the REST APIs may not suffice on their own.
API Tokens and Authentication
All Browserless cloud offerings require an API token for authentication. When you sign up, you'll get a unique token associated with your account. Include this token in every request, usually as a query parameter ?token=<YOUR_API_TOKEN>
. (The token can also be provided via headers in some cases, but using the token in query strings is most reliable.)
Global Endpoints
Browserless operates multiple regional endpoints for low-latency access. The primary shared clusters are in US West (SFO), EU West (London), and EU Central (Amsterdam) (Load Balancers). For example:
https://production-sfo.browserless.io
– San Francisco, USA (default US endpoint)https://production-lon.browserless.io
– London, UK (European endpoint)https://production-ams.browserless.io
– Amsterdam, NL (another EU endpoint)
You can use the endpoint closest to your servers or users. All endpoints offer the same API and require your token.