Skip to content
Private preview: new accounts are by invitation only. Ask for one

List the domains seen on an IP

GET/v1/ip/{ip}/domains

Reverse IP: the domains observed resolving to an IP (who else is on it), one item per answer interval, oldest first. Ended intervals are included with include_ended=true. Pass next_cursor back as cursor for the next page; each page counts one request.

Authorization

APIKey
AuthorizationBearer <token>

Your API key, which starts with sk_. Create one in the console.

In: header

Path Parameters

ip*string

A public IPv4 or IPv6 address. Private, reserved, loopback, link-local, documentation, CGNAT and multicast addresses are refused.

Query Parameters

include_ended?boolean

Also list intervals that ended (the domain stopped resolving to the IP).

Defaultfalse
limit?integer

Items per page, 1 to 1000. Free keys get at most 100 a page; a larger limit is lowered and next_cursor continues.

Range1 <= value <= 1000
Default100
cursor?|

The previous page's next_cursor, unchanged. Omit it for the first page.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl "https://api.ipalmanac.com/v1/ip/54.10.20.30/domains" \  -H "Authorization: Bearer $IPALMANAC_API_KEY"
{  "ip": "54.10.20.30",  "include_ended": true,  "items": [    {      "domain": "alpha.example",      "record_type": "A",      "first_observed": "2026-10-01T03:10:00+00:00",      "last_confirmed": "2026-10-06T01:40:00+00:00",      "ended_at": null,      "current": true    },    {      "domain": "beta.example",      "record_type": "A",      "first_observed": "2026-10-01T04:00:00+00:00",      "last_confirmed": "2026-10-03T04:00:00+00:00",      "ended_at": "2026-10-04T04:00:00+00:00",      "current": false    }  ],  "next_cursor": "eyJ...opaque",  "coverage": {    "observation_window": {      "first": "2026-10-01T00:00:00+00:00",      "last": "2026-10-06T01:55:00+00:00"    },    "vantage_count": 1,    "record_types": [      "A",      "AAAA"    ],    "seed": {      "source": "Majestic Million",      "names": 1000000    },    "ptr": {      "checked_ips": 87000,      "observed_ips": 588000    },    "semantics": [      "Coverage is the seed list, not the whole Internet. Empty means unobserved here, not absent.",      "is_datacenter and is_cdn are true only when the IP is inside a published provider range of that category; null means no range matched, not that the IP is not hosted.",      "provider and prefix come only from cloud, hosting and CDN ranges. A range of any other category in provider_ranges describes how the IP is used, not who hosts it."    ]  },  "attribution": [    {      "source": "Majestic Million",      "by": "Majestic",      "license": "CC BY 3.0"    },    {      "source": "IPtoASN",      "by": "Frank Denis",      "license": "PDDL 1.0"    }  ],  "release": {    "id": "20261006T020000Z",    "built_at": "2026-10-06T02:00:00+00:00"  }}