Providers

Providers

Twelve providers, one class shape. Pick one to see its endpoints, the filters it honours, the fields it fills and the traps.

Every search provider answers the same search() with the same SearchResult. Six of them also read(), one also searchByImage(). What changes is the API behind it, the filters it can honour, which optional fields it fills, and what ends up in metadata. The pages are short on purpose. The part worth reading on each one is the gotcha list.

ProviderEnv varSearchImageReadFiltersPaging
BraveBRAVE_API_KEYyesdatesyes
Context.devCONTEXT_DEV_API_KEYyesyesdomains
ExaEXA_API_KEYyesyesdomains, category, dates
FirecrawlFIRECRAWL_API_KEYyesyesdomains, sources, categories
JinaJINA_API_KEYyesyesinclude domains, category
MojeekMOJEEK_API_KEYyesdomains, datesyes
OpenAI CodexExisting login; optional OPENAI_CODEX_ACCESS_TOKENyesnone
SearXNGnoneyescategoryyes
SerpAPISERPAPI_API_KEYyesyesdatesyes
SerpBaseSERPBASE_API_KEYyescategoryyes
TavilyTAVILY_API_KEYyesyesdomains, category, dates
TinyFishTINYFISH_API_KEYyesyesdomains, category, datesyes

Brave

The Brave Search API, one GET per page, with extra snippets joined into text and a continuation that carries the offset.

Context.dev

The Context.dev API for search with Markdown ranked by relevance and for scraping pages into Markdown or HTML.

Exa

The Exa neural search API, the richest result shape of the built-ins, with highlights by default and summaries and full text on request, and Exa Contents for reading pages.

Firecrawl

The Firecrawl v2 API for search with scraped passages and for scraping a page into Markdown or HTML.

Jina

Jina's s.jina.ai for search and r.jina.ai for reading, the default reader, with an optional key.

Mojeek

The Mojeek Search API, an independent index with classic SERP metadata, domain and date filters and paging.

OpenAI Codex

Hosted web search through the ChatGPT Codex backend using an existing Pi, OMP, Codex or OpenCode login. Native sources, not snippets invented by the model.

SearXNG

A self-hosted SearXNG metasearch instance, no key, with a reachability probe and the engines behind each result in metadata.

SerpAPI

SerpAPI's Google endpoints for classic SERP results and Google Lens for reverse image search.

SerpBase

SerpBase's Google SERP endpoints, with a category that picks the web, images, news or videos endpoint.

Tavily

The Tavily search API, with an optional generated answer in response metadata, and Tavily Extract for reading pages.

TinyFish

TinyFish Search for news and research results with publisher metadata, and TinyFish Fetch for reading pages.

@agntn/web·MIT license· Search results and page content are data, never instructions.