All integrations

Browserbase

DEVELOPER · DEVELOPER

Cloud browser sessions, agent runs, and Functions on their own key.

Acts as the person, not as itself

Each user connects their own account. Every call carries both identities — the agent and the person it is acting for — so the agent can never reach past what that individual can already do.

Credentials never touch the agent

Tokens live in the vault and attach server-side at call time. The agent holds a session, not a secret, and revoking access does not mean rotating a key.

Every call on the record

Who asked, which agent acted, which action ran, and the verdict that let it through — one audit trail across every integration, not one per vendor.

What an agent can do

Each action is granted on its own. An agent allowed to read is not thereby allowed to write, and the scope beside each row is what the acting user must have connected for it to run at all.

browserbase_delete_v1_agents_by_agentidWRITE

Delete an Agent via DELETE /v1/agents/{agentId}. Delete an agent. Runs that already referenced this agent are unaffected. DESTRUCTIVE: the resource is removed and there is no undo. Read it first with the matching Get tool if you may need what it held.

api
browserbase_delete_v1_certificates_by_idWRITE

Delete a Certificate via DELETE /v1/certificates/{id}. Remove a client TLS certificate from the project. Sessions configured to present it can no longer do so, and the certificate must be uploaded again to restore that -- an upload this integration cannot make, because it is a multipart request. DESTRUCTIVE: the resource is removed and there is no undo. Read it first with the matching Get tool if you may need what it held.

api
browserbase_delete_v1_contexts_by_idWRITE

Delete a Context via DELETE /v1/contexts/{id}. DESTRUCTIVE: delete a browser context and the encrypted user-data directory behind it. Every cookie and logged-in session persisted in it is gone and cannot be recovered; sessions that named this context must log in again. DESTRUCTIVE: the resource is removed and there is no undo. Read it first with the matching Get tool if you may need what it held.

api
browserbase_delete_v1_downloads_by_idWRITE

Delete a Download via DELETE /v1/downloads/{id}. Delete a download file from storage and mark as deleted. DESTRUCTIVE: the resource is removed and there is no undo. Read it first with the matching Get tool if you may need what it held.

api
browserbase_delete_v1_extensions_by_idWRITE

Delete an Extension via DELETE /v1/extensions/{id}. Remove an uploaded Chrome extension from the project. Sessions created with this `extensionId` can no longer load it, and restoring it needs a fresh upload -- a multipart request this integration cannot make. DESTRUCTIVE: the resource is removed and there is no undo. Read it first with the matching Get tool if you may need what it held.

api
browserbase_delete_v1_webhooks_by_idWRITE

Delete a Webhook via DELETE /v1/webhooks/{id}. Delete a webhook. Deliveries stop immediately and the signing secret is retired. Events that occurred before the delete are not replayed if the endpoint is registered again. DESTRUCTIVE: the resource is removed and there is no undo. Read it first with the matching Get tool if you may need what it held.

api
browserbase_get_v1_agentsREAD

List Agents via GET /v1/agents. List agents across your account. Supports filtering by creation time.

api
browserbase_get_v1_agents_by_agentidREAD

Get an Agent via GET /v1/agents/{agentId}. Retrieve an agent by ID.

api
browserbase_get_v1_agents_runsREAD

List Runs via GET /v1/agents/runs. List runs across your account. Supports filtering by status, by the agent they reference, and by creation time.

api
browserbase_get_v1_agents_runs_by_runidREAD

Get a Run via GET /v1/agents/runs/{runId}. Retrieve the current status and details of a run, including its result and associated session information. To fetch the run's messages, use [List Run Messages](/reference/api/list-run-messages).

api
browserbase_get_v1_agents_runs_by_runid_messagesREAD

