Saltar al contenido

Empezar

Autenticación

Llaves sg_ de lectura y escritura, y cómo actuar en nombre de una persona.

Llaves

Cada pedido lleva una llave de la empresa en el encabezado Authorization. Las llaves empiezan con sg_, las crea administración en el panel (Integraciones) y se muestran una sola vez: Simpligastos guarda solo su huella.

  • Una llave es de una sola empresa. No hay un id de empresa en los pedidos: sale de la llave.
  • Crea una llave por sistema conectado. Así puedes revocar una sin cortar las demás.
  • Una llave revocada responde 401 desde ese momento.

Lectura y escritura

Solo lectura ve todo y no cambia nada: cualquier método que no sea GET responde 403. Sirve para reportes y BI. Lectura y escritura puede crear gastos y rendiciones, marcar lo contabilizado y actuar en nombre de una persona.

Cada llave actúa como una persona técnica con roles de contabilidad y administración. Ve todo lo de la empresa, pero no rinde gastos propios ni decide rendiciones o solicitudes de fondos: para eso actúa en nombre de alguien.

En nombre de una persona

Con una llave de escritura, el encabezado Simpligastos-Persona con el id de una persona activa hace el pedido como ella, con sus roles y sus permisos. Sirve para subir los gastos de un trabajador, crear su rendición o aprobar en nombre de quien decide. Los ids salen de GET /personas.

curl -X POST "https://simpligastos.cl/api/v1/rendiciones/c7031420-7f7d-4b53-b3f7-8484a7b9c7e5/aprobar" \
  -H "Authorization: Bearer $SIMPLIGASTOS_LLAVE" \
  -H "Simpligastos-Persona: 72efadfd-f668-4bec-a7c4-f728bbe2e3ca" \
  -H "Content-Type: application/json" \
  -d '{"comentario":"Todo en orden"}'
Si la persona no existe, está desactivada o es de otra empresa, la llave es de solo lectura, o el id no tiene forma de id, la respuesta es 401. Las reglas siguen valiendo: nadie aprueba su propia rendición, tampoco por API.

Cuidar la llave

  • Guárdala en una variable de entorno o en el gestor de secretos de tu servidor, nunca en el repositorio ni en el navegador.
  • Úsala solo desde tu servidor: la API no está pensada para llamarse desde una página web pública.
  • Si crees que se filtró, revócala en Integraciones y crea otra. El panel muestra cuándo se usó cada una por última vez.