# asn.zone asn.zone is an open directory of Autonomous System Numbers (ASNs), IP allocations (IPv4 and IPv6), and the organizations that hold them. Data is sourced daily from the five regional internet registries (ARIN, RIPE NCC, APNIC, AFRINIC, LACNIC), with supplementary data from PeeringDB (peering relationships, facilities, internet exchanges) and CAIDA (AS-to-organization name mapping). ## What you'll find here - Every delegated ASN, indexed by AS number - Every delegated IPv4 and IPv6 allocation, joined to the org that holds it - Per-organization aggregated holdings (ASNs, IPv4/IPv6 block counts, host counts) - Per-country and per-continent rollups - Registry delegation history and resource transfers between organizations - Peering topology: providers, customers, and peers per ASN - IP geolocation: multi-source lookup for any IPv4 or IPv6 address - Organization name resolution (~127,800 organizations indexed; the majority resolve to a human-readable name) ## Stable URLs - Home: https://asn.zone/ - ASN detail: https://asn.zone/asn/{asn} - Organization: https://asn.zone/org/{slug} (canonical) https://asn.zone/org/{registry}/{handle} (308 redirect → slug; unnamed orgs are not publicly addressable and return 404) - Country: https://asn.zone/country/{cc} - IP lookup: https://asn.zone/ip/{address} - Browse ASNs: https://asn.zone/asns - Browse IPv4 blocks: https://asn.zone/ipv4 - Browse IPv6 blocks: https://asn.zone/ipv6 - Recent transfers: https://asn.zone/transfers - Organizations list: https://asn.zone/organizations - Search: https://asn.zone/search - About: https://asn.zone/about - Blog: https://asn.zone/blog The website is a thin client over the public API. AI agents are encouraged to use the API directly when bulk or structured access is needed. ## Programmatic access - API base: https://api.asn.zone/v1 - OpenAPI spec: https://api.asn.zone/v1/openapi.json - Interactive docs: https://api.asn.zone/v1/docs - TypeScript SDK: @asn-zone/sdk (npm, post-publish) - Sitemap index: https://asn.zone/sitemap.xml Authentication is via Bearer token (API key). Free-tier access is available with registration at https://asn.zone/signup. Paid tiers with higher rate limits and bulk endpoints are listed at https://asn.zone/pricing. ### Dataset Contract v1.1 (2026-05-19) The four bulk dataset endpoints under /v1/datasets/*.jsonl are governed by a versioned contract. Key guarantees machine clients can rely on: - snake_case JSON keys on every row. Drift is gated by CI; a regression fails red at PR time. - application/x-ndjson on the success path; application/problem+json (RFC 7807) on 4xx / 5xx. Naive NDJSON parsers reject error bodies unambiguously - no silent corruption from rate-limit responses. - ?since= query param on each endpoint filters by source_ingested_at; missing param = full snapshot. - HEAD + If-Modified-Since (RFC 7231, 1-second precision) on every dataset endpoint. Combine with ?since= for two layers of bandwidth reduction. - OpenAPI 3 / Zod schemas registered for every row type (Ipv4BlockRow, Ipv6BlockRow, OrganizationRow, TransferRow, PublicAuditRow). Codegen via openapi-typescript is supported and used by the first-party @asn-zone/sdk. - Stable opaque org_id field on every org-touching response, formatted reg__<8-hex>. Survives org-name churn and slug renames; the longitudinal join key for any client tracking orgs over time. - /v1/me extends with rate_limit_per_minute, rate_limit_per_day, requests_today, requests_today_remaining. Every metered response carries X-Plan-Id and X-Plan-Day-Remaining headers for client self-throttling. - /v1/health/sources exposes a 4-state freshness ladder (ok | degraded | stale | error) keyed off expected_refresh_interval_hours per source. Daily --touch-source bumps the five RIR-delegated rows even on quiet upstream days. - /v1/audit?since=&action= returns a deny-by-default allowlist of safe audit verbs (org.rename, org.hyperscaler_tag.change, transfer.add, org.create, asn.allocate). Actor PII (email, id, ip, user_agent) stripped from the projection. - Accept: application/vnd.asn-zone.v2+json plumbing in place; today v1 and v2 return identical bodies. Vary: Accept on every response so caches partition correctly. Full contract reader (asn-zone repo): docs/superpowers/specs/2026-05-19-dataset-contract-v1.1-ga.md. ### Common endpoints - GET /v1/overview High-level totals (ASNs, blocks, orgs, countries) - GET /v1/asns?limit=&offset=&order= List ASNs, paginated; order=asn or order=recent - GET /v1/asn/{asn} Single ASN with org, country, peer summary - GET /v1/asn/{asn}/peers Full provider / customer / peer list - GET /v1/asn/{asn}/facilities PeeringDB colocation facilities - GET /v1/asn/{asn}/ix Internet exchange memberships - GET /v1/org/{registry}/{id} Organization with held ASNs and blocks - GET /v1/org/{registry}/{id}/timeline Allocation and transfer history for an org - GET /v1/org/{registry}/{id}/counterparties Frequent transfer counterparties - GET /v1/countries Country list with totals - GET /v1/country/{cc} Country detail with top organizations - GET /v1/continents Continent-level totals - GET /v1/ip/{address}/geo Multi-source geolocation for an IP - GET /v1/ip/{address}/owner Delegation owner for an IP address - GET /v1/transfers Recent resource transfers across all registries - GET /v1/search?q= Full-text search across ASNs, orgs, countries ## Schema The five primary entity types: **ASN** - An Autonomous System Number, identified by an integer (e.g. AS15169). Fields: asn, registry, status, allocated_at, country, organization, peer_summary. **IPv4 prefix** - A delegated IPv4 allocation recorded as (start_ip, host_count). The API decomposes this into aligned CIDR blocks. Linked to an organization and country. **IPv6 prefix** - A delegated IPv6 prefix in CIDR notation. Linked to an org and country. **Organization** - A registry entity (ARIN/RIPE/APNIC/AFRINIC/LACNIC) that holds one or more ASNs or IP blocks. Identified by (registry, id) or by a slug derived from the org name. Carries asn_count, ipv4_block_count, ipv4_hosts, ipv6_block_count. **Country** - A two-letter ISO 3166-1 alpha-2 code. Carries asn_count, ipv4_hosts, ipv6_block_count, org_count, and 30-day deltas. Grouped under continents. Registry transfer records link organizations as source and destination, with a date and resource type (ASN, IPv4, IPv6). ## Data licenses The compiled dataset is licensed CC BY 4.0. Source data is from the RIRs' public delegation files; those files are themselves public domain / openly licensed. PeeringDB data is licensed CC BY-SA 4.0 upstream. Code is MIT. Full license text: https://creativecommons.org/licenses/by/4.0/ ## Bulk data download For machines that want the whole dataset without crawling: - Manifest: https://api.asn.zone/v1/datasets/manifest - ASNs (JSONL): https://api.asn.zone/v1/datasets/asns.jsonl - Organizations: https://api.asn.zone/v1/datasets/organizations.jsonl - IPv4 blocks: https://api.asn.zone/v1/datasets/ipv4-blocks.jsonl - IPv6 blocks: https://api.asn.zone/v1/datasets/ipv6-blocks.jsonl - Transfers: https://api.asn.zone/v1/datasets/transfers.jsonl - Countries: https://api.asn.zone/v1/datasets/countries.jsonl - Country stats: https://api.asn.zone/v1/datasets/country-stats.jsonl - ASN prefixes (BGP): https://api.asn.zone/v1/datasets/asn-prefixes.jsonl - BYOIP (BGP): https://api.asn.zone/v1/datasets/bgp-byoip.jsonl - Tags: https://api.asn.zone/v1/datasets/tags.jsonl - Tag assignments: https://api.asn.zone/v1/datasets/tag-assignments.jsonl Format: NDJSON / JSON Lines, UTF-8, one record per line. Snake_case keys on every row, contract-locked under Dataset Contract v1.1 (see section above). License: CC-BY-4.0. Cached at the CDN edge for 24 hours. Streaming clients should: - Send Authorization: Bearer . Anonymous calls hit the per-IP free-tier bucket; authenticated calls hit the per-account plan quota. - Pass ?since= for incremental fetch after the initial backfill. - HEAD first with If-Modified-Since for a 304 short-circuit on no-change days. - Parse Content-Type. application/x-ndjson on success; application/problem+json (RFC 7807) on 4xx / 5xx - reject the body, do not parse as a row. ## Operator asn.zone is operated by IPXO (https://ipxo.com), a network infrastructure company.