https://api.c2server.ru/v4C2Server API — RESTful интерфейс для программного управления вашей командно-контрольной инфраструктурой. Все запросы и ответы передаются в формате JSON. Соединение осуществляется только по HTTPS с валидным сертификатом TLS 1.3.
Для доступа к API необходим активный аккаунт на платформе и действующий API-ключ. Ключи выдаются в личном кабинете после прохождения верификации.
C2K-{32 символа}Базовый запрос к API для проверки статуса подключения:
# Проверка соединения
curl -X GET https://api.c2server.ru/v4/ping \
-H "Authorization: Bearer C2K-ваш_ключ_здесь" \
-H "Content-Type: application/json"
# Ожидаемый ответ:
{
"status": "ok",
"version": "4.12.3",
"agent_id": "AGT-██████",
"timestamp": 1748424000,
"bear_status": "growling"
}API использует Bearer-токены. Ключ передаётся в заголовке каждого запроса:
Authorization: Bearer C2K-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxКлючи имеют срок действия 90 дней. Ротация ключей производится в личном кабинете. При компрометации ключа немедленно отзовите его и сообщите в службу безопасности.
GET /v4/nodes # Список всех нод
POST /v4/nodes # Создать ноду
GET /v4/nodes/{id} # Информация о ноде
PUT /v4/nodes/{id} # Обновить ноду
DELETE /v4/nodes/{id} # Удалить ноду
POST /v4/nodes/{id}/command # Выполнить командуGET /v4/iot/devices # Список устройств
POST /v4/iot/devices # Зарегистрировать устройство
POST /v4/iot/devices/{id}/brew # Заварить чай (чайники)
GET /v4/iot/devices/{id}/temp # Текущая температураGET /v4/analytics/overview # Сводная статистика
GET /v4/analytics/events # Лог событий
POST /v4/analytics/export # Экспорт данных200 OK # Успешно
201 Created # Ресурс создан
400 Bad Request # Ошибка в запросе
401 Unauthorized # Недействительный или отсутствующий ключ
403 Forbidden # Доступ запрещён (недостаточно прав)
404 Not Found # Ресурс не найден
429 Too Many Req. # Превышен лимит запросов
451 Unavailable # Недоступно по юридическим причинам
500 Server Error # Внутренняя ошибка (сообщите нам)
503 Unavailable # Техническое обслуживание (вторник, 3:17)
███ [засекречено] # Код ошибки, связанной с принтеромЛимиты применяются по API-ключу и зависят от тарифного плана:
При превышении лимита возвращается статус 429 с заголовком Retry-After, указывающим время ожидания в секундах.
/v4/iot/devices/{id}/brew для чайниковbear_status