Skip to main content
Cada endpoint declara exactamente un permiso (R16) y pertenece a una sola clase de SLO (DEC-D7). La columna Desde dice en qué versión de la suite queda disponible; hasta entonces el endpoint no existe, ni siquiera devolviendo 501.

Cómo se leen las versiones

El repositorio usa CalVer AAAA.M.PATCH y todos los proyectos comparten versión (modules/overview.md §4). Las fases del PRD se mapean así: Las fechas de F1b y F2 son objetivo, no compromiso: se confirman cuando su spec pasa a approved. F1a sí está comprometida contra el hito del 2026-11-01.

Runtime API — SLO p95 <300 ms

Las llama una máquina en un camino caliente: un punto de venta, un carrito, un mostrador. Un segundo de latencia acá es una fila de clientes esperando.

Member API — SLO p95 <150 ms

Las llama la app o el portal del cliente final, con un token de member. Nunca con una API key de tenant.

Management API — SLO p95 <1 s

Las llama la consola del tenant o su equipo por integración. Son pantallas, no mostradores.

Reglas que aplican a todos

  • Un permiso por endpoint (R16), con la forma loyalty.{recurso}.{acción}. Un endpoint que necesita dos permisos son dos endpoints.
  • Nuestras propias superficies consumen solo esta API (R17). Si la consola necesita algo que la API no tiene, la API está incompleta.
  • Errores como RFC 9457 problem+json con un code estable. El code es parte del contrato: cambiarlo es un cambio mayor.
  • Idempotency-Key donde la tabla lo marca obligatorio. Un canje repetido por un reintento de red no puede cobrar dos veces.
  • Los presupuestos de latencia son criterio de Definition of Done (R18), verificados con pruebas de carga en certificación. No son aspiraciones.

Cambios y deprecación

Ningún endpoint de esta tabla existe todavía. Cuando el primero se libere, esta página pasa a llevar también la columna de deprecación: un endpoint se marca deprecado al menos una versión completa antes de retirarse, y el retiro se anuncia en el changelog público.