Developers are tired of wiring a new search API every month, and multi-provider SDKs now fall back to the next provider on rate limits (429), timeouts or outages. FastAF fits well as a fallback because it needs **no account or API key** when paid with x402, so a backup never fails on a missing signup.

## What FastAF adds to a chain

Route

What you get

Price

`/x402/v1/serp`

Google organic results (`query`, optional `results` 1–100, zero-based `page`)

$0.003

`/x402/v1/search`

Alias of `/x402/v1/serp` (same Google results)

$0.003

`/x402/v1/bing`

Bing web results

$0.005

`/x402/v1/news`

Google News

$0.005

Source: [https://api.fastaf.co/openapi.json](https://api.fastaf.co/openapi.json) (28 Oct 2026). Documented responses include 429, 502 and 503 (a source timeout or outage is a 503 with `Retry-After: 5`, `error.code` set to `upstream_timeout` or `upstream_unavailable`, `error.stage: "upstream_fetch"` and `error.retry_after: 5`), so your chain can classify FastAF’s own failures the same way.

## Measured: the 402 handshake

From one test machine on 28 Oct 2026 (02:22 UTC), 15 unpaid requests to serp, scrape and bing returned HTTP 402 with a time-to-first-byte between **61 ms and 129 ms**. This is only the price quote step, not a full paid search; we do not publish end-to-end latency numbers we have not verified.

## Example (generic fallback)

```
async function search(q: string) {
  for (const provider of [primary, fastaf]) {
    try { return await provider(q); }
    catch (e: any) { if (![429, 503, 504].includes(e.status)) throw e; }
  }
}

async function fastaf(q: string) {
  const url = "https://api.fastaf.co/x402/v1/serp?query=" + encodeURIComponent(q);
  return payWithX402(url); // your x402 client; settled only if the request succeeds
}
```

Without a wallet: 500 free credits every month after email verification at [https://fastaf.co/signup/](https://fastaf.co/signup/).

Related: [Google SERP API](/apis/google-serp-api/) · [Detect poisoned SERP results](/how-to/detect-poisoned-incomplete-serp-results/) · [Cap retries in agent loops](/how-to/agent-tool-retry-cost/)

## Reference

*   [Google SERP API](/apis/google-serp-api/): every parameter and response field
*   [Docs](/docs/): authentication, errors, MCP and [x402](/docs/#x402)
*   [Pricing](/pricing/): credit packs from $10, without expiry

## Blog posts on Google SERP API

*   [How to scrape Google search results in Python](/blog/scrape-google-search-python/)
*   [What a SERP API actually costs per 1,000 searches](/blog/serp-api-cost-per-1000-searches/)
*   [Giving an LLM fresh web data: SERP APIs for RAG and grounding](/blog/serp-api-for-rag-llm-grounding/)
*   [Web search for AI agents after Bing: what options are left in 2026?](/blog/web-search-api-for-ai-agents-after-bing/)
*   [How an AI agent pays for a web search per call with x402](/blog/ai-agent-pay-per-call-x402/)
*   [LangChain’s Google search tool after Custom Search shuts down](/blog/langchain-google-search-tool-custom-search-shutdown/)
*   [Built-in LLM web search vs a SERP API: cost per answer](/blog/llm-web-search-tool-cost-vs-serp-api/)
*   [Track Google AI Overviews in Python: presence, sources, changes](/blog/track-google-ai-overviews-python/)
*   [n8n web scraping and Google search: a workflow without code](/blog/n8n-google-search-results-workflow/)
*   [How to get Google search results as JSON (no HTML parsing)](/blog/google-results-json-without-parsing/)
*   [Google Search results as reliable structured data: what breaks DIY scraping](/blog/scrape-google-search-without-getting-blocked/)
*   [How to monitor keyword rankings with Python](/blog/how-to-monitor-keyword-rankings-python/)
*   [Google's official Search API vs SERP APIs: what are your options in 2026?](/blog/google-search-api-alternatives/)
*   [Free SERP API tiers compared (2026)](/blog/free-serp-api-tiers-compared/)
*   [Give an AI agent live web search with a hard spending cap](/blog/ai-agent-web-search-spending-cap/)

## Other sources

*   [How to read public Amazon data when your requests fail](/how-to/read-amazon-data/)
*   [How to read public Google Search data when your requests fail](/how-to/read-google-data/)
*   [How to read public Walmart data when your requests fail](/how-to/read-walmart-data/)
*   [How to read LinkedIn data with an API](/how-to/read-linkedin-data/)
*   [How to read public eBay data when your requests fail](/how-to/read-ebay-data/)
*   [How to read public Booking.com data when your requests fail](/how-to/read-booking-data/)
*   [How to read X profile data with an API](/how-to/read-x-data/)
*   [How to read public Zillow data when your requests fail](/how-to/read-zillow-data/)
*   [Pay-per-call web scraping for AI agents with x402](/how-to/x402-pay-per-call-web-scraping/)
*   [MCP servers for Amazon, SERP and web scraping](/how-to/best-mcp-servers-amazon-serp-scraping/)
*   [Cost per agent: monthly SaaS vs x402 pay-per-call](/how-to/cost-per-agent-saas-vs-x402/)
*   [How FastAF handles heavy pages and timeouts](/how-to/heavy-pages-timeouts/)
*   [x402 endpoint discovery checklist: how agents find a paid API (and how FastAF passes it)](/how-to/x402-discovery-checklist/)
*   [Add FastAF to Claude Code, Codex and Cursor](/how-to/add-fastaf-claude-code-codex-cursor/)
*   [How to detect poisoned or incomplete SERP results in AI agents](/how-to/detect-poisoned-incomplete-serp-results/)
*   [Cap agent spend per call with fixed x402 prices](/how-to/agent-spend-caps-per-call-pricing/)
*   [Use FastAF from the Cloudflare Agents SDK](/how-to/fastaf-cloudflare-agents-sdk/)
*   [Budget a scraping job before you run it](/how-to/budget-scraping-job-fixed-prices/)
*   [Try FastAF for free, no card](/how-to/free-search-api-for-agents/)
*   [Too many MCP tools? Keep agent context small](/how-to/mcp-tool-schema-bloat/)
*   [How agents find an API (and where FastAF is)](/how-to/agent-discovery-files/)
*   [Why agent retries cost more than you think](/how-to/agent-tool-retry-cost/)
*   [All how-to guides](/how-to/)

## Compare

*   [FastAF vs SerpApi](/compare/serpapi/)
*   [FastAF vs Exa](/compare/exa/)
*   [FastAF vs Tavily](/compare/tavily/)
*   [FastAF vs Firecrawl](/compare/firecrawl/)
*   [FastAF vs Apify](/compare/apify/)
*   [FastAF vs toll402](/compare/toll402/)
*   [FastAF vs serp402](/compare/serp402/)
*   [FastAF vs AgentBIT](/compare/agentbit/)
*   [FastAF vs Amazon PA-API](/compare/amazon-pa-api/)
*   [FastAF vs Serper](/compare/serper/)
*   [FastAF vs ScrapingBee](/compare/scrapingbee/)
*   [FastAF vs ScraperAPI](/vs/scraperapi/)
*   [FastAF vs Bright Data](/vs/bright-data/)
*   [Benchmarks](/benchmarks/): latency and cost per 1,000 requests, measured

## Try it on your own request

500 free credits every month after email verification, no card.

[Start free](/signup/)[Google SERP API](/apis/google-serp-api/)

## Related

*   [Google SERP API](/apis/google-serp-api/)
*   [How to read public Amazon data when your requests fail](/how-to/read-amazon-data/)
*   [How to read public Google Search data when your requests fail](/how-to/read-google-data/)
