# OpenVerbs Web Search (SERP)

> OpenVerbs Web Search (SERP) is a paid API for AI agents from search.openverbs.com, paid per call via x402, $0.01/call, status unknown (last checked 2026-09-14).

Returns live organic web search results (title, URL, domain, snippet) from Google or Bing for a given query, localized by location and language.

## Facts

- Endpoint: POST https://search.openverbs.com/v1/web
- Price: $0.01/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-14
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/openverbs-web-search-serp-eac10c7e
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_3AbHNXHRIHtSJyOjTKLuT

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability openverbs-web-search-serp-eac10c7e -d '<json body>'
```

Example prompt: Search Google for 'best electric vehicles 2025' and give me the top 5 organic results including their titles, URLs, and snippets — localized to the United Kingdom in English.

## When to prefer this

Choose this endpoint when you need live, ranked organic web search results from Google or Bing with localization support (language and location). Prefer it over static knowledge bases when freshness matters, for RAG grounding, or when you need real URLs and snippets from the open web. It is especially well-suited for agents that need to cite sources or retrieve current facts not available in training data.

## Known failure modes

- Empty results if query is too niche or returns no indexed pages
- Rate limiting or payment failure if x402 USDC payment is not properly handled
- Invalid language code (must be 2-letter ISO) causes validation error
- Location string not recognized may fall back to default (United States)
- Limit exceeding 100 or below 1 returns a validation error
- Engine value outside 'google'/'bing' enum rejected
- Query exceeding 700 characters truncated or rejected

## How this service works

Web search API - live Google (default) or Bing SERP for a query: search engine results returned as ranked organic hits with title, URL, domain and snippet, localised by location and language. A google search api / serp api for agents: search the web, live web search for grounding, RAG and web lookup.

## Output

A JSON object containing the total estimated result count and an array of ranked organic hits, each with rank position, page title, URL, domain, breadcrumb path, and a text snippet/description.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method",
    "bodyType",
    "body"
   ],
   "properties": {
    "body": {
     "type": "object",
     "required": [
      "q"
     ],
     "properties": {
      "q": {
       "type": "string",
       "maxLength": 700,
       "minLength": 1,
       "description": "Search query."
      },
      "limit": {
       "type": "integer",
       "maximum": 100,
       "minimum": 1,
       "description": "Depth / maximum results. Defaults to 10."
      },
      "engine": {
       "enum": [
        "google",
        "bing"
       ],
       "type": "string",
       "description": "Search engine. Defaults to google."
      },
      "language": {
       "type": "string",
       "pattern": "^[A-Za-z]{2}$",
       "description": "Language code (2-letter). Defaults to en."
      },
      "location": {
       "type": "string",
       "maxLength": 120,
       "minLength": 2,
       "description": "Location name, e.g. \"United States\" or \"London,England,United Kingdom\". Defaults to United States."
      }
     },
     "additionalProperties": false
    },
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "POST"
     ],
     "type": "string"
    },
    "bodyType": {
     "enum": [
      "json",
      "form-data",
      "text"
     ],
     "type": "string"
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object"
    }
   }
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "total": 1240000,
  "results": [
   {
    "url": "https://www.coinbase.com/price/ethereum",
    "rank": 1,
    "title": "Ethereum (ETH) Price, Charts, and News",
    "domain": "coinbase.com",
    "breadcrumb": "https://www.coinbase.com › price › ethereum",
    "description": "Get the latest Ethereum price, ETH market cap, trading pairs, charts and data."
   }
  ]
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/openverbs-web-search-serp-eac10c7e/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from search.openverbs.com](https://www.zero.xyz/host/search.openverbs.com/llms.txt)
