Search data your agent can buy per call
Every SEO data provider wants a contract, a seat and an API key before an agent sees a single number. That is a problem when the buyer is a script that runs once, or an agent that needs one keyword set for one client and never comes back.
These endpoints answer an unpaid request with HTTP 402 and the exact price. Your agent pays that amount in USDC on Base and repeats the request. There is no account to create, no key to store and no minimum. Data comes from DataForSEO; we resell it per call with the markup shown below.
Location and language are the two inputs that cost people money when guessed. GET /v1/locations is free and resolves them before you pay for anything.
Endpoints (26)
| Method | Path | What you get | USDC |
|---|---|---|---|
POST | /v1/serp-report | Google SERP snapshot for a keyword and location: organic results with rank, title, URL, snippet plus SERP features (AI overview, People also ask, featured snippet, local pack, knowledge graph) as JSON and Markdown | 0.03 |
POST | /v1/keyword-metrics | Search volume, CPC and competition for up to 1000 keywords (Google Ads data) | 0.15 |
POST | /v1/keyword-metrics-multi | Search volume, CPC and competition for one keyword set across up to 30 locations in a single call — one payment instead of one per location | 0.15 |
POST | /v1/keyword-ideas | Keyword suggestions for a seed keyword, with search volume and CPC | 0.03 |
POST | /v1/ranked-keywords | Which keywords a domain ranks for, with position, URL and search volume | 0.05 |
POST | /v1/backlinks-report | Backlink profile of a domain: summary metrics plus top 25 referring domains | 0.15 |
POST | /v1/competitors | Organic search competitors of a domain, with keyword overlap metrics | 0.05 |
POST | /v1/site-audit | Complete SEO picture of a domain in one call: traffic estimate, ranked keywords, organic competitors, backlink profile - plus a real on-page crawl (up to 20 pages): on-page score, duplicates, broken links, non-indexable pages, SSL | 1.00 |
POST | /v1/ai-search-volume | How often keywords are asked inside AI assistants (ChatGPT, Perplexity & co) — AI search volume with 12-month history, up to 1000 keywords | 0.05 |
POST | /v1/domain-tech | Full technology stack a domain runs (analytics, frameworks, CMS, servers, payment, ads) plus its domain rank — competitive tech intelligence | 0.05 |
POST | /v1/keyword-difficulty | SEO ranking difficulty (0-100) for up to 1000 keywords — how hard it is to rank on Google page one | 0.05 |
POST | /v1/google-trends | Google Trends interest over the last 12 months for up to 5 keywords — weekly relative-interest timeline plus each term’s average | 0.03 |
POST | /v1/maps-search | Google Maps results for a search: local businesses with rating, address, phone and website | 0.03 |
POST | /v1/news-search | Google News results for a keyword: headlines with source, URL, snippet and timestamp | 0.03 |
POST | /v1/image-search | Google Images results for a keyword: image URL, page URL and alt text | 0.03 |
POST | /v1/bing-serp | Organic Bing results for a keyword — the second search engine, often different from Google | 0.03 |
POST | /v1/brand-mentions | Web mentions of a brand or keyword with source page and sentiment (Content Analysis index) | 0.08 |
POST | /v1/whois | Whois record for one domain: registration/expiry dates, registrar, status codes plus SEO metrics | 0.40 |
POST | /v1/page-audit | Instant technical audit of ONE page: OnPage score, meta, timings and failed checks — no crawl, seconds instead of minutes | 0.03 |
POST | /v1/keyword-gap | Keywords two domains BOTH rank for, with each position — the competitive overlap | 0.05 |
POST | /v1/traffic-estimate | Estimated organic and paid Google traffic for up to 10 domains in one call | 0.05 |
POST | /v1/domain-rank | Organic visibility overview of a domain: keyword counts by position bucket plus estimated traffic | 0.05 |
POST | /v1/keywords-for-site | Keywords a website SHOULD target, derived from its content (Google Ads data) | 0.05 |
POST | /v1/local-businesses | Business listings around a coordinate: name, category, address, phone, website, rating — lead lists for local outreach | 0.05 |
GET | /v1/site-audit-onpage | Fetch the on-page crawl summary of a paid site audit that was still crawling when delivered (free, taskId from the audit response) | free |
GET | /v1/locations | Look up location_code and language_code for the paid SEO endpoints (free) | free |
Calling it
An unpaid request answers HTTP 402 with the price and the payment details. Pay that amount in USDC on Base, then repeat the same request with the payment header — any x402 client does this for you.
curl -i -X POST https://agent.connskill.com/v1/keyword-ideas \
-H 'Content-Type: application/json' \
-d '{"keyword":"electric cargo bike","location_code":2276,"language_code":"de"}'
One free sample per endpoint per day: add the header x-free-sample: 1 on any endpoint priced 0.15 USDC or less.
Through MCP
claude mcp add --transport http connskill https://agent.connskill.com/mcp
npx -y @connskill/mcp-growth-services # local, pays for you with X402_WALLET_KEY
The rest of the catalogue
Numbers & inboxes · EU LLM · Trust & exposure · Website analytics · Social marketing
Full price table: /pricing · machine-readable: /openapi.json, /.well-known/x402, /llms.txt