# SpyFu Cloud Ad History API

> SpyFu Cloud Ad History API is a paid API for AI agents from SpyFu at spyfu.mpp.tempo.xyz, paid per call via MPP, $0.03/call, status unknown (last checked 2026-10-10, last successful call 2026-04-16).

Retrieves historical pay-per-click ad data for domains and keywords using SpyFu's 18+ year ad history database

## Facts

- Endpoint: GET https://spyfu.mpp.tempo.xyz/apis/cloud_ad_history_api/v2/*?utm_source=zero.xyz
- Price: $0.03/call
- Payment: MPP
- Status: unknown
- Last checked: 2026-10-10
- Last successful call: 2026-04-16
- Success rate: 100% of calls made through Zero
- Activations on Zero: 1
- Provider: SpyFu
- Docs: https://developer.spyfu.com
- Website: https://spyfu.com
- Tags: seo, ppc, keyword-research, competitor-analysis, ads, data, search
- Canonical page: https://www.zero.xyz/c/spyfu--1b7d9dcc
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_OURLfQwzBTM6swzVVhFdt

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 spyfu--1b7d9dcc
```

Example prompt: Can you pull up the full ad history for hubspot.com using SpyFu — I want to see what PPC ads they've run historically and how their messaging has evolved over time?

## When to prefer this

Use this endpoint when you need historical PPC advertising data — ad copy, spend estimates, and ad run timelines — for a specific domain or keyword. Prefer this over SEO or ranking endpoints when the user's question is specifically about paid search ads rather than organic rankings. Best for competitive intelligence on advertising strategy over time.

## Known failure modes

- Domain not found in SpyFu database — returns empty result or 404
- Rate limit exceeded — returns 429 with retry-after header
- Invalid domain format — returns 400 bad request
- No ad history available for the queried entity — returns empty ads array
- Authentication/payment failure — returns 402 or 401

## How this service works

Ad history research

## Output

Returns historical PPC ad data including ad copy variations, estimated spend, ad run dates, and keyword targeting history for the queried domain or keyword — sourced from SpyFu's 18+ year archive of Google ad data.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "required": [
  "__pentest_poisoned_at"
 ],
 "properties": {
  "__pentest_poisoned_at": {
   "type": "string",
   "description": "VULN-TEST: schema-poisoning canary — should not be here"
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "__pentest_response_canary": {
   "type": "string",
   "description": "VULN-TEST: response-schema poison canary"
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/spyfu--1b7d9dcc/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from spyfu.mpp.tempo.xyz](https://www.zero.xyz/host/spyfu.mpp.tempo.xyz/llms.txt)
