IP Address Toolkit
## Overview The IP Address Toolkit API provides 40 endpoints for validating, classifying, and performing subnet calculations on IPv4 and IPv6 addresses. Essential for network tools. ## Key Features - **Validation**: Check if strings are valid IPv4 or IPv6 addresses - **Classification**: Identify private, reserved, loopback, link-local, multicast ranges - **Subnet Math**: Network/broadcast…
IP Address Toolkit endpoints
| Method | Endpoint | Description |
|---|---|---|
| GET |
Parse IPv4 address into representations /ipv4/parse |
Parse an IPv4 address into all common representations: binary (32-bit string), hexadecimal, decimal integer, individual octets, and the legacy classful class (A/B/C/D/E). |
| GET |
Validate IPv6 address /ipv6/validate |
Return whether the supplied string is a syntactically valid IPv6 address. |
| GET |
Convert IPv4 address to hexadecimal /convert/ip-to-hex |
Convert an IPv4 address to hexadecimal. Returns both plain hex and octet-separated formats. |
| GET |
Validate IPv4 address /ipv4/validate |
Returns whether the supplied string is a syntactically valid IPv4 address. Does **not** raise an error for invalid input — just returns `valid: false`. |
| GET |
Classify an IPv4 address /ipv4/classify |
Classify an IPv4 address according to well-known ranges: private, public, loopback, link-local, multicast, reserved, documentation, CGNAT, 6to4, benchmarking, etc. Also checks… |
| GET |
Convert integer to IPv4 address /ipv4/from-integer |
Convert a 32-bit unsigned integer to its IPv4 dotted-decimal representation. |
| GET |
Convert IPv4 address to integer /ipv4/to-integer |
Convert an IPv4 address to its 32-bit unsigned integer representation. |
| GET |
Reverse DNS lookup for an IPv4 address /ipv4/reverse-dns |
Perform a reverse DNS (PTR record) lookup for an IPv4 address. Returns the hostname if found, or an appropriate error message. |
| GET |
Expand abbreviated IPv6 to full form /ipv6/expand |
Expand an abbreviated IPv6 address to its full 8-group dotted-hex representation. Example: `2001:db8::1` → `2001:0db8:0000:0000:0000:0000:0000:0001` |
| GET |
Compress IPv6 to shortest form /ipv6/compress |
Compress an IPv6 address to its shortest canonical form using `::` notation. Example: `2001:0db8:0000:0000:0000:0000:0000:0001` → `2001:db8::1` |
| GET |
Parse IPv6 address into components /ipv6/parse |
Parse an IPv6 address into its components: expanded form, compressed form, group breakdown, integer value, classification, scope (for multicast), and various flag checks. |
| GET |
Full CIDR subnet calculation /subnet/calculate |
Return complete subnet information for a given CIDR block: network address, broadcast, subnet mask, wildcard mask, host count, first/last usable host addresses. Supports both… |
| GET |
Check if an IP is within a subnet /subnet/contains |
Check whether a given IP address falls within the specified CIDR network. |
| GET |
Resolve a hostname to IP address(es) /dns/resolve |
Resolve a hostname to its IPv4 and/or IPv6 addresses. Returns all addresses found, using `socket.getaddrinfo` internally. If the input is already an IP address, it is returned… |
| POST |
Split a subnet into smaller subnets /subnet/split |
Split a CIDR network into smaller subnets of a given prefix length. For example, split a /24 into /26 subnets (produces 4 subnets). Maximum 1024 subnets returned to prevent… |
| GET |
Convert hexadecimal to IPv4 address /convert/hex-to-ip |
Convert a hexadecimal string to an IPv4 address. Accepts `c0a80101`, `0xc0a80101`, `C0:A8:01:01`, or any combination. |
| POST |
Find the smallest supernet containing multiple CIDRs /subnet/supernet |
Find the smallest common supernet that contains all supplied CIDR networks. All networks must be the same IP version (IPv4 or IPv6). |
| GET |
Convert dotted decimal subnet mask to CIDR prefix /subnet/mask-to-cidr |
Convert a dotted-decimal subnet mask (e.g. `255.255.255.0`) to CIDR prefix length (e.g. `/24`). Validates that the mask is a valid contiguous subnet mask. |
| GET |
Convert CIDR prefix length to dotted decimal mask /subnet/cidr-to-mask |
Convert a CIDR prefix length (e.g. `24`) to a dotted-decimal subnet mask (`255.255.255.0`) and wildcard mask (`0.0.0.255`). |
| POST |
VLSM — allocate variable-length subnets from a base network /subnet/vlsm |
Variable Length Subnet Masking (VLSM) calculator. Given a base network and a list of required host counts, allocates the smallest possible subnets for each requirement… |
| GET |
Convert IPv4 address to 32-bit binary string /convert/ip-to-binary |
Convert an IPv4 address to its 32-bit binary string representation. Returns both plain binary and dotted-binary (per-octet) forms. |
| GET |
Convert 32-bit binary string to IPv4 address /convert/binary-to-ip |
Convert a 32-bit binary string to its IPv4 address. Accepts plain binary (`11000000101010000000000100000001`) or dotted binary (`11000000.10101000.00000001.00000001`). Spaces are… |
| GET |
Convert IPv4 address to 32-bit integer /convert/ip-to-integer |
Convert an IPv4 address to its 32-bit unsigned integer representation. |
| POST |
Check if two subnets overlap /analyze/overlap |
Check whether two CIDR networks overlap (share any IP addresses). Returns overlap details including the overlapping range if one exists. |
| GET |
Convert 32-bit integer to IPv4 address /convert/integer-to-ip |
Convert a 32-bit unsigned integer to an IPv4 dotted-decimal address. |
| GET |
Dotted decimal mask → CIDR prefix length /convert/mask-to-prefix |
Convert a dotted-decimal subnet mask to a CIDR prefix length. Validates contiguity of the mask bits. |
| GET |
CIDR prefix length → dotted decimal mask /convert/prefix-to-mask |
Convert a CIDR prefix length to dotted-decimal subnet mask and wildcard mask. |
| GET |
Reverse DNS lookup (IP → hostname) /dns/reverse |
Perform a reverse DNS (PTR record) lookup for an IP address. Returns the primary hostname and any aliases found. Works for both IPv4 and IPv6 addresses. |
| GET |
Check whether a hostname resolves /dns/check |
Check whether a hostname resolves to at least one IP address. Returns `resolves: true/false` along with resolution time. |
| POST |
Resolve multiple hostnames in a single request /dns/batch |
Resolve up to 50 hostnames in a single request. Each hostname is resolved independently; failures for one do not affect others. Returns a list of results in the same order as the… |
| POST |
Classify a list of IP addresses /analyze/classify |
Classify each IP address in the supplied list. Handles mixed IPv4/IPv6 lists. Invalid IPs are reported separately. Returns per-IP classification and cloud-provider lookup. |
| POST |
Sort a list of IP addresses numerically /analyze/sort |
Sort a list of IP addresses in numerical order. IPv4 addresses are sorted by their 32-bit integer value. IPv6 addresses are sorted by their 128-bit integer value. Mixed lists:… |
| POST |
Summarize a list of IP addresses /analyze/summarize |
Summarize a list of IP addresses: - Count by classification (public, private, loopback, etc.) - Count by IP version (v4 vs v6) - Count by classful class (A/B/C/D/E) for IPv4 -… |
| POST |
Find which subnet each IP belongs to /analyze/subnet-membership |
For each IP address in the list, determine which of the supplied CIDR networks it belongs to. An IP may match multiple subnets if they overlap. |
| GET |
List all private IPv4 address ranges (RFC 1918) /ranges/private |
Return the three RFC 1918 private address ranges: 10.0.0.0/8, 172.16.0.0/12, and 192.168.0.0/16. |
| GET |
List all special-purpose IPv4 address ranges /ranges/special |
Return all IANA special-purpose IPv4 address ranges, optionally filtered by category. Includes loopback, link-local, CGNAT, multicast, reserved, documentation, and more. |
| GET |
List known cloud provider IP ranges /ranges/cloud |
Return approximate cloud provider IP ranges for AWS, Google Cloud, and Cloudflare. **Note**: These are representative ranges only. For authoritative, up-to-date ranges, use each… |
| GET |
List all special-purpose IPv6 address ranges /ranges/ipv6-special |
Return all IANA special-purpose IPv6 address ranges, optionally filtered by category. |
| GET |
API root — overview and quick-start links / |
Return API metadata and endpoint directory. |
| GET |
Health check /health |
Return service health status. Returns HTTP 200 with `status: ok` when the API is healthy. |
IP Address Toolkit pricing
| Plan | Price | Rate limit | Quotas |
|---|---|---|---|
| BASIC | Free | — |
|
| Pro | $9.99 / month | 20 / minute |
|
| Ultra | $29.99 / month | 100 / minute |
|