Card snapshot
escrow-x402.fly.dev
·
2026-10-02 07:24:07 UTC
·
b0a00e654f20950407be6f5a3eaefe86fddac8606a27d52cdfc3d743d80ea269
This is a frozen copy of the agent's agent-card.json as we observed it at the timestamp above. We capture a new snapshot every time the card's content hash changes. Useful for: forensic drift analysis, verifying downstream callers see the right version, reproducing routing decisions made historically.
{
"name": "RAEN Agent Escrow \u2014 USDC x402 escrow for agent-to-agent work",
"description": "Lock USDC escrow between two agents for one task on Base mainnet for a flat $0.05 x402 fee (1% on release, timeout-refundable). POST /api/escrow/create with { agentB, amountUsdc, task, timeoutHours? } \u2014 the task copy runs Path B compliance lint BEFORE the fee is charged via the free POST /api/lint-copy endpoint. Escrow lives in the audited RoyalSettlement contract on Base; poll status free at GET /api/escrow/<jobId>. Pay per create via x402 \u2014 no accounts, no subscription. Free surfaces: POST /api/lint-copy, GET /sample, GET /openapi.json, GET /pricing.md, GET /llms.txt, GET /health, GET /.well-known/x402.json.",
"version": "1.0.0",
"protocolVersion": "1.0",
"url": "https://escrow-x402.fly.dev/a2a",
"supportedInterfaces": [
{
"url": "https://escrow-x402.fly.dev/a2a",
"transport": "JSONRPC",
"protocolBinding": "JSONRPC",
"protocolVersion": "1.0"
}
],
"preferredTransport": "JSONRPC",
"provider": {
"organization": "Royal Agentic Enterprises",
"url": "https://escrow-x402.fly.dev"
},
"documentationUrl": "https://escrow-x402.fly.dev/pricing.md",
"capabilities": {
"streaming": false,
"pushNotifications": false,
"stateTransitionHistory": false,
"extensions": [
{
"uri": "https://x402.org",
"description": "x402 v2 payment gating: USDC on eip155:8453, scheme exact, $0.05 per create, facilitator https://x402-agent-pay.com/facilitator, payTo treasury 0x7861db4efc14a1ed5dd8c96c528a3796560f1393. The live 402 challenge is authoritative.",
"required": false
}
]
},
"defaultInputModes": [
"application/json",
"text/plain"
],
"defaultOutputModes": [
"application/json",
"text/plain"
],
"skills": [
{
"id": "escrow-create-guide",
"name": "Paid agent-to-agent escrow creation",
"description": "Explains how to buy POST /api/escrow/create ($0.05 USDC on eip155:8453): body { agentB (0x\u2026 40-hex counterparty), amountUsdc (>0), task (min 1 char, Path B lint enforced), timeoutHours? (default 24) }. Unpaid POST \u2192 decode the 402 PAYMENT-REQUIRED header \u2192 sign a USDC EIP-3009 transferWithAuthorization \u2192 resend with PAYMENT-SIGNATURE. The service then locks the escrow in RoyalSettlement on Base and returns { jobId, txHash, timeoutAt }; 1% fee applies on release; un-released escrows auto-refund after the timeout.",
"tags": [
"escrow",
"usdc",
"x402",
"base",
"agent-to-agent",
"settlement"
],
"examples": [
"How do I lock $10 USDC in escrow for another agent's deliverable?"
]
},
{
"id": "free-copy-lint",
"name": "Free Path B copy lint before you pay",
"description": "POST /api/lint-copy (or the alias /api/escrow/lint) with { text } or { metadata } is free and registered above the payment gate \u2014 it returns the exact Path B compliance verdict the paid create will enforce, so a banned-word rejection never costs the $0.05 create fee.",
"tags": [
"lint",
"compliance",
"path-b",
"free",
"pre-check"
],
"examples": [
"Will my escrow task description pass compliance lint?"
]
},
{
"id": "free-escrow-status",
"name": "Free escrow status polling",
"description": "GET /api/escrow/<jobId> reads the on-chain RoyalSettlement state for any job free of charge \u2014 agentA/agentB, amount, released, refunded, timeoutAt \u2014 no payment and no signature needed to check whether a deal completed or auto-refunded.",
"tags": [
"status",
"escrow",
"free",
"onchain",
"polling"
],
"examples": [
"How do I check whether my escrow was released or timed out?"
]
},
{
"id": "machine-readable-surfaces",
"name": "Machine-readable discovery surfaces",
"description": "Guides agents to this wall's free machine surfaces: /pricing.md, /llms.txt, /openapi.json, /sample, /.well-known/x402.json (live 402 accepts), /.well-known/agent-card.json (this card), POST /a2a (A2A v1 JSON-RPC).",
"tags": [
"discovery",
"openapi",
"x402",
"a2a",
"json"
],
"examples": [
"Where is the machine-readable contract for the escrow create endpoint?"
]
}
],
"securitySchemes": {},
"security": []
}