{"message":"IP Calculator API","version":"1.0.0","categories":["subnetting","cidr","ip-address-convertor","dns"],"endpoints":{"subnetting":[{"endpoint":"/api/subnetting/ipv4-subnet-calculator","tool":"ipv4-subnet-calculator","description":"Calculate IPv4 subnet information","method":"POST"},{"endpoint":"/api/subnetting/ipv6-subnet-calculator","tool":"ipv6-subnet-calculator","description":"Calculate IPv6 subnet information","method":"POST"},{"endpoint":"/api/subnetting/vlsm-calculator","tool":"vlsm-calculator","description":"Calculate Variable Length Subnet Mask allocations","method":"POST"},{"endpoint":"/api/subnetting/supernet-calculator","tool":"supernet-calculator","description":"Calculate supernet aggregation for multiple networks","method":"POST"}],"cidr":[{"endpoint":"/api/cidr/cidr-to-subnet-mask","tool":"cidr-to-subnet-mask","description":"Convert CIDR notation to subnet mask","method":"POST"},{"endpoint":"/api/cidr/subnet-mask-to-cidr","tool":"subnet-mask-to-cidr","description":"Convert subnet mask to CIDR notation","method":"POST"},{"endpoint":"/api/cidr/summarize","tool":"summarize","description":"Summarize and optimize CIDR blocks, ranges, and IPs","method":"POST"},{"endpoint":"/api/cidr/split","tool":"split","description":"Split a CIDR block into smaller subnets","method":"POST"},{"endpoint":"/api/cidr/next-available","tool":"next-available","description":"Find next available subnet from pools minus allocations","method":"POST"},{"endpoint":"/api/cidr/deaggregate","tool":"deaggregate","description":"Deaggregate CIDR blocks into uniform subnets","method":"POST"},{"endpoint":"/api/cidr/compare","tool":"compare","description":"Compare two lists of CIDR blocks","method":"POST"},{"endpoint":"/api/cidr/alignment","tool":"alignment","description":"Check CIDR prefix boundary alignment","method":"POST"},{"endpoint":"/api/cidr/wildcard-mask","tool":"wildcard-mask","description":"Convert between CIDR, subnet masks, and wildcard masks","method":"POST"},{"endpoint":"/api/cidr/diff","tool":"diff","description":"Compute difference (A - B) between CIDR sets","method":"POST"},{"endpoint":"/api/cidr/overlap","tool":"overlap","description":"Find overlaps/intersections between CIDR sets","method":"POST"},{"endpoint":"/api/cidr/contains","tool":"contains","description":"Check containment relationships between CIDR sets","method":"POST"}],"ip-address-convertor":[{"endpoint":"/api/ip-address-convertor/validator","tool":"validator","description":"Validate IP address format and type","method":"POST"},{"endpoint":"/api/ip-address-convertor/normalize","tool":"normalize","description":"Normalize IPv6 to RFC 5952 format","method":"POST"},{"endpoint":"/api/ip-address-convertor/representations","tool":"representations","description":"Convert IP between decimal, binary, hex, and octal formats","method":"POST"},{"endpoint":"/api/ip-address-convertor/distance","tool":"distance","description":"Calculate distance between two IP addresses","method":"POST"},{"endpoint":"/api/ip-address-convertor/random","tool":"random","description":"Generate random IP addresses from networks/ranges","method":"POST"},{"endpoint":"/api/ip-address-convertor/nth-ip","tool":"nth-ip","description":"Calculate nth IP address from networks/ranges","method":"POST"},{"endpoint":"/api/ip-address-convertor/regex","tool":"regex","description":"Generate regex patterns for IP addresses","method":"POST"},{"endpoint":"/api/ip-address-convertor/regex-validator","tool":"regex-validator","description":"Validate input against IP regex patterns","method":"POST"},{"endpoint":"/api/ip-address-convertor/ipv6-to-ipv4","tool":"ipv6-to-ipv4","description":"Convert IPv6 addresses to IPv4 (embedded, mapped, etc.)","method":"POST"},{"endpoint":"/api/ip-address-convertor/ipv4-to-ipv6","tool":"ipv4-to-ipv6","description":"Convert IPv4 addresses to IPv6 (mapped, embedded, etc.)","method":"POST"},{"endpoint":"/api/ip-address-convertor/ula-generator","tool":"ula-generator","description":"Generate IPv6 Unique Local Address (ULA)","method":"POST"},{"endpoint":"/api/ip-address-convertor/ipv6-compress","tool":"ipv6-compress","description":"Compress IPv6 address using :: notation","method":"POST"},{"endpoint":"/api/ip-address-convertor/ipv6-expand","tool":"ipv6-expand","description":"Expand IPv6 address to full form","method":"POST"},{"endpoint":"/api/ip-address-convertor/zone-id","tool":"zone-id","description":"Parse or format IPv6 zone identifiers","method":"POST"},{"endpoint":"/api/ip-address-convertor/eui64","tool":"eui64","description":"Generate or validate EUI-64 interface identifiers","method":"POST"},{"endpoint":"/api/ip-address-convertor/enumerate","tool":"enumerate","description":"Enumerate IP addresses in networks/ranges","method":"POST"}],"dns":[{"endpoint":"/api/dns/ptr-generator","tool":"ptr-generator","description":"Generate PTR records for IP addresses or CIDR blocks","method":"POST"},{"endpoint":"/api/dns/reverse-zones","tool":"reverse-zones","description":"Calculate required reverse DNS zones for CIDR blocks","method":"POST"},{"endpoint":"/api/dns/validate-a-record","tool":"validate-a-record","description":"Validate A record format and value","method":"POST"},{"endpoint":"/api/dns/validate-aaaa-record","tool":"validate-aaaa-record","description":"Validate AAAA record format and value","method":"POST"},{"endpoint":"/api/dns/validate-cname-record","tool":"validate-cname-record","description":"Validate CNAME record format and value","method":"POST"},{"endpoint":"/api/dns/validate-mx-record","tool":"validate-mx-record","description":"Validate MX record format and value","method":"POST"},{"endpoint":"/api/dns/validate-txt-record","tool":"validate-txt-record","description":"Validate TXT record format and value","method":"POST"},{"endpoint":"/api/dns/validate-srv-record","tool":"validate-srv-record","description":"Validate SRV record format and value","method":"POST"},{"endpoint":"/api/dns/validate-caa-record","tool":"validate-caa-record","description":"Validate CAA record format and value","method":"POST"},{"endpoint":"/api/dns/validate-dns-record","tool":"validate-dns-record","description":"Validate any DNS record type","method":"POST"},{"endpoint":"/api/dns/validate-domain","tool":"validate-domain","description":"Validate domain name format","method":"POST"},{"endpoint":"/api/dns/validate-email","tool":"validate-email","description":"Validate email address format","method":"POST"},{"endpoint":"/api/dns/check-domain-valid","tool":"check-domain-valid","description":"Check if domain name is valid","method":"POST"},{"endpoint":"/api/dns/validate-dns-lookup","tool":"validate-dns-lookup","description":"Validate DNS lookup input","method":"POST"},{"endpoint":"/api/dns/validate-reverse-lookup","tool":"validate-reverse-lookup","description":"Validate reverse DNS lookup input","method":"POST"},{"endpoint":"/api/dns/validate-ttl","tool":"validate-ttl","description":"Validate TTL value","method":"POST"},{"endpoint":"/api/dns/humanize-ttl","tool":"humanize-ttl","description":"Convert TTL seconds to human readable format","method":"POST"},{"endpoint":"/api/dns/calculate-ttl-expiry","tool":"calculate-ttl-expiry","description":"Calculate TTL expiry information","method":"POST"},{"endpoint":"/api/dns/calculate-cache-expiry","tool":"calculate-cache-expiry","description":"Calculate DNS cache expiry time","method":"POST"},{"endpoint":"/api/dns/estimate-edns-size","tool":"estimate-edns-size","description":"Estimate EDNS response size","method":"POST"},{"endpoint":"/api/dns/normalize-label","tool":"normalize-label","description":"Normalize DNS label","method":"POST"},{"endpoint":"/api/dns/format-dns-error","tool":"format-dns-error","description":"Format DNS error message","method":"POST"},{"endpoint":"/api/dns/parse-dnskey","tool":"parse-dnskey","description":"Parse DNSKEY resource record","method":"POST"},{"endpoint":"/api/dns/calculate-key-tag","tool":"calculate-key-tag","description":"Calculate DNSKEY key tag","method":"POST"},{"endpoint":"/api/dns/generate-ds-record","tool":"generate-ds-record","description":"Generate DS record from DNSKEY","method":"POST"},{"endpoint":"/api/dns/calculate-nsec3-hash","tool":"calculate-nsec3-hash","description":"Calculate NSEC3 hash","method":"POST"},{"endpoint":"/api/dns/format-ds-record","tool":"format-ds-record","description":"Format DS record","method":"POST"},{"endpoint":"/api/dns/format-cds-record","tool":"format-cds-record","description":"Format CDS record","method":"POST"},{"endpoint":"/api/dns/format-cdnskey-record","tool":"format-cdnskey-record","description":"Format CDNSKEY record","method":"POST"},{"endpoint":"/api/dns/generate-cds-records","tool":"generate-cds-records","description":"Generate CDS records","method":"POST"},{"endpoint":"/api/dns/generate-cdnskey-record","tool":"generate-cdnskey-record","description":"Generate CDNSKEY record","method":"POST"},{"endpoint":"/api/dns/validate-cds-cdnskey","tool":"validate-cds-cdnskey","description":"Validate CDS/CDNSKEY usage","method":"POST"},{"endpoint":"/api/dns/suggest-rrsig-windows","tool":"suggest-rrsig-windows","description":"Suggest RRSIG signing windows","method":"POST"},{"endpoint":"/api/dns/format-rrsig-dates","tool":"format-rrsig-dates","description":"Format RRSIG dates","method":"POST"},{"endpoint":"/api/dns/validate-rrsig-timing","tool":"validate-rrsig-timing","description":"Validate RRSIG timing","method":"POST"},{"endpoint":"/api/dns/validate-dnskey","tool":"validate-dnskey","description":"Validate DNSKEY record","method":"POST"},{"endpoint":"/api/dns/generate-ptr-name","tool":"generate-ptr-name","description":"Generate PTR record name for IP address","method":"POST"},{"endpoint":"/api/dns/generate-cidr-ptrs","tool":"generate-cidr-ptrs","description":"Generate PTR records for CIDR block","method":"POST"},{"endpoint":"/api/dns/calculate-reverse-zones","tool":"calculate-reverse-zones","description":"Calculate reverse DNS zones for CIDR","method":"POST"},{"endpoint":"/api/dns/generate-reverse-zone","tool":"generate-reverse-zone","description":"Generate reverse DNS zone file","method":"POST"},{"endpoint":"/api/dns/analyze-ptr-coverage","tool":"analyze-ptr-coverage","description":"Analyze PTR record coverage","method":"POST"},{"endpoint":"/api/dns/validate-ip-dns","tool":"validate-ip-dns","description":"Validate IP address for DNS use","method":"POST"},{"endpoint":"/api/dns/validate-cidr-dns","tool":"validate-cidr-dns","description":"Validate CIDR notation for DNS use","method":"POST"}]},"usage":{"description":"Send POST requests to individual endpoints with parameters in the request body","example":{"endpoint":"/api/cidr/deaggregate","method":"POST","body":{"input":"192.168.0.0/22\\n10.0.0.0-10.0.0.255","targetPrefix":24}}}}