{"openapi":"3.1.0","info":{"title":"BountyWorth API","version":"0.14.0","description":"Base wallet readiness, USDC payment evidence, x402 endpoint auditing, wallet-addressed Agent messaging, and public-data due diligence for crypto bounties.","x-guidance":"Read /docs for the account-free quickstart and GET /api/status for service state. GET /api/base-wallet-readiness reads Base ETH/USDC balances, nonce, account type, gas conditions, and an optional payment estimate for 0.001 USDC; sample=1 is free. Browser buyers may create a direct invoice at /api/base-wallet-readiness/invoice and redeem the exact Base USDC transfer at /api/base-wallet-readiness/direct. GET /api/payment-evidence verifies a Base transaction receipt and exact USDC recipient/amount match for 0.001 USDC; sample=1 is free. Browser buyers may validate a target and create a direct invoice at /api/payment-evidence/invoice, then redeem the separate purchase transaction at /api/payment-evidence/direct. GET /api/messages reads a public wallet-addressed inbox for free; POST /api/messages sends one temporary message for 0.001 USDC. POST /api/decode is a free local-logic PAYMENT-REQUIRED decoder. Read GET /api/pricing for machine-readable prices. GET or JSON POST /api/preflight/preview offers a free limited live preview; GET /api/preflight sells the 0.002 USDC full audit without paying the target. POST /api/rank with preview=true and one URL for a free no-wallet trial, or submit up to three URLs for 0.001 USDC through x402. GET /api/report returns a 0.02 USDC full evidence packet. Direct invoices accept either query-string GET or JSON POST input.","x-x402-bazaar":{"status":"discovery_metadata_ready","extension":"bazaar","indexingTrigger":"first_successful_facilitator_settlement"}},"servers":[{"url":"https://bountyworth.amber-panda-3101.chatgpt.site"}],"components":{"schemas":{"EvidencePacket":{"type":"object","required":["product","version","decision","opportunity","riskProfile","evidence","recommendedActions","provenance"],"properties":{"product":{"type":"string"},"version":{"type":"string"},"decision":{"type":"object","required":["verdict","earnabilityScore","summary","confidence"],"properties":{"verdict":{"type":"string","enum":["go","caution","skip"]},"earnabilityScore":{"type":"integer","minimum":0,"maximum":100},"summary":{"type":"string"},"confidence":{"type":"string"}}},"opportunity":{"type":"object","required":["title","source","sourceUrl"],"properties":{"title":{"type":"string"},"source":{"type":"string"},"sourceUrl":{"type":"string","format":"uri"}}},"riskProfile":{"type":"object","required":["criticalSignals","materialSignals","positiveSignals","totalSignals"],"properties":{"criticalSignals":{"type":"integer","minimum":0},"materialSignals":{"type":"integer","minimum":0},"positiveSignals":{"type":"integer","minimum":0},"totalSignals":{"type":"integer","minimum":0}}},"evidence":{"type":"array","items":{"type":"object","required":["label","observation","severity","implication"],"properties":{"label":{"type":"string"},"observation":{"type":"string"},"severity":{"type":"string","enum":["positive","informational","material","critical"]},"implication":{"type":"string"}}}},"recommendedActions":{"type":"array","items":{"type":"string"}},"provenance":{"type":"object","required":["scannedAt","methodology","dataPolicy","limitation"],"properties":{"scannedAt":{"type":"string","format":"date-time"},"methodology":{"type":"string"},"dataPolicy":{"type":"string"},"limitation":{"type":"string"}}}}},"ReportResponse":{"type":"object","required":["report","paid"],"properties":{"report":{"$ref":"#/components/schemas/EvidencePacket"},"paid":{"type":"boolean"},"sample":{"type":"boolean"}}},"RankingCandidate":{"type":"object","required":["rank","title","source","sourceUrl","verdict","earnabilityScore","action","decisiveSignals"],"properties":{"rank":{"type":"integer","minimum":1,"maximum":3},"title":{"type":"string"},"source":{"type":"string"},"sourceUrl":{"type":"string","format":"uri"},"verdict":{"type":"string","enum":["go","caution","skip"]},"earnabilityScore":{"type":"integer","minimum":0,"maximum":100},"action":{"type":"string","enum":["start","verify","skip"]},"decisiveSignals":{"type":"array","items":{"type":"object","required":["label","observation","tone"],"properties":{"label":{"type":"string"},"observation":{"type":"string"},"tone":{"type":"string","enum":["danger","warn","good","neutral"]}}}}}},"RankingResponse":{"type":"object","required":["product","paid","scannedAt","winner","ranking","recommendation","methodology","rejected"],"properties":{"product":{"type":"string"},"paid":{"type":"boolean"},"scannedAt":{"type":"string","format":"date-time"},"winner":{"oneOf":[{"$ref":"#/components/schemas/RankingCandidate"},{"type":"null"}]},"ranking":{"type":"array","minItems":1,"maxItems":3,"items":{"$ref":"#/components/schemas/RankingCandidate"}},"recommendation":{"type":"string"},"methodology":{"type":"string"},"rejected":{"type":"array","items":{"type":"object","required":["url","error"],"properties":{"url":{"type":"string","format":"uri"},"error":{"type":"string"}}}}}},"PreflightResponse":{"type":"object","required":["product","paid","target","verdict","readinessScore","checks","offers","discovery","safety"],"properties":{"product":{"type":"string"},"paid":{"type":"boolean"},"scannedAt":{"type":"string","format":"date-time"},"target":{"type":"object","required":["url","method","status","latencyMs"],"properties":{"url":{"type":"string","format":"uri"},"method":{"type":"string","enum":["GET","POST"]},"status":{"type":"integer"},"latencyMs":{"type":"integer","minimum":0}}},"verdict":{"type":"string","enum":["ready","caution","invalid"]},"readinessScore":{"type":"integer","minimum":0,"maximum":100},"checks":{"type":"array","items":{"type":"object"}},"offers":{"type":"array","items":{"type":"object"}},"discovery":{"type":"object"},"protocol":{"type":"object"},"safety":{"type":"object"}}},"PaymentEvidenceResponse":{"type":"object","required":["product","paid","network","transaction","asset","transfers","expectation","verdict","evidence"],"properties":{"product":{"type":"string"},"paid":{"type":"boolean"},"sample":{"type":"boolean"},"observedAt":{"type":"string","format":"date-time"},"network":{"type":"object","required":["id","name","chainId","explorer"],"properties":{"id":{"type":"string","const":"eip155:8453"},"name":{"type":"string"},"chainId":{"type":"integer","const":8453},"explorer":{"type":"string","format":"uri"}}},"transaction":{"type":"object","required":["hash","status","blockNumber","confirmations","explorerUrl"],"properties":{"hash":{"type":"string","pattern":"^0x[a-fA-F0-9]{64}$"},"status":{"type":"string","enum":["success","reverted"]},"blockNumber":{"type":"string","pattern":"^[0-9]+$"},"confirmations":{"type":"string","pattern":"^[0-9]+$"},"explorerUrl":{"type":"string","format":"uri"}}},"asset":{"type":"object"},"transfers":{"type":"array","items":{"type":"object","required":["logIndex","from","to","amountAtomic","amountUsdc"],"properties":{"logIndex":{"type":"integer","minimum":0},"from":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"to":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"amountAtomic":{"type":"string","pattern":"^[0-9]+$"},"amountUsdc":{"type":"string"}}}},"expectation":{"type":"object"},"verdict":{"type":"string","enum":["confirmed","mismatch","failed"]},"evidence":{"type":"object"}}},"BaseWalletReadinessResponse":{"type":"object","required":["product","paid","observedAt","network","wallet","balances","estimate","checks","verdict","caveats"],"properties":{"product":{"type":"string"},"paid":{"type":"boolean"},"sample":{"type":"boolean"},"observedAt":{"type":"string","format":"date-time"},"network":{"type":"object","required":["id","name","chainId","blockNumber","explorer"],"properties":{"id":{"type":"string","const":"eip155:8453"},"name":{"type":"string"},"chainId":{"type":"integer","const":8453},"blockNumber":{"type":"string","pattern":"^[0-9]+$"},"explorer":{"type":"string","format":"uri"}}},"wallet":{"type":"object","required":["address","explorerUrl","accountType","transactionCount"],"properties":{"address":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"explorerUrl":{"type":"string","format":"uri"},"accountType":{"type":"string","enum":["eoa","contract"]},"transactionCount":{"type":"integer","minimum":0}}},"balances":{"type":"object","required":["native","usdc"],"properties":{"native":{"type":"object","required":["symbol","amountWei","amountEth"],"properties":{"symbol":{"type":"string","const":"ETH"},"amountWei":{"type":"string","pattern":"^[0-9]+$"},"amountEth":{"type":"string"}}},"usdc":{"type":"object","required":["symbol","contract","decimals","amountAtomic","amountUsdc"],"properties":{"symbol":{"type":"string","const":"USDC"},"contract":{"type":"string","const":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"},"decimals":{"type":"integer","const":6},"amountAtomic":{"type":"string","pattern":"^[0-9]+$"},"amountUsdc":{"type":"string"}}}}},"estimate":{"type":"object","required":["requiredUsdcAtomic","requiredUsdc","gasUnits","gasPriceWei","estimatedGasWei","estimatedGasEth"],"properties":{"requiredUsdcAtomic":{"type":["string","null"]},"requiredUsdc":{"type":["string","null"]},"gasUnits":{"type":"string","pattern":"^[0-9]+$"},"gasPriceWei":{"type":"string","pattern":"^[0-9]+$"},"estimatedGasWei":{"type":"string","pattern":"^[0-9]+$"},"estimatedGasEth":{"type":"string"}}},"checks":{"type":"object","required":["enoughUsdc","enoughNativeGasForEstimate","contractAccount"],"properties":{"enoughUsdc":{"type":["boolean","null"]},"enoughNativeGasForEstimate":{"type":["boolean","null"]},"contractAccount":{"type":"boolean"}}},"verdict":{"type":"string","enum":["snapshot_only","ready_for_estimate","contract_wallet_review","insufficient_usdc","insufficient_gas","insufficient_usdc_and_gas"]},"caveats":{"type":"array","items":{"type":"string"}}}},"AgentMessage":{"type":"object","required":["id","recipient","topic","body","contentType","ttlHours","createdAt","expiresAt"],"properties":{"id":{"type":"string","format":"uuid"},"recipient":{"type":"string","pattern":"^0x[a-f0-9]{40}$"},"topic":{"type":"string","enum":["request","response","notification"]},"subject":{"type":["string","null"],"maxLength":120},"body":{"type":"string","minLength":1,"maxLength":2048},"contentType":{"type":"string","enum":["text/plain","application/json","application/x-sealed-message"]},"clientMessageId":{"type":["string","null"]},"ttlHours":{"type":"integer","minimum":1,"maximum":168},"createdAt":{"type":"integer"},"expiresAt":{"type":"integer"}}},"AgentMessageInput":{"type":"object","required":["recipient","body"],"properties":{"recipient":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"topic":{"type":"string","enum":["request","response","notification"],"default":"notification"},"subject":{"type":"string","minLength":1,"maxLength":120},"body":{"type":"string","minLength":1,"maxLength":2048},"contentType":{"type":"string","enum":["text/plain","application/json","application/x-sealed-message"],"default":"text/plain"},"clientMessageId":{"type":"string","pattern":"^[a-zA-Z0-9._:-]{1,96}$"},"ttlHours":{"type":"integer","minimum":1,"maximum":168,"default":24}},"additionalProperties":false}}},"paths":{"/api/health":{"get":{"operationId":"getServiceHealth","summary":"Check BountyWorth availability","description":"Returns service version, x402 activation state, network, and a current timestamp.","tags":["Service discovery"],"responses":{"200":{"description":"Service is reachable","content":{"application/json":{"schema":{"type":"object","required":["status","service","version","x402","network","timestamp"],"properties":{"status":{"type":"string","const":"ok"},"service":{"type":"string"},"version":{"type":"string"},"x402":{"type":"string","enum":["active","activation_pending"]},"network":{"type":"string"},"timestamp":{"type":"string","format":"date-time"}}}}}}}}},"/api/status":{"get":{"operationId":"getServiceStatus","summary":"Read BountyWorth product and x402 status","description":"Returns the production version, x402 activation state, free and paid route inventory, documentation paths, and a current timestamp.","tags":["Service discovery"],"responses":{"200":{"description":"Structured service status","content":{"application/json":{"schema":{"type":"object","required":["status","service","version","x402","network","paidEndpoints","freeEndpoints","timestamp"],"properties":{"status":{"type":"string","const":"operational"},"service":{"type":"string","const":"BountyWorth"},"version":{"type":"string"},"x402":{"type":"string","enum":["active","activation_pending"]},"network":{"type":"string","const":"eip155:8453"},"paidEndpoints":{"type":"array","items":{"type":"string"}},"freeEndpoints":{"type":"array","items":{"type":"string"}},"documentation":{"type":"string","const":"/docs"},"openapi":{"type":"string","const":"/openapi.json"},"timestamp":{"type":"string","format":"date-time"}}}}}}}}},"/api/pricing":{"get":{"operationId":"getMachineReadablePricing","summary":"List free and paid API products","description":"Returns Base USDC contract, receiving address, per-call prices, payment protocols, endpoints, and retry guidance.","tags":["Service discovery"],"responses":{"200":{"description":"Machine-readable per-call pricing","content":{"application/json":{"schema":{"type":"object","required":["service","currency","network","networkId","tokenContract","billingModel","products"],"properties":{"service":{"type":"string"},"currency":{"type":"string","const":"USDC"},"network":{"type":"string"},"networkId":{"type":"string","const":"eip155:8453"},"tokenContract":{"type":"string"},"receivingAddress":{"type":["string","null"]},"billingModel":{"type":"string","const":"per_call"},"products":{"type":"array","items":{"type":"object"}}}}}}}}}},"/api/scan":{"get":{"operationId":"scanBountyPreview","summary":"Free crypto bounty ranking preview","description":"Score one public crypto bounty by payout evidence and work risk before buying the multi-bounty ranker. Returns deterministic funding, activity, competition, and human-dependency signals. GitHub issue and Gibwork task URLs are live.","tags":["Bounty due diligence"],"parameters":[{"name":"url","in":"query","required":true,"description":"HTTPS URL of a supported public bounty to score before buying the multi-bounty ranker.","schema":{"type":"string","format":"uri"}}],"responses":{"200":{"description":"Free single-bounty ranking preview","content":{"application/json":{"schema":{"type":"object","required":["report","demo"],"properties":{"report":{"type":"object"},"demo":{"type":"boolean"}}},"example":{"report":{"title":"350 USDC landing-page bounty","source":"Gibwork demo","url":"https://app.gib.work/bounty/b7c2a3c9-c412-4613-9cfb-d8a5f54d14b7","score":0,"verdict":"skip","summary":"High probability of unpaid, blocked, or uneconomic work.","signals":[{"label":"Review queue","value":"133 submissions / 0 approved","tone":"danger"},{"label":"Creator activity","value":"Paused · no recent review","tone":"danger"},{"label":"Payout evidence","value":"Escrowed, but no approval path","tone":"warn"},{"label":"Human dependency","value":"Verified account required","tone":"warn"}],"scannedAt":"2026-08-28T00:00:00.000Z","methodology":"Deterministic public-data heuristics. Verify source terms before committing work."},"demo":true}}}},"400":{"description":"Unsupported URL, unavailable source, or parsing failure"}}}},"/api/decode":{"get":{"operationId":"getPaymentRequiredDecoderSample","summary":"Decode an example x402 PAYMENT-REQUIRED challenge","description":"Free sample of the local-logic x402 v2 decoder. No payment, wallet, account, or external endpoint request.","tags":["x402 developer tools"],"responses":{"200":{"description":"Decoded example challenge"}}},"post":{"operationId":"decodePaymentRequiredChallenge","summary":"Decode and validate an x402 PAYMENT-REQUIRED challenge","description":"Accepts a public header, base64 value, or decoded JSON and returns normalized offers plus structural checks. Never submit a PAYMENT-SIGNATURE or wallet secret.","tags":["x402 developer tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["header"],"properties":{"header":{"type":"string","maxLength":32768}},"additionalProperties":false}}}},"responses":{"200":{"description":"Normalized challenge, offers, checks, and warnings"},"400":{"description":"Invalid JSON or base64 challenge"}}}},"/api/messages":{"get":{"operationId":"readAgentWalletInbox","summary":"Read an Agent wallet inbox for free","description":"Returns unexpired public messages addressed to one EVM wallet. No account, API key, payment, or wallet signature is required. Use sample=1 for an input example.","tags":["Agent messaging"],"parameters":[{"name":"recipient","in":"query","required":false,"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":50,"default":20}},{"name":"sample","in":"query","required":false,"schema":{"type":"string","enum":["1"]}}],"responses":{"200":{"description":"Public inbox messages or machine-readable sample","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"description":"Invalid recipient address"}}},"post":{"operationId":"sendMessageToAgentWalletInbox","summary":"Send message to Agent wallet inbox","description":"Deliver a temporary public notification, request, or response to an EVM wallet-addressed Agent inbox for 0.001 USDC on Base through x402. Recipient-scoped clientMessageId makes retries idempotent. Messages expire after 1-168 hours.","tags":["Agent messaging"],"x-bazaar-discovery":true,"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.001000"},"protocols":[{"x402":{}}]},"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentMessageInput"},"example":{"recipient":"0xc296911e58ad64172662a73663e177a207240bd0","topic":"notification","subject":"Task result ready","body":"The requested public-data scan is complete.","contentType":"text/plain","clientMessageId":"task-42-result-1","ttlHours":24}}}},"responses":{"200":{"description":"Message stored and available from the free inbox route","content":{"application/json":{"schema":{"type":"object","properties":{"message":{"$ref":"#/components/schemas/AgentMessage"}}}}}},"400":{"description":"Invalid or prohibited message shape"},"402":{"description":"Payment Required"},"503":{"description":"Payment activation is pending a public receiving address"}},"x-payment":{"active":true,"rails":[{"protocol":"x402-v2","active":true,"facilitator":"https://facilitator.xpay.sh"}],"network":"eip155:8453","asset":"USDC","price":"$0.001","freeRead":true}}},"/api/rank":{"post":{"operationId":"rankCryptoBounties","summary":"Rank crypto bounties by payout evidence and work risk","description":"Rank crypto bounties and Web3 bounty opportunities by funding, reviewer activity, competition, human-only gates, and payout evidence. Set preview=true with exactly one URL for a free no-wallet trial; otherwise compare up to three bounties for 0.001 USDC on Base through x402.","tags":["Bounty due diligence"],"x-bazaar-discovery":true,"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.001000"},"protocols":[{"x402":{}}]},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["urls"],"properties":{"urls":{"type":"array","minItems":1,"maxItems":3,"uniqueItems":true,"items":{"type":"string","format":"uri"}},"preview":{"type":"boolean","description":"Set true with exactly one URL to bypass payment for a trial result."}},"additionalProperties":false},"example":{"preview":true,"urls":["https://github.com/coinbase/x402/issues/1"]}}}},"responses":{"200":{"description":"Ranked payout-viability decision or free one-URL preview","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RankingResponse"},"example":{"product":"BountyWorth opportunity ranker","paid":true,"scannedAt":"2026-08-28T00:00:00.000Z","winner":{"rank":1,"title":"350 USDC landing-page bounty","source":"Gibwork demo","sourceUrl":"https://app.gib.work/bounty/b7c2a3c9-c412-4613-9cfb-d8a5f54d14b7","verdict":"skip","earnabilityScore":0,"action":"skip","decisiveSignals":[{"label":"Review queue","observation":"133 submissions / 0 approved","tone":"danger"},{"label":"Creator activity","observation":"Paused · no recent review","tone":"danger"},{"label":"Payout evidence","observation":"Escrowed, but no approval path","tone":"warn"}]},"ranking":[{"rank":1,"title":"350 USDC landing-page bounty","source":"Gibwork demo","sourceUrl":"https://app.gib.work/bounty/b7c2a3c9-c412-4613-9cfb-d8a5f54d14b7","verdict":"skip","earnabilityScore":0,"action":"skip","decisiveSignals":[{"label":"Review queue","observation":"133 submissions / 0 approved","tone":"danger"},{"label":"Creator activity","observation":"Paused · no recent review","tone":"danger"},{"label":"Payout evidence","observation":"Escrowed, but no approval path","tone":"warn"}]}],"recommendation":"Do not start any submitted opportunity under the current public evidence.","methodology":"Ranks deterministic public-data payout viability; higher scores indicate fewer detected blockers, not guaranteed payment.","rejected":[]}}}},"400":{"description":"Missing, unsupported, or excessive URLs"},"402":{"description":"Payment Required"},"503":{"description":"Payment activation is pending a public receiving address"}},"x-payment":{"active":true,"rails":[{"protocol":"x402-v2","active":true,"facilitator":"https://facilitator.xpay.sh"}],"network":"eip155:8453","asset":"USDC","price":"$0.001","freePreview":true}}},"/api/payment-evidence":{"get":{"operationId":"verifyBaseUsdcPaymentEvidence","summary":"Verify Base USDC payment evidence","description":"Read a Base transaction receipt, normalize every USDC Transfer event, count confirmations, and verify that one transfer matches the optional expected recipient and amount on the same log. Costs 0.001 USDC on Base through x402. Use sample=1 for a free live example.","tags":["payment evidence"],"x-bazaar-discovery":true,"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.001000"},"protocols":[{"x402":{}}]},"parameters":[{"name":"tx","in":"query","required":false,"description":"Base transaction hash to verify. Required unless sample=1.","schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{64}$"},"example":"0xe2ced59fde0640db029567e63560ecda0783ceb1c668fce7a770d98863ec84e1"},{"name":"expectedTo","in":"query","required":false,"description":"Optional expected USDC recipient.","schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x5b1f4ab7ce2c252b44f8d1dd96da47d6bce6fbd0"},{"name":"expectedAmountAtomic","in":"query","required":false,"description":"Optional expected USDC amount in 6-decimal atomic units.","schema":{"type":"string","pattern":"^(0|[1-9][0-9]{0,29})$"},"example":"191805636177"},{"name":"sample","in":"query","required":false,"description":"Set to 1 for a free live example using a fixed public Base USDC transaction.","schema":{"type":"string","enum":["1"]}}],"responses":{"200":{"description":"Normalized receipt and exact USDC transfer evidence","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PaymentEvidenceResponse"}}}},"400":{"description":"Invalid transaction hash or expectation"},"402":{"description":"Payment Required"}},"x-payment":{"active":true,"rails":[{"protocol":"x402-v2","active":true,"facilitator":"https://facilitator.xpay.sh"}],"network":"eip155:8453","asset":"USDC","price":"$0.001","freeSample":true}}},"/api/payment-evidence/invoice":{"get":{"operationId":"createBaseUsdcPaymentEvidenceDirectInvoice","summary":"Create a direct Base USDC payment-evidence invoice","description":"Validate one public Base transaction, lock its optional recipient-and-amount expectation, and create a 30-minute invoice for exactly 0.001 Base USDC. Creating an invoice sends no payment and requires no account, API key, wallet connection, or seller signature.","tags":["payment evidence","direct Base USDC"],"parameters":[{"name":"tx","in":"query","required":true,"description":"Public Base transaction hash to inspect after purchase.","schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{64}$"}},{"name":"expectedTo","in":"query","required":false,"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"}},{"name":"expectedAmountAtomic","in":"query","required":false,"schema":{"type":"string","pattern":"^(0|[1-9][0-9]{0,29})$"}}],"responses":{"200":{"description":"Validated target, exact Base USDC invoice, and redemption instructions","content":{"application/json":{"schema":{"type":"object","required":["invoiceId","product","target","payment","expiresAt","redeem"],"properties":{"invoiceId":{"type":"string","format":"uuid"},"product":{"type":"string"},"target":{"type":"object"},"payment":{"type":"object"},"expiresAt":{"type":"string","format":"date-time"},"redeem":{"type":"object"}}}}}},"400":{"description":"Invalid or unreadable target transaction or expectation"},"503":{"description":"Direct payment activation pending"}}},"post":{"operationId":"createBaseUsdcPaymentEvidenceDirectInvoiceJson","summary":"Create a direct payment-evidence invoice with JSON input","description":"JSON-input compatibility route for the same validated 30-minute exact 0.001 Base USDC invoice.","tags":["payment evidence","direct Base USDC"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["tx"],"properties":{"tx":{"type":"string","pattern":"^0x[a-fA-F0-9]{64}$"},"expectedTo":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"expectedAmountAtomic":{"type":"string","pattern":"^(0|[1-9][0-9]{0,29})$"}},"additionalProperties":false}}}},"responses":{"200":{"description":"Validated target, exact Base USDC invoice, and redemption instructions"},"400":{"description":"Invalid or unreadable target transaction or expectation"},"503":{"description":"Direct payment activation pending"}}}},"/api/payment-evidence/direct":{"post":{"operationId":"redeemBaseUsdcPaymentEvidenceDirectInvoice","summary":"Verify a direct purchase and deliver Base USDC evidence","description":"Verify a separate successful purchase transaction contains the invoice’s exact official Base USDC contract, recipient, and 0.001 USDC amount, enforce global transaction uniqueness, then persist and deliver the target transaction evidence.","tags":["payment evidence","direct Base USDC"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["invoiceId","paymentTransactionHash"],"properties":{"invoiceId":{"type":"string","format":"uuid"},"paymentTransactionHash":{"type":"string","pattern":"^0x[0-9a-fA-F]{64}$"}},"additionalProperties":false}}}},"responses":{"200":{"description":"Purchase verified and the stable target transaction evidence delivered","content":{"application/json":{"schema":{"type":"object","required":["evidence","paid","payment"],"properties":{"evidence":{"$ref":"#/components/schemas/PaymentEvidenceResponse"},"paid":{"type":"boolean","const":true},"payment":{"type":"object"}}}}}},"400":{"description":"Invalid request"},"402":{"description":"Exact purchase payment not found"},"409":{"description":"Wrong product, reused purchase transaction, or conflicting redemption"},"410":{"description":"Invoice expired"},"502":{"description":"Verified purchase is recorded but target evidence is temporarily unavailable; retry with the same invoice and purchase hash"}}}},"/api/base-wallet-readiness":{"get":{"operationId":"baseUsdcWalletCheck","summary":"Check whether a Base wallet can pay x402 with USDC","description":"Check whether an EVM wallet on Base has enough official USDC and native ETH gas for an estimated x402 payment. Returns live Base balances, transaction count, account type, gas price, explicit readiness checks, and caveats in one call. Costs 0.001 USDC on Base through x402. Use sample=1 for a free live example.","tags":["wallet readiness","blockchain data"],"x-bazaar-discovery":true,"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.001000"},"protocols":[{"x402":{}}]},"parameters":[{"name":"address","in":"query","required":true,"description":"EVM address to inspect on Base mainnet. Required for the paid operation; the documented sample=1 exception remains available for a free live example.","schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"example":"0x5b1f4ab7ce2c252b44f8d1dd96da47d6bce6fbd0"},{"name":"requiredUsdcAtomic","in":"query","required":false,"description":"Optional required USDC amount in 6-decimal atomic units.","schema":{"type":"string","pattern":"^(0|[1-9][0-9]{0,29})$"},"example":"1000"},{"name":"gasUnits","in":"query","required":false,"description":"Optional gas estimate from 21000 to 500000 units. Defaults to 65000.","schema":{"type":"string","pattern":"^(2[1-9][0-9]{3}|[3-9][0-9]{4}|[1-4][0-9]{5}|500000)$"},"example":"65000"},{"name":"sample","in":"query","required":false,"description":"Set to 1 for a free live example using a fixed public Base address.","schema":{"type":"string","enum":["1"]}}],"responses":{"200":{"description":"Live Base wallet balances and payment-readiness estimate","content":{"application/json":{"schema":{"type":"object","required":["product","paid","observedAt","network","wallet","balances","estimate","checks","verdict","caveats"],"properties":{"product":{"type":"string"},"paid":{"type":"boolean"},"sample":{"type":"boolean"},"observedAt":{"type":"string","format":"date-time"},"network":{"type":"object","required":["id","name","chainId","blockNumber","explorer"],"properties":{"id":{"type":"string","const":"eip155:8453"},"name":{"type":"string"},"chainId":{"type":"integer","const":8453},"blockNumber":{"type":"string","pattern":"^[0-9]+$"},"explorer":{"type":"string","format":"uri"}}},"wallet":{"type":"object","required":["address","explorerUrl","accountType","transactionCount"],"properties":{"address":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"explorerUrl":{"type":"string","format":"uri"},"accountType":{"type":"string","enum":["eoa","contract"]},"transactionCount":{"type":"integer","minimum":0}}},"balances":{"type":"object","required":["native","usdc"],"properties":{"native":{"type":"object","required":["symbol","amountWei","amountEth"],"properties":{"symbol":{"type":"string","const":"ETH"},"amountWei":{"type":"string","pattern":"^[0-9]+$"},"amountEth":{"type":"string"}}},"usdc":{"type":"object","required":["symbol","contract","decimals","amountAtomic","amountUsdc"],"properties":{"symbol":{"type":"string","const":"USDC"},"contract":{"type":"string","const":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"},"decimals":{"type":"integer","const":6},"amountAtomic":{"type":"string","pattern":"^[0-9]+$"},"amountUsdc":{"type":"string"}}}}},"estimate":{"type":"object","required":["requiredUsdcAtomic","requiredUsdc","gasUnits","gasPriceWei","estimatedGasWei","estimatedGasEth"],"properties":{"requiredUsdcAtomic":{"type":["string","null"]},"requiredUsdc":{"type":["string","null"]},"gasUnits":{"type":"string","pattern":"^[0-9]+$"},"gasPriceWei":{"type":"string","pattern":"^[0-9]+$"},"estimatedGasWei":{"type":"string","pattern":"^[0-9]+$"},"estimatedGasEth":{"type":"string"}}},"checks":{"type":"object","required":["enoughUsdc","enoughNativeGasForEstimate","contractAccount"],"properties":{"enoughUsdc":{"type":["boolean","null"]},"enoughNativeGasForEstimate":{"type":["boolean","null"]},"contractAccount":{"type":"boolean"}}},"verdict":{"type":"string","enum":["snapshot_only","ready_for_estimate","contract_wallet_review","insufficient_usdc","insufficient_gas","insufficient_usdc_and_gas"]},"caveats":{"type":"array","items":{"type":"string"}}}}}}},"400":{"description":"Machine-readable input guidance; no payment attempted"},"402":{"description":"Payment Required"},"502":{"description":"Public Base RPC did not return the requested snapshot"}},"x-payment":{"active":true,"rails":[{"protocol":"x402-v2","active":true,"facilitator":"https://facilitator.xpay.sh"}],"network":"eip155:8453","asset":"USDC","price":"$0.001","freeSample":true}}},"/api/base-wallet-readiness/invoice":{"get":{"operationId":"createBaseWalletReadinessDirectInvoice","summary":"Create a direct Base USDC wallet-check invoice","description":"Lock one public address and optional USDC/gas estimate into a 30-minute invoice for exactly 0.001 Base USDC. Creating an invoice sends no transaction and requires no account, API key, wallet connection, or seller signature.","tags":["wallet readiness","direct Base USDC"],"parameters":[{"name":"address","in":"query","required":true,"description":"Public EVM address to inspect on Base mainnet after payment.","schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"}},{"name":"requiredUsdcAtomic","in":"query","required":false,"schema":{"type":"string","pattern":"^(0|[1-9][0-9]{0,29})$"}},{"name":"gasUnits","in":"query","required":false,"schema":{"type":"string","pattern":"^(2[1-9][0-9]{3}|[3-9][0-9]{4}|[1-4][0-9]{5}|500000)$"}}],"responses":{"200":{"description":"Exact Base USDC invoice and redemption instructions","content":{"application/json":{"schema":{"type":"object","required":["invoiceId","product","request","payment","expiresAt","redeem"],"properties":{"invoiceId":{"type":"string","format":"uuid"},"product":{"type":"string"},"request":{"type":"object"},"payment":{"type":"object"},"expiresAt":{"type":"string","format":"date-time"},"redeem":{"type":"object"}}}}}},"400":{"description":"Invalid wallet or estimate input"},"503":{"description":"Direct payment activation pending"}}},"post":{"operationId":"createBaseWalletReadinessDirectInvoiceJson","summary":"Create a direct wallet-check invoice with JSON input","description":"JSON-input compatibility route for the same 30-minute exact 0.001 Base USDC invoice.","tags":["wallet readiness","direct Base USDC"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["address"],"properties":{"address":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"requiredUsdcAtomic":{"type":"string","pattern":"^(0|[1-9][0-9]{0,29})$"},"gasUnits":{"type":"string","pattern":"^(2[1-9][0-9]{3}|[3-9][0-9]{4}|[1-4][0-9]{5}|500000)$"}},"additionalProperties":false}}}},"responses":{"200":{"description":"Exact Base USDC invoice and redemption instructions"},"400":{"description":"Invalid wallet or estimate input"},"503":{"description":"Direct payment activation pending"}}}},"/api/base-wallet-readiness/direct":{"post":{"operationId":"redeemBaseWalletReadinessDirectInvoice","summary":"Verify direct Base USDC and deliver a wallet snapshot","description":"Verify a successful transaction contains the invoice’s exact official Base USDC contract, recipient, and 0.001 USDC amount, enforce global transaction uniqueness, then persist and deliver the point-in-time wallet snapshot.","tags":["wallet readiness","direct Base USDC"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["invoiceId","transactionHash"],"properties":{"invoiceId":{"type":"string","format":"uuid"},"transactionHash":{"type":"string","pattern":"^0x[0-9a-fA-F]{64}$"}},"additionalProperties":false}}}},"responses":{"200":{"description":"Payment verified and the stable wallet snapshot delivered","content":{"application/json":{"schema":{"type":"object","required":["snapshot","paid","payment"],"properties":{"snapshot":{"type":"object","required":["product","paid","observedAt","network","wallet","balances","estimate","checks","verdict","caveats"],"properties":{"product":{"type":"string"},"paid":{"type":"boolean"},"sample":{"type":"boolean"},"observedAt":{"type":"string","format":"date-time"},"network":{"type":"object","required":["id","name","chainId","blockNumber","explorer"],"properties":{"id":{"type":"string","const":"eip155:8453"},"name":{"type":"string"},"chainId":{"type":"integer","const":8453},"blockNumber":{"type":"string","pattern":"^[0-9]+$"},"explorer":{"type":"string","format":"uri"}}},"wallet":{"type":"object","required":["address","explorerUrl","accountType","transactionCount"],"properties":{"address":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"},"explorerUrl":{"type":"string","format":"uri"},"accountType":{"type":"string","enum":["eoa","contract"]},"transactionCount":{"type":"integer","minimum":0}}},"balances":{"type":"object","required":["native","usdc"],"properties":{"native":{"type":"object","required":["symbol","amountWei","amountEth"],"properties":{"symbol":{"type":"string","const":"ETH"},"amountWei":{"type":"string","pattern":"^[0-9]+$"},"amountEth":{"type":"string"}}},"usdc":{"type":"object","required":["symbol","contract","decimals","amountAtomic","amountUsdc"],"properties":{"symbol":{"type":"string","const":"USDC"},"contract":{"type":"string","const":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"},"decimals":{"type":"integer","const":6},"amountAtomic":{"type":"string","pattern":"^[0-9]+$"},"amountUsdc":{"type":"string"}}}}},"estimate":{"type":"object","required":["requiredUsdcAtomic","requiredUsdc","gasUnits","gasPriceWei","estimatedGasWei","estimatedGasEth"],"properties":{"requiredUsdcAtomic":{"type":["string","null"]},"requiredUsdc":{"type":["string","null"]},"gasUnits":{"type":"string","pattern":"^[0-9]+$"},"gasPriceWei":{"type":"string","pattern":"^[0-9]+$"},"estimatedGasWei":{"type":"string","pattern":"^[0-9]+$"},"estimatedGasEth":{"type":"string"}}},"checks":{"type":"object","required":["enoughUsdc","enoughNativeGasForEstimate","contractAccount"],"properties":{"enoughUsdc":{"type":["boolean","null"]},"enoughNativeGasForEstimate":{"type":["boolean","null"]},"contractAccount":{"type":"boolean"}}},"verdict":{"type":"string","enum":["snapshot_only","ready_for_estimate","contract_wallet_review","insufficient_usdc","insufficient_gas","insufficient_usdc_and_gas"]},"caveats":{"type":"array","items":{"type":"string"}}}},"paid":{"type":"boolean","const":true},"payment":{"type":"object"}}}}}},"400":{"description":"Invalid request"},"402":{"description":"Exact payment not found"},"409":{"description":"Wrong product, reused transaction, or conflicting redemption"},"410":{"description":"Invoice expired"},"502":{"description":"Verified payment is recorded but the public Base snapshot is temporarily unavailable; retry with the same invoice and hash"}}}},"/api/preflight":{"get":{"operationId":"x402EndpointPreflight","summary":"x402 endpoint preflight before payment","description":"Complete x402 endpoint preflight for an unfamiliar paid API: performs a bounded unpaid GET or POST probe, decodes PAYMENT-REQUIRED, validates payment offers and CORS exposure, and scores Bazaar discovery readiness. Costs 0.002 USDC on Base. Use /api/preflight/preview first for the free live score and three decisive checks.","tags":["x402 developer tools"],"x-bazaar-discovery":true,"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.002000"},"protocols":[{"x402":{}}]},"parameters":[{"name":"url","in":"query","required":true,"description":"Public HTTPS x402 endpoint to inspect in the complete paid audit.","schema":{"type":"string","format":"uri"}},{"name":"method","in":"query","required":false,"description":"Unpaid probe method. Defaults to GET.","schema":{"type":"string","enum":["GET","POST"],"default":"GET"}}],"responses":{"200":{"description":"Complete x402 readiness audit","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PreflightResponse"}}}},"400":{"description":"Unsafe, invalid, or unreachable target"},"402":{"description":"Payment Required"}},"x-payment":{"active":true,"rails":[{"protocol":"x402-v2","active":true,"facilitator":"https://facilitator.xpay.sh"}],"network":"eip155:8453","asset":"USDC","price":"$0.002","freePreview":true}}},"/api/preflight/preview":{"get":{"operationId":"previewX402EndpointFree","summary":"Free x402 endpoint preflight preview","description":"Run one bounded unpaid request against a public HTTPS x402 endpoint. Returns the live HTTP status, readiness score, verdict, and three decisive checks, then identifies the 0.002 USDC complete-audit upgrade. No target payment, wallet, account, or API key.","tags":["x402 developer tools"],"parameters":[{"name":"url","in":"query","required":true,"description":"Public HTTPS x402 endpoint to inspect without paying it.","schema":{"type":"string","format":"uri"}},{"name":"method","in":"query","required":false,"description":"Unpaid probe method. Defaults to GET.","schema":{"type":"string","enum":["GET","POST"],"default":"GET"}}],"responses":{"200":{"description":"Free live limited x402 endpoint preview","content":{"application/json":{"schema":{"type":"object","required":["product","paid","preview","target","verdict","readinessScore","topChecks","safety","upgrade"],"properties":{"product":{"type":"string"},"paid":{"type":"boolean","const":false},"preview":{"type":"boolean","const":true},"scannedAt":{"type":"string","format":"date-time"},"target":{"type":"object"},"verdict":{"type":"string","enum":["ready","caution","invalid"]},"readinessScore":{"type":"integer","minimum":0,"maximum":100},"topChecks":{"type":"array","minItems":1,"maxItems":3,"items":{"type":"object"}},"safety":{"type":"object"},"upgrade":{"type":"object"}}}}}},"400":{"description":"Unsafe, invalid, or unreachable target"}}},"post":{"operationId":"previewX402EndpointFreeJson","summary":"Free x402 endpoint preflight preview with JSON input","description":"JSON-input compatibility route for agents that cannot conveniently construct query strings. It performs the same bounded unpaid preview as GET and never sends payment to the target.","tags":["x402 developer tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"},"method":{"type":"string","enum":["GET","POST"],"default":"GET"}},"additionalProperties":false},"example":{"url":"https://bountyworth.amber-panda-3101.chatgpt.site/api/report","method":"GET"}}}},"responses":{"200":{"description":"Free live limited x402 endpoint preview"},"400":{"description":"Machine-readable input guidance or an unsafe, invalid, or unreachable target"}}}},"/api/preflight/invoice":{"get":{"operationId":"createX402PreflightDirectInvoice","summary":"Create a direct Base USDC preflight invoice","description":"Validate one public x402 target and create a 30-minute invoice for exactly 0.002 Base USDC. No wallet connection, account, API key, or seller signature is required.","tags":["x402 developer tools"],"parameters":[{"name":"url","in":"query","required":true,"description":"Public HTTPS x402 endpoint to inspect after payment.","schema":{"type":"string","format":"uri"}},{"name":"method","in":"query","required":false,"description":"Unpaid probe method. Defaults to GET.","schema":{"type":"string","enum":["GET","POST"],"default":"GET"}}],"responses":{"200":{"description":"Exact Base USDC invoice and redemption instructions","content":{"application/json":{"schema":{"type":"object","required":["invoiceId","product","target","payment","expiresAt","redeem"],"properties":{"invoiceId":{"type":"string","format":"uuid"},"product":{"type":"string"},"target":{"type":"object"},"payment":{"type":"object"},"expiresAt":{"type":"string","format":"date-time"},"redeem":{"type":"object"}}}}}},"400":{"description":"Unsafe, invalid, or unreachable target"},"503":{"description":"Direct payment activation pending"}}},"post":{"operationId":"createX402PreflightDirectInvoiceJson","summary":"Create a direct Base USDC preflight invoice with JSON input","description":"JSON-input compatibility route for creating the same 30-minute, exact 0.002 Base USDC invoice returned by GET.","tags":["x402 developer tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"},"method":{"type":"string","enum":["GET","POST"],"default":"GET"}},"additionalProperties":false},"example":{"url":"https://bountyworth.amber-panda-3101.chatgpt.site/api/report","method":"GET"}}}},"responses":{"200":{"description":"Exact Base USDC invoice and redemption instructions"},"400":{"description":"Machine-readable input guidance or an unsafe, invalid, or unreachable target"},"503":{"description":"Direct payment activation pending"}}}},"/api/preflight/direct":{"post":{"operationId":"redeemX402PreflightDirectInvoice","summary":"Verify direct Base USDC and deliver the full preflight","description":"Verify that one successful Base transaction contains the invoice’s exact USDC contract, recipient, and 0.002 USDC amount, enforce transaction uniqueness, then deliver the full endpoint audit.","tags":["x402 developer tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["invoiceId","transactionHash"],"properties":{"invoiceId":{"type":"string","format":"uuid"},"transactionHash":{"type":"string","pattern":"^0x[0-9a-fA-F]{64}$"}},"additionalProperties":false}}}},"responses":{"200":{"description":"Payment verified and full audit delivered"},"400":{"description":"Invalid request"},"402":{"description":"Exact payment not found"},"409":{"description":"Wrong product, reused transaction, or conflicting redemption"},"410":{"description":"Invoice expired"}}}},"/api/report":{"get":{"operationId":"bountyEvidenceRiskReport","summary":"Bounty evidence risk report for one public bounty","description":"Bounty evidence risk report for a public crypto bounty: returns payout viability, severity-ranked evidence, implications, recommended actions, and provenance. Add sample=1 for a free schema sample; production reports cost 0.02 USDC on Base through x402 or a direct-transfer invoice.","tags":["Bounty due diligence"],"x-bazaar-discovery":true,"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.020000"},"protocols":[{"x402":{}}]},"parameters":[{"name":"url","in":"query","required":false,"description":"HTTPS URL of a supported public bounty.","schema":{"type":"string","format":"uri"}},{"name":"sample","in":"query","required":false,"description":"Set to 1 to receive the free example without payment.","schema":{"type":"string","enum":["1"]}}],"responses":{"200":{"description":"Full evidence packet or free sample","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReportResponse"},"example":{"report":{"product":"BountyWorth evidence packet","version":"2026-08-28","decision":{"verdict":"skip","earnabilityScore":0,"summary":"High probability of unpaid, blocked, or uneconomic work.","confidence":"high-risk evidence present"},"opportunity":{"title":"350 USDC landing-page bounty","source":"Gibwork demo","sourceUrl":"https://app.gib.work/bounty/b7c2a3c9-c412-4613-9cfb-d8a5f54d14b7"},"riskProfile":{"criticalSignals":2,"materialSignals":2,"positiveSignals":0,"totalSignals":4},"evidence":[{"label":"Review queue","observation":"133 submissions / 0 approved","severity":"critical","implication":"Resolve or independently verify this blocker before starting work."},{"label":"Creator activity","observation":"Paused · no recent review","severity":"critical","implication":"Resolve or independently verify this blocker before starting work."},{"label":"Payout evidence","observation":"Escrowed, but no approval path","severity":"material","implication":"Confirm this condition with the payer before committing meaningful time."},{"label":"Human dependency","observation":"Verified account required","severity":"material","implication":"Confirm this condition with the payer before committing meaningful time."}],"recommendedActions":["Do not commit work under the current public conditions.","Re-scan only after the payer publishes new funding, review, or settlement evidence.","Redirect effort to a lower-friction opportunity with an active approval path."],"provenance":{"scannedAt":"2026-08-28T00:00:00.000Z","methodology":"Deterministic public-data heuristics. Verify source terms before committing work.","dataPolicy":"Public source data only. No wallet connection, login, or private credential used.","limitation":"This report estimates payout viability; it is not a payment guarantee or financial advice."}},"paid":false,"sample":true}}}},"402":{"description":"Payment Required"},"503":{"description":"Payment activation is pending a public receiving address"}},"x-payment":{"active":true,"rails":[{"protocol":"direct-base-usdc","active":true,"invoiceEndpoint":"/api/invoice"},{"protocol":"x402-v2","active":true,"facilitator":"https://facilitator.xpay.sh"}],"network":"eip155:8453","asset":"USDC","price":"$0.02"}}},"/api/invoice":{"get":{"operationId":"createDirectUsdcInvoice","summary":"Create a 30-minute Base USDC invoice","description":"Validates the bounty URL and returns an exact 0.02 USDC transfer instruction. No wallet connection or seller-side private key is used.","parameters":[{"name":"url","in":"query","required":true,"description":"HTTPS URL of a supported public bounty.","schema":{"type":"string","format":"uri"}}],"responses":{"200":{"description":"Direct Base USDC invoice and EIP-681 payment URI"},"400":{"description":"Unsupported or unavailable bounty URL"},"503":{"description":"Public receiving address has not been configured"}}},"post":{"operationId":"createDirectUsdcInvoiceJson","summary":"Create a Base USDC bounty-report invoice with JSON input","description":"JSON-input compatibility route for agents. It validates the bounty URL and returns the same exact 0.02 USDC transfer instruction as GET.","tags":["Bounty due diligence"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"}},"additionalProperties":false},"example":{"url":"https://github.com/coinbase/x402/issues/1"}}}},"responses":{"200":{"description":"Direct Base USDC invoice and EIP-681 payment URI"},"400":{"description":"Machine-readable input guidance or unsupported bounty URL"},"503":{"description":"Public receiving address has not been configured"}}}},"/api/report/direct":{"post":{"operationId":"redeemDirectUsdcPayment","summary":"Verify a Base USDC transfer and deliver the report","description":"Checks the transaction on Base, prevents transaction replay, and returns the purchased evidence packet.","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["invoiceId","transactionHash"],"properties":{"invoiceId":{"type":"string","format":"uuid"},"transactionHash":{"type":"string","pattern":"^0x[0-9a-fA-F]{64}$"}}}}}},"responses":{"200":{"description":"Verified payment and full evidence packet"},"402":{"description":"Transaction does not contain the required Base USDC payment"},"409":{"description":"Invoice or transaction was already redeemed"},"410":{"description":"Invoice expired before payment"}}}},"/a2a/v1/message:send":{"post":{"operationId":"sendA2ABountyScanMessage","summary":"Run the free scanner through A2A HTTP+JSON","description":"Accepts an A2A message containing one supported public bounty URL and returns a completed task with the free viability scan.","requestBody":{"required":true,"content":{"application/a2a+json":{"schema":{"type":"object"}}}},"responses":{"200":{"description":"A2A completed task with scan artifact"},"400":{"description":"Invalid A2A message or unsupported bounty URL"}}}}}}