IsValid
Data Validation API
Stop writing validators from scratch. One REST API for emails, IBANs, domains, ISINs, ETH addresses, cron expressions, and 73+ validators — with checksum verification, DNS lookups, ESMA FIRDS data, GLEIF entity search, and UN/LOCODE built in.
- Validators
- 73+
- Free calls/day
- 100
- Uptime
- 99.9%
- SDKs
- Node · Python
Featured Validators
A closer look at the most powerful endpoints — enriched with live data from authoritative sources.
LEI Validation & Search
Validate Legal Entity Identifiers (ISO 17442) and instantly enrich them with entity data from the local GLEIF database — no external API calls, no rate limits. Search across 2.3 million entities by name with trigram similarity.
- ISO 17442 format validation + mod-97 checksum (same as IBAN)
- Local GLEIF Golden Copy database — ~2.3 million entities
- Full-text name search with trigram similarity (pg_trgm)
- LOU (Local Operating Unit) info returned for every valid LEI
GET /v0/leiView docs →Business & Finance
Banking, payments, securities, and tax identifiers — with checksum verification, enrichment from authoritative databases, and real-time VIES checks.
IBAN
Validate International Bank Account Numbers for 80+ countries — MOD-97 checksum, bank name and BIC lookup for 40+ countries.
GET /v0/ibanBIC / SWIFT
Validate Bank Identifier Codes used in international wire transfers. Returns institution name, city, and branch from a built-in directory.
GET /v0/bicCredit Card
Luhn checksum validation with card network detection — Visa, Mastercard, Amex, Discover, JCB, Diners Club, and UnionPay.
POST /v0/credit-cardISIN
ISO 6166 validation with Luhn check digit. Enriches with instrument data from ESMA FIRDS and OpenFIGI — name, CFI, currency, venue, ticker.
GET /v0/isinLEI
ISO 17442 validation with mod-97 checksum. Looks up entity data from a local GLEIF database of 2.3 million records. Supports name search.
GET /v0/leiVAT
EU VAT number validation for all 27 member states with optional real-time VIES verification. Returns country, company name, and validity status.
GET /v0/vatGeneral Purpose
Everyday validators for contact data, networking, crypto, travel, and developer tokens.
RFC 5322 validation with optional DNS MX record checks to confirm the domain actually accepts mail.
GET /v0/emailPhone Number
Validate phone numbers for 200+ countries. Returns country, calling code, line type, and E.164, national, and international formats.
GET /v0/phoneDomain
Validate domain names with full DNS resolution. Returns TLD, SLD, IDN detection, and A/AAAA record lookups via Google and Cloudflare DNS.
GET /v0/domainETH Address
Validate Ethereum addresses with EIP-55 mixed-case checksum verification. Returns the canonical checksummed address.
GET /v0/eth-addressIATA Airport
Validate 3-letter IATA airport codes with rich metadata — official name, city, country, ICAO code, IANA timezone, and classification.
GET /v0/iata/airportJWT
Decode and validate JSON Web Tokens — header, payload, signature structure, registered claims, and expiration checks.
GET /v0/jwtAnd 60+ more — Bitcoin address, IMEI, EAN / GTIN / UPC, IATA airline, MIC, URL, IP & MAC address, GPS coordinates, postal code, ISBN, ISSN, DOI, ORCID, ABA routing, NPI, CNPJ, CPF, ABN, NIF/NIE, GSTIN, EORI, Sort Code, NUTS, ISO 6346, SSCC, GLN, GS1 prefix, HS code, CAS number, barcode, QR / Data Matrix, NAICS / NACE industry, KRS, PESEL, REGON, DUNS, CEIDG, UUID, semver, CSS color, SWIFT MT, cron, regex, base64, DTI, CUSIP, CFI, and others. See full documentation →
Guides
Step-by-step tutorials for common validation scenarios.
Node.js
Validate EU VAT Numbers in Node.js
Why regex fails, how checksums work, and how to handle VIES downtime correctly.
Node.js
Credit Card Validation — Luhn Algorithm Explained
How the Luhn algorithm works, BIN range detection, and why DIY falls short in production.
Python
BIC / SWIFT Validation in Python
BIC structure decoded, institution lookup, passive participants, and caching patterns.
Node.js
IBAN Validation in Node.js — mod-97 Explained
mod-97 checksum step by step, 76-country length rules, BBAN structure, and SEPA routing.
Node.js
JWT Validation — Structure, Claims, and Expiry Pitfalls
Header, payload, and signature decoded — plus the auth bugs that bite every Node.js developer.
Node.js
IMEI Validation in Node.js — Luhn for Device IDs
TAC, SNR, and check digit explained — and why a 15-digit regex is not enough.
These are just a few of our guides — covering algorithms, edge cases, and production patterns. See all guides →
Official SDKs
Type-safe clients for Node.js and Python — with automatic retry, custom error classes, and full IntelliSense for every endpoint.
Node.js / TypeScript
npm install @isvalid-dev/sdk- Zero dependencies — native fetch only
- Full TypeScript types for every response
- ESM + CJS dual export — ~1.5 KB min+brotli
- Automatic retry with exponential backoff
Python
pip install isvalid-sdk- Single dependency — httpx
- Full type hints with TypedDict for every response
- Context manager support
- Automatic retry with exponential backoff
Start validating today
Create your free account and get 100 API calls per day.
Ready to integrate IsValid into your project?
Read the full API documentation and start making requests in minutes.