Coinbase's new CDP x402 SDK gives any agent a managed wallet, spend controls, and hosted settlement in three lines of code. What the quickstarts don't include is a real API to point it at. PulseNetwork is 73 live x402 APIs / 900+ endpoints — token safety scans, weather, CVE checks, market and macro data — payable per call in USDC from $0.015. Compatibility with the new SDK's payment pipeline and spend controls was verified the day it shipped.
Install the SDK and the x402 packages it builds on:
npm install @coinbase/cdp-sdk @x402/core @x402/evm @x402/svm @x402/extensions @x402/fetch
Set CDP_API_KEY_ID, CDP_API_KEY_SECRET, and CDP_WALLET_SECRET from the CDP Portal. The client provisions a managed wallet on first use — no private keys to store.
import { CdpX402Client } from "@coinbase/cdp-sdk/x402";
import { wrapFetchWithPayment } from "@x402/fetch";
const client = new CdpX402Client();
// Fund this address with a little USDC on Base before the first payment:
const { evmAddress } = await client.getAddresses();
console.log("fund me:", evmAddress);
const payingFetch = wrapFetchWithPayment(fetch, client);
// $0.015 — honeypot / rug-risk scan for any EVM token
const res = await payingFetch(
"https://onchainpulse.theaslangroupllc.com/api/evmtoken?address=0x1f9840a85d5aF5bf1D1762F925BDADdC4201F984&chain=base"
);
console.log(await res.json());
That's the whole flow: the endpoint answers with an HTTP 402 quote, the SDK signs a USDC payment authorization with the managed wallet, replays the request, and the data comes back. Settlement runs through the CDP facilitator — the same infrastructure PulseNetwork has settled on since launch.
Caps are enforced client-side before any funds move. A cap below the endpoint's price throws SpendControlError (per_payment_cap) instead of paying; within caps, the payment settles normally. Both behaviors were tested against the endpoint above on 2026-07-23. Amounts are atomic USDC units (6 decimals — 15000n = $0.015).
const USDC_BASE = "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913";
const client = new CdpX402Client({
spendControls: {
maxAmountPerPayment: { atomic: 50_000n, asset: USDC_BASE }, // ≤ $0.05 per call
maxCumulativeSpend: { atomic: 1_000_000n, asset: USDC_BASE }, // ≤ $1.00 …
maxCumulativeSpendWindow: "24h", // … per day
},
});
The SDK's other launch feature is the upto scheme: your agent authorizes a maximum, the seller settles only what the request actually used. Six PulseNetwork endpoints run it in production — every one verified on-chain with a CDP managed wallet. CdpX402Client supports upto on Base out of the box, and the one-time Permit2 allowance is gas-sponsored — a fresh managed wallet with zero ETH pays with no setup. Exact-scheme payments still work everywhere at the flat price.
longevitypulse…/api/longevity/clinical-trials?max_trials= — $0.04 + $0.003/trial (1–20, authorize $0.10)govspendpulse…/api/govspend/us-contracts?limit= — $0.03 + $0.0025/award (1–20, authorize $0.08)govspendpulse…/api/govspend/eu-tenders?limit= — $0.03 + $0.0025/notice (1–20, authorize $0.08)truthpulse…/api/truth/new-releases?limit= — $0.03 + $0.0025/release (1–20, authorize $0.08)footballpulse…/api/accumulator?max_legs= — $0.07 + $0.01/leg (2–8, authorize $0.15)edupulse…/api/exam/flashcards?count= — $0.20 + $0.015/card (1–20, authorize $0.50)// authorize up to $0.10, settle $0.049 for 3 trials — same payingFetch as above const res = await payingFetch( "https://longevitypulse.theaslangroupllc.com/api/longevity/clinical-trials?condition=rapamycin&max_trials=3" );
Small, fast, and useful — good smoke tests for a new paying agent. The full catalog (73 APIs, 900+ endpoints, $0.01–$2.00) is on the hub and in openapi.json.
/api/evmtoken?address=&chain=
$0.015
EVM token safety scan — honeypot, mint/pause flags, liquidity, holder concentration. 8 chains incl. Base & Robinhood Chain.
onchainpulse.theaslangroupllc.com
/api/memecoin?address=<mint>
$0.015
Solana memecoin safety scan — pass the SPL mint address (base58).
onchainpulse.theaslangroupllc.com
/api/cyber/cve-check?cve=
$0.02
CVE lookup with severity, exploitation status, and remediation context.
cyberpulse.theaslangroupllc.com
/api/climate/now?location=
$0.05
Current weather conditions for any location.
climatepulse.theaslangroupllc.com
Coinbase for Agents gives your agent the order book and execution. It does not tell you whether the token you're about to buy can be sold back. A $0.015 safety scan before each entry catches honeypots, mintable supply, pausable transfers, fake liquidity, and whale-concentrated holders — the exact failure modes autonomous buyers hit. Add it as the pre-trade gate: if the scan flags critical risk, skip the trade. One avoided bad fill pays for thousands of scans.
// pre-trade gate: refuse to buy anything that fails a safety scan
const scan = await payingFetch(
`https://onchainpulse.theaslangroupllc.com/api/evmtoken?address=${token}&chain=base`
);
const report = await scan.json();
if (report.verdict !== "low_risk") skipTrade(report);
Yes — verified 2026-07-23, the day the SDK shipped. Every endpoint quotes the x402 v2 exact scheme in USDC on Base (eip155:8453), which is what CdpX402Client registers by default. Most endpoints also quote USDC on Solana in the same accepts[] array, and the token scanners additionally quote native USDG on Robinhood Chain (eip155:4663).
No. An unauthenticated call returns HTTP 402 with a machine-readable quote; your client pays and replays. Solvency is the only credential.
Call client.getAddresses() and send a little USDC on Base to the EVM address. $1 covers dozens of test calls. On Base Sepolia (set environment: "development"), use cdp.evm.requestFaucet() — note these endpoints are mainnet, so testnet funds won't pay here.
JSON, with source attribution and terms inline. Paid responses are never cached publicly.
The x402 Bazaar, x402scan, /openapi.json, /llms.txt, or the PulseNetwork MCP server at /mcp.