{"uid":"cap_9s-SMXBKMTQXX6LPbdc5K","slug":"evm-token-value-canonicalization-0ccc4f23","name":"EVM Token/Value Canonicalization","description":"Canonicalize one EVM token/value payload into schema-validated JSON (deterministic, honest nulls)","url":"https://evm-canon-base.onrender.com/canonicalize","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","properties":{"time":{"description":"unix seconds/millis or ISO-8601"},"chain":{"type":"string","description":"name, alias or chainId"},"token":{"type":"string","description":"contract address"},"amount":{"type":"string","description":"raw integer or human decimal string"},"symbol":{"type":"string"},"decimals":{"type":"integer"}}},"type":{"type":"string","const":"http"},"method":{"enum":["POST","PUT","PATCH"],"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":null,"exampleRequest":null,"tags":["x402"],"displayCostAmount":"0.01","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.01/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.01","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.01","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_HNuC_FwFM-fM7V0yBmpPx","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0.01","costPer":"request","priority":0,"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Normalizes a raw EVM token or value payload into a schema-validated, deterministic JSON representation with honest nulls for missing fields","exampleAgentPrompt":"Canonicalize this raw EVM token payload for USDC on Base — address 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913, amount 1500000, decimals 6 — and give me back a clean, schema-validated JSON with honest nulls for anything missing.","exampleUseCases":[{"title":"Normalize DeFi token data pipeline","prompt":"I'm pulling raw token data from multiple EVM contracts and need it all in a consistent schema before I store it — can you canonicalize this WETH payload from Arbitrum, address 0x82aF49447D8a07e3bd95BD0d56f35241523fBab1, amount 2000000000000000000, decimals 18, and return validated JSON with nulls where fields are absent?"},{"title":"Clean up token metadata before display","prompt":"Before I show token info to users in my wallet UI, canonicalize this ERC-20 payload — token symbol DAI, address 0x6B175474E89094C44Da98b954EedeAC495271d0F, raw amount 500000000000000000000, decimals 18 — so I know every field is schema-valid and missing values are explicit nulls."},{"title":"Cross-chain token amount standardization","prompt":"I have a token value payload from a cross-chain bridge response that might have inconsistent or missing fields — can you canonicalize it into deterministic JSON? Token is MATIC on Polygon, address 0x0000000000000000000000000000000000001010, amount 750000000000000000, decimals 18."}],"resultDescription":"A deterministic, schema-validated JSON object representing the canonical form of the submitted EVM token or value payload. Missing or unresolvable fields are returned as explicit nulls rather than omitted, ensuring downstream consumers always receive a complete, predictable structure.","failureModes":["Invalid or malformed token payload returns a 400-level error with validation details","Unrecognized token address or chain ID may result in null fields but not an error","Payment not received or insufficient USDC results in 402 Payment Required","Malformed JSON body returns a parse error","Network or server timeout returns a 5xx error"],"whenToPreferThis":"Choose this endpoint when you need a single, deterministic, schema-validated JSON representation of an EVM token or value payload — especially when inputs may be inconsistent, partial, or sourced from heterogeneous chains. It is ideal for data pipeline normalization steps, pre-storage cleaning, or ensuring honest null handling for missing fields before downstream processing. Prefer it over ad-hoc client-side normalization when determinism and schema compliance are required.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-09-15T12:43:27.933Z","isFirstParty":false}