Skip to content
InternetData

My IP

get/myip

The address you are calling from, answered as GET /{ip} would answer it, and charged as that lookup is.

Authorization (optional)

apiKeyQueryapikey in query

?apikey=<key>. Convenient in a browser; prefer a header elsewhere.

apiKeyHeaderX-Api-Key in header

X-Api-Key: <key>.

bearerAuthbearer token

Authorization: Bearer <key>.

Responses

200application/json

The lookup of your own address.

iprequiredstring

The address looked up, as parsed: ::ffff:a.b.c.d answers as a.b.c.d.

is_bogonrequiredboolean

Reserved space, answered from the address alone.

is_vpnboolean

In VPN IP: a VPN service's server. Paid plans and the trial.

is_torrequiredboolean

In Tor IP: a Tor exit.

is_relayrequiredboolean

In Relay IP: an anonymizing relay such as iCloud Private Relay.

is_resproxyboolean

In Residential Proxy IP's 90-day window: a residential proxy exit. Paid plans and the trial.

is_dcproxyboolean

In Datacenter Proxy IP's 90-day window. Paid plans and the trial.

is_mobproxyboolean

In Mobile Proxy IP's 90-day window. Paid plans and the trial.

is_pubproxyboolean

In Public Proxy IP: a public proxy listens here, or its traffic left from here. Paid plans and the trial.

is_hostingboolean

In Hosting IP: a hosting or cloud network. Paid plans and the trial.

is_cdnboolean

In CDN IP: a content delivery network. Paid plans and the trial.

is_anycastrequiredboolean

In Anycast IP: announced from many places at once.

is_carrierrequiredboolean

In Carrier IP: a mobile carrier's address space.

is_satelliterequiredboolean

In Satellite IP: a satellite operator's address space.

is_sshrequiredboolean

In SSH IP: an SSH server answered here.

is_smtprequiredboolean

In SMTP IP: a mail server answered here.

is_webrequiredboolean

In Web IP: a web server answered here on port 80 or 443.

is_dns_resolverrequiredboolean

In DNS Resolver IP: an open DNS resolver answered here.

is_bittorrentrequiredboolean

In BitTorrent IP: a BitTorrent client was seen here in the last 90 days.

vpnobject

VPN IP's row, {} when is_vpn is false. Paid plans and the trial.

providerstring

The provider's ID in its catalog; empty for an unattributed range, and on Tor.

provider_namestring

The name the catalog gives the provider, empty where it names none.

confidencestring

high, medium or low: how sure we are the range is what the flag says.

last_seenstring

The last day the range was seen as such.

torrequiredobject

Tor IP's row, {} when is_tor is false.

providerstring

The provider's ID in its catalog; empty for an unattributed range, and on Tor.

provider_namestring

The name the catalog gives the provider, empty where it names none.

confidencestring

high, medium or low: how sure we are the range is what the flag says.

last_seenstring

The last day the range was seen as such.

relayrequiredobject

Relay IP's row, {} when is_relay is false.

providerstring

The provider's ID in its catalog; empty for an unattributed range, and on Tor.

provider_namestring

The name the catalog gives the provider, empty where it names none.

confidencestring

high, medium or low: how sure we are the range is what the flag says.

last_seenstring

The last day the range was seen as such.

resproxyobject

{} when is_resproxy is false. Paid plans and the trial.

providerstring

The proxy pool's ID in its catalog, empty where unattributed.

provider_namestring

The name the catalog gives it.

first_seenstring

The first day of the window the address was seen as an exit.

last_seenstring

The last day it was.

hitsinteger

How many times it was seen in the window.

hits_days_pctinteger

On what share of the window's days, in percent.

providers_numinteger

How many pools it was seen in.

dcproxyobject

{} when is_dcproxy is false. Paid plans and the trial.

providerstring

The proxy pool's ID in its catalog, empty where unattributed.

provider_namestring

The name the catalog gives it.

first_seenstring

The first day of the window the address was seen as an exit.

last_seenstring

The last day it was.

hitsinteger

How many times it was seen in the window.

hits_days_pctinteger

On what share of the window's days, in percent.

providers_numinteger

How many pools it was seen in.

mobproxyobject

{} when is_mobproxy is false. Paid plans and the trial.

providerstring

The proxy pool's ID in its catalog, empty where unattributed.

provider_namestring

The name the catalog gives it.

first_seenstring

The first day of the window the address was seen as an exit.

last_seenstring

The last day it was.

hitsinteger

How many times it was seen in the window.

hits_days_pctinteger

On what share of the window's days, in percent.

providers_numinteger

How many pools it was seen in.

pubproxyobject

{} when is_pubproxy is false. Paid plans and the trial.

entryboolean

A public proxy listens here.

exitboolean

Public proxies' traffic leaves from here.

protocolsarray<string>

The protocols at either end, [] when unknown.

num_portsinteger

How many ports a proxy listens on here.

num_proxiesinteger

How many proxies' traffic left from here.

last_seenstring

The last day one was seen.

last_usablestring

The last day one answered a request, empty when none did.

hostingobject

{} when is_hosting is false. Paid plans and the trial.

providerstring

The provider's ID in its catalog; empty for an unattributed range, and on Tor.

provider_namestring

The name the catalog gives the provider, empty where it names none.

confidencestring

high, medium or low: how sure we are the range is what the flag says.

last_seenstring

The last day the range was seen as such.

cdnobject

{} when is_cdn is false. Paid plans and the trial.

providerstring

The provider's ID in its catalog; empty for an unattributed range, and on Tor.

provider_namestring

The name the catalog gives the provider, empty where it names none.

confidencestring

high, medium or low: how sure we are the range is what the flag says.

last_seenstring

The last day the range was seen as such.

carrierobject

{} when is_carrier is false. Paid plans and the trial.

namestring

The mobile carrier.

mccstring

Its mobile country code.

mncstring

Its mobile network code.

countrystring

ISO 3166 country code.

confidencestring

high, medium or low.

satelliteobject

{} when is_satellite is false. Paid plans and the trial.

providerstring

The operator's ID in Satellite IP Provider.

provider_namestring

The operator's name.

orbitstring

The orbit: leo, meo or geo.

segmentstring

Who the space serves, such as consumer or maritime.

countrystring

ISO 3166 country code.

asninteger

The AS the operator announces it from.

confidencestring

high, medium or low.

sshobject

{} when is_ssh is false. Paid plans and the trial.

portinteger

The port the server answered on.

bannerstring

Its banner.

host_key_fpstring

Its host key's fingerprint.

session_okboolean

A session was set up.

first_seenstring

The first day it answered.

last_seenstring

The last day it did.

smtpobject

{} when is_smtp is false. Paid plans and the trial.

portinteger

The port the server answered on.

bannerstring

Its banner.

session_okboolean

A session was set up.

first_seenstring

The first day it answered.

last_seenstring

The last day it did.

webarray<object>

A row per port that answered, lowest first; [] when is_web is false. Paid plans and the trial.

portrequiredinteger

80 or 443.

tls_okrequiredboolean

A TLS handshake completed.

session_okrequiredboolean

An HTTP response came back.

status_coderequiredinteger

Its status, 0 where none came.

serverrequiredstring

Its Server header.

locationrequiredstring

Where it redirected.

titlerequiredstring

The page's title.

cert_subject_cnrequiredstring

The certificate's subject common name.

cert_subject_orequiredstring

Its subject organization.

cert_issuer_dnrequiredstring

Its issuer.

cert_browser_trustedrequiredboolean

Browsers trust it.

tls_versionrequiredstring

The TLS version negotiated, empty without TLS.

first_seenrequiredstring

The first day the port was open.

last_seenrequiredstring

The last day it was.

dns_resolverobject

{} when is_dns_resolver is false. Paid plans and the trial.

portinteger

The port it answered on.

recursion_availableboolean

It offered recursion.

rcodeinteger

Its answer's response code.

answer_correctboolean

Its answer was right.

first_seenstring

The first day it answered.

last_seenstring

The last day it did.

bittorrentobject

{} when is_bittorrent is false. Paid plans and the trial.

verifiedboolean

A client here answered, or two or more reported it at once.

id_matches_ipboolean

A client here derived its node ID from the address (BEP 42).

first_seenstring

The first day a client was seen here.

last_seenstring

The last day.

last_reachablestring

The last day one answered, empty when none did.

days_seeninteger

On how many days.

num_portsinteger

Distinct ports over the window.

peak_num_portsinteger

The most on one day.

indexerboolean

A DHT indexer rather than people.

clientsarray<string>

The two-letter codes its clients name themselves by.

locationrequiredobject

Where the address is.

continentrequiredstring

Continent code.

continent_namerequiredstring

Continent name.

countryrequiredstring

ISO 3166-1 alpha-2 country code.

country_namerequiredstring

Country name.

timezonerequiredstring

IANA timezone.

currency_coderequiredstring

ISO 4217 code.

currency_namerequiredstring

Currency name.

currency_symbolrequiredstring

Currency symbol.

flag_emojirequiredstring

The country's flag.

flag_unicoderequiredstring

Its code points, U+1F1E6 U+1F1F9.

regionstring

Region (state or province). Paid plans and the trial.

region_codestring

ISO 3166-2 region code. Paid plans and the trial.

citystring

City. Paid plans and the trial.

postal_codestring

Postal code. Paid plans and the trial.

latitudenumber

Latitude of the city. Paid plans and the trial.

longitudenumber

Longitude of the city. Paid plans and the trial.

accuracy_radiusinteger

Radius in km holding the true location with 67% confidence. Paid plans and the trial.

geoname_idstring

GeoNames ID of the city. Paid plans and the trial.

dma_codestring

US TV market (DMA) code. Paid plans and the trial.

last_changedstring

The day the range's location last changed. Paid plans and the trial.

asnrequiredobject

The network announcing the address, from IP ASN.

asnrequiredinteger

The AS announcing the address, 0 where none does.

namerequiredstring

Its operator.

domainrequiredstring

Its operator's domain.

typerequiredstring

The kind of network it runs.

prefixrequiredstring

The announced prefix covering the address.

countrystring

The country its registry assigned it to. Paid plans and the trial.

rpki_statusstring

The announcement's RPKI status. Paid plans and the trial.

companyrequiredobject

Who uses the address, from IP Company.

namerequiredstring

Who uses the address.

domainrequiredstring

Their domain.

typestring

What kind of organization: hosting, isp, business, education, government. Paid plans and the trial.

countrystring

ISO 3166 country code. Paid plans and the trial.

hostnamerequiredstring

The name the address's reverse DNS (PTR) record points to in IP RDNS, empty when it has none.

abuserequiredobject

Where to report abuse, from IP Abuse Contact.

emailrequiredstring

Where to report abuse from the address.

namestring

The contact. Paid plans and the trial.

phonestring

Its phone number. Paid plans and the trial.

addressstring

Its postal address. Paid plans and the trial.

countrystring

ISO 3166 country code. Paid plans and the trial.

networkstring

The registry block it was derived from. Paid plans and the trial.

validatedboolean

ARIN reports the contact answered its yearly validation. Paid plans and the trial.

unvalidated_sincestring

Since when it has not. Paid plans and the trial.

whoisobject

IP Whois's most specific record covering the address. Paid plans and the trial.

idrequiredstring

Network name of the most specific record covering the address.

namerequiredstring

Its holder.

orgrequiredstring

The registry's handle for the holder.

countryrequiredstring

ISO 3166 country code.

statusrequiredstring

The registry's assignment status.

sourcerequiredstring

The registry, or rwhois.

domainrequiredstring

The holder's domain.

abuse_emailrequiredstring

The record's abuse contact.

asnrequiredinteger

The AS announcing the record's start address.

rwhoisobject

IP RWHOIS's most specific network covering the address. Paid plans and the trial.

idrequiredstring

The network's identifier on the operator's RWHOIS server.

namerequiredstring

Its assignee.

countryrequiredstring

ISO 3166 country code.

sourcerequiredstring

The operator that published it.

domainrequiredstring

The contact emails' domain.

abuse_emailrequiredstring

Its abuse contact.

hosted_domainsobject

From IP Hosted Domains: a count, never the list. Paid plans and the trial.

totalrequiredinteger

How many registered domains resolve to the address.

trial_expiredboolean

On every answer to a key on the free plan, and on no other: false while the day's trial of every field lasts, true once the answer has Unlimited's fields.

TypeScript type
ts
{
  ip: string;
  is_bogon: boolean;
  is_vpn?: boolean;
  is_tor: boolean;
  is_relay: boolean;
  is_resproxy?: boolean;
  is_dcproxy?: boolean;
  is_mobproxy?: boolean;
  is_pubproxy?: boolean;
  is_hosting?: boolean;
  is_cdn?: boolean;
  is_anycast: boolean;
  is_carrier: boolean;
  is_satellite: boolean;
  is_ssh: boolean;
  is_smtp: boolean;
  is_web: boolean;
  is_dns_resolver: boolean;
  is_bittorrent: boolean;
  vpn?: {
    provider?: string;
    provider_name?: string;
    confidence?: string;
    last_seen?: string;
  };
  tor: {
    provider?: string;
    provider_name?: string;
    confidence?: string;
    last_seen?: string;
  };
  relay: {
    provider?: string;
    provider_name?: string;
    confidence?: string;
    last_seen?: string;
  };
  resproxy?: {
    provider?: string;
    provider_name?: string;
    first_seen?: string;
    last_seen?: string;
    hits?: number;
    hits_days_pct?: number;
    providers_num?: number;
  };
  dcproxy?: {
    provider?: string;
    provider_name?: string;
    first_seen?: string;
    last_seen?: string;
    hits?: number;
    hits_days_pct?: number;
    providers_num?: number;
  };
  mobproxy?: {
    provider?: string;
    provider_name?: string;
    first_seen?: string;
    last_seen?: string;
    hits?: number;
    hits_days_pct?: number;
    providers_num?: number;
  };
  pubproxy?: {
    entry?: boolean;
    exit?: boolean;
    protocols?: string[];
    num_ports?: number;
    num_proxies?: number;
    last_seen?: string;
    last_usable?: string;
  };
  hosting?: {
    provider?: string;
    provider_name?: string;
    confidence?: string;
    last_seen?: string;
  };
  cdn?: {
    provider?: string;
    provider_name?: string;
    confidence?: string;
    last_seen?: string;
  };
  carrier?: {
    name?: string;
    mcc?: string;
    mnc?: string;
    country?: string;
    confidence?: string;
  };
  satellite?: {
    provider?: string;
    provider_name?: string;
    orbit?: string;
    segment?: string;
    country?: string;
    asn?: number;
    confidence?: string;
  };
  ssh?: {
    port?: number;
    banner?: string;
    host_key_fp?: string;
    session_ok?: boolean;
    first_seen?: string;
    last_seen?: string;
  };
  smtp?: {
    port?: number;
    banner?: string;
    session_ok?: boolean;
    first_seen?: string;
    last_seen?: string;
  };
  web?: {
    port: number;
    tls_ok: boolean;
    session_ok: boolean;
    status_code: number;
    server: string;
    location: string;
    title: string;
    cert_subject_cn: string;
    cert_subject_o: string;
    cert_issuer_dn: string;
    cert_browser_trusted: boolean;
    tls_version: string;
    first_seen: string;
    last_seen: string;
  }[];
  dns_resolver?: {
    port?: number;
    recursion_available?: boolean;
    rcode?: number;
    answer_correct?: boolean;
    first_seen?: string;
    last_seen?: string;
  };
  bittorrent?: {
    verified?: boolean;
    id_matches_ip?: boolean;
    first_seen?: string;
    last_seen?: string;
    last_reachable?: string;
    days_seen?: number;
    num_ports?: number;
    peak_num_ports?: number;
    indexer?: boolean;
    clients?: string[];
  };
  location: {
    continent: string;
    continent_name: string;
    country: string;
    country_name: string;
    timezone: string;
    currency_code: string;
    currency_name: string;
    currency_symbol: string;
    flag_emoji: string;
    flag_unicode: string;
    region?: string;
    region_code?: string;
    city?: string;
    postal_code?: string;
    latitude?: number;
    longitude?: number;
    accuracy_radius?: number;
    geoname_id?: string;
    dma_code?: string;
    last_changed?: string;
  };
  asn: {
    asn: number;
    name: string;
    domain: string;
    type: string;
    prefix: string;
    country?: string;
    rpki_status?: string;
  };
  company: {
    name: string;
    domain: string;
    type?: string;
    country?: string;
  };
  hostname: string;
  abuse: {
    email: string;
    name?: string;
    phone?: string;
    address?: string;
    country?: string;
    network?: string;
    validated?: boolean;
    unvalidated_since?: string;
  };
  whois?: {
    id: string;
    name: string;
    org: string;
    country: string;
    status: string;
    source: string;
    domain: string;
    abuse_email: string;
    asn: number;
  };
  rwhois?: {
    id: string;
    name: string;
    country: string;
    source: string;
    domain: string;
    abuse_email: string;
  };
  hosted_domains?: {
    total: number;
  };
  trial_expired?: boolean;
}
401application/json

The key is not one, or no longer works.

errorrequiredstring

What went wrong.

TypeScript type
ts
{
  error: string;
}
403application/json

The key may not be used from this address, lacks the ip.lookup scope (Lookups, in the console's API keys), or was sent over plain HTTP.

errorrequiredstring

What went wrong.

TypeScript type
ts
{
  error: string;
}
429application/json

A rate limit, with Retry-After (this API protecting itself, or Unlimited's per-minute limit), or, with none, a paid plan's overage cap.

errorrequiredstring

What went wrong.

TypeScript type
ts
{
  error: string;
}
500application/json

Our data could not be read. Retry; nothing was charged.

errorrequiredstring

What went wrong.

TypeScript type
ts
{
  error: string;
}