Quickstart

@unbrowse/client is a thin HTTP-first SDK. It calls beta-api.unbrowse.ai directly. No binary spawn, no local daemon, runs in the browser, on Node 18+, and on any edge runtime that exposes a fetch. Zero runtime dependencies.

1. Install

npm i @unbrowse/client

2. Get an API key

Sign in at unbrowse.ai/login (magic link). The dashboard mints your first key. Copy it once and store it in UNBROWSE_API_KEY.

3. Resolve an intent

import { Unbrowse } from "@unbrowse/client";

const unbrowse = new Unbrowse({ apiKey: process.env.UNBROWSE_API_KEY });

const result = await unbrowse.resolve({
  intent: "search hackernews for AI agent papers",
});

// result.available_operations: AvailableEndpoint[]
// result.status: "ok" | "empty" | "browse_session_open" | "auth_required" | ...
// result._request_id: paste into support if anything looks off

4. Execute the picked endpoint

const data = await unbrowse.execute({
  endpoint_id: result.available_operations![0].endpoint_id,
  params: { q: "agents" },
});

Two tool calls, never one

Unbrowse always returns a ranked shortlist from resolve. Your LLM picks one and calls execute. The shortlist is rich enough that an LLM can pick without re-prompting; we never auto-execute a guess.

Next

live total calls endpoints domainspolls every 30s