ipwhois_rs
A Rust wrapper library for IP whois and geolocation lookup using ipwhois.io API.
Features
- Lookup IP address information including location, ISP, timezone, and flags.
- Async API using Tokio runtime.
- Detailed response struct with nested data.
Example Usage
use IpWhoIs;
async
Response Data Structure
The IpWhoIsResponse struct contains detailed information returned by the API.
IpWhoIsResponse Fields
- ip (
String): Queried IP address. - success (
bool): Whether the lookup was successful. - ip_type (
String): IP type, e.g., "IPv4" or "IPv6". - continent (
String): Continent name (e.g., "North America"). - continent_code (
String): Continent code (e.g., "NA"). - country (
String): Country name (e.g., "United States"). - country_code (
String): Country code (e.g., "US"). - region (
String): Region or state name (e.g., "California"). - region_code (
String): Region code (e.g., "CA"). - city (
String): City name (e.g., "Mountain View"). - latitude (
f64): Latitude coordinate. - longitude (
f64): Longitude coordinate. - is_eu (
bool): Whether the IP belongs to the European Union. - postal (
String): Postal or ZIP code. - calling_code (
String): International telephone calling code. - capital (
String): Capital city of the country. - borders (
String): Bordering countries or regions. - flag (
Flag): Country flag information. - connection (
Connection): ISP and ASN info. - timezone (
TimeZone): Timezone info.
Nested Structs
Flag
- img (
String): URL to the country flag image. - emoji (
String): Country flag emoji. - emoji_unicode (
String): Unicode points for the emoji flag.
Connection
- asn (
i32): Autonomous System Number. - org (
String): Organization (ISP or company). - isp (
String): Internet Service Provider name. - domain (
String): Domain associated with the connection.
TimeZone
- id (
String): Timezone identifier (e.g., "America/Los_Angeles"). - abbr (
String): Timezone abbreviation (e.g., "PDT"). - is_dst (
bool): Whether daylight saving time is active. - offset (
i32): Offset in seconds from UTC (e.g., -25200). - utc (
String): UTC offset as a string (e.g., "-07:00"). - current_time (
String): Current local time in the timezone.
License
MIT © 2025 Junaid Rahman(https://github.com/junaid433)