{"uid":"cap_WvRrvyviwdx7Wvf1zHgnK","slug":"x402-autopay-policy-engine-c5c37c19","name":"x402 Autopay Policy Engine","description":"Turn payee reputation and a proposed call plan into allow / allow_with_limits / manual_review / deny plus caps for autonomous x402 payment. Returns JSON. Price 0.20 USDC on Base via x402. Demo/preview: https://x402-endpoint-risk-corpus.mtree.workers.dev/demo/autopay_policy. Contact: https://x402-endpoint-risk-corpus.mtree.workers.dev/contact.","url":"https://x402-endpoint-risk-corpus.mtree.workers.dev/v1/x402/autopay_policy","method":"POST","headers":{},"bodySchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["input"],"properties":{"input":{"type":"object","required":["type","method","bodyType","body"],"properties":{"body":{"type":"object","anyOf":[{"required":["pay_to"]},{"required":["domain"]},{"required":["url"]}],"properties":{"url":{"type":"string","format":"uri"},"domain":{"type":"string"},"pay_to":{"type":"string"},"price_micro":{"type":"integer","minimum":0},"quality_gate":{"type":"string"},"planned_calls":{"type":"integer","minimum":1},"session_cap_usd":{"type":"number","minimum":0}}},"type":{"type":"string","const":"http"},"method":{"enum":["POST"],"type":"string"},"bodyType":{"enum":["json","form-data","text"],"type":"string"}},"additionalProperties":false},"output":{"type":"object","required":["type"],"properties":{"type":{"type":"string"},"example":{"type":"object"}}}}},"responseSchema":null,"example":{"request":{"input":{"body":{"domain":"api.example.com","pay_to":"0x742d35Cc6634C0532925a3b844Bc9e7595f42bE","price_micro":50000,"quality_gate":"standard","planned_calls":100,"session_cap_usd":10},"type":"http","method":"POST","bodyType":"json"}},"response":{"ok":true,"dataset":{"bands":[{"n":870,"risk_band":"minimal"},{"n":44,"risk_band":"low"},{"n":5,"risk_band":"high"}],"total":919,"calls_30d":136907,"last_ingest":{"id":847,"ok":1,"ts":1781842669,"error":"","iso_ts":"2026-06-19T04:17:49.000Z","source":"coinbase-discovery","scanned":250,"upserted":250,"attempted":250},"dataset_fresh_at":"2026-06-19T04:18:11.000Z","revenue_30d_micro":3826770339},"reasons":[],"decision":"allow_with_limits","warnings":["payee_or_domain_not_found_in_hosted_corpus","no_observed_unique_buyers_30d","endpoint_risk_scores_average_medium_or_high","planned_call_count_exceeds_recommended_daily_cap"],"provenance":{"dataset":"x402-endpoint-risk-corpus","derived_from":"hosted D1 endpoint rows collected by Cloudflare Cron","generated_at":"2026-06-19T04:40:34.000Z"},"reputation":{"ok":true,"policy":"warn","target":{"pay_to":"0x742d35Cc6634C0532925a3b844Bc9e7595f42bE"},"coverage":{"domains":[],"networks":[],"calls_30d":0,"endpoints":0,"payers_30d":0,"price_sanity":{"score":35,"reasons":["no_positive_price_metadata"]},"manifest_rows":0,"revenue_30d_micro":0,"avg_endpoint_risk_score":50},"evidence":[],"warnings":["payee_or_domain_not_found_in_hosted_corpus","no_observed_unique_buyers_30d","endpoint_risk_scores_average_medium_or_high"],"provenance":{"dataset":"x402-endpoint-risk-corpus","derived_from":"hosted D1 endpoint rows collected by Cloudflare Cron","generated_at":"2026-06-19T04:40:34.000Z"},"reputation_score":34,"aggregate_spend_guidance":{"autopay":false,"max_per_call_usd":0.05,"require_allowlist":true,"suggested_daily_cap_usd":0.25}},"next_action":"Use autopay only with the returned per-call/session caps, quality gate, and recheck window.","buyer_verdict":"autopay_with_caps","candidate_plan":{"price_micro":50000,"planned_calls":100,"session_cap_usd":10,"planned_spend_usd":5,"quality_gate_present":true},"execution_policy":{"stop_conditions":["payment_requirement_changes","output_schema_mismatch","paid_but_denied","new_high_risk_corpus_evidence"],"require_allowlist":true,"recheck_after_minutes":60,"require_quality_validation":true,"evidence_required_before_unattended_spend":["stable payTo","exact resource binding","positive catalog reputation","machine-validated JSON output"]},"require_allowlist":true,"recommended_limits":{"max_per_call_usd":0.05,"recheck_after_minutes":60,"suggested_daily_cap_usd":0.25,"max_calls_before_recheck":5},"require_quality_validation":true}},"exampleRequest":{"domain":"api.example.com","pay_to":"0x742d35Cc6634C0532925a3b844Bc9e7595f42bE","price_micro":50000,"quality_gate":"standard","planned_calls":100,"session_cap_usd":10},"tags":["x402"],"displayCostAmount":"0.2","displayCostAsset":"USDC","priceDynamic":false,"priceHint":null,"priceStatus":"priced","priceSource":"settled","requiresHandshake":false,"reviewCount":0,"rating":{"score":"0.00","successRate":"0.00","reviews":0,"stars":null,"state":"unrated"},"availabilityStatus":"unknown","priceObserved":null,"sessionDeposit":null,"pricing":{"kind":"static","summary":"$0.2/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.2","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.2","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_xJgiMa5NOwAG0dJQOrUOV","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0.2","costPer":"request","priority":0,"asset":null,"unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Evaluates payee reputation and a proposed x402 call plan to produce an allow/allow_with_limits/manual_review/deny decision plus spending caps for autonomous payments","exampleAgentPrompt":"Before my agent auto-pays for calls to this x402 endpoint at payTo address 0xABC...123 on the domain api.example.com, run an autopay policy check — should it allow, allow with limits, send for manual review, or deny, and what spending caps should I set?","exampleUseCases":null,"resultDescription":"A JSON object containing a policy decision (one of: allow, allow_with_limits, manual_review, deny), recommended per-call and daily spending caps, payee reputation signals from the corpus, and reasoning for the classification.","failureModes":["Unknown payee wallet with no corpus history returns low-confidence manual_review decision","Malformed call plan JSON causes 400 validation error","Payment not included or incorrect USDC amount causes 402 payment required error","Insufficient corpus data for the domain may yield conservative deny response","Rate limits or overload may cause 429 or 503 errors"],"whenToPreferThis":"Use this endpoint when an AI agent needs a pre-authorization risk assessment before executing an autonomous x402 micropayment — especially when the payee is unknown, the payment is recurring, or spending caps need to be established. Prefer this over manual research when you need a structured allow/deny decision backed by observed corpus data.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-09-15T06:31:58.515Z","isFirstParty":false}