Подключите сайт, CRM, учётную программу или свою разработку: читайте договоры, оплаты, счета и акты, создавайте лиды и получайте уведомления о событиях. Обмен с банком и 1С файлами «Клиент-банк» (платёжки и выписки) работает без программиста — на страницах «Счета на оплату» и «Финансы».
Ключ выдаёт администратор аккаунта: Администрирование → Компания → «API и вебхуки» → «Создать ключ». Ключ показывается один раз. Можно сделать ключ «только чтение» — тогда создавать лиды им нельзя. Отозванный ключ перестаёт работать сразу.
curl https://cemtak.ru/api/v1/ping \
-H "Authorization: Bearer ck_ваш_ключ"
Вместо заголовка Authorization можно передать X-Api-Key: ck_ваш_ключ. Ответ — JSON в UTF-8: {"data": …} или ошибка {"error": {"code", "message"}} с кодом HTTP: 401 — нет или неверный ключ, 403 — ключ только для чтения, 404 — не найдено, 422 — ошибка в данных.
На ключ — 600 запросов за 10 минут, на аккаунт — 3000 в час; создание лидов — 60 в час и 500 в сутки на аккаунт. При превышении ответ 429 rate_limited с заголовком Retry-After (секунды до сброса). После 30 запросов с неверным ключом адрес блокируется на 10 минут.
Адрес: https://cemtak.ru/api/v1. Списки отдаются частями: ?limit=50 (до 200) и ?offset=0; в ответе next_offset — смещение следующей части или null. Даты — ГГГГ-ММ-ДД, время — ISO 8601, суммы — в рублях числом.
| Метод | Путь | Что делает |
|---|---|---|
| GET | /ping | Проверка ключа: аккаунт, название ключа, список событий. |
| GET | /contracts | Договоры аккаунта (без лидов). Фильтр updated_since — по дате начала работ. |
| GET | /contracts/{id} | Договор с оплатами (payments) и актами КС-2 (acts). |
| GET | /leads | Лиды: имя, телефон, объект, источник, стадия воронки. updated_since — по дате создания. |
| GET | /leads/{id} | Один лид по id (id объекта). |
| POST | /leads | Создать лид: JSON {"name", "phone", "email", "object", "address", "comment", "source", "firm_id"}. Нужны name или phone. Ответ 201 — созданный лид. |
| GET | /estimates?contract_id={id} | Сметы договора: последняя версия каждой, итог, основная ли, клон ли, согласована ли. |
| GET | /payments | Оплаты заказчиков по договорам: вид, сумма, дата, способ, статус (pending, confirmed, disputed). |
| GET | /invoices | Счета поставщиков: поставщик с ИНН, номер, дата, сумма, НДС, оплачен ли. |
| GET | /acts | Акты КС-2, выставленные заказчикам: номер, дата, сумма, статус, строки. |
| GET | /counterparties | Контрагенты: поставщики и заказчики-организации с реквизитами и банком. |
Пример — заявка с вашего сайта сразу в воронку:
curl -X POST https://cemtak.ru/api/v1/leads \
-H "Authorization: Bearer ck_ваш_ключ" \
-H "Content-Type: application/json" \
-d '{"name":"Анна","phone":"+7 900 000-00-00","object":"Навес 6×4","source":"Сайт"}'
Укажите адрес (https://) и события в «API и вебхуки». Когда событие происходит, СЕМТАК отправляет на адрес POST с JSON:
{
"id": 123,
"event": "payment.received",
"created_at": "2026-10-09T15:20:00+03:00",
"account_id": 32,
"data": { "contract_id": 1468, "amount": 50000, "date": "2026-10-09", "method": "bank" }
}
| Событие | Когда |
|---|---|
lead.created | Новый лид (в том числе с калькулятора на сайте и через API) |
contract.signed | Договор подписан |
stage.approved | Заказчик согласовал этап сметы (доп. соглашение) |
ks2.issued | Акт КС-2 выставлен заказчику |
ks2.confirmed | Заказчик подтвердил акт КС-2 |
payment.received | Оплата по договору получена |
invoice.paid | Счёт поставщика оплачен |
Заголовки: X-Cemtak-Event — событие, X-Cemtak-Delivery — номер отправки (одинаковый при повторах — по нему отсекайте дубли), X-Cemtak-Signature: sha256=… — подпись. Ответьте кодом 2xx в течение 6 секунд. Иначе отправка повторится через 1 мин, 5 мин, 30 мин, 2 ч и 12 ч; журнал и кнопка «Повторить» — в настройках. После 20 неудачных доставок подряд адрес выключается — включите его снова после исправления. На аккаунт уходит не больше 300 событий в час.
Подпись — HMAC-SHA256 тела запроса с секретом адреса (секрет — в настройках, у каждого адреса свой):
// PHP
$body = file_get_contents('php://input');
$sign = 'sha256=' . hash_hmac('sha256', $body, $secret);
if (!hash_equals($sign, $_SERVER['HTTP_X_CEMTAK_SIGNATURE'] ?? '')) { http_response_code(401); exit; }
# Python
import hmac, hashlib
sign = 'sha256=' + hmac.new(secret.encode(), body, hashlib.sha256).hexdigest()
ok = hmac.compare_digest(sign, request.headers.get('X-Cemtak-Signature', ''))
Для «1С:Бухгалтерии» и интернет-банка API не нужен: на странице «Счета на оплату» кнопка «Платёжки для банка» даёт файл платёжных поручений в формате «Клиент-банк», а в «Финансах» кнопка «Загрузить выписку банка» разносит выписку по счетам поставщиков и оплатам по договорам. Выгрузка документов в «Бухгалтерию 3.0» (EnterpriseData) — в разработке.
Вопросы по API — support@cemtak.ru.
После регистрации в аккаунте уже будет лид, договор, смета, заявка снабжения, заказ производства и объект СМР. Потом демо удаляется одной кнопкой.
Создать аккаунт У меня уже есть аккаунт