{"uid":"cap_uzeqwgJUzxOT9dV0Wocmj","slug":"x402-store-sign-decode-f117e60e","name":"x402-store Sign Decode","description":"Decode an EVM signature request (EIP-712 typed data, Permit/Permit2, or ERC-20 approve calldata) into a structured intent: what token, which spender, how much, until when, plus risk_flags and an action_hint. Deterministic, no LLM. Answers an agent's question 'what am I about to sign?'","url":"https://x402-store.dgdb.workers.dev/v1/sign-decode?utm_source=zero.xyz","method":"POST","headers":{},"bodySchema":{"type":"object","properties":{"domain":{"type":"object"},"message":{"type":"object"},"calldata":{"type":"string"},"primaryType":{"type":"string"}}},"responseSchema":null,"example":null,"exampleRequest":null,"tags":["x402"],"displayCostAmount":"0.005","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.005/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.005","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.005","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_Ou5ipNn5zQtZ9j5xjgAiu","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0.005","costPer":"request","priority":0,"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Decodes an EVM signature request (EIP-712, Permit/Permit2, or ERC-20 approve calldata) into a structured intent describing what token, spender, amount, expiry, risk flags, and action hint","exampleAgentPrompt":"Before I sign this, can you decode this EIP-712 Permit2 message and tell me what token it's approving, which spender gets access, how much, when it expires, and whether there are any risk flags? Here's the domain and message object: {domain: {name: 'Permit2', chainId: 1, ...}, message: {token: '0xA0b...', spender: '0x000...', amount: '115792...', deadline: '1718000000'}, primaryType: 'PermitSingle'}","exampleUseCases":null,"resultDescription":"Returns a structured intent object containing: the token being approved, the spender address, the allowance amount, the expiry/deadline, risk_flags (e.g. unlimited approval, suspicious spender), and an action_hint summarizing what the signature would authorize — all computed deterministically without an LLM.","failureModes":["Missing or malformed domain/message object returns a parsing error","Unrecognized primaryType or calldata format returns an unsupported type error","Calldata that doesn't match ERC-20 approve ABI fails to decode","Incomplete typed data structure causes partial decode or error","Payment not included or insufficient USDC results in 402 payment required response"],"whenToPreferThis":"Use this endpoint when an AI agent needs to explain or audit an EVM signature request before a user signs it — especially for EIP-712 typed data (Permit, Permit2, PermitSingle, PermitBatch) or raw ERC-20 approve calldata. Prefer this over LLM-based decoding because it is deterministic, structured, and returns machine-readable risk flags. Ideal for wallets, DeFi agents, or security tools that need to present 'what am I signing?' summaries.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-10-20T18:38:04.635Z","isFirstParty":false,"canonicalSlug":"x402-store-sign-decode-f117e60e"}