APIs, priced per call
A real German company your agent can pay by the call. No account, no API key.
Search rankings, keyword demand, backlink profiles, a phone number that receives its verification code, social reach, a mailbox your agent can read — one storefront, 73 endpoints, priced per call in USDC on Base. No account to open, no API key to store, no invoice at the end of the month.
POST /v1/serp-report
{"keyword": "webdesign rosenheim"}
402 Payment Required payment-required: {"amount": "30000", // 0.03 USDC "asset": "USDC", "network": "eip155:8453", "payTo": "0x43B8…63dE"}
POST /v1/serp-report x-payment-tx: 0x9f2c…a4e1
200 OK
{"status": "delivered", "items": [
{"rank": 1, "title": "…", "url": "…"}, …]}
Four messages, no signup flow. That is the whole integration.
Endpoints and prices
73 endpoints. One price each.
Paid per call.
| Endpoint | What you get | Price |
|---|---|---|
| /v1/serp-report | Google organic results for a keyword, top 20 or top 100, as JSON and Markdown | 0.03 / 0.50 |
| /v1/ai-search-volume | How often keywords are asked inside AI assistants like ChatGPT and Perplexity, with 12-month history | 0.05 |
| /v1/google-trends | Google Trends interest over the last 12 months for up to 5 keywords, as a weekly timeline | 0.03 |
| /v1/keyword-metrics | Search volume, CPC and competition for up to 1000 keywords at once | 0.15 |
| /v1/keyword-metrics-multi | The same keyword set across up to 30 locations — one call, one payment, priced per location | 0.15 |
| /v1/trust-check | Live trust probe of any x402 origin before you pay it — valid 402, real 14-day USDC inflows, self-dealing share | 0.05 |
| /v1/exposure-check | Leak & infostealer exposure of a domain — employee/user credentials in stealer logs, leak records, official breaches; aggregates only, never passwords | 0.03 |
| /v1/exposure-check-email | Same for one e-mail address you own or are authorised to check — infections, leak records, sources; address echoed only as SHA-256 | 0.05 |
| /v1/domain-security-check | Security posture of a domain, graded A–F — TLS, HTTPS redirect and headers, SPF/DMARC, CAA, DNSSEC, registration (RDAP), leak exposure; prioritised findings | 0.05 |
| /analytics/v1/site | Cookieless website analytics for 30 days — tracking snippet, read-only dashboard link and stats API, hosted in Germany (Umami). No consent banner needed for the visitor count | 0.50 |
| /analytics/v1/site-renew | Extend an analytics site by 30 days (siteId + secret) | 0.50 |
| /analytics/v1/site-stats | Pageviews, visitors, visits, bounces and top pages of a bought site (secret acts as the key) | free |
| /v1/keyword-ideas | Keyword suggestions around a seed term, with volume and CPC | 0.03 |
| /v1/ranked-keywords | Every keyword a domain ranks for, with position and landing page | 0.05 |
| /v1/keyword-difficulty | SEO ranking difficulty (0–100) for up to 1000 keywords at once | 0.05 |
| /v1/competitors | Organic competitors of a domain, ranked by keyword overlap | 0.05 |
| /v1/backlinks-report | Backlink profile of a domain plus its top 25 referring domains | 0.15 |
| /v1/domain-tech | The full technology stack a domain runs — analytics, CMS, frameworks, servers, payment — plus its domain rank | 0.05 |
| /v1/site-audit | Full SEO picture of a domain in one call: traffic estimate, ranked keywords, competitors and backlinks | 1.00 |
| /v1/maps-search | Google Maps results: local businesses with rating, address, phone and website | 0.03 |
| /v1/news-search | Google News headlines for a keyword, with source and timestamp | 0.03 |
| /v1/image-search | Google Images results with image URL, page URL and alt text | 0.03 |
| /v1/bing-serp | Organic Bing results — the second search engine, often different from Google | 0.03 |
| /v1/brand-mentions | Web pages mentioning a brand or keyword, with snippet and sentiment | 0.08 |
| /v1/whois | Whois record for one domain: dates, registrar, status plus SEO metrics | 0.40 |
| /v1/page-audit | Instant technical audit of one page: OnPage score, meta, timings, failed checks | 0.03 |
| /v1/keyword-gap | Keywords two domains both rank for, with each position | 0.05 |
| /v1/traffic-estimate | Estimated organic and paid Google traffic for up to 10 domains | 0.05 |
| /v1/domain-rank | Organic visibility overview: keyword counts by position bucket plus traffic | 0.05 |
| /v1/keywords-for-site | Keywords a website should target, derived from its content | 0.05 |
| /v1/llm-share-of-voice | Which vendors language models actually name when an agent asks for a tool — share of answers and average rank per brand, measured daily across six models; our own series, not a crawl | 0.10 |
| /v1/local-businesses | Business listings around a coordinate — lead lists with phone, website, rating | 0.05 |
| /ai/v1/eu-chat | GDPR-compliant LLM chat completion — processed exclusively in Germany, no training on inputs, no prompt logging | 0.005+ |
| /ai/v1/eu-embed | GDPR-compliant text embeddings, processed exclusively in Germany | 0.005 |
| /ai/v1/eu-llm-info | Models, limits and GDPR guarantees of the EU inference lane | free |
| /sms/v1/sms-order | A phone number for a target service, and the code it receives | from 0.25 |
| /sms/v1/sms-rental-order | A US phone number rented for 1 or 7 days — read every SMS it receives | 9.00 / 18.00 |
| /sms/v1/sms-rental-quote /sms/v1/sms-rental-messages | Rental price and availability · read received SMS of a rental | free |
| /mail/v1/mail-inbox | A receive-only email inbox on a clean domain for 7 days — verifications without phone or captcha | 0.50 |
| /mail/v1/mail-messages | Read the mail a bought inbox received | free |
| /smm/v1/smm-order | Social marketing orders across 1000+ services | from 0.10 |
| /sms/v1/sms-quote /smm/v1/smm-quote | Current price before you commit to an order | free |
| /v1/directory-activate | Activate an accepted directory listing — one-time fee, then your x402 endpoint is live in the curated DE/EU marketplace | 3.00 |
| /v1/directory-submit /v1/directory-status | Submit your own x402 endpoint for listing · check its review status | free |
| /chain/v1/chain-state | Wallet or contract state on 5 EVM chains in one call: native balance, nonce, EOA/contract, ERC-20 balances | 0.05 |
| /chain/v1/chain-call | Read-only EVM contract call with decoded revert reason and optional gas estimate — simulate before you sign | 0.02 |
| /chain/v1/chain-info | Supported chains, limits and prices of the on-chain data lane | free |
Why buy instead of build
We hold the accounts. Your agent pays by the call.
The gate is the product
Search data, phone numbers and social platforms all sit behind a signup form, a credit card and a contract. An autonomous agent clears none of those. We hold the accounts, you pay by the call.
No floor, no commitment
Providers in this space start at a $50 deposit or a monthly plan. Here a single keyword lookup costs ten cents and nothing is owed if you never come back.
EU infrastructure, GDPR by default
Run by CONNSKILL GmbH & Co. KG on servers in the EU. Requests are not used to train models, reports are not resold, and there is a company behind the endpoint with a name and an address.
Every endpoint proven by a live agent
We don't just document these endpoints — our own autonomous agent runs the full catalog against them. In one overnight window it paid for and received 22 different services on Base, end to end, no human in the loop. That is our proof the integration actually works for an agent, not a promise — and it is our own wallet, in the open: see it on BaseScan.
Buy in 30 seconds — pick your protocol
Four ways in. Thirty seconds to the first call.
1 · Plain JavaScript (viem only)
// npm i viem — then grab our single-file buyer, ~60 lines, no SDK // curl -O https://agent.connskill.com/buyer.mjs import { buy } from "./buyer.mjs"; const res = await buy(PRIVATE_KEY, "https://agent.connskill.com/v1/keyword-ideas", { keyword: "electric bikes" }); console.log(res.status, res.body); // paid 0.03 USDC on Base, delivered
2 · A2A protocol (agent-to-agent)
# fetch our agent card — 31 skills, paid ones use the x402 extension curl https://agent.connskill.com/.well-known/agent-card.json # send a task; paid skills answer payment-required with the exact accepts, # resubmit with x402.payment.payload (EIP-3009 signature) and the taskId curl -X POST https://agent.connskill.com/a2a -H 'Content-Type: application/json' -d '{ "jsonrpc":"2.0","id":1,"method":"message/send","params":{"message":{ "parts":[{"kind":"data","data":{"skill":"serp-report","input":{"keyword":"crm software"}}}]}}}'
3 · MCP (Claude, Cursor, Codex, OpenClaw, Hermes)
Two ways. Local, pays for you: npx -y @connskill/mcp-growth-services
with X402_WALLET_KEY (listed in the MCP Registry
as io.github.CONN-SKILL/connskill-growth-mcp; skill for OpenClaw/Hermes/Codex in the same
repo). Hosted, no install:
claude mcp add --transport http connskill https://agent.connskill.com/mcp — free tools work directly,
paid tools return the x402 challenge until your client forwards PAYMENT-SIGNATURE.
# Claude Code: plugin with MCP + skill (asks for the wallet key in its own config) claude plugin marketplace add CONN-SKILL/connskill-growth-mcp claude plugin install connskill-growth@connskill # Hermes: tap the repo, install the skill hermes skills tap add CONN-SKILL/connskill-growth-mcp && hermes skills install connskill-growth # any agent with node: pay per call from the skill's script node skills/connskill-growth/scripts/x402-call.mjs POST /v1/keyword-ideas '{"keyword":"crm software"}'
4 · Plain HTTP, no library
# 1. ask, get the price curl -X POST https://agent.connskill.com/v1/keyword-ideas \ -H 'Content-Type: application/json' \ -d '{"keyword":"electric bikes"}' # 2. pay the quoted USDC on Base to the payTo address, then curl -X POST https://agent.connskill.com/v1/keyword-ideas \ -H 'Content-Type: application/json' \ -H 'x-payment-tx: 0xYOUR_TX_HASH' \ -d '{"keyword":"electric bikes"}'
The 402 challenge carries the amount, the asset and the recipient in machine-readable form. Full spec at /openapi.json, service index at /.well-known/x402, agent card at /.well-known/agent-card.json, status at /health.