Agent Pulse + Wallet Guardian API Docs
Pulse signal sink monitoring + wallet threat defense for autonomous agents on Base.
Machine-readable spec: GET /api/docs (OpenAPI 3.1.0)
Explore related pages
Quick Start
Check if an agent is alive in one curl:
curl -s "https://x402pulse.xyz/api/v2/agent/0x1234567890abcdef1234567890abcdef12345678/alive" | jq
The /alive endpoint is free, instant, and needs no authentication. For deeper analytics (reliability, streaks, uptime), v2 endpoints use x402 micropayments — your first call gets a 402 with payment instructions; pay with USDC on Base and retry.
Base URL
https://x402pulse.xyz
All paths below are relative to this base. Responses are JSON with Content-Type: application/json. CORS is enabled on all endpoints.
Rate Limits
Rate-limit headers are included on every response:
X-RateLimit-Limit: 60 X-RateLimit-Remaining: 58 X-RateLimit-Reset: 1738901260
x402 Payment Flow
Paid endpoints implement the x402 protocol for per-request micropayments in USDC on Base. Here's how it works:
Call any paid endpoint normally. The server responds with 402 Payment Required.
The 402 response includes the X-PAYMENT-REQUIRED header with: amount, USDC token address, network (Base), and facilitator address.
Sign and submit the USDC payment to the facilitator contract on Base. The thirdweb SDK handles this automatically with settlePayment().
Re-send the original request with the X-PAYMENT header containing base64-encoded payment proof. The server verifies and returns data.
Example: TypeScript with thirdweb
import { createThirdwebClient } from "thirdweb";
import { facilitator, settlePayment } from "thirdweb/x402";
const client = createThirdwebClient({ clientId: "YOUR_CLIENT_ID" });
// Step 1: Call the endpoint
const res = await fetch("https://x402pulse.xyz/api/v2/agent/0x1234567890abcdef1234567890abcdef12345678/reliability");
if (res.status === 402) {
// Step 2: Read payment requirements
const paymentReq = res.headers.get("X-PAYMENT-REQUIRED");
// Step 3: Settle payment
const proof = await settlePayment(client, JSON.parse(paymentReq));
// Step 4: Retry with proof
const data = await fetch("https://x402pulse.xyz/api/v2/agent/0x1234567890abcdef1234567890abcdef12345678/reliability", {
headers: { "X-PAYMENT": proof },
}).then(r => r.json());
console.log(data);
}Freshness Pricing
Paid endpoints use dynamic pricing based on data freshness:
Pricing
All prices are in USDC (6 decimal places) on Base L2. Payments are processed by the x402 facilitator.
Free EndpointsNo authentication required
Guardian EndpointsWallet auth, monitoring, scans, and revocation tooling
Paid Endpointsx402 micropayment in USDC
Contract References
Canonical addresses are maintained in LINKS.md and environment configuration. The values below are documentation placeholders.