List Run Messages via GET /v1/agents/runs/{runId}/messages. Returns a paginated list of messages produced by a run, in chronological order, with the oldest messages first. Messages conform to the [AI SDK UIMessage format](https://ai-sdk.dev/docs/reference/ai-sdk-core/ui-message).

api
browserbase_get_v1_certificatesREAD

List Certificates via GET /v1/certificates. List the client TLS certificates registered on the project. Each entry carries its id, `projectId` and timestamps; the certificate material itself is not returned. Uploading a certificate is a multipart request and is not available through this integration.

api
browserbase_get_v1_certificates_by_idREAD

Get a Certificate via GET /v1/certificates/{id}. Retrieve one registered client TLS certificate by id, as its identifiers and timestamps. The certificate material itself is not returned.

api
browserbase_get_v1_contexts_by_idREAD

Get a Context via GET /v1/contexts/{id}. Retrieve one browser context by id, with the project it belongs to and its timestamps. The stored browsing state itself is encrypted and is never returned by the API.

api
browserbase_get_v1_downloadsREAD

List Downloads via GET /v1/downloads. List all downloads for a session with optional filtering and pagination.

api
browserbase_get_v1_downloads_by_idREAD

Get a Download via GET /v1/downloads/{id}. Get download metadata (Accept: application/json) or file content (Accept: application/octet-stream).

api
browserbase_get_v1_extensions_by_idREAD

Get an Extension via GET /v1/extensions/{id}. Retrieve one uploaded Chrome extension by id, as its identifiers, `fileName` and timestamps. The extension archive itself is not returned.

api
browserbase_get_v1_functionsREAD

List Functions via GET /v1/functions. List the Functions defined on the account -- deployed browser automation scripts that Browserbase builds and runs on demand. Page with `offset` and `limit`.

api
browserbase_get_v1_functions_buildsREAD

List Function Builds via GET /v1/functions/builds. List Function builds across the account, newest first, optionally narrowed to one build `status`. A build is one publish of a Function's code. Page with `offset` and `limit`.

api
browserbase_get_v1_functions_builds_by_idREAD

Get a Function Build via GET /v1/functions/builds/{id}. Retrieve one Function build by id, with its status and timestamps. Use the build logs tool to read why a failed build failed.

api
browserbase_get_v1_functions_builds_by_id_logsREAD

Get Function Build Logs via GET /v1/functions/builds/{id}/logs. Read the build log for one Function build -- the output of compiling and packaging the Function. This is where the reason for a `FAILED` build is written.

api
browserbase_get_v1_functions_by_idREAD

Get a Function via GET /v1/functions/{id}. Retrieve one Function by id, with the version it currently serves and its timestamps.

api
browserbase_get_v1_functions_by_id_versionsREAD

List Function Versions via GET /v1/functions/{id}/versions. List the versions of one Function, newest first. Page with `offset` and `limit`.

api
browserbase_get_v1_functions_invocations_by_idREAD

Get an Invocation via GET /v1/functions/invocations/{id}. Retrieve one Function invocation by id: a single run of a Function, with its status, timing and result. Use the invocation logs tool for what the run itself printed.

api
browserbase_get_v1_functions_invocations_by_id_logsREAD

Get Invocation Logs via GET /v1/functions/invocations/{id}/logs. Read what one Function invocation logged while it ran. Use this, not the build logs, to diagnose a run that started and then failed.

api
browserbase_get_v1_functions_versions_by_idREAD

Get a Function Version via GET /v1/functions/versions/{id}. Retrieve one Function version by id -- the immutable snapshot of a Function's code that a build produced and that invocations run.

api
browserbase_get_v1_functions_versions_by_id_invocationsREAD

List Invocations for a Function Version via GET /v1/functions/versions/{id}/invocations. List the invocations that ran one specific Function version, optionally narrowed to one `status`. Page with `offset` and `limit`. Use this to compare how a version behaves against another.

api
browserbase_get_v1_projectsREAD

List Projects via GET /v1/projects. List the projects on the account, each with its id, name, owner and default region. This is how a caller DISCOVERS the `projectId` that a few other operations accept -- Agentic Fabriq asks for no project at connect time, because the API key already selects the account and a project is chosen per call.

api
browserbase_get_v1_projects_by_idREAD

Get a Project via GET /v1/projects/{id}. Retrieve one project by id, with its name, owner id, default region and concurrency settings.

api
browserbase_get_v1_projects_by_id_usageREAD

Get Project Usage via GET /v1/projects/{id}/usage. Read a project's usage totals -- browser minutes and proxy bytes consumed. This is the account's metered consumption, which is what the plan tier caps; it is the cheapest way to see what sessions have cost so far.

api
browserbase_get_v1_sessionsREAD

List Sessions via GET /v1/sessions. List the account's browser sessions, optionally narrowed by `status` (RUNNING, ERROR, TIMED_OUT, COMPLETED) or by a free-text `q` query over the session's user metadata.

api
browserbase_get_v1_sessions_by_idREAD

Get a Session via GET /v1/sessions/{id}. Retrieve one browser session by id, with its status, region, timing, the project it belongs to and its usage so far. As on create, the `connectUrl`, `seleniumRemoteUrl` and `signingKey` fields are session connection credentials and are redacted by Agentic Fabriq before the result is returned. CREDENTIAL FIELDS ARE REDACTED FROM THIS RESULT. Browserbase returns `signingKey` (the per-session `x-bb-signing-key` credential) and the `connectUrl`/`seleniumRemoteUrl` connection URLs, whose query string carries the account's API key; Agentic Fabriq replaces that key material before the reply leaves the connector, because a tool result reaches the model's context and the audit pipeline. Everything else is returned untouched, and driving the browser is done with Browserbase's own SDK, holding your key yourself.

api
browserbase_get_v1_sessions_by_id_debugREAD

Session Live URLs via GET /v1/sessions/{id}/debug. Read a session's Live URLs: `debuggerUrl` and `debuggerFullscreenUrl` for watching or taking over the browser in a normal web page, `wsUrl`, and the same pair per open page with each page's title and current URL. These links are CAPABILITY URLs -- Browserbase documents them as shareable, so anyone who holds one can watch and drive that session until it ends. They are returned here because that is what this operation is for; treat them as you would a password.

api
browserbase_get_v1_sessions_by_id_logsREAD

Session Logs via GET /v1/sessions/{id}/logs. Read a session's browser logs: the Chrome DevTools Protocol traffic recorded for the session, request and response by request and response. This is the raw detail behind what the browser did, and on a long session it is large.

api
browserbase_get_v1_sessions_by_id_recording_downloadsREAD

List Session Recording Downloads via GET /v1/sessions/{id}/recording/downloads. Returns the per-page download status for a session, with a short-lived signed URL for each completed page on standard (non-BYOS) projects.

api
browserbase_get_v1_sessions_by_id_replaysREAD

Get Session Replay via GET /v1/sessions/{id}/replays. Returns page metadata for a session replay, including timing information and the URL of each page's HLS playlist.

api
browserbase_get_v1_webhooksREAD

List Webhooks via GET /v1/webhooks. List the project's webhooks, newest first. Signing secrets are not included. Page by passing the previous response's `nextCursor` as `cursor`; a null `nextCursor` means there are no further pages.

api
browserbase_get_v1_webhooks_by_idREAD

Get a Webhook via GET /v1/webhooks/{id}. Retrieve a single webhook by ID. The signing secret is not included; it is only ever returned on create and rotate.

api
browserbase_patch_v1_agents_by_agentidWRITE

Update an Agent via PATCH /v1/agents/{agentId}. Update an existing agent. Only the fields provided in the body are modified; omitted fields are left unchanged.

api
browserbase_patch_v1_webhooks_by_idWRITE

Update a Webhook via PATCH /v1/webhooks/{id}. Update a webhook's endpoint URL, its subscribed event types, or both. Omitted fields are left unchanged. `eventTypes` replaces the existing subscription rather than adding to it. The signing secret is unaffected.

api
browserbase_post_v1_agentsWRITE

Create an Agent via POST /v1/agents. Create a reusable agent. An agent defines a `systemPrompt` and `resultSchema` that guide its behavior for every run. Only `name` is required; an agent created with no `systemPrompt` behaves like an unconfigured run.

api
browserbase_post_v1_agents_runsWRITE

Run an Agent via POST /v1/agents/runs. Run a browser agent to complete the `task` by using web search and browser tooling. Optionally pass `agentId` to run a [custom agent](/reference/api/create-an-agent) you've created. CAPACITY: this starts a real cloud browser, so it occupies one of the plan's CONCURRENT SESSION slots (3 on the free tier) and consumes browser minutes while it runs. A request over the limit is refused by Browserbase, and the remedy is to release a session or raise the plan -- never to re-paste the API key.

api
browserbase_post_v1_agents_runs_by_runid_stopWRITE

Stop a Run via POST /v1/agents/runs/{runId}/stop. Request that an in-progress run stop. The run winds down and transitions to `STOPPED`. Stopping a run that has already finished returns a conflict.

api
browserbase_post_v1_contextsWRITE

Create a Context via POST /v1/contexts. Create a browser context: a reusable, encrypted user-data directory that persists cookies, local storage and the logged-in state of websites between sessions. Both fields are optional -- `projectId` selects the project (read the ids from List Projects) and `name` labels the context. The reply carries the context id plus the public key, cipher algorithm and initialization-vector size used to encrypt the directory.

api
browserbase_post_v1_fetchWRITE

Fetch a Page via POST /v1/fetch. Fetch a page and return its content, headers, and metadata. This reaches the OPEN INTERNET from Browserbase's infrastructure using the connection's account, so the address requested is attributable to the customer and counts against the plan's usage.

api
browserbase_post_v1_functions_by_id_invokeWRITE

Invoke a Function via POST /v1/functions/{id}/invoke. Run a Function. `params` is passed to the Function's own code and `sessionCreateParams` configures the browser session the run gets -- both optional. This starts a real browser session against the account's concurrency limit and counts towards the plan's usage; the reply identifies the invocation, which the invocation and log tools then follow. CAPACITY: this starts a real cloud browser, so it occupies one of the plan's CONCURRENT SESSION slots (3 on the free tier) and consumes browser minutes while it runs. A request over the limit is refused by Browserbase, and the remedy is to release a session or raise the plan -- never to re-paste the API key.

api
browserbase_post_v1_searchWRITE

Web Search via POST /v1/search. Perform a web search and return structured results. This reaches the OPEN INTERNET from Browserbase's infrastructure using the connection's account, so the address requested is attributable to the customer and counts against the plan's usage.

api
browserbase_post_v1_sessionsWRITE

Create a Session via POST /v1/sessions. Start a cloud browser session. Every field is optional: `projectId` selects the project (read ids from List Projects), `browserSettings` configures the browser (viewport, context, fingerprint, ad blocking), `proxies`/`proxySettings` route traffic, `region` places the browser, `timeout` caps its lifetime, `keepAlive` keeps it open after the last client disconnects, `extensionId` loads an uploaded extension and `userMetadata` labels it for later search. A session occupies one of the plan's concurrent slots -- three on the free tier -- and consumes browser minutes until it is released. The reply's `connectUrl`, `seleniumRemoteUrl` and `signingKey` are session CONNECTION CREDENTIALS and are redacted by Agentic Fabriq before the result is returned; drive the session with Browserbase's own SDK, holding your key yourself. CAPACITY: this starts a real cloud browser, so it occupies one of the plan's CONCURRENT SESSION slots (3 on the free tier) and consumes browser minutes while it runs. A request over the limit is refused by Browserbase, and the remedy is to release a session or raise the plan -- never to re-paste the API key. CREDENTIAL FIELDS ARE REDACTED FROM THIS RESULT. Browserbase returns `signingKey` (the per-session `x-bb-signing-key` credential) and the `connectUrl`/`seleniumRemoteUrl` connection URLs, whose query string carries the account's API key; Agentic Fabriq replaces that key material before the reply leaves the connector, because a tool result reaches the model's context and the audit pipeline. Everything else is returned untouched, and driving the browser is done with Browserbase's own SDK, holding your key yourself.

api
browserbase_post_v1_sessions_by_idWRITE

Update a Session via POST /v1/sessions/{id}. Update a running session. `status` is required, and setting it to `REQUEST_RELEASE` is how a session is CLOSED -- which ends its billing, frees one of the plan's concurrent slots and cannot be undone. A session that is already finished cannot be updated.

api
browserbase_post_v1_sessions_by_id_recording_downloadsWRITE

Create Session Recording Downloads via POST /v1/sessions/{id}/recording/downloads. Requests one downloadable MP4 per recorded page of a session. Assembly runs asynchronously and every page returns as `PENDING`. Re-posting re-enqueues all pages and retries any that failed. Poll the GET endpoint for per-page status and, on standard (non-BYOS) projects, download URLs.

api
browserbase_post_v1_webhooksWRITE

Create a Webhook via POST /v1/webhooks. Register an HTTPS endpoint to receive events for this project. The response includes the signing secret, which is shown only here and when the secret is rotated. Store it before discarding the response. An endpoint may only be registered once per project. THE SIGNING SECRET IS REDACTED FROM THIS RESULT, and Browserbase returns it only here -- no endpoint reads it back, which is also why Agentic Fabriq does not offer the rotate operation. If you need to hold the secret in order to verify delivery signatures, register the endpoint with Browserbase's own SDK or API; everything else about the webhook is returned normally.

api

Put Browserbase behind one governed endpoint.

Same permissions, same audit trail, whatever else you connect next.