BYTETOOLS

Zippopotam.us API

Free zip and postal code API for 60+ countries. Convert a postal code to city, state and coordinates with no API key. Tested curl example and live JSON response.

No API key requiredCORS enabledHTTPSCompletely free.

Endpoint tested and returned HTTP 200 on 19 Aug 2026

What is the Zippopotam.us API?

Zippopotam.us is a free postal code API covering more than 60 countries. It converts a zip or postal code into place name, state, latitude and longitude, and works in reverse, with no API key required.

Postal code lookup is one of those problems that seems trivial until you need it for more than one country. Zippopotam.us covers over 60 countries behind a single consistent URL pattern: country code, then postal code.

The most valuable use is address form autofill. When a user types a postal code, one request gives you the city and state to pre-populate, which measurably reduces checkout abandonment and typo rates compared with making people type it themselves.

Quick facts

Base URL
https://api.zippopotam.us
Authentication
No key or registration.
Rate limit
No published limit. Informal fair use applies.
Pricing
Completely free.
CORS
Enabled — callable directly from browser JavaScript
Official docs
Read the docs

How to use the Zippopotam.us API

Every request below was executed against the live API on 19 Aug 2026, and the response shown is the real body it returned — not an illustration.

1. Look up a US zip code

GET https://api.zippopotam.us/us/33162

curl
curl 'https://api.zippopotam.us/us/33162'
JavaScript (fetch)
const res = await fetch("https://api.zippopotam.us/us/33162");
if (!res.ok) throw new Error(`Request failed: ${res.status}`);
const data = await res.json();
console.log(data);
Python (requests)
import requests

res = requests.get("https://api.zippopotam.us/us/33162", timeout=20)
res.raise_for_status()
print(res.json())
Response — HTTP 200
{
  "country": "United States",
  "country abbreviation": "US",
  "post code": "33162",
  "places": [
    {
      "place name": "Miami",
      "longitude": "-80.183",
      "latitude": "25.9286",
      "state": "Florida",
      "state abbreviation": "FL"
    }
  ]
}

Parameters

ParameterTypeRequiredDescription
<country>pathRequiredISO 3166 alpha-2 country code, lowercase. us
<postalcode>pathRequiredThe postal or zip code to resolve. 33162

Response fields

post codestring
The postal code echoed back. Note the space in the key name.
country / country abbreviationstring
Country name and code — again, keys contain spaces.
placesarray
One or more matching places; a single code can map to several.
places[].place namestring
City or locality name.
places[].state / state abbreviationstring
State or region and its short code.
places[].latitude / longitudestring
Coordinates as strings, not numbers.

What you can build with the Zippopotam.us API

  • Autofill city and state from a postal code in checkout and signup forms
  • Validate that a postal code actually exists before submitting an order
  • Get approximate coordinates for a postal code without a full geocoder
  • Build country-aware address forms across 60+ countries with one integration

Common errors and how to fix them

404

The postal code does not exist for that country, or the country is not covered.

Fix: Confirm the country code is lowercase ISO alpha-2 and that the code format matches that country's scheme.

Zippopotam.us API — frequently asked questions

Is there a free zip code API with no key?

Yes — Zippopotam.us resolves postal codes to city, state and coordinates for over 60 countries with no API key or signup.

Why do the JSON keys contain spaces?

Zippopotam.us uses human-readable keys such as `post code` and `place name`. In JavaScript you must use bracket notation, for example `data['post code']`, since dot notation will not work.

Which countries does Zippopotam.us support?

More than 60, including the US, UK, Canada, Germany, France, India, Australia and most of Europe. Coverage and postal code format vary, so a code valid in one country will 404 in another.

Can it convert coordinates back to a postal code?

It supports lookups by country, state and city to find postal codes, but it is not a general reverse geocoder. Use Nominatim for coordinates to address.

Tools that pair with this API

Alternatives to Zippopotam.us API

If Zippopotam.us does not fit, these geolocation & ip apis cover similar ground. Every one was called before publishing, and each links to its own reference page with a working curl command and the response it returned.

APIWhat it doesAuthCORSLast verified
ipifyipify is a free, unlimited API that returns your public IP address as text, JSON or JSONP. No key, no rate limit, IPv4 and IPv6 endpoints. Live curl example.No keyYes19 Aug 2026
ip-api.comFree IP geolocation API returning country, city, coordinates, timezone and ISP for any IP. No key on the free tier, 45 requests per minute. Tested curl example.No keyYes19 Aug 2026
ipwho.isFree IP geolocation API with HTTPS and no API key. Returns country, city, coordinates, timezone, currency and connection data. 10,000 requests/month free.No keyYes19 Aug 2026
Nominatim (OpenStreetMap)Free OpenStreetMap geocoding API: convert addresses to coordinates and back. No API key, open data, 1 request per second. Tested curl example and usage policy.No keyNo19 Aug 2026
3geonamesFree reverse geocoding API with no key: turn coordinates into the nearest named place, timezone, elevation, OSM tags and a three-word location code. Tested example included.No keyNo21 Aug 2026
API Adresse (BAN)Free official French address API with no key: geocode and validate any French address, reverse geocode coordinates, and bulk-geocode a CSV. Tested example included.No keyYes21 Aug 2026
All Geolocation & IP APIs

Zippopotam.us is an independent third-party service and is not affiliated with ByteTools or ByteVancer. Details on this page were verified on 19 Aug 2026; always check the official documentation before relying on this API in production, as terms and limits can change.