Skip to content
Feedback

NILQ for business

Everyday places and real minutes for every address. Paid once, stored forever.

One API answers what every listing is asked: what is around this address, and how long it takes to get there on foot, by bike or by car. Every fact carries its source and date, and the answers are yours to keep.

  • No card
  • Key in two minutes
  • REST and MCP

Live in Portugal and Spain. More of Europe next, market by market.

POST /api/v1/places/analyze Live
20 min 10 min 6′ 1′ 2′

Baixa, Lisbon

  • SupermarketSupermercado Mega Grumme walk 6 min
  • PharmacyFarmácia Cortez walk 1 min
  • GymViva Fit & Pilates Fit bike 2 min
  • Coffee shops within 800 m 103
Show the JSON
{
  "request": {
    "country_code": "PT",
    "location": {
      "latitude": 38.7101,
      "longitude": -9.1374
    }
  },
  "answers": [
    {
      "label": "Supermarket",
      "mode": "walk",
      "minutes": 6,
      "name": "Supermercado Mega Grumme"
    },
    {
      "label": "Pharmacy",
      "mode": "walk",
      "minutes": 1,
      "name": "Farmácia Cortez"
    },
    {
      "label": "Gym",
      "mode": "bike",
      "minutes": 2,
      "name": "Viva Fit & Pilates Fit"
    },
    {
      "label": "Coffee shops within 800 m",
      "mode": "walk",
      "count": 103
    }
  ]
}
POST /api/v1/places/analyze Live
20 min 10 min 3′ 2′ 1′

Puerta del Sol, Madrid

  • SupermarketSupermercado El Corte Inglés walk 3 min
  • PharmacyFarmacia Arenal 2 (Antigua Farmacia Gayoso) walk 2 min
  • GymDreamfit | Gimnasio Ventas bike 1 min
  • Coffee shops within 800 m 224
Show the JSON
{
  "request": {
    "country_code": "ES",
    "location": {
      "latitude": 40.4168,
      "longitude": -3.7038
    }
  },
  "answers": [
    {
      "label": "Supermarket",
      "mode": "walk",
      "minutes": 3,
      "name": "Supermercado El Corte Inglés"
    },
    {
      "label": "Pharmacy",
      "mode": "walk",
      "minutes": 2,
      "name": "Farmacia Arenal 2 (Antigua Farmacia Gayoso)"
    },
    {
      "label": "Gym",
      "mode": "bike",
      "minutes": 1,
      "name": "Dreamfit | Gimnasio Ventas"
    },
    {
      "label": "Coffee shops within 800 m",
      "mode": "walk",
      "count": 224
    }
  ]
}
POST /api/v1/places/analyze Live
20 min 10 min 3′ 3′ 2′

Old town, Palma

  • SupermarketSupermarket Sindicat walk 3 min
  • PharmacyFarmacia Lda. A. M. Moll walk 3 min
  • GymBI-Bodyindex Deutschland bike 2 min
  • Coffee shops within 800 m 99
Show the JSON
{
  "request": {
    "country_code": "ES",
    "location": {
      "latitude": 39.5696,
      "longitude": 2.6502
    }
  },
  "answers": [
    {
      "label": "Supermarket",
      "mode": "walk",
      "minutes": 3,
      "name": "Supermarket Sindicat"
    },
    {
      "label": "Pharmacy",
      "mode": "walk",
      "minutes": 3,
      "name": "Farmacia Lda. A. M. Moll"
    },
    {
      "label": "Gym",
      "mode": "bike",
      "minutes": 2,
      "name": "BI-Bodyindex Deutschland"
    },
    {
      "label": "Coffee shops within 800 m",
      "mode": "walk",
      "count": 99
    }
  ]
}
POST /api/v1/places/analyze Live
20 min 10 min 2′ 3′ 3′

Madeira, Funchal

  • SupermarketAmanhecer Venda Nova walk 2 min
  • PharmacyFarmácia Botica Inglesa walk 3 min
  • GymBodyFit bike 3 min
  • Coffee shops within 800 m 42
Show the JSON
{
  "request": {
    "country_code": "PT",
    "location": {
      "latitude": 32.6496,
      "longitude": -16.9086
    }
  },
  "answers": [
    {
      "label": "Supermarket",
      "mode": "walk",
      "minutes": 2,
      "name": "Amanhecer Venda Nova"
    },
    {
      "label": "Pharmacy",
      "mode": "walk",
      "minutes": 3,
      "name": "Farmácia Botica Inglesa"
    },
    {
      "label": "Gym",
      "mode": "bike",
      "minutes": 3,
      "name": "BodyFit"
    },
    {
      "label": "Coffee shops within 800 m",
      "mode": "walk",
      "count": 42
    }
  ]
}

