Ir al contenido

Ubigeos

Catálogo de ubigeos del INEI (≈ 1 900 distritos). Sirve para normalizar direcciones, validar fichas y enriquecer datos de RUC con su distrito real.

Método y rutaDescripción
GET /v1/ubigeosListado paginado con filtros opcionales
GET /v1/ubigeos/{code}Lookup directo por código de 6 dígitos
Scope requeridoubigeos:read
Cuota1 unidad por request
Cache HTTPpublic, max-age=2592000, immutable (30 días)

El código de 6 dígitos sigue el formato DDPPDD:

PosiciónSignificadoEjemplo
1-2Código de departamento15 = Lima
3-4Código de provincia01 = Lima
5-6Código de distrito01 = Lima (Cercado)

Ejemplo completo: 150101 = Lima / Lima / Lima Cercado.

GET /v1/ubigeos?q=miraflores&limit=10
NombreTipoValidaciónDefault
qstring2-80 caracteres
departamentostring2 dígitos
provinciastring4 dígitos
limitnumber1-20050
cursorstring6 dígitos (ubigeo del último resultado)
Ventana de terminal
curl --request GET \
--url 'https://api.chequea.pe/api/v1/ubigeos?departamento=15&provincia=1501&limit=5' \
--header 'Authorization: Bearer ak_live_TU_CLAVE'
{
"items": [
{
"code": "150101",
"departamento": "LIMA",
"provincia": "LIMA",
"distrito": "LIMA",
"departamentoCode": "15",
"provinciaCode": "1501"
},
{
"code": "150102",
"departamento": "LIMA",
"provincia": "LIMA",
"distrito": "ANCON",
"departamentoCode": "15",
"provinciaCode": "1501"
}
],
"nextCursor": "150103"
}

nextCursor es el código del último ítem devuelto. Para la siguiente página, envíalo en ?cursor=. Cuando nextCursor es null, no hay más resultados.

GET /v1/ubigeos/150101
{
"code": "150101",
"departamento": "LIMA",
"provincia": "LIMA",
"distrito": "LIMA",
"departamentoCode": "15",
"provinciaCode": "1501"
}
CódigotypeCuándo ocurre
400validation_errorCódigo mal formado, query inválida o cursor corrupto
401unauthorizedFalta clave o es inválida
403forbidden_scopeLa clave no tiene ubigeos:read
404not_foundEl código no existe en el catálogo INEI
429rate_limited / quota_exceededPlan excedido