Client SDKs
Official client libraries for the IQX Lookup API are available in 5 languages, plus a Spring Boot starter for Java applications.
Available SDKs
| SDK | Package | Min Version | Dependencies |
|---|---|---|---|
| Java | es.neivi:iqx-lookup-java | Java 11+ | Gson |
| Spring Boot | es.neivi:iqx-lookup-spring-boot-starter | Spring Boot 3.x | Java SDK |
| TypeScript | @neivi/iqx-lookup-typescript | Node 18+ | None |
| Python | neivi-iqx-lookup | Python 3.9+ | None |
| Go | github.com/Neivi-IT/iqx-lookup-go | Go 1.21+ | None |
| Rust | neivi-iqx-lookup | Rust 2021 edition | reqwest, serde, thiserror |
Common Patterns
All SDKs share the same design principles:
- 12 validation and lookup methods:
validateEmail,validatePhone,geolocateIp,geolocateMyIp,validateVat,parseUserAgent,validateIban,validateBic,lookupDns,checkSslCertificate,checkPasswordStrength,validateCreditCard - API key authentication via
X-Api-Keyheader - Typed error handling with specific exceptions for 401, 403, 404, 429, and 503 responses
- Rate limit info extracted from response headers (
X-RateLimit-Limit,X-RateLimit-Remaining,X-RateLimit-Reset) - Configurable base URL and timeout with sensible defaults
- Minimal dependencies — most SDKs use only the language's standard HTTP client
Default Configuration
| Setting | Default |
|---|---|
| Base URL | https://api.iqxlookup.neivi.es |
| Timeout | 10 seconds |
| User-Agent | iqx-lookup-{lang}/0.2.1 |
Error Handling
All SDKs map HTTP error responses to typed exceptions:
| HTTP Status | Error Type | Description |
|---|---|---|
| 401 | UnauthorizedException | Missing X-Api-Key header |
| 403 | ForbiddenException | Invalid or inactive API key |
| 404 | NotFoundException | Resource not found (e.g., unknown IP) |
| 429 | RateLimitException | Rate limit exceeded (includes retryAfter, limit, remaining, reset) |
| 503 | ServiceUnavailableException | Service not configured (e.g., GeoIP database missing) |