Семантическое версионирование. Ломающие изменения (переименование полей, удаление endpoint, смена схемы аутентификации) выпускаются только в новой мажорной версии с новым префиксом URL /v2/. Внутри /v1/ возможны только аддитивные изменения (новые опциональные поля, новые endpoint).
v1.1.0 (2026-09-23)
- POST /v1/orders: config_options принимает только опции и значения, видимые в магазине, а количества только в допустимых пределах. Видимые опции, которые Вы не указали, получают первое значение из списка, как и в магазине. GET /v1/products/{id} показывает только доступные для заказа опции и возвращает quantity.min и quantity.max.
- Новый статус заказа awaiting_setup с полем awaiting_setup для продуктов, которые команда KernelHost настраивает вручную. Автоматически разворачиваемые услуги разворачиваются ровно один раз.
- Размер body запросов ограничен 64 КБ (HTTP 413). Для каждого аккаунта действует общий лимит 120 запросов в минуту на все ключи, а один аккаунт может иметь до 20 активных ключей. Неудачная аутентификация больше не блокирует ключ, а Idempotency-Key привязан к методу и пути.
- Запросы с несколькими параметрами в query string (например, GET /v1/services?limit=10&offset=0) отклонялись с HTTP 401. Теперь подпись охватывает query string точно так, как описано в документации.
v1.0.0 (2026-05-14)
- Первый релиз. Все 15 endpoint, аутентификация HMAC, хранение секретов AES-GCM, ограничения частоты, идемпотентность, журнал аудита.
- 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.

