Create a browser pool
Create a new browser pool with the specified configuration and size. Pooled browsers load their profile read-only: any save_changes on the profile is ignored (not rejected), so pooled browsers never persist changes back to the profile.
Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Body
Parameters for creating a browser pool. All browsers in the pool will be created with the same configuration.
Number of browsers to maintain in the pool. The maximum size is determined by your organization's pooled sessions limit (the sum of all pool sizes cannot exceed your limit).
x >= 110
Optional name for the browser pool. Must be unique within the project.
^[a-zA-Z0-9._-]{1,255}$"my-pool"
Percentage of the pool to fill per minute. Defaults to 10. The cap is 25 for most organizations but can be raised per-organization, so only the lower bound is enforced here.
x >= 0Default idle timeout in seconds for browsers acquired from this pool before they are destroyed. Defaults to 600 seconds. Minimum 10, maximum 259200 (72 hours).
10 <= x <= 259200If true, launches the browser in stealth mode to reduce detection by anti-bot mechanisms. Defaults to false.
true
If true, launches the browser using a headless image. Defaults to false.
false
Profile selection for browsers in the pool.
- Option 1
- Option 2
When true, flush idle browsers when the profile the pool uses is updated, so pool browsers pick up the latest profile data. Requires a profile to be set on the pool.
true
List of browser extensions to load into the session. Provide each by id or name.
20Extension selection for the browser session. Provide either id or name of an extension uploaded to Kernel.
- Option 1
- Option 2
Optional proxy to associate to the browser session. Must reference a proxy in the same project as the browser session.
Browser viewport used for newly-warmed browsers in this pool.
If true, launches the browser in kiosk mode to hide address bar and tabs in live view. Defaults to false.
true
Custom Chrome enterprise policy overrides applied to all browsers in this pool. Keys are Chrome enterprise policy names; values must match their expected types. Blocked: kernel-managed policies (extensions, proxy, CDP/automation). See https://chromeenterprise.google/policies/ The serialized JSON payload is capped at 5 MiB.
Optional URL to navigate to when a new browser is warmed into the pool. Best-effort: failures to navigate do not fail pool fill. Only applied to newly-warmed browsers; browsers reused via release/acquire keep whatever URL the previous lease left them on. Accepts any URL Chromium can resolve, including chrome:// pages.
2048"https://example.com"
Response
Browser pool created successfully
A browser pool containing multiple identically configured browsers.
Unique identifier for the browser pool
"iv25ujqf37x3j07dwoffegqr"
Number of browsers currently available in the pool
85
Number of browsers currently acquired from the pool
15
Timestamp when the browser pool was created
Configuration used to create all browsers in this pool
Resolved extension IDs attached to the pool, in configured load order. Empty when no extensions are attached. Authoritative for programmatic consumers; the extensions inside browser_pool_config reflect the configured selector (echoed as sent on create).
Browser pool name, if set
"my-pool"
Resolved profile ID the pool is attached to. Omitted when no profile is attached. Authoritative for programmatic consumers; the profile inside browser_pool_config reflects the configured selector (echoed as sent on create).
"iv25ujqf37x3j07dwoffegqr"