{"uid":"cap_ah-Mn7QzOnJJ_1B01nxtL","slug":"b20-permit-data-reader-domain-separator-nonce-eip-712-480dfd7d","name":"B20 Permit Data Reader (DOMAIN_SEPARATOR, Nonce, EIP-712)","description":"🆕 Every B20 has ERC-2612 permit built in — approve a spender by signature instead of a transaction. Reads exactly what an agent needs to build a valid permit: the token's DOMAIN_SEPARATOR, the owner's current nonce (so the signed payload can't be rejected/replayed), and the EIP-712 domain/type struct. Read-only — signs nothing.","url":"https://402.com.tr/api/x402/b20-permit","method":"GET","headers":{},"bodySchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["input"],"properties":{"input":{"type":"object","required":["type","method"],"properties":{"type":{"type":"string","const":"http"},"method":{"enum":["GET"],"type":"string"},"pathParams":{"type":"object"},"queryParams":{"type":"object","required":["address"],"properties":{"owner":{"type":"string","description":"Owner wallet (for the nonce, optional)"},"address":{"type":"string","description":"B20 token address"}}}},"additionalProperties":false},"output":{"type":"object","required":["type"],"properties":{"type":{"type":"string"},"example":{"type":"object"}}}}},"responseSchema":null,"example":null,"exampleRequest":null,"tags":["x402"],"displayCostAmount":"0.03","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.03/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.03","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.03","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_OyAwMmDnsICxHNrQUfvYP","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0.03","costPer":"request","priority":0,"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Returns ERC-2612 permit parameters for a B20 token — DOMAIN_SEPARATOR, owner nonce, and EIP-712 domain/type structs — so an agent can build a valid gasless approval signature.","exampleAgentPrompt":"I need to build a gasless permit signature for the B20 token at address 0xAbC123... on Base — can you fetch the DOMAIN_SEPARATOR, EIP-712 type struct, and the current nonce for my wallet 0xDef456... so I can sign the permit off-chain?","exampleUseCases":null,"resultDescription":"Returns the token's DOMAIN_SEPARATOR, the owner's current nonce (preventing replay attacks), and the full EIP-712 domain and type structs needed to construct a valid ERC-2612 permit signature off-chain. No signing is performed by the endpoint.","failureModes":["Invalid or non-B20 token address returns an error or empty data","Token contract does not implement ERC-2612/permit — endpoint may return null or an error","Owner wallet address malformed — query param validation error","Token address not deployed on Base — contract call reverts","RPC node unavailable — upstream timeout or 503"],"whenToPreferThis":"Use this endpoint when you need to construct an ERC-2612 gasless permit signature for a B20 token on Base, specifically when you need the DOMAIN_SEPARATOR and current owner nonce before signing. Prefer this over general-purpose RPC calls when you want a single structured response containing all three permit prerequisites (domain separator, nonce, EIP-712 structs) without writing custom contract ABI calls.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-09-14T19:06:03.537Z","isFirstParty":false}