Empezar
En esta página: cómo autenticarse, cómo obtener un token y su primer request completo con la respuesta real que devuelve.
Autenticación
Todos los endpoints exigen un token Bearer en el encabezado
Authorization, con una sola excepción:
GET /v1/health/live, que es público y sirve para comprobar que
el servicio está vivo.
curl -s https://api.eurekia.pe/v1/health/live
# {"status": "alive"}
Obtener un token
Los tokens los emite Eurekia: escriba a soporte@eurekia.pe indicando qué sistema va a consumir la API. Reglas del token:
- Un token por instalación / base de datos. Si opera dos sistemas (por ejemplo, dos bases de Odoo), pida dos tokens: la trazabilidad del servicio identifica a cada consumidor por su token.
- Se muestra una sola vez. El servicio guarda solo su hash; consérvelo en un gestor de secretos o variable de entorno, nunca en el código ni en el historial del shell.
- Rotación y revocación. Puede pedir un token nuevo y mantener dos activos mientras migra; la revocación es inmediata.
Primer request
La tasa vigente más reciente de la serie publicado
(SUNAT, USD):
export EKIA_TOKEN='(el token que recibió de Eurekia)'
curl -s -H "Authorization: Bearer $EKIA_TOKEN" \
'https://api.eurekia.pe/v1/rates/latest?currency=USD&series=publicado'
Respuesta real del 26 de agosto de 2026 (formateada para lectura):
{
"fecha_serie": "2026-08-26",
"compra": "3.339",
"venta": "3.350",
"fuente": "sunat_txt",
"cotejos": [],
"tiene_discrepancia_abierta": false,
"marcas": ["capturada", "recaptura_identica"],
"observacion_id": "27fdd039-36e7-4336-935f-f54e3a8f504e",
"capturado_en": "2026-08-26T07:30:01.251782Z",
"superseded": false,
"superseded_por": null,
"frescura": {
"estado": "al_dia",
"n_dias_habiles": 0,
"fecha_esperada": "2026-08-26",
"hoy_lima": "2026-08-26",
"zona": "America/Lima"
},
"dataset_revision": 711,
"request_id": "2d5a8567-d2d8-4a02-93cc-e5b769a25e39",
"schema_version": "1.0"
}
Qué mirar en la respuesta
| campo | por qué importa |
|---|---|
compra / venta |
Texto de exactamente 3 decimales (regla SBS, redondeo half-up).
Nunca pasan por punto flotante en el servicio; parséelos con un tipo
decimal, no con float. |
observacion_id |
La observación inmutable que respalda el valor. Guárdelo junto al dato que tomó: es su trazabilidad de punta a punta. |
dataset_revision |
La versión del dataset con la que se respondió. Guardada junto al dato, permite reconstruir después exactamente qué se sabía. |
frescura |
Si el registro está al día respecto de la fecha esperada para la serie, en zona de Lima. |
Buenas prácticas
- Guarde
observacion_idydataset_revisioncon cada dato que su sistema tome de la API. - Pase el token por variable de entorno (
$EKIA_TOKEN), jamás literal en scripts o comandos. - Ante un
429, respete el encabezadoRetry-After— ver Errores y límites.
Siguiente paso: entender qué hay detrás de cada valor — El modelo de evidencia.