X402
Scanned@0xRAG
npx machina-cli add skill @0xRAG/x402-2 --openclawx402 Payment Protocol
Use the npx awal@latest x402 commands to discover, inspect, and call paid API endpoints using the X402 payment protocol. Payments are made in USDC on Base.
Workflow
The typical x402 workflow is:
- Find a service - Search the bazaar or get details for a known endpoint
- Check requirements - Inspect price, method, and input schema
- Make the request - Call the endpoint with automatic USDC payment
Commands
Search the Bazaar
Find paid services by keyword using BM25 relevance search:
npx awal@latest x402 bazaar search <query> [-k <n>] [--force-refresh] [--json]
| Option | Description |
|---|---|
-k, --top <n> | Number of results (default: 5) |
--force-refresh | Re-fetch resource index from CDP API |
--json | Output as JSON |
Results are cached locally at ~/.config/awal/bazaar/ and auto-refresh after 12 hours.
List Bazaar Resources
Browse all available resources:
awal x402 bazaar list [--network <network>] [--full] [--json]
| Option | Description |
|---|---|
--network <name> | Filter by network (base, base-sepolia) |
--full | Show complete details including schemas |
--json | Output as JSON |
Discover Payment Requirements
Inspect an endpoint's x402 payment requirements without paying:
awal x402 details <url> [--json]
Auto-detects the correct HTTP method (GET, POST, PUT, DELETE, PATCH) by trying each until it gets a 402 response, then displays price, accepted payment schemes, network, and input/output schemas.
Make a Paid Request
Call an x402 endpoint with automatic USDC payment:
awal x402 pay <url> [-X <method>] [-d <json>] [-q <params>] [-h <json>] [--max-amount <n>] [--json]
| Option | Description |
|---|---|
-X, --method <method> | HTTP method (default: GET) |
-d, --data <json> | Request body as JSON string |
-q, --query <params> | Query parameters as JSON string |
-h, --headers <json> | Custom HTTP headers as JSON string |
--max-amount <amount> | Max payment in USDC atomic units (1000000 = $1.00) |
--correlation-id <id> | Group related operations |
--json | Output as JSON |
Examples
# Search for weather-related paid APIs
awal x402 bazaar search "weather"
# Search with more results
awal x402 bazaar search "sentiment analysis" -k 10
# Check what an endpoint costs
awal x402 details https://example.com/api/weather
# Make a GET request (auto-pays)
awal x402 pay https://example.com/api/weather
# Make a POST request with body
awal x402 pay https://example.com/api/sentiment -X POST -d '{"text": "I love this product"}'
# Limit max payment to $0.10
awal x402 pay https://example.com/api/data --max-amount 100000
# Browse all bazaar resources with full details
awal x402 bazaar list --full
USDC Amounts
X402 uses USDC atomic units (6 decimals):
| Atomic Units | USD |
|---|---|
| 1000000 | $1.00 |
| 100000 | $0.10 |
| 50000 | $0.05 |
| 10000 | $0.01 |
Prerequisites
- Search/Details: No authentication needed
- Pay: Must be authenticated (
awal auth login <email>) with sufficient USDC balance (awal balance)
Error Handling
- "Not authenticated" - Run
awal auth login <email>first - "No X402 payment requirements found" - URL may not be an x402 endpoint
- "CDP API returned 429" - Rate limited; cached data will be used if available
- "Insufficient balance" - Fund wallet with USDC (
awal balanceto check)
Overview
x402 is a CLI-driven protocol to discover, inspect, and call paid API endpoints using the x402 payment protocol. Payments are settled in USDC on Base, enabling seamless access to services from the bazaar when there isn’t a clear tool to choose.
How This Skill Works
Use the npx awal@latest x402 commands to discover, inspect, and call paid API endpoints. The typical workflow is: find a service in the bazaar, check its price and input/output schemas, then call the endpoint with automatic USDC payment. The system auto-detects the HTTP method and handles payment in USDC atomic units.
When to Use It
- You need to discover paid API services in the bazaar when no clear tool exists.
- You want to inspect an endpoint's payment requirements without paying first.
- You need to know the price, HTTP method, and input/output schemas before paying.
- You want to call an x402 endpoint with automatic USDC payment.
- You want to browse bazaar resources and search for paid services.
Quick Start
- Step 1: Run npx awal@latest x402 bazaar search "<query>"
- Step 2: Inspect the endpoint with awal x402 details <url> [--json]
- Step 3: Pay and call with awal x402 pay <url> [-X <method>] [-d <json>] [--max-amount <n>] [--json]
Best Practices
- Begin with bazaar keyword searches to identify candidate endpoints.
- Always inspect price, method, and input/output schemas before paying.
- Use --max-amount to cap spending in USDC atomic units.
- Export or request JSON output with --json for automation.
- Filter resources by network (e.g., base, base-sepolia) using --network.
Example Use Cases
- Search for weather-related paid APIs in the bazaar.
- Check what an endpoint costs with details before paying.
- Make a GET request to an endpoint (auto-pays).
- Make a POST request with a JSON body to a paid API.
- Browse all bazaar resources with full details.