curl --request GET \
--url https://api.onkernel.com/browser_pools/{id_or_name} \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.onkernel.com/browser_pools/{id_or_name}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.onkernel.com/browser_pools/{id_or_name}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.onkernel.com/browser_pools/{id_or_name}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.onkernel.com/browser_pools/{id_or_name}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.onkernel.com/browser_pools/{id_or_name}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.onkernel.com/browser_pools/{id_or_name}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"acquired_count": 15,
"available_count": 85,
"browser_pool_config": {
"size": 10,
"chrome_policy": {},
"extensions": [
{
"id": "<string>",
"name": "<string>"
}
],
"fill_rate_per_minute": 1,
"headless": false,
"kiosk_mode": true,
"name": "my-pool",
"network": {
"private_hosts": [
"*.example.ts.net",
"100.64.0.0/10"
]
},
"profile": {
"id": "<string>",
"name": "<string>"
},
"proxy_id": "<string>",
"refresh_on_profile_update": true,
"start_url": "https://example.com",
"stealth": true,
"telemetry": {
"browser": {
"captcha": {
"enabled": true
},
"connection": {
"enabled": true
},
"console": {
"enabled": true
},
"control": {
"cdp": {
"excluded_methods": [
"Input.dispatchMouseEvent"
]
},
"enabled": true
},
"interaction": {
"enabled": true
},
"network": {
"enabled": true
},
"page": {
"enabled": true
},
"platform": {
"enabled": true
},
"screenshot": {
"enabled": true
},
"system": {
"enabled": true
}
},
"export": {
"otlp": {
"destination": "<string>",
"enabled": true
}
}
},
"timeout_seconds": 129605,
"viewport": {
"height": 800,
"width": 1280,
"refresh_rate": 60
}
},
"created_at": "2023-11-07T05:31:56Z",
"extension_ids": [
"<string>"
],
"id": "iv25ujqf37x3j07dwoffegqr",
"region": "us-east",
"name": "my-pool",
"profile_id": "iv25ujqf37x3j07dwoffegqr"
}{
"code": "bad_request",
"message": "Missing required field: app_name",
"details": [
{
"code": "invalid_input",
"message": "Provided version string is not semver compliant"
}
],
"inner_error": {
"code": "invalid_input",
"message": "Provided version string is not semver compliant"
}
}{
"code": "bad_request",
"message": "Missing required field: app_name",
"details": [
{
"code": "invalid_input",
"message": "Provided version string is not semver compliant"
}
],
"inner_error": {
"code": "invalid_input",
"message": "Provided version string is not semver compliant"
}
}{
"code": "bad_request",
"message": "Missing required field: app_name",
"details": [
{
"code": "invalid_input",
"message": "Provided version string is not semver compliant"
}
],
"inner_error": {
"code": "invalid_input",
"message": "Provided version string is not semver compliant"
}
}{
"code": "bad_request",
"message": "Missing required field: app_name",
"details": [
{
"code": "invalid_input",
"message": "Provided version string is not semver compliant"
}
],
"inner_error": {
"code": "invalid_input",
"message": "Provided version string is not semver compliant"
}
}Get browser pool details
Retrieve details for a single browser pool by its ID or name.
curl --request GET \
--url https://api.onkernel.com/browser_pools/{id_or_name} \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.onkernel.com/browser_pools/{id_or_name}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.onkernel.com/browser_pools/{id_or_name}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.onkernel.com/browser_pools/{id_or_name}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.onkernel.com/browser_pools/{id_or_name}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.onkernel.com/browser_pools/{id_or_name}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.onkernel.com/browser_pools/{id_or_name}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"acquired_count": 15,
"available_count": 85,
"browser_pool_config": {
"size": 10,
"chrome_policy": {},
"extensions": [
{
"id": "<string>",
"name": "<string>"
}
],
"fill_rate_per_minute": 1,
"headless": false,
"kiosk_mode": true,
"name": "my-pool",
"network": {
"private_hosts": [
"*.example.ts.net",
"100.64.0.0/10"
]
},
"profile": {
"id": "<string>",
"name": "<string>"
},
"proxy_id": "<string>",
"refresh_on_profile_update": true,
"start_url": "https://example.com",
"stealth": true,
"telemetry": {
"browser": {
"captcha": {
"enabled": true
},
"connection": {
"enabled": true
},
"console": {
"enabled": true
},
"control": {
"cdp": {
"excluded_methods": [
"Input.dispatchMouseEvent"
]
},
"enabled": true
},
"interaction": {
"enabled": true
},
"network": {
"enabled": true
},
"page": {
"enabled": true
},
"platform": {
"enabled": true
},
"screenshot": {
"enabled": true
},
"system": {
"enabled": true
}
},
"export": {
"otlp": {
"destination": "<string>",
"enabled": true
}
}
},
"timeout_seconds": 129605,
"viewport": {
"height": 800,
"width": 1280,
"refresh_rate": 60
}
},
"created_at": "2023-11-07T05:31:56Z",
"extension_ids": [
"<string>"
],
"id": "iv25ujqf37x3j07dwoffegqr",
"region": "us-east",
"name": "my-pool",
"profile_id": "iv25ujqf37x3j07dwoffegqr"
}{
"code": "bad_request",
"message": "Missing required field: app_name",
"details": [
{
"code": "invalid_input",
"message": "Provided version string is not semver compliant"
}
],
"inner_error": {
"code": "invalid_input",
"message": "Provided version string is not semver compliant"
}
}{
"code": "bad_request",
"message": "Missing required field: app_name",
"details": [
{
"code": "invalid_input",
"message": "Provided version string is not semver compliant"
}
],
"inner_error": {
"code": "invalid_input",
"message": "Provided version string is not semver compliant"
}
}{
"code": "bad_request",
"message": "Missing required field: app_name",
"details": [
{
"code": "invalid_input",
"message": "Provided version string is not semver compliant"
}
],
"inner_error": {
"code": "invalid_input",
"message": "Provided version string is not semver compliant"
}
}{
"code": "bad_request",
"message": "Missing required field: app_name",
"details": [
{
"code": "invalid_input",
"message": "Provided version string is not semver compliant"
}
],
"inner_error": {
"code": "invalid_input",
"message": "Provided version string is not semver compliant"
}
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Path Parameters
Browser pool ID or name
Response
Browser pool details
A browser pool containing multiple identically configured browsers.
Number of browsers currently acquired from the pool
15
Number of browsers currently available in the pool
85
Configuration used to create all browsers in this pool
Show child attributes
Show child attributes
Timestamp when the browser pool was created
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).
Unique identifier for the browser pool
"iv25ujqf37x3j07dwoffegqr"
Geographic region of the browser pool. Fixed once the pool is created.
us-east, eu-west 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"