pay-for-service

Call paid APIs on Base with automatic USDC payment via x402 protocol. Executes HTTP requests (GET, POST, etc.) to x402-enabled endpoints with atomic USDC payments handled automatically Supports request customization through method, JSON body, query parameters, and custom headers Includes payment controls: set maximum USDC amount per request and group related operations with correlation IDs Requires wallet authentication and sufficient USDC balance; validates all user input to prevent shell injection

INSTALLATION
npx skills add https://github.com/coinbase/agentic-wallet-skills --skill pay-for-service
Run in your project or agent environment. Adjust flags if your CLI version differs.

SKILL.md

$2a

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

USDC Amounts

X402 uses USDC atomic units (6 decimals):

Atomic Units

USD

1000000

$1.00

100000

$0.10

50000

$0.05

10000

$0.01

IMPORTANT: Always single-quote amounts that use $ to prevent bash variable expansion (e.g. '$1.00' not $1.00).

Input Validation

Before constructing the command, validate all user-provided values to prevent shell injection:

  • url: Must be a valid URL starting with https:// or http://. Reject if it contains spaces, semicolons, pipes, backticks, or shell metacharacters.
  • data (-d): Must be valid JSON. Always wrap in single quotes to prevent shell expansion.
  • max-amount: Must be a positive integer (^\d+$).

Do not pass unvalidated user input into the command.

Examples

# Make a GET request (auto-pays)

npx awal@2.10.0 x402 pay https://example.com/api/weather

# Make a POST request with body

npx awal@2.10.0 x402 pay https://example.com/api/sentiment -X POST -d '{"text": "I love this product"}'

# Limit max payment to $0.10

npx awal@2.10.0 x402 pay https://example.com/api/data --max-amount 100000

Prerequisites

  • Must be authenticated (npx awal@2.10.0 status to check, see authenticate-wallet skill)
  • Wallet must have sufficient USDC balance (npx awal@2.10.0 balance to check)
  • If you don't know the endpoint URL, use the search-for-service skill to find services first

Error Handling

  • "Not authenticated" - Run awal auth login <email> first, or see authenticate-wallet skill
  • "No X402 payment requirements found" - URL may not be an x402 endpoint; use search-for-service to find valid endpoints
  • "Insufficient balance" - Fund wallet with USDC; see fund skill
BrowserAct

Let your agent run on any real-world website

Bypass CAPTCHA & anti-bot for free. Start local, scale to cloud.

Explore BrowserAct Skills →

Stop writing automation&scrapers

Install the CLI. Run your first Skill in 30 seconds. Scale when you're ready.

Start free
free · no credit card