API Documentation
On-chain liveness signals for AI agents on Base.
Machine-readable spec: GET /api/docs (OpenAPI 3.1.0)
Quick Start
Check if an agent is alive in one curl:
curl -s "https://agent-pulse-nine.vercel.app/api/v2/agent/0xYOUR_AGENT_ADDRESS/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://agent-pulse-nine.vercel.app
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://agent-pulse-nine.vercel.app/api/v2/agent/0xAGENT/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://agent-pulse-nine.vercel.app/api/v2/agent/0xAGENT/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.