{"uid":"cap_Ew_htLaZINr6Ogp9FRfwg","slug":"vea-verify-pre-flight-firewall-for-ai-agent-transactions-a078c1fa","name":"VEA /verify — Pre-Flight Firewall for AI Agent Transactions","description":"Two calls. /verify runs BEFORE signing: allow or deny plus an Ed25519-signed receipt. /attest runs AFTER execution: did the chain do exactly what was declared? Non-custodial — VEA holds no keys and never executes. Paid per call over x402; the documented samples under /samples are free and use the same engine.","url":"https://vea-base.onrender.com/verify","method":"POST","headers":{},"bodySchema":{"type":"object","required":["intent"],"properties":{"intent":{"type":"object"}}},"responseSchema":{"type":"object","properties":{"billing":{"type":"object"},"reasons":{"type":"array","items":{"type":"string"}},"receipt":{"type":"object"},"decision":{"enum":["PASS","BLOCK"],"type":"string"},"confidence":{"type":"number"}}},"example":null,"exampleRequest":null,"tags":["x402"],"displayCostAmount":"0.001","displayCostAsset":"USDC","priceDynamic":false,"priceHint":null,"priceStatus":"priced","priceSource":"probe","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.001/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.001","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.001","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_ykalr7qWlvkBED3spqRoq","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0.001","costPer":"request","priority":0,"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Validates an AI agent's declared transaction intent BEFORE signing, returning an Ed25519-signed PASS/BLOCK decision with confidence score and reasons.","exampleAgentPrompt":"Before I sign this transaction, run it through VEA's pre-flight firewall — here's the intent object — and tell me whether it gets a PASS or BLOCK, how confident it is, and give me the signed receipt.","exampleUseCases":[{"title":"Guarding autonomous DeFi agent swaps","prompt":"My DeFi agent is about to sign a token swap worth $500 USDC — can you run the intent through VEA's /verify endpoint and block it if it looks suspicious before we sign anything?"},{"title":"Policy compliance check for agent payments","prompt":"Before my AI agent sends this x402 micropayment, I need a pre-flight firewall check on the intent to make sure it's within our spending policy — give me the PASS or BLOCK decision and the signed receipt."},{"title":"Multi-agent transaction approval gate","prompt":"We have an agent fleet where every transaction needs a pre-execution safety check — can you run this intent object through VEA verify and return the confidence score and reasons so I can decide whether to proceed?"}],"resultDescription":"Returns a JSON object containing: a binary 'decision' field (PASS or BLOCK), a numeric 'confidence' score (0–1), an array of 'reasons' explaining the decision, an Ed25519-signed 'receipt' object for audit/proof purposes, and a 'billing' object reflecting the per-call charge. The receipt can be stored as tamper-evident proof that the pre-flight check occurred.","failureModes":["Missing or malformed 'intent' object returns a 400 validation error","Unpaid or underpaid x402 call returns 402 Payment Required","Intent schema does not match expected structure — partial or empty reasons array returned","Network timeout on render.com cold start may cause latency spike on first call","If Ed25519 signing service is unavailable, receipt may be absent from response"],"whenToPreferThis":"Use VEA /verify when you need a cryptographically signed, auditable pre-flight safety check on an AI agent's transaction intent before any keys are touched. It is non-custodial (holds no keys, never executes), making it suitable for zero-trust agent architectures. Prefer this over ad-hoc policy checks when you need a tamper-evident receipt, a structured PASS/BLOCK signal with confidence scoring, and x402-native micropayment billing. It is distinct from /attest (which runs post-execution) — use /verify exclusively for the pre-signing gate.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-09-14T12:39:08.599Z","isFirstParty":false}