Skip to main content
Every API key has an IP whitelist: the public IP addresses of the servers allowed to use it. Requests made with the key must come from one of those IPs, or they’re rejected with 403.
IP whitelists are enforced from midnight on 14 October 2026. Before then, run the check from every server that uses a key.

Find your server’s public IP

Whitelist the public IP your requests leave from. Private addresses such as 10.x.x.x or 192.168.x.x don’t work. Run this on the server that will call the API:

Whitelist rules

  • Every key needs at least one entry, and can have up to 50.
  • Each entry is a single IPv4 or IPv6 address (203.0.113.10, 2001:db8::1) or a CIDR range (198.51.100.0/28).
  • Ranges can’t be broader than /16 for IPv4 or /32 for IPv6. 0.0.0.0/0 is rejected.
  • IPs added under Profile → Whitelist apply to every API key on your account, on top of each key’s own list.
  • Setting X-Forwarded-For or similar headers yourself has no effect.

Add or change IPs

On a new key: enter the IPs in Allowed IPs when you generate the key. See API Keys. On an existing key: go to Developers → API Keys and click Edit IPs on the key. The list you save replaces the current one, and the key and secret stay the same. For every key at once: add the IP under Profile → Whitelist.
When moving servers, add the new IP first, deploy, then remove the old one. This avoids downtime.

Check your IP

Call GET /ip-whitelist/check from the server that uses the key. It never blocks, so you can run it any time, including right after changing a whitelist.
The full response is in the API reference. To check a server you haven’t deployed yet, add ?ip=<address>. result then describes that address, and key_usage still describes the server you called from.

Errors


FAQ

No. It only applies to requests made with an API key. People can sign in to the dashboard from any network.
No. Every key needs a whitelist, and ranges broader than /16 (IPv4) or /32 (IPv6) are rejected.
Your server’s public IP has probably changed. Run the check endpoint from that server and add the new request_ip to the key.