Computed on production data at 21:18 UTC. Every answer names its source and data version.

21Operations over REST and MCP
3Travel modes: walk, bike, drive
2Countries live, more of Europe next
€0Overage fees, on every plan

Everything in one API

Places, minutes, addresses and climate. One key, one bill.

Most teams buy this from three vendors and glue it together. Here it comes from one API, with one data version behind every answer.

Places

Search by category or name, open a place, and analyse any mix of categories around a point: counts, nearest, nearest by travel time.

  • GET /places/categories
  • POST /places/search
  • GET /places/{id}
  • POST /places/analyze

Travel time

Routes, matrices and reachable areas on foot, by bike and by car.

  • POST /routes
  • POST /matrix
  • POST /isochrones

Addresses

Address to coordinates and back, with the match level and postcode, and nearby places in the same call.

  • POST /geocode/forward
  • POST /geocode/reverse

Stays

Hotels, apartments and campsites near a point, with stable source ids.

  • POST /stays/search
  • GET /stays/{id}

Living context

Monthly climate from 2020 to 2025, and ready-made signals such as beach access and grocery on foot.

  • POST /locations/climate
  • POST /locations/enrich

Bulk jobs

Send a whole list at once for enrichment, analysis or geocoding. Rows that fail come back with a reason; the rest still arrive.

  • POST /jobs
  • GET /jobs/{id}/results

Saved catalogue

Keep your addresses with NILQ. Answers refresh on every data release, overnight on Scale, and you read them when you like.

  • PUT /catalogue/locations/{ref}
  • POST /catalogue/analyses
  • GET /catalogue/analyses/{id}/answers

AI assistants

The same operations for Claude and other assistants over MCP, with the same key, limits and usage.

  • POST /mcp

Your account

Keys, usage per day and your plan in the console, and the same numbers over the API.

  • GET /usage
  • GET /capabilities

Read the API documentation

What you can build

Four places where the same answer earns its keep.

Listings and portals

Answer the question before the visitor opens a maps tab

Every listing is asked the same thing: school, shops, the station, in minutes. Run your catalogue once, store the answers, and every page view reads from your own tables. Cost per address: once. Cost per view: nothing.

Relocation and mobility

Rerun a shortlist as often as the client changes their mind

A shortlist is addresses times places times three travel modes. From Starter up there is no monthly lookup ceiling, so your consultants compare, reorder and rerun without watching a counter.

Site selection

Check ten candidates as thoroughly as the final one

Pull the minutes to what matters for every candidate and give site two the same depth as site nine. A wrong lease costs years; the check costs a lookup.

AI assistants and agents

Give your assistant real minutes instead of guesses

Connect NILQ over MCP and your assistant can search places, find addresses and measure travel time, with sources attached. One line to connect, the same key as your app.

How it runs

Live in four steps. After that, the keeping is ours.

  1. 01

    Create an account

    The Free plan starts at once. Create your key in the console and make your first call in minutes.

  2. 02

    Send addresses

    Send an address and we find it, or send coordinates. One at a time from your product, or a whole list as a bulk job.

  3. 03

    Store the answers

    Write every response into your own database and serve it from there. The answers are yours to keep.

  4. 04

    Refresh on release

    On each new data release your saved addresses are recomputed. You read the new answers; nothing to rebuild.

For your engineers

Three ways in.

One address

Ask about a place

curl https://nilq.com/api/v1/places/analyze \
  -H "Authorization: Bearer $NILQ_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"country_code": "PT",
       "location": {"latitude": 38.7101,
                    "longitude": -9.1374},
       "radius_meters": 800,
       "category_ids": ["foursquare:4bf58dd8d48988d1e0931735"],
       "metrics": ["count", "travel_time_nearest"],
       "mode": "walk"}'

One round trip. No job to poll.

Whole catalogue

Send the list

POST /api/v1/jobs
Idempotency-Key: catalogue-2026-10

{"operation": "place_analysis",
 "records": [ ... ],
 "analysis": { ... }}

202 Accepted
GET /api/v1/jobs/{id}/results

Runs in the background. The same key twice is never charged twice.

AI assistant

Connect over MCP

claude mcp add --transport http nilq \
  https://nilq.com/api/v1/mcp \
  --header "Authorization: Bearer $NILQ_API_KEY"

Your assistant sees the same tools, limits and usage as your app.

Keep it

Pay once per address. Keep the answer.

Storage rights
Store every response in your own database, ship it in your product and keep it after the contract ends. One condition travels with the data: every stored fact keeps its source line.
Answers you can explain
Every answer names its sources and data version. When a client asks why you said eight minutes, you open the record and show where it came from.
Refresh without rework
New data releases recompute your saved addresses. A refresh that fails keeps the last good answer and says so, so a page never shows a blank.

Coverage

Europe, market by market. Then further.

A market goes live when its places, routes and addresses pass the same checks as the ones below. Tell us which market you need; it shapes the order.

Portugal Live

  • Mainland, Madeira and the Azores
  • Places, stays, addresses, travel time and climate

Spain Live

  • Mainland, Balearic and Canary Islands
  • Places, stays, addresses, travel time and climate
  • Ceuta and Melilla: places, stays and addresses

Next Planned

  • More EU markets, one at a time
  • Then beyond Europe
  • Ask for yours when you request a plan

Where we stop

We sell the facts. The verdict, the part your clients pay for, stays yours.

Our own map scores stays against each person's needs, and that score stays out of the API on purpose. What an eight-minute walk to school is worth to a family is your call and your product. Every answer we sell is a counted place or a measured minute, with a source and a date.

How NILQ compares

Priced on what you keep, not on what your visitors click.

Per address, not per call
Per-call pricing grows with your traffic. NILQ is priced on the addresses you keep, a number finance already knows, so a good month for marketing is not a bad month for the invoice.
Storage rights, not caching rules
Many location licences limit what you may store. Ours lets you keep every answer in your own database.
One call, not two vendors
Places from one vendor and travel time from another means two contracts, two renewals and two data versions. NILQ returns both in one response.
Maintained, not homemade
The sources are open and a sprint gets you a prototype. NILQ runs the routing, the matching and every data release for you, year after year.

Pricing

Priced on addresses you keep.

From Starter up there is no monthly lookup ceiling, and every answer is yours to store. Prices exclude VAT.

Plans and their limits
Free €0for evaluation Start free Starter €149a month, or €1,490 a year Choose Starter Recommended Core €790a month, or €7,900 a year Choose Core Scale €1,990a month, or €19,900 a year Choose Scale
Addresses you keep answers for 1,0002,500500,000
Lookups per month 10,000No monthly ceilingNo monthly ceiling
Markets 1 of Portugal or Spain1 of Portugal or SpainAll we run (Portugal and Spain available now)
Requests per second 2540
Whole-catalogue jobs NoNoPriority queue
Refresh on every data release NoIncludedIncluded, overnight target
Store and reuse results 30 daysForeverForever
Support DocsEmailNamed contact

No surprise invoices

There is no overage billing. At a plan limit new work waits with a clear message, stored answers stay untouched, and moving up is your decision.

Rates we test

Every plan's request rate is load-tested on production: at the plan rate nothing is refused, above it the limit steps in.

Annual: two months free

Pay yearly and two months come off. Your renewal price is held for 12 months, in writing.

A saved address is one active saved location per customer reference; updating it does not use another slot. More than 500,000 addresses, more markets, your own deployment or different terms: from €1,990 a month, quoted against your scope at api@nilq.com. Use is governed by the Terms.

Scope

What the API answers, and what it leaves to others.

NILQ answers what surrounds an address and how long daily life takes from its door. Data about the property itself or about people stays with the specialists you may already use.

  • Public transport times
  • Live traffic
  • Demographics
  • Footfall
  • Valuations
  • Ownership records

Start

Your first answer in two minutes.

Create a business account, pick your first country, and your key is waiting in the console. Try it on the address you know best; that is the one that tells you whether this is real.

Create a business account
  • Free plan: 1,000 addresses and 10,000 lookups a month
  • REST and MCP with one key
  • Upgrade from the console when you are ready

Scale, custom scope or other terms: api@nilq.com

How's NILQ working?

One tap is enough. Tell us if NILQ helps you find a place.

How's NILQ working for you?
What's it about? Optional

Notes go to the NILQ team. An email address is only used to reply. Privacy