Fresh Mexican postal data
Mexico's postal data, as one API.
Every postal code, every colonia, all 32 estados, in one API. One Bearer token, clean JSON, no SDK to install.
- postal codes
- 31,880 postal codes
- colonias
- 159,019 colonias
- municipios
- 2,478 municipios
- estados
- 32 estados
Juárez
Cuauhtémoc · Ciudad de México
{
"data": {
"id": 384,
"code": "06600",
"state": {
"id": 1,
"name": "Ciudad de México",
"code": "09"
},
"municipality": {
"id": 6,
"name": "Cuauhtémoc",
"code": "015"
},
"city": {
"id": 1,
"name": "Ciudad de México"
},
"settlements": [
{
"id": 532,
"name": "Juárez",
"zone": "Urbano",
"settlement_type": {
"id": 1,
"name": "Colonia"
}
}
]
}
}
Live API, same data and shape as the keyed endpoint. No key needed to try.
One base URL. The whole catalog.
Every endpoint returns JSON, paginated where it makes sense, with Cache-Control headers so your client can cache freely.
-
GET /v1/postal-codes/{code}
State, municipio, city, and every colonia for a 5-digit code
06600 → Juárez · Cuauhtémoc, CDMX
-
GET /v1/postal-codes?q={prefix}
Autocomplete: codes that start with a numeric prefix
066 → 06600, 06700, 06760 …
-
GET /v1/postal-codes/search
Find codes by estado, municipio, and/or colonia name
Jalisco · Guadalajara · Centro → 44100
-
GET /v1/postal-codes/{code}/settlements
Just the colonias for a code, slim payload
64000 → Monterrey Centro, La Finca …
-
GET /v1/postal-codes/{code}/geocode
Latitude and longitude for a code
97000 → 20.97, -89.62
-
GET /v1/states · /v1/states/{id}/municipalities
The 32 estados and the municipios in each
09 → Cuauhtémoc, Benito Juárez …
-
GET /v1/settlements?q={name}
Look up colonias by name across the country
Polanco → 11550, 11560 …
-
GET /v1/geocode/reverse
Nearest postal code to a lat / long pair
19.43, -99.13 → 06000
Full request and response details in the API reference.
You could process postal data files yourself.
Postal data often ships as a pipe-delimited text file: every settlement in the country, encoded in Latin-1, with no stable IDs, refreshed on no fixed schedule. You can download it, parse it, host it, and remember to re-sync it every few months. Or you can call one endpoint.
GET /v1/postal-codes/06600
That is the whole integration.
Pricing
Free to start. Paid plans in Mexican pesos. Cancel anytime.
Drop it into your stack
Authenticate with a Bearer token, parse the JSON. That is the integration.
curl -s https://api.postalkit.mx/v1/postal-codes/06600 \ -H "Authorization: Bearer YOUR_API_KEY"
Make your first call in two minutes.
Sign up, verify your email, copy your key. The free tier is 100 requests a month, no card required.
curl -s https://api.postalkit.mx/v1/postal-codes/06600 -H "Authorization: Bearer YOUR_KEY"