Plans and limits

Each team has two limits that you choose independently: how many requests it can make per hour, and how many POIs it can store. When you go over the hourly quota, the API returns a 429 Too Many Requests until the next hour starts. When you reach the POI limit, creating or importing POIs returns a 403.

Tiers

Pick one tier for each limit; the monthly price is the sum of both, and the lowest tier of each is free.

Requests per hour

  • Name
    50
    Description
    Free
  • Name
    250
    Description
    €9 per month
  • Name
    1,000
    Description
    €29 per month
  • Name
    5,000
    Description
    €79 per month
  • Name
    10,000
    Description
    €149 per month

POIs

  • Name
    1,000
    Description
    Free
  • Name
    10,000
    Description
    €9 per month
  • Name
    50,000
    Description
    €29 per month
  • Name
    250,000
    Description
    €79 per month
  • Name
    1,000,000
    Description
    €199 per month

New teams start on the Free tiers: 50 requests per hour and 1,000 POIs. See your limits and current usage, and change them, on the Plan & usage page of the dashboard. Paid tiers are billed monthly by card through Stripe; upgrades apply right away, changes are prorated, and you can cancel anytime from the billing portal. The same prices are available from the public GET /v1/pricing endpoint. Need more than the highest tiers? Contact us.

How requests are counted

  • The window is a fixed hour. It resets at the start of every hour, in UTC.
  • Every request counts, including the ones that return a 4xx error. A bulk import counts as one request, whatever the size of the file.
  • Requests rejected with a 429 do not count.
  • Requests without a valid API key are rejected before the limit applies, so they return a 401 without rate limit headers.
  • All API keys of a team share the same quota.

Rate limit headers

Every authenticated response, including errors, carries these headers:

  • Name
    X-RateLimit-Limit
    Type
    integer
    Description

    The number of requests your team can make per hour.

  • Name
    X-RateLimit-Remaining
    Type
    integer
    Description

    The number of requests left in the current hour.

  • Name
    X-RateLimit-Reset
    Type
    integer
    Description

    When the current window ends, as a Unix timestamp in seconds.

Read the headers with cURL

curl -i https://api.lanewise.app/v1/pois \
  -H "X-API-KEY: {YOUR_API_KEY}"

Response headers

HTTP/1.1 200 OK
X-RateLimit-Limit: 1000
X-RateLimit-Remaining: 999
X-RateLimit-Reset: 1790467200

After hitting the limit

A 429 response adds the time to wait. Wait that many seconds, or until X-RateLimit-Reset, before you retry.

  • Name
    Retry-After
    Type
    integer
    Description

    Seconds until the window resets.

  • Name
    X-RateLimit-Retry-After
    Type
    integer
    Description

    Same value as Retry-After.

Response headers

HTTP/1.1 429 Too Many Requests
Retry-After: 1260
X-RateLimit-Limit: 1000
X-RateLimit-Remaining: 0
X-RateLimit-Reset: 1790467200
X-RateLimit-Retry-After: 1260