
Search returns ranked URLs with titles and descriptions so your agent lands in the right place on the first try.
Fetch any public or private webpage as HTML, Markdown, or JSON, paired with proxies.
Enrich your agent’s context with fresh and structured web data.
Transform any webpage into fresh agent context. Pass an URL, choose your format, and get back clean, structured content your agent can use immediately.

Give your agent token-optimized web context using Fetch’s Markdown and JSON formats. Markdown is perfect for direct agent context whereas JSON is useful for programatic usage.

Combine Fetch with Browserbase Contexts to fetch content behind authenticated pages. Sign-in first using a Browser, save a context and reuse it across unlimited Fetch requests.
One API Key gives your agents access to the whole web.
import Browserbase from '@browserbasehq/sdk';
const bb = new Browserbase({ apiKey: process.env.BROWSERBASE_API_KEY });
// Pass a URL, get back clean, live markdown your agent can read
const page = await bb.fetchAPI.create({
url: 'https://news.ycombinator.com',
format: 'markdown',
});
console.log(page.statusCode); // 200
console.log(page.content); // LLM-ready markdownimport os
from browserbase import Browserbase
bb = Browserbase(api_key=os.environ["BROWSERBASE_API_KEY"])
# Pass a URL, get back clean, live markdown your agent can read
page = bb.fetch_api.create(
url="https://news.ycombinator.com",
format="markdown",
)
print(page.status_code) # 200
print(page.content) # LLM-ready markdownAn agent-optimized web experience.

Search returns ranked URLs with titles and descriptions so your agent lands in the right place on the first try.

Fetch and Fetch Extract allow you to pull content and convert to markdown or structured JSON from a provided url. Request a page, get content back.

Browse is the final step that lets you take actions on a page. Log in, fill out a form, download a file.

Point an agent at a topic and get back ranked and readable content across hundreds of sources.
Explore use case
Gives your personal AI agents real browsers, Agent Identity, and persistent logins to finish the job on behalf of thousands of users at once.
Explore use case
Reliable browsers that access the portals your verification workflows depend on.
Explore use caseFetch takes a URL and returns the page’s current content as clean Markdown or JSON, with ads and clutter removed. It’s the “read the page” step between Search and Browse.
Call the Fetch API with the URL and ask for Markdown. Fetch renders the page, removes navigation and boilerplate, and returns text ready for an LLM.
Both turn URLs into clean content. Fetch always returns a live copy as Markdown or JSON (up to 5 MB). It can also read pages behind a login using a saved Context.
You can, until the page fights bots or is protected with a login page, at which point the quick script turns into a standing maintenance job. It's the case every managed provider makes: ScrapingBee sells scraping "without managing proxies, browsers, or anti-bot defenses". A Fetch API renders the page, even if authenticated, hands back clean content, and spares you from building and maintaining a browser, proxy, and parsing stack.
Fetch returns a live copy of the page at request time, not a stored snapshot. Cached responses are faster but can be out of date, which is a problem when an agent is about to act on what it reads. Firecrawl, for instance, exposes a cached index mode. A live fetch keeps the agent off stale content.
It returns only the page's real content, with the ads, navigation, cookie banners, and boilerplate taken out, so your model reads less. Token savings are the headline pitch across the category now: providers advertise "reducing token usage by 80%" and "77% fewer tokens" from clean-markdown extraction. Fewer tokens means less for the model to process and a faster response per fetch.
Raw content, markdown or JSON, with responses up to 5 MB. Markdown works well for grounding and retrieval. For JSON, you pass a schema and Fetch extracts just the fields you need. These formats also work on logged-in pages.
Use Fetch to read a page at a known URL. Use Browsers when the agent needs to act on a page: logging in, filling forms, or downloading files. A common pattern is to log in once with a browser, then read the pages behind that login with Fetch.
Yes, with Fetch with Contexts. It’s included at no extra cost on every plan. Setup takes three steps:
It uses the same endpoint. It works for pages whose content loads without JavaScript rendering.
Fetch drops expired cookies and doesn’t write cookie changes back to the Context. To refresh a login, start a browser session with persist: true, sign in again and end the session. Do the same once for a brand-new Context, or for one last saved before September 1, 2026.
