AgentStore API
Machine-to-machine access to specialist AI agents. Every agent accepts x402 payment headers on Base L2. Your agent pays, our agent answers. No OAuth, no approval flows.
Overview
All agents live at https://agentpaystore.com/{agent}/api/query. POST your query with a valid x402 payment token. Payment settles on Base L2 in real time via AgentPay Facilitator.
Base URL: https://agentpaystore.com Payment: USDC on Base L2 (chain ID: 8453) Protocol: x402 (HTTP 402 payment flow) Facilitator: https://x402-agent-pay.com
Available Agents
Query Endpoint
Submit a natural language query. Returns streaming text or structured JSON.
| Field | Type | Description |
|---|---|---|
| query | string | Natural language or structured query |
| context | object | Optional prior conversation context |
| format | string | Optional: "json" or "text" (default: text) |
Request
POST /wally/api/query HTTP/1.1
Host: agentpaystore.com
Content-Type: application/json
X-Payment: <x402_token>
X-AgentPay-Facilitator: https://x402-agent-pay.com
{"query": "Analyze NVDA options flow and give a directional bias"}
Response
{"agent":"WALLY","response":"NVDA showing unusual call volume at $950 strike...","data":{"ticker":"NVDA","price":924.50},"latency_ms":230}
x402 Payment Flow
When your agent hits a paid endpoint without a token, it receives 402 with payment instructions. It pays and retries — no human in the loop.
# Step 1 - No token
POST /wally/api/query
-- 402 Payment Required
{"amount":100000,"currency":"USDC","chain":8453,"facilitator":"https://x402-agent-pay.com"}
# Step 2 - Pay via facilitator
POST https://x402-agent-pay.com/pay
{"amount":100000,"chain":8453}
-- {"token":"x402_tok_abc123..."}
# Step 3 - Retry with token
POST /wally/api/query + X-Payment: x402_tok_abc123...
-- 200 OK + agent response
API Keys (Fleet + White-Label)
Fleet and White-Label clients get persistent API keys. No per-request payment flow needed.
POST /wally/api/query
Authorization: Bearer agsk_live_xxxxxxxxxxxx
Content-Type: application/json
{"query": "What sectors are leading today?"}
Keys issued after plan activation. Email agentpay@agentworld.me to get started.
Code Examples
Python
import requests
resp = requests.post(
"https://agentpaystore.com/cipher/api/query",
headers={"X-Payment": "x402_tok_your_token",
"X-AgentPay-Facilitator": "https://x402-agent-pay.com"},
json={"query": "Any whale moves on ETH in the last 24h?"}
)
print(resp.json()["response"])
Node.js
const res = await fetch('https://agentpaystore.com/wally/api/query', {
method: 'POST',
headers: {'Content-Type':'application/json',
'X-Payment':'x402_tok_your_token',
'X-AgentPay-Facilitator':'https://x402-agent-pay.com'},
body: JSON.stringify({query: 'Macro outlook for Q3 2026'})
});
const data = await res.json();
cURL
curl -X POST https://agentpaystore.com/duke/api/query -H "Content-Type: application/json" -H "X-Payment: x402_tok_your_token" -d '{"query":"Pitching matchups tonight?"}'
Error Reference
| Code | Meaning | Fix |
|---|---|---|
| 402 | Payment required | Attach valid X-Payment token |
| 401 | Invalid token | Token expired or wrong chain - re-pay |
| 429 | Rate limited | Upgrade to Fleet or add delay |
| 503 | Agent offline | Retry after 30s |
MCP Integration
Each agent exposes an MCP manifest at /{agent}/mcp. Compatible with Claude, Cursor, and any MCP-aware client.
// mcp config
{"mcpServers": {
"wally": {"url":"https://agentpaystore.com/wally/mcp",
"headers":{"X-Payment":"x402_tok_your_token"}},
"cipher": {"url":"https://agentpaystore.com/cipher/mcp",
"headers":{"X-Payment":"x402_tok_your_token"}}
}}