# API Direct Google Web Search

> API Direct Google Web Search is a paid API for AI agents from x402.apidirect.io, paid per call via x402, $0.005/call, status unknown (last checked 2026-10-30).

Run a real-time Google search and return organic results with position, title, URL, snippet, source, domain, and displayed link.

## Facts

- Endpoint: GET https://x402.apidirect.io/v1/web/search?utm_source=zero.xyz
- Price: $0.005/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-30
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/api-direct-google-web-search-704bca0e
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_vBN_6L0BEJyZjY6396VRU

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 api-direct-google-web-search-704bca0e
```

Example prompt: Search Google for 'best open-source LLM frameworks 2024' and show me the top 10 organic results including titles, URLs, and snippets — use the US region and English language.

## When to prefer this

Choose this endpoint when you need real-time Google organic search results with structured metadata (position, URL, snippet, domain) per result. Prefer it over static datasets or cached indexes when freshness matters, when you need country- or language-specific SERPs, when you want to simulate mobile vs desktop search behavior, or when you need Google's AI Overview. Each page of 10 results is billed separately at $0.005 USDC.

## Known failure modes

- Missing or empty 'query' parameter returns 400 error
- Country code not exactly 2 characters returns 400
- Language code not exactly 2 characters returns 400
- 'pages' value above 10 returns 400
- Query exceeding 500 characters returns 400
- Payment failure due to insufficient USDC balance
- No results returned for highly niche or nonsensical queries
- AI overview field is null when Google generates no overview for the query

## How this service works

Run a real-time Google search and return organic results with position, rank, title, URL, snippet, source, domain, and displayed link.

## Output

An array of organic search result objects, each containing position/rank, title, URL, snippet, source name, domain, and displayed link. Optionally includes Google's AI Overview text if requested. Results are ordered by Google rank and can span multiple pages (10 results per page).

## 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"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "GET",
      "HEAD",
      "DELETE"
     ],
     "type": "string"
    },
    "queryParams": {
     "type": "object",
     "required": [
      "query"
     ],
     "properties": {
      "time": {
       "enum": [
        "any",
        "hour",
        "day",
        "week",
        "month",
        "year"
       ],
       "type": "string",
       "default": "any",
       "description": "Time filter for results"
      },
      "pages": {
       "type": "integer",
       "default": 1,
       "maximum": 10,
       "minimum": 1,
       "description": "Number of result pages to fetch and merge (10 results per page). This is a count, not a page number: pages=3 returns the first 30 results in a single results array. Values above 10 are rejected with 400; values below 1 are treated as 1. Each page is billed as one request."
      },
      "query": {
       "type": "string",
       "maxLength": 500,
       "description": "Search keyword (max 500 characters, measured after leading and trailing whitespace is trimmed). Supports Google advanced operators (site:, inurl:, intitle:, etc.)"
      },
      "device": {
       "enum": [
        "desktop",
        "mobile"
       ],
       "type": "string",
       "default": "desktop",
       "description": "Device type to simulate"
      },
      "country": {
       "type": "string",
       "default": "us",
       "maxLength": 2,
       "minLength": 2,
       "description": "2-letter ISO 3166-1 alpha-2 country code. A value that is not exactly 2 letters is rejected with 400."
      },
      "language": {
       "type": "string",
       "default": "en",
       "maxLength": 2,
       "minLength": 2,
       "description": "2-letter ISO 639-1 language code. A value that is not exactly 2 letters is rejected with 400."
      },
      "location": {
       "type": "string",
       "description": "City-level geo location (e.g. London,England,United Kingdom)"
      },
      "include_ai_overview": {
       "type": "boolean",
       "default": false,
       "description": "When true, include Google's AI Overview for the query. Only the exact value true (case-insensitive) enables it. When enabled, the response alway
… (truncated)
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/api-direct-google-web-search-704bca0e/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from x402.apidirect.io](https://www.zero.xyz/host/x402.apidirect.io/llms.txt)
