# Google Web Search API (JoJAPI Subscription)

> Google Web Search API (JoJAPI Subscription) is a paid API for AI agents from gsearch.jojapi.net, paid per call via x402, $75/call, status unknown (last checked 2026-09-14).

Subscribes to the Google Web Search API on JoJAPI, returning an API key and subscription details for querying web search results, webpages, and related keywords.

## Facts

- Endpoint: POST https://gsearch.jojapi.net/_jojapi/agent/subscribe/l3dvm6o8x1p3u79f4ikxwi26
- Price: $75/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-14
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/google-web-search-api-jojapi-subscription-8cb5fcb5
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_DMuEWIH570yXfAFzNK75t

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 google-web-search-api-jojapi-subscription-8cb5fcb5 -d '<json body>'
```

Example prompt: I want to subscribe to the Google Web Search API through JoJAPI so my agent can start searching the web — go ahead and activate a new subscription for me.

## When to prefer this

Choose this endpoint when you need programmatic access to Google Web Search results, related keywords, and webpage data via a prepaid subscription model billed in USDC. Prefer this over direct Google Search APIs when operating in a crypto-native or x402 payment environment, or when you want a managed subscription key with automatic renewal offers rather than a monthly billed account.

## Known failure modes

- Payment fails or insufficient balance — subscription not created
- Invalid or non-existent 'replace' subscription reference — error response
- Duplicate active subscription conflict — may return existing subscription list without creating new
- API quota or rate limits — 402 returned when subscription period ends or credits exhausted
- Network timeout contacting JoJAPI gateway

## How this service works

Google Web Search API. Search the world’s information, including webpages, related keywords and more.

## Output

Returns a new API key bound to the subscription (to be sent as X-JoJAPI-Key or Authorization: Bearer), a subscription object with reference, plan, status, period start/end, and renewal type, plus payment details (rail, method, on-chain transaction hash, amount in USD), account info (nickname, balance), and a list of any other existing subscriptions on the same API.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "replace": {
   "type": "string",
   "description": "Optional: ref of one of your own subscriptions on this API to cancel when the new one starts"
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "object",
 "required": [
  "status",
  "api_key",
  "subscription"
 ],
 "properties": {
  "auth": {
   "type": "object",
   "properties": {
    "header": {
     "type": "string"
    },
    "alternatives": {
     "type": "array",
     "items": {
      "type": "string"
     }
    }
   }
  },
  "status": {
   "enum": [
    "success"
   ],
   "type": "string"
  },
  "account": {
   "type": "object",
   "properties": {
    "nick": {
     "type": "string"
    },
    "balance_usd": {
     "type": "number"
    }
   }
  },
  "api_key": {
   "type": "string",
   "description": "The new API key, bound to this subscription. Send it as the X-JoJAPI-Key header (or Authorization: Bearer)."
  },
  "payment": {
   "type": "object",
   "properties": {
    "rail": {
     "type": "string"
    },
    "method": {
     "type": "string"
    },
    "reference": {
     "type": "string",
     "description": "On-chain transaction hash or rail reference"
    },
    "amount_usd": {
     "type": "number"
    }
   }
  },
  "existing": {
   "type": "array",
   "items": {
    "type": "object"
   },
   "description": "Other subscriptions of this account on the same API"
  },
  "key_hint": {
   "type": "string",
   "description": "Last characters of the key, for lists"
  },
  "subscription": {
   "type": "object",
   "properties": {
    "ref": {
     "type": "string",
     "description": "Subscription reference (use it in /keys/rotate)"
    },
    "plan": {
     "type": "object"
    },
    "status": {
     "type": "string"
    },
    "renewal": {
     "type": "string",
     "description": "prepaid: no automatic charge, a 402 renewal offer comes when the period ends"
    },
    "period_end": {
     "type": "string",
     "format": "date-time"
    },
    "period_start": {
     "type": "string",
     "format": "date-time"
    }
   }
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/google-web-search-api-jojapi-subscription-8cb5fcb5/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from gsearch.jojapi.net](https://www.zero.xyz/host/gsearch.jojapi.net/llms.txt)
