api · Documentación
Iniciar sesión

Consulta de DNI

GET/dni/{numero}

Consulta datos de una persona por su DNI. Usa una cache local; si no hay datos guardados (o pides refresco), consulta a SUNAT en vivo.

Parámetros

NombreTipoDescripción
numeroruta8 dígitos numéricos.
refreshopcionalfresh/refresh/1/true para forzar una consulta nueva a SUNAT en vez de usar la cache. Se acepta como segmento de ruta (/dni/12345678/refresh) o como parámetro de consulta (/dni/12345678?refresh=1).

Ejemplo

curl https://mblapirest.com/api/v1/dni/12345678 \
  -H "Authorization: Bearer TU_API_TOKEN"
{
  "success": true,
  "data": {
    "numero": "12345678",
    "nombre_completo": "PEREZ GOMEZ JUAN",
    "nombres": "JUAN",
    "apellido_paterno": "PEREZ",
    "apellido_materno": "GOMEZ",
    "srestriccion": "NINGUNA",
    "direccion": "AV. EJEMPLO 123",
    "direccion_completa": "AV. EJEMPLO 123 LIMA LIMA LIMA",
    "departamento": "LIMA",
    "provincia": "LIMA",
    "distrito": "LIMA",
    "fecha_nacimiento": "1990-01-01",
    "estado_civil": "Soltero/a",
    "sexo": "Masculino",
    "edad": 34,
    "codigo_verificacion": "5",
    "ubigeo_reniec": "150101",
    "location_id": ["15", "1501", "150101"]
  }
}
Sobre ubigeo_reniec y location_id: son códigos en la numeración de RENIEC, que no es la misma que la del INEI — el mismo número identifica lugares distintos en cada sistema (por ejemplo 040106 es La Joya en RENIEC y Chiguata en INEI). No los cruces contra tablas de ubigeo INEI. location_id son los tramos del propio código: [departamento, provincia, distrito]. La consulta de RUC sí usa códigos INEI, así que los ubigeos de ambos endpoints no son comparables entre sí.
Los campos de dirección/ubigeo/fecha de nacimiento/sexo/edad solo se muestran si tu cuenta tiene el permiso correspondiente habilitado — si no, viajan vacíos ("" o "-") en vez de omitirse, para que el shape de la respuesta sea siempre el mismo.

Sobre srestriccion y direccion con refresh

Cuando pides refresh, además de volver a consultar SUNAT intentamos verificar srestriccion (¿la persona figura como fallecida?) contra un servicio externo — si responde, actualiza el valor guardado; si no responde (son fuentes de terceros, pueden fallar), se mantiene el último valor conocido, sin que la consulta falle. Igual con direccion: si tu cuenta puede verla y no la teníamos guardada, se intenta completar desde otra fuente externa al pedir refresh. Ninguna de las dos fuentes expone datos de familiares/convivientes — solo lo que ya ves en el ejemplo de arriba.

Última actualización: 03/09/2026