Appearance
Autenticación
POST /ruc/api/login con Authorization: Basic devuelve un token válido por 90 minutos, que se envía como Authorization: Bearer en el resto de las llamadas.
Obtener un token
POST /ruc/api/login| Header | Requerido | Descripción |
|---|---|---|
Authorization | Sí | Basic base64(usuario:contraseña) |
bash
curl -i -X POST -u "$AUDITIUM_USER:$AUDITIUM_PASS" \
https://auditium.com.ar/ruc/api/loginRespuesta:
json
{
"access_token": "a1b2c3d4e5f60718293a4b5c6d7e8f901a2b3c4d5e6f708192a3b4c5d6e7f8091",
"token_type": "Bearer",
"expires_in": 5400,
"_links": [
{ "href": "https://auditium.com.ar/ruc/api/asignaciones_personal", "rel": "asignaciones_personal", "method": "GET" },
{ "href": "https://auditium.com.ar/ruc/api/logout", "rel": "logout", "method": "POST" }
]
}| Campo | Descripción |
|---|---|
access_token | El token |
token_type | Siempre Bearer |
expires_in | Segundos de vida restante |
_links | Endpoints habilitados y su método |
Si el token vigente todavía sirve
Llamar a login cuando el token actual tiene más de 2 minutos de vida devuelve el mismo token, con su expires_in real:
json
{
"access_token": "a1b2c3d4e5f60718293a4b5c6d7e8f901a2b3c4d5e6f708192a3b4c5d6e7f8091",
"token_type": "Bearer",
"expires_in": 5378,
"_links": [
{ "href": "https://auditium.com.ar/ruc/api/asignaciones_personal", "rel": "asignaciones_personal", "method": "GET" },
{ "href": "https://auditium.com.ar/ruc/api/logout", "rel": "logout", "method": "POST" }
]
}No requiere tratamiento especial: la respuesta tiene la misma forma y siempre trae un token usable. Hacer login no invalida el token anterior, así que varios procesos pueden compartir credenciales.
Usar el token
bash
curl -H "Authorization: Bearer $TOKEN" \
'https://auditium.com.ar/ruc/api/asignaciones_personal?id_comitente=9999'Renovación
- Guardar el
access_tokeny el momento de emisión másexpires_in. - Antes de cada llamada, verificar si le quedan menos de 2 minutos.
- Si sí, volver a llamar a
login.
Para un proceso batch diario alcanza con un login al comienzo.
Logout
POST /ruc/api/logoutbash
curl -X POST -H "Authorization: Bearer $TOKEN" \
https://auditium.com.ar/ruc/api/logoutjson
{
"data": [],
"warnings": ["Token desactivado"],
"_links": [
{ "href": "https://auditium.com.ar/ruc/api/login", "rel": "login", "method": "POST" }
]
}El token deja de servir. No es obligatorio llamarlo —los tokens caducan solos—, pero conviene al cerrar una corrida batch.
Errores
| Código | type | Causa |
|---|---|---|
400 | — | Petición sin HTTPS |
401 | credenciales-ausentes | Falta el header Authorization |
401 | credenciales-invalidas | Usuario o contraseña incorrectos, o usuario vencido |
403 | capacidad-insuficiente | Método incorrecto (por ejemplo GET /ruc/api/logout) |
No registres el access_token en logs en texto plano: equivale a las credenciales hasta que vence.