Historial de cambios

KernelHost API

Versionado semántico. Los cambios incompatibles (campos renombrados, endpoints eliminados, esquema de autenticación modificado) solo se publican en una nueva versión mayor bajo un nuevo prefijo de URL /v2/. Dentro de /v1/ solo se producen cambios aditivos (nuevos campos opcionales, nuevos endpoints).

v1.1.0 (2026-09-23)

  • POST /v1/orders: config_options solo acepta opciones y valores visibles en la tienda, y cantidades dentro de sus límites. Las opciones visibles que omita reciben el primer valor de la lista, exactamente como en la tienda. GET /v1/products/{id} solo lista opciones que se pueden pedir y devuelve quantity.min y quantity.max.
  • Nuevo estado de pedido awaiting_setup con el campo awaiting_setup para productos que el equipo de KernelHost configura manualmente. Los servicios aprovisionados automáticamente se aprovisionan exactamente una vez.
  • El cuerpo de las solicitudes está limitado a 64 KB (HTTP 413). Se aplica un límite por cuenta de 120 solicitudes por minuto entre todas las claves, y una cuenta puede tener hasta 20 claves activas. Un fallo de autenticación ya no bloquea ninguna clave y el Idempotency-Key queda vinculado al método y a la ruta.
  • Las peticiones con más de un parámetro en la query string (por ejemplo GET /v1/services?limit=10&offset=0) se rechazaban con HTTP 401. Ahora la firma cubre la query string exactamente como está documentado.

v1.0.0 (2026-05-14)

  • Versión inicial. Los 15 endpoints, autenticación HMAC, almacenamiento de secretos AES-GCM, límites de tasa, idempotencia, registro de auditoría.
  • GET /v1/me, /v1/products, /v1/products/{id}
  • POST /v1/orders, GET /v1/orders/{id}
  • GET /v1/services, /v1/services/{id}, /v1/services/{id}/credentials
  • POST /v1/services/{id}/actions
  • GET /v1/billing/balance, /v1/billing/invoices, /v1/billing/invoices/{id}/pdf
  • GET/PUT /v1/webhooks
  • HMAC-SHA256 signing, AES-256-GCM secret storage, replay protection, idempotency.