Pay once. Use 68 tools.

Choose a Stripe credit pack or a PayPal credit pack. After a verified payment, the return page reveals your private API key. Save it securely. Keep it on your server, outside logs and public browser code.

Node.js quickstart

Download the dependency-free client for Node.js 20.3 or later. Buy credits first, then read your key from a private environment variable:

curl -fsS https://bounty-engineer-x402-prod.onrender.com/buyer-client.mjs -o buyer-client.mjs

Save the following as app.mjs. Set BOUNTY_API_KEY privately, then run node app.mjs:

import { BountyClient } from "./buyer-client.mjs";
const client = new BountyClient({ apiKey: process.env.BOUNTY_API_KEY });
const quote = await client.quote("web-extract");
const reply = await client.call("web-extract",
  { url: "https://example.com" },
  { idempotencyKey: "extract-job-0001", maxCredits: 1 }
);
console.log(reply.result);
const balance = await client.balance();

Save the job key with your task before calling. Reuse it with the same input when retrying. The client quotes the current catalog, sends your credit cap for server enforcement, and retries pending or ambiguous transport failures at most twice with the identical key and body. Refunded failures and input conflicts stop; they never create a new paid request automatically.

Call a tool with HTTP

POST /v1/prepaid/web-extract
Authorization: Bearer YOUR_API_KEY
Idempotency-Key: extract-job-0001
X-Max-Credits: 1
Content-Type: application/json

{"url":"https://example.com"}

Send the same input JSON as the corresponding x402 tool. Keep the key and body identical when retrying within 24 hours. X-Max-Credits is optional for raw HTTP calls; if the current tool cost exceeds it, HTTP 412 rejects the call before reserving credits. A successful retry returns the saved result without a second deduction. Pending requests return 409 and Retry-After; a different input with the same key returns 409.

Credit costs

ToolCredits per success
tender-search10
tender-match25
margin-unlock2
margin-portfolio-unlock10
delta-policy-gate3
treasury-court4990
independent-pr-evidence4990
release-sentinel-evidence5
machine-reflex-evidence2
purchase-rescue1
autonomous-mission-control7990
subcontractor-mesh-compiler4990
mission-digital-twin3990
failure-cost-firewall2490
agent-run-forensics2990
delegation-contract-pack2
task-acceptance-gate2
capability-fit-matrix2
agent-handoff-capsule1
sla-breach-radar1
task-state-transition-gate1
tool-contract-bridge2
json-contract-check1
json-change-set1
evidence-pack2
context-pack1
data-quality-gate2
provider-route-plan1
result-consensus-gate2
retry-policy-plan1
batch-budget-plan1
structured-record-merge2
tool-output-quality-gate1
agent-commerce-plan3
delta-witness1
research-brief-pack1
agent-work-plan1
document-structure-scan1
lead-score1
text-chunker1
pii-redaction-map1
url-normalize1
json-pointer-extract1
csv-to-json1
json-to-csv1
rate-limit-plan1
cache-key-plan1
cost-break-even1
schema-sample1
record-dedupe1
audit1
web-read-markdown1
web-extract1
funding-rates1
hash1
jwt-decode1
base641
json-canonicalize1
tool-call-dry-run1
tool-response-shield1
schema-drift-guard3
x402-payment-preflight5
bounty-intel1
bounty-due-diligence75
bounty-deal-desk150
agent-opportunity-underwriter490
autonomous-execution-blueprint990
agent-revenue-command-center1990

Balance and recovery

GET /v1/prepaid/balance with your Bearer key returns your current balance. Execution errors refund reserved credits. Interrupted reservations recover automatically after two minutes. A billing transport error requires a retry with the same key and body. This credit usage is consumption of an existing purchase; it is not an additional payment.

Stateful control tools and the settlement canary continue to use x402. The original /v1/audit-key remains available.

OpenAPI · Machine-readable catalog