Skip to content
InternetData

Pay for real people in the right places.

Bots click from hosting servers and proxy pools, and a campaign aimed at one city reaches a whole country. One lookup per impression or click says what the address is, where it is down to the city and US TV market, and whose network it's on.

Unlimited lookups, no key needed · Sign up to try every field, no card
Bid requests
Example
  • Click on ad 1182
    203.0.113.24
    HostingNot billed
  • Impression
    198.51.100.7
    Chicago, IllinoisDMA 602Bid
  • Conversion
    192.0.2.140
    Residential ProxyPayout held
  • Impression
    203.0.113.91
    ISPBusiness fiberBid

Spend on people, not on servers.

  • Invalid traffic

    Clicks and impressions come from hosting servers and datacenter proxies. Leave them out of bidding and billing.

    Answered byis_hostingis_dcproxy
  • City and TV market targeting

    A campaign bought for one metro area spills across the country. Target by city and, in the US, by DMA code.

    Answered bylocation.citylocation.dma_code
  • Business audiences

    B2B campaigns spend on consumers. Find the company behind an address and its type, such as a business, a school or a government.

    Answered bycompanycompany.type
  • Conversion fraud

    Fake installs and leads come through residential proxies so each looks like a new user. Hold the payout until the address checks out.

    Answered byis_resproxyis_mobproxy

Fraud and targeting signals in one answer.

The country, timezone, carrier flag, network and company answer with no key and no daily or monthly cap. Hosting and proxy flags, the city, region and DMA code, and the company's type come with every paid plan, and Pricing lists every field by plan.

  • is_hosting
    A hosting or cloud server rather than a home or mobile line.Paid plans
  • is_dcproxy, is_resproxy
    Datacenter and residential proxy exits, with the last day each was seen.Paid plans
  • location.country, timezone
    The country and its timezone, for dayparting.Unlimited
  • location.city, region
    The city and region, with coordinates and an accuracy radius.Paid plans
  • location.dma_code
    The US TV market (DMA) code.Paid plans
  • is_carrier
    A mobile carrier's address; a paid plan names the carrier with its MCC and MNC.Unlimited
  • company
    The organization using the address, by name and domain; a paid plan adds its type.Unlimited

Run it before you bid and before you pay.

  1. 01

    In the bidder

    Look up each bid request's address before you bid. A hosting server or a proxy gets no bid, and the city and DMA code decide which campaigns can.

  2. 02

    In click and conversion logs

    Look up the addresses behind clicks and conversions, 1,000 at a time on a paid plan. Invalid traffic comes out before you report, bill or pay out.

  3. 03

    In audience building

    Group the addresses that reach you by the company using them and its type. Business segments then come from the same answer as the fraud flags.

Start free, then add every field.

The same code runs with no key and with one: without a key it answers the free fields, and an upgrade adds the rest with no change to the code.

  1. 1

    Call it with no key

    Unlimited

    Run the code on this page as it is, with no account.

  2. 2

    Sign up for a key

    No card

    Your account's first 100 lookups each day answer every field, so you can try the hosting and proxy flags on real traffic.

  3. 3

    Upgrade for every lookup

    From $39 a month

    Every paid plan answers every field on every lookup, and takes up to 1,000 lookups in one request.

import { InternetData } from "@internetdata/internetdata";
// No key needed. With one, every field answers.
const client = new InternetData({ apiKey: process.env.INTERNETDATA_API_KEY });
export async function shouldBid(req, campaign) {
const r = await client.lookup(req.ip);
// Hosting and proxies answer on a paid plan.
if (r.isDcproxy || r.isResproxy || (r.isHosting && !r.isRelay)) {
return false;
}
// The DMA code is a paid plan's, and the US's alone.
return campaign.dmas.includes(r.location.dma_code);
}
bid.mjsnpm install @internetdata/internetdata

Also available for Web, .NET, Ruby, Rust, Swift, Erlang, Perl and Zig. See all on GitHub →

On this page

Can it run inside our bidder with no call per request?

Yes. The same data comes as databases you license and query in your own systems, with no network call per address; database licenses start at $49 a month.

00 · Unlimited

Unlimited lookups, no sign-up.

Paste it into a terminal. Any address answers with its country, network, company and hostname, with no key and no daily or monthly cap. ASes and domains answer too.

curl https://api.internetdata.io/8.8.8.8
{
"ip": "8.8.8.8",
"is_bogon": false,
"is_tor": false,
"is_relay": false,
"is_anycast": true,
"is_carrier": false,
"is_satellite": false,
"is_ssh": false,
"is_smtp": false,
"is_web": true,
"is_dns_resolver": true,
"is_bittorrent": false,
"hostname": "dns.google",
"location": {
"continent": "NA",
"continent_name": "North America",
"country": "US",
"country_name": "United States",
"timezone": "America/Los_Angeles",
"currency_code": "USD",
"currency_name": "Dollar",
"currency_symbol": "$",
"flag_emoji": "🇺🇸",
"flag_unicode": "U+1F1FA U+1F1F8"
},
"asn": {
"asn": 15169,
"name": "Google LLC",
"domain": "google.com",
"type": "hosting",
"prefix": "8.8.8.0/24"
},
"company": {
"name": "Google LLC",
"domain": "google.com"
},
"tor": {},
"relay": {},
"abuse": {
"email": "network-abuse@google.com"
}
}
01 · Every field

All of the data on a paid plan.

VPN, proxy, hosting and CDN flags, each naming the operator.
Location to the city, with coordinates and an accuracy radius.
WHOIS records, the whole abuse contact and the services an address runs.
Up to 1,000 addresses, ASes and domains in one request.

A free API key answers every field for its first 100 lookups each day, with no card.