Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.mipos.co.cr/llms.txt

Use this file to discover all available pages before exploring further.

Obtener un token

Envía tus credenciales al endpoint de login:
curl -X POST https://auth.mipos.co.cr/login \
  -H "Content-Type: application/json" \
  -d '{"base":"mi_empresa","password":"mi_password"}'

Usar el token

Incluye el token en el header Authorization de cada request a las APIs cliente:
Authorization: Bearer eyJhbGciOiJSUzI1NiIs...
El token expira después de 8 horas (28800 segundos). Cuando expire, debes hacer login nuevamente. No hay endpoint de refresh.

Verificar el token (APIs cliente)

Las APIs que reciben el token deben verificar su firma. Hay dos formas:
Copia el archivo public.pem del Auth Server a tu API cliente y verifica localmente:
use Firebase\JWT\JWT;
use Firebase\JWT\Key;

$publicKey = file_get_contents('/ruta/segura/public.pem');
$token = str_replace('Bearer ', '', $_SERVER['HTTP_AUTHORIZATION'] ?? '');

try {
    $decoded = JWT::decode($token, new Key($publicKey, 'RS256'));
    $base = $decoded->base; // Identificador del cliente
} catch (\Exception $e) {
    http_response_code(401);
    exit(json_encode(['error' => 'Token inválido']));
}