Apariencia
Primeros pasos
En tres pasos vas a hacer tu primera consulta a la API de ConsultaPe.
1. Crea tu cuenta
Entra a app.consultape.pro/registro y crea tu cuenta gratis. Empiezas con el plan gratuito (DNI, RUC y tipo de cambio); para más módulos o más consultas, escríbenos a [email protected]. Tu cuenta necesita un plan activo: el plan define qué consultas puedes hacer (módulos), cuántas al mes y cuántas por minuto. Revisa Límites y planes.
2. Genera un token de API
- Entra a app.consultape.pro/tokens.
- Pulsa Nuevo token, ponle un nombre que te ayude a reconocerlo (por ejemplo,
ERP producción). - Opcional: define una fecha de expiración y la lista de IPs permitidas (las IPs públicas de tus servidores).
- Copia el token. Empieza con
cp_y solo se muestra una vez: guárdalo en un gestor de secretos o en una variable de entorno.
Importante
El token identifica a tu cuenta y consume tu cuota. Úsalo solo desde tu servidor (backend), nunca en una web o app móvil que lo exponga al usuario final. Más detalles en Autenticación.
3. Haz tu primera consulta
La URL base de la API es:
https://api.consultape.proConsulta un DNI enviando el token en la cabecera Authorization:
bash
curl https://api.consultape.pro/v1/dni/12345678 \
-H "Authorization: Bearer $CONSULTAPE_TOKEN"js
// Node.js 18+ (fetch nativo). Ejecuta esto en tu servidor, no en el navegador.
const respuesta = await fetch('https://api.consultape.pro/v1/dni/12345678', {
headers: { Authorization: `Bearer ${process.env.CONSULTAPE_TOKEN}` },
});
const { success, message, result } = await respuesta.json();
if (success) console.log(result.nombre_completo);
else console.error(message);php
<?php
$ch = curl_init('https://api.consultape.pro/v1/dni/12345678');
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ['Authorization: Bearer ' . getenv('CONSULTAPE_TOKEN')],
CURLOPT_TIMEOUT => 60,
]);
$datos = json_decode(curl_exec($ch), true);
curl_close($ch);
echo $datos['success'] ? $datos['result']['nombre_completo'] : $datos['message'];python
import os
import requests
r = requests.get(
"https://api.consultape.pro/v1/dni/12345678",
headers={"Authorization": f"Bearer {os.environ['CONSULTAPE_TOKEN']}"},
timeout=60,
)
datos = r.json()
print(datos["result"]["nombre_completo"] if datos["success"] else datos["message"])Respuesta:
json
{
"success": true,
"message": "Consulta exitosa",
"result": {
"numero": "12345678",
"nombres": "JUAN CARLOS",
"apellido_paterno": "PEREZ",
"apellido_materno": "GOMEZ",
"nombre_completo": "PEREZ GOMEZ JUAN CARLOS",
"codigo_verificacion": 1,
"fuente": "consultape.pro",
"desde_cache": false,
"actualizado_at": "2026-10-04T15:20:11.000Z"
}
}Qué revisar en cada respuesta
- Siempre lee
success. Una respuesta HTTP 200 puede traersuccess: falsecuando la fuente oficial (SUNAT, RENIEC…) no respondió o no tiene datos. Esas consultas no consumen tu cuota. - Usa
messagepara mostrar o registrar el motivo. - Los datos están en
result.
Sigue con Formato de respuesta y Códigos de error.
Buenas prácticas
- Configura un timeout generoso (30–60 s). Algunas fuentes oficiales son lentas; las descargas de XML/PDF pueden tardar más.
- Reintenta con espera (backoff) ante
success: falsepor falla de la fuente o ante HTTP 429. - Guarda en tu sistema los datos que ya consultaste si los vas a reutilizar: ahorras cuota y tiempo.