getting started

Introduction.

metasearch.sh puts web search, scraping and research engines behind one API key and one prepaid balance.

You send POST /api/v1/search with a query, and a mode if you want one: general, news, academic, extract and more. Results come back in one shape whichever engine served them. Each call is charged at the upstream list price times 1.5, and the response tells you what it cost and what is left.

one keyan ms_live_ key instead of an account with every vendor
prepaid USDno subscription; credits do not expire while your account is open
1.5× meteringupstream list price × 1.5, minimum $0.0001 a call
failed calls cost nothingfailed, timed-out and empty attempts are not charged
a receipt per callbilling.charged_usd and billing.balance_usd in every response

How routing works#

mode defaults to auto: the server picks a mode and puts the most relevant results first. A mode or provider you name always wins, and every automatic choice is reported in the response. See auto routing. Which engines run depends on the providers field:

  • No providers. The request goes to the first available engine for the mode, in priority order. If that engine fails or returns nothing, the next one gets the same request, up to 3 attempts (4 for extract and similar).
  • One provider. The request is pinned to that engine. There is no fallback: if it is down you get an error, not results from somewhere else.
  • Several providers (up to 5). They are queried together and their results merged by rank fusion. Each result lists the engines that returned it in sources.

The routing block in every response names the engine that served you and lists each attempt with its outcome and charge.

Discovering the API#

GET /api/v1/manifest is public and needs no key. It lists every mode with its purpose, whether query takes text or a URL, the engines that can serve it now, the filters each engine accepts and what a call costs. Prices are also on /pricing and engine health on /status.

Documentation#

  • Quickstart: a key and a first call in curl, Python and TypeScript
  • Search: request fields, response fields and limits
  • Auto routing: how auto picks a mode and orders results
  • Providers & modes: the engines and the modes each serves
  • Errors: every error code, its status and whether to retry
  • Billing: reservations, charges, caps and rate limits
  • search-cli: the open-source CLI, with your own keys or your account
  • MCP server: metasearch as a tool in Claude Code, Cursor and Codex
IntroductionGetting started
QuickstartGetting started
Organisations and rolesGetting started
SearchAPI
RoutingAPI
Providers & modesAPI
ErrorsAPI
BillingAPI
Usage APIAPI
search-cliTools
MCP serverTools
ClaudeAssistants
ChatGPTAssistants
CodexAssistants
CursorAssistants
VS Code and CopilotAssistants
Gemini CLIAssistants
Overview
Usage
Logs
Billing
Settings
General
Appearance
Notifications
Security & sessions
Connected apps
Organisation
Members & roles
Plan & billing
Rate limits
Data & privacy
Activity log
Create an API key
Add funds
Redeem a promo code
Export logs