{"uid":"cap_mPJe0pHgIy7elZFGm95up","slug":"toll402-spanish-dni-validator-a29ca4a4","name":"Toll402 Spanish DNI Validator","description":"The OpenRouter for AI-agent tools: one gateway, one wallet, every capability. Built-in tools, forged tools, a global verified business directory and 2,000+ aggregated x402 services, all paid per call in USDC via x402 (HTTP 402). No signup, no API key.","url":"https://toll402.dev/v1/t/dni_es_validate","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","required":["dni"],"properties":{"dni":{"type":"string","description":"Spanish DNI, e.g. 12345678Z"}},"additionalProperties":false},"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":{"type":"json","example":{"ok":true}},"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_7C2Zrh2Hshv7vnt2eErqV","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 a Spanish DNI (national identity number) and returns whether it is structurally and algorithmically correct","exampleAgentPrompt":"Can you check whether 12345678Z is a valid Spanish DNI number?","exampleUseCases":[{"title":"KYC pre-check for Spanish users","prompt":"Before we process this Spanish customer's registration, can you verify that their DNI 87654321X is actually a valid Spanish identity number?"},{"title":"Form submission validation","prompt":"A user just filled in their DNI as 00000000T on our onboarding form — can you tell me if that's a structurally valid Spanish DNI before we submit it?"},{"title":"Bulk data cleanup check","prompt":"We imported a list of customer DNIs from an old database. Can you check whether 12345678Z is valid so I know if the format looks right before we audit the rest?"}],"resultDescription":"Returns a JSON object with an 'ok' boolean field indicating whether the provided DNI is valid (true) or not (false) according to Spanish DNI format and checksum rules.","failureModes":["Invalid or missing 'dni' field in the request body returns a validation error","Malformed DNI string (wrong length, non-alphanumeric characters) may return ok: false","Network or payment errors result in HTTP 402 or 5xx responses","Empty string input may cause a schema validation failure"],"whenToPreferThis":"Use this endpoint when you need a quick, pay-per-call validation of a Spanish DNI number without setting up any account or API key. Ideal for AI agents doing identity pre-checks, form validation, or KYC compliance steps for Spanish users. Prefer this over building custom validation logic when you need a reliable hosted check with no infrastructure overhead.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-09-15T12:55:08.978Z","isFirstParty":false}