{
 "service": "Kenward payable API (x402)",
 "summary": "Pay-per-call data, settled in USDC on Base. No account, no API key, no human in the loop. A machine can buy mid-reasoning.",
 "openapi": "/openapi.json",
 "docs": "/.well-known/x402",
 "llms_txt": "/llms.txt",
 "launch_price": {
  "price_usd": "0.025",
  "list_price_usd": "0.05",
  "discount_pct": 50,
  "applies_to": "the first 100 unique paying wallets (excluding the operator's own wallet)",
  "counted_from": "on-chain USDC transfers to the payee address",
  "after_100": "the operator sets the fixed price (0.025 or 0.05 USD) \u2014 not changed automatically",
  "since": "2026-10-05"
 },
 "performance_measured": {
  "measured_at": "2026-10-05",
  "method": "20 requests per endpoint, from a datacenter VM over the public internet",
  "end_to_end_p50_ms": {
   "free preview": 105,
   "402 challenge": 102,
   "llms.txt": 104,
   "openapi.json": 89
  },
  "end_to_end_p95_ms": {
   "free preview": 315,
   "402 challenge": 251,
   "llms.txt": 455,
   "openapi.json": 148
  },
  "server_side_p50_ms": 2.8,
  "server_side_max_ms": 33.6,
  "note": "End-to-end includes TLS, edge and tunnel. Server-side handling is reported per response in the X-Kenward-Serve-Ms header, so any caller can verify what our own code costs."
 },
 "safety": [
  "holds_keys: false \u2014 the resource server holds no private key and cannot move funds.",
  "No account, no API key, no signup: there is no credential to leak.",
  "Payment is verified by an external facilitator and settled on-chain: the tx hash is public.",
  "One signed payload is delivered once (replay protection) \u2014 a re-used payment is refused.",
  "Never invents values: a market that was not measured answers UNKNOWN, with the reason.",
  "Fail-closed: without a configured payee address the process refuses to start.",
  "No custody, no refunds, no claims about the future \u2014 only what the data shows.",
  "Bounded by design: 120 requests/60s per client IP and request bodies capped at 64 KiB (HTTP 429/413 otherwise).",
  "Freshness is declared, never implied: every answer carries the data's age, and anything older than 7 days is flagged with a staleness_warning.",
  "Fail-closed pricing: a market we cannot measure answers immediately with charged:false and NO payment request \u2014 you cannot pay for a verdict we do not hold."
 ],
 "version": 1,
 "x402Version": 1,
 "facilitator": "https://facilitator.payai.network",
 "payTo": "0x351eb3679f817ea7de8baeCbaF3Bd5120200eadc",
 "network": "base",
 "asset": "USDC",
 "network_caip2": "eip155:8453",
 "asset_address": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
 "ownershipProofs": [
  "0x351eb3679f817ea7de8baeCbaF3Bd5120200eadc"
 ],
 "resources": [
  "https://pay.kenwardai.my.id/v1/buyer",
  "https://pay.kenwardai.my.id/v1/payability",
  "https://pay.kenwardai.my.id/v1/pdf",
  "https://pay.kenwardai.my.id/v1/readable",
  "https://pay.kenwardai.my.id/v1/transcript",
  "https://pay.kenwardai.my.id/v1/uptime",
  "https://pay.kenwardai.my.id/v1/venue"
 ],
 "offers": [
  {
   "path": "/v1/buyer",
   "price_usd": "0.02",
   "description": "Per-buyer payment record: has this poster ever paid anyone?",
   "scheme": "exact",
   "network": "base",
   "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
   "network_caip2": "eip155:8453",
   "asset_address": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
   "maxAmountRequired": "20000",
   "payTo": "0x351eb3679f817ea7de8baeCbaF3Bd5120200eadc",
   "mimeType": "application/json"
  },
  {
   "path": "/v1/payability",
   "price_usd": "0.025",
   "description": "Market queue analytics + settlement verdict: how crowded is this marketplace (bids per job, measured) and has money ever actually moved here (payer share, buyer behaviour, freshness)? For agents deciding where to spend effort.",
   "scheme": "exact",
   "network": "base",
   "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
   "network_caip2": "eip155:8453",
   "asset_address": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
   "maxAmountRequired": "25000",
   "payTo": "0x351eb3679f817ea7de8baeCbaF3Bd5120200eadc",
   "mimeType": "application/json"
  },
  {
   "path": "/v1/pdf",
   "price_usd": "0.02",
   "description": "PDF extraction to text: give a PDF URL, get the text layer page by page (reports, filings, invoices, papers) - ready for indexing or summarising. Batch mode: repeat urls= up to 5 times in one call.",
   "scheme": "exact",
   "network": "base",
   "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
   "network_caip2": "eip155:8453",
   "asset_address": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
   "maxAmountRequired": "20000",
   "payTo": "0x351eb3679f817ea7de8baeCbaF3Bd5120200eadc",
   "mimeType": "application/json"
  },
  {
   "path": "/v1/readable",
   "price_usd": "0.005",
   "description": "URL to clean LLM-ready text (readable extraction): fetched server-side, boilerplate/ads/nav stripped, returned as title + headings/paragraphs/lists plus the plain text - for RAG ingestion, LLM prompts and indexing. Batch mode: repeat urls= up to 5 times in one call.",
   "scheme": "exact",
   "network": "base",
   "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
   "network_caip2": "eip155:8453",
   "asset_address": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
   "maxAmountRequired": "5000",
   "payTo": "0x351eb3679f817ea7de8baeCbaF3Bd5120200eadc",
   "mimeType": "application/json"
  },
  {
   "path": "/v1/transcript",
   "price_usd": "0.01",
   "description": "Video transcript with timestamps (YouTube): the spoken content as machine-readable text, segment by segment - for summarising, indexing, subtitling and RAG ingestion.",
   "scheme": "exact",
   "network": "base",
   "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
   "network_caip2": "eip155:8453",
   "asset_address": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
   "maxAmountRequired": "10000",
   "payTo": "0x351eb3679f817ea7de8baeCbaF3Bd5120200eadc",
   "mimeType": "application/json"
  },
  {
   "path": "/v1/uptime",
   "price_usd": "0.025",
   "description": "Endpoint uptime/latency attestation: is this service reachable, and how fast?",
   "scheme": "exact",
   "network": "base",
   "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
   "network_caip2": "eip155:8453",
   "asset_address": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
   "maxAmountRequired": "25000",
   "payTo": "0x351eb3679f817ea7de8baeCbaF3Bd5120200eadc",
   "mimeType": "application/json"
  },
  {
   "path": "/v1/venue",
   "price_usd": "0.025",
   "description": "Agent-venue status: is this marketplace paying today?",
   "scheme": "exact",
   "network": "base",
   "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
   "network_caip2": "eip155:8453",
   "asset_address": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
   "maxAmountRequired": "25000",
   "payTo": "0x351eb3679f817ea7de8baeCbaF3Bd5120200eadc",
   "mimeType": "application/json"
  }
 ]
}