§01Аутентификация
Получите access-токен через /auth/login и передавайте в заголовке Authorization: Bearer. Токен живёт 15 минут, обновляется через /auth/refresh.
# Получение токена
curl -X POST https://api.actrix.ru/v1/auth/login \
-H "Content-Type: application/json" \
-d '{"email":"user@company.ru","password":"..."}'
# Использование
curl https://api.actrix.ru/v1/estimates \
-H "Authorization: Bearer eyJhbGciOi..."
§02Сметы
GET/estimatesСписок с фильтрами по стороне, статусу, объекту
GET/estimates/{id}Детали со всеми группами и строками
POST/estimatesСоздать новую (DRAFT)
PATCH/estimates/{id}Обновить (только DRAFT)
POST/estimates/{id}/submitОтправить на согласование
POST/estimates/{id}/link-contractorПривязать подрядную (1:N)
DELETE/estimates/{id}Soft-delete (только DRAFT)
§03Акты КС-2 / КС-3
GET/actsСписок актов
POST/actsСоздать (накопительный, односторонний)
POST/acts/{id}/approveПринять решение
GET/acts/{id}/print/ks2КС-2 (xlsx)
GET/acts/{id}/print/ks3КС-3 (xlsx)
§04Договоры
GET/contractsСписок (CLIENT / CONTRACTOR)
POST/contractsСоздать договор
POST/contracts/{id}/agreementsДоп. соглашение
§05Каталог НСИ
GET/catalog/itemsЭлементы каталога с ценами
POST/catalog/itemsДобавить элемент
GET/catalog/items/{id}/price-historyИстория цен
§06Webhooks
На «Бизнес» и «Корпорация» — webhooks на ключевые события: estimate.approved, act.signed, approval.decided, contract.created. Подпись HMAC-SHA256.
{
"event": "act.signed",
"timestamp": "2026-04-21T14:08:32Z",
"data": {
"actId": "a3f1...d2",
"side": "CLIENT",
"amount": 37740200
}
}
§07Коды ошибок
400VALIDATION_FAILEDНеверный формат или валидация
401UNAUTHENTICATEDТокен отсутствует или истёк
403FORBIDDENНет прав или ресурс не принадлежит кабинету
409STATE_CONFLICTДокумент не в нужном статусе
429RATE_LIMITEDПревышен лимит запросов