# HubVibe Web Search (SERP)

> HubVibe Web Search (SERP) is a paid API for AI agents from hubvibe-io.com, paid per call via x402, $0.25/call, status unknown (last checked 2026-10-01).

Returns raw web and news search results from Brave's independent index, including titles, URLs, descriptions, and freshness metadata, filterable by country, language, and time range.

## Facts

- Endpoint: POST https://hubvibe-io.com/work/search/results?utm_source=zero.xyz
- Price: $0.25/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-01
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/hubvibe-web-search-serp-00eca27e
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_waEtlEz0zAuyKuU9lgyVQ

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 hubvibe-web-search-serp-00eca27e -d '<json body>'
```

Example prompt: Search the web for the latest news about OpenAI's GPT-5 release from the past week — give me up to 10 results in English, news mode on.

## When to prefer this

Choose this endpoint when you need raw, real-time web or news search results from an independent index (Brave, not Google or Bing) with fine-grained control over country, language, freshness, and news vs. web mode. Prefer it over answer-synthesis APIs when you want source URLs to pass to a page-extraction step, or when you need unfiltered SERP data in non-English languages or specific regional markets.

## Known failure modes

- Empty results if query is too niche or freshness filter is too narrow
- Invalid country or language code returns a validation error
- Query exceeding 400 characters is rejected
- Count outside 1–20 range is rejected
- Payment failure or insufficient USDC balance blocks the call

## How this service works

Web search API / SERP results: raw web and news results from Brave's independent index in any language and country, with title, URL, description, age and extra snippets (headline, source and age for news). Filter by country, language and freshness (day, week, month, year). Results, not an answer: pick what to read next with extract.page. Input: query; optional country, language, count, freshness, news.

## Output

A list of up to 20 web or news results, each containing a title, URL, description, and age. News results additionally include headline, source name, and publication age. Results are raw links and summaries — no synthesized answer — intended for the agent to select which pages to read next.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "news": {
   "type": "boolean"
  },
  "count": {
   "type": "integer",
   "maximum": 20,
   "minimum": 1
  },
  "query": {
   "type": "string",
   "maxLength": 400,
   "minLength": 1
  },
  "country": {
   "type": "string",
   "pattern": "^[A-Za-z]{2}$"
  },
  "language": {
   "type": "string",
   "pattern": "^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$",
   "maxLength": 35
  },
  "freshness": {
   "enum": [
    "day",
    "week",
    "month",
    "year"
   ],
   "type": "string"
  },
  "safesearch": {
   "enum": [
    "off",
    "moderate",
    "strict"
   ],
   "type": "string"
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "result": {
   "web": [
    {
     "age": "4 日前",
     "url": "https://www.accuweather.com/en/jp/tokyo/226396/weather-forecast/226396",
     "title": "Tokyo, Tokyo, Japan Weather Forecast | AccuWeather",
     "hostname": "www.accuweather.com",
     "language": "en",
     "page_age": "2026-09-23T10:38:54",
     "site_name": "AccuWeather",
     "description": "Tokyo weather forecast with current conditions...",
     "extra_snippets": []
    }
   ],
   "news": [
    {
     "age": "2 hours ago",
     "url": "https://example.com/news/1",
     "title": "Typhoon nears Tokyo",
     "source": "Reuters",
     "breaking": false,
     "page_age": "2026-09-27T09:00:00",
     "description": "..."
    }
   ],
   "notes": [],
   "query": "東京 天気予報",
   "source": "brave",
   "country": "JP",
   "language": "ja",
   "freshness": "week",
   "web_count": 5,
   "checked_at": "2026-09-26T18:00:00Z",
   "news_count": 3,
   "more_results_available": true
  },
  "status": "ok",
  "worker": "search.results",
  "price_usd": 0.25,
  "provenance": {
   "steps": [
    {
     "ms": 312,
     "ok": true,
     "step": "quote",
     "reason": "provider_timeout",
     "provider": "coinbase-advanced-trade-public"
    }
   ],
   "attempts": 1,
   "elapsed_ms": 340,
   "providers_used": [
    "coinbase-advanced-trade-public"
   ]
  },
  "receipt_id": "rcpt_9f1c2b3a4d5e6f70",
  "attribution": [
   {
    "url": "https://translate.google.com",
    "text": "Translated by Google"
   }
  ],
  "receipt_url": "/work/receipts/rcpt_9f1c2b3a4d5e6f70"
 }
}
```

## More

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