Product

One API key and one balance for many lookups

LookValid answers one question per call about a phone number, an email domain, an IP address, a domain or a web page. You send a value, you get structured JSON back, and you spend credits when the lookup finds something on most products. This post lists what is live today and how to reach it from a browser, from code and from an AI client.

By LookValid engineering. Published 2026-10-19.

One key, one balance

Every lookup uses the same API key, the same credit balance and the same error format. There is no wallet per product to top up, so adding a second lookup to a workflow is one more request rather than a second account. The key also works for the account endpoints and for the MCP server.

Most products use success billing: a lookup that finds nothing is free, and the response says found: false with a reason. A few products charge every completed call instead, and the product list shows which rule each one follows. Results are cached per account, so repeating the same lookup inside the cache window costs nothing. The full rules, including the cases where a hold on your balance is released, are in the credits and billing docs.

The lookups that are live

The table below is generated from the same product catalog the API and the docs read, so it cannot list a product that does not exist or a price that differs from what is charged. Credits are per unit, and the last column says what one unit is.

Live lookups, their credit price and what one unit is
Product idNameCreditsChargedOne unit
phonePhone Numbering-Plan Validation1Only when foundper valid number
country-codeCountry Calling Codes1Only when foundper lookup (an unknown code, country or name is free)
email-domain-checkEmail Domain Check1Only when foundper address checked
ipIP Intelligence1Only when foundper lookup
phone-spamPhone Spam Check1Only when foundper number with complaints on record
link-safetyLink Safety Check1Every completed callper URL checked (a check that cannot run is free)
carrier-lookupCarrier Lookup (original carrier)1Only when foundper lookup (numbers outside the covered numbering plan areas are free)
vin-decoderVIN Decoder1Only when foundper VIN that decodes (a VIN with no data is free)
link-in-bio-lookupLink-in-Bio Lookup3Only when foundper resolved page (dead or empty pages are free)
domain-authorityDomain Authority10Only when foundper domain found in the rank data (an unranked domain is free)
domain-ageDomain Age2Only when foundper registered domain (unregistered domains are free)
website-scraperWebsite Scraper10Only when foundper successful scrape (errors, empty and blocked pages are free)
website-contacts-scraperWebsite Contacts Scraper10Only when foundper domain with contacts found
site-filesSite Files Checker2Only when foundper site checked (a site that cannot be reached is free)

Live lookups, their credit price and what one unit is

A few of these checks have a deliberate edge worth knowing before you build on them. The phone check validates a number against its country numbering plan, so it cannot say whether a number is switched on. The email domain check reads DNS records and never contacts the mail server, so it cannot confirm that a mailbox exists. The carrier lookup reports the carrier originally assigned a US number block and does not reflect porting. Each product page states what its result does and does not mean.

Calling a lookup from code

Every lookup is a POST to https://YOUR_API_HOST/v1/<product> with a JSON body, and the key goes in an Authorization: Bearer header. Keys start with lv_live_ and are created in the dashboard. An IP lookup costs 1 credit when it finds something.

curl -X POST https://YOUR_API_HOST/v1/ip \
  -H "Authorization: Bearer $LOOKVALID_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"ip":"8.8.8.8"}'

Look up an IP address

A lookup that ran returns HTTP 200 whether or not it found anything. Read these fields from the body:

  • found says whether data came back, and reason explains a false.
  • data holds the result, or null when nothing was found.
  • sources lists where the data came from, including any attribution you need to show.
  • credits_charged and credits_remaining show what the call cost and what is left.
  • cache_hit is true when you already paid for this lookup inside the cache window.

Free tools and the MCP server

You can try most lookups with no account. The free tools run in the browser at the free tools page, call the same lookups as the API, and are never billed. They are limited per visitor, which is the main reason to move to a key.

AI clients can use the same lookups over MCP. The server is at https://YOUR_API_HOST/v1/mcp. With a key, every live product is a tool at the same credit price. With no key, the server offers only the free tools. Tool names are the product id with hyphens turned into underscores, so domain-age becomes domain_age.

Where to start

Open a free tool first to see what a result looks like, then create a key and repeat the same lookup from code. The quickstart walks through both steps and takes a few minutes.