Понимание различий между Shelly Cloud Control API, Integrator API и Shelly Fleet Manager
Shelly предоставляет широкий спектр API для своих устройств, обеспечивая гибкую интеграцию. Каждое устройство можно программировать индивидуально — как автономно без Shelly Cloud, так и через защищённый облачный API для удалённого управления. С помощью API можно выполнять команды управления (изменение настроек устройства недоступно) и получать события об изменениях состояния в реальном времени.
В данной статье на высоком уровне описаны различия между Shelly Cloud API, Integrator API и Shelly Fleet Manager (SFM).
Краткий глоссарий
- WebSocket — протокол связи с постоянно открытым двусторонним каналом по одному TCP-соединению. В отличие от HTTP (запрос–ответ с закрытием соединения), WebSocket обеспечивает передачу данных в реальном времени.
- Cloud Control API — защищённый API для управления устройствами одной учётной записи Shelly Cloud по HTTP или WebSocket.
- Integrator API — API «облако–облако» для управления устройствами из нескольких учётных записей пользователей Shelly; предназначен для B2B и промышленных сценариев.
- Shelly Fleet Manager (SFM) — SaaS-решение (или самоуправляемое ПО с открытым исходным кодом) для управления парком устройств Shelly независимо от Shelly Cloud.
Cloud Control API — управление устройствами одной учётной записи
Управление и состояние через HTTP
| Параметр | Значение |
|---|---|
| Управление | Устройства одной учётной записи Shelly |
| Тип API | HTTP |
| Назначение | Небольшое количество устройств; DIY или PoC |
Защищённый API для управления устройствами Shelly через облако. Позволяет выполнять команды и получать состояние устройств в рамках одной учётной записи. Связь осуществляется по HTTPS, данные передаются в формате JSON.
Ключ авторизации генерируется в приложении: Настройки пользователя → Ключ авторизации облака. Ключ аннулируется при смене пароля. Учётная запись привязана к конкретному серверу облачной инфраструктуры Shelly — хост может меняться по соображениям балансировки нагрузки.
Подробная документация: shelly-api-docs.shelly.cloud/cloud-control-api
Управление и события в реальном времени через WebSocket
| Параметр | Значение |
|---|---|
| Управление | Устройства одной учётной записи Shelly |
| Тип API | WebSocket |
| Назначение | Небольшое количество устройств; DIY или PoC |
API для обработки событий и команд устройств Shelly в рамках одной учётной записи. Аутентификация осуществляется через OAuth. Токен доступа является долгосрочным и аннулируется при смене пароля.
После установки WebSocket-соединения Shelly Cloud отправляет уведомления о состоянии устройств в реальном времени; в обратном направлении могут отправляться команды управления. Для каждой управляемой учётной записи требуются отдельные учётные данные OAuth. Для непрофессионального использования применяется идентификатор клиента shelly-diy — токены, полученные с ним, могут подпадать под ограничения частоты запросов.
Подробная документация: shelly-api-docs.shelly.cloud/cloud-control-api/real-time-events
Integrator API — управление устройствами нескольких учётных записей
| Параметр | Значение |
|---|---|
| Управление | Устройства нескольких учётных записей Shelly |
| Тип API | WebSocket |
| Назначение | Большое количество устройств; B2B и промышленные сценарии |
API «облако–облако» для интеграции, управления и сбора данных с устройств Shelly из множества пользовательских учётных записей. Поддерживает несколько параллельных WebSocket-соединений из одной точки обслуживания. Позволяет централизованно получать данные о состоянии устройств и осуществлять базовое управление ими.
Для работы необходимо создать учётную запись интегратора. Для её создания и получения лицензии обратитесь на support@shelly.cloud или заполните форму заявки. Лицензии для личного использования не предоставляются; Shelly вправе отклонять необоснованные запросы.
Согласие пользователя. Владельцы устройств должны войти в свою учётную запись Shelly Cloud и дать согласие на предоставление интегратору доступа к своим устройствам. Согласие предоставляется для каждого устройства отдельно (только чтение или чтение и управление) и может быть отозвано пользователем в любой момент.
Подробная документация: shelly-api-docs.shelly.cloud/integrator-api
Shelly Fleet Manager — управление парком устройств
| Параметр | Значение |
|---|---|
| Управление | Устройства Shelly с учётными записями или без них |
| Тип API | WebSocket |
| Назначение | Промышленное применение |
Shelly Fleet Manager (SFM) — централизованная платформа для мониторинга, управления и контроля парка устройств Shelly в нескольких локациях. Обеспечивает сбор данных в реальном времени, удалённое управление, автоматизацию и отчётность.
Устройства могут быть привязаны к учётным записям Shelly Cloud или нет — это делает SFM гибким решением. Добавление устройств возможно «из коробки» без предварительной настройки, в том числе оптом через приложение Shelly FMA.
SFM доступен как облачное SaaS-решение Shelly (fleet.shelly.com) или как самоуправляемое ПО с открытым исходным кодом, которое можно развернуть и доработать самостоятельно. Для управления устройствами через SFM учётная запись Shelly Cloud не требуется.
Shelly FMA (Shelly Fleet Manager Assistant) — мобильное приложение для массового подключения устройств к SFM. Сканирует новые устройства поблизости по Bluetooth и добавляет их к предварительно настроенному экземпляру SFM. Поддерживает передачу профилей конфигурации, включая настройки Wi-Fi и группировку устройств по физическому расположению.
Загрузка приложения: Google Play / App Store
Устройства подключаются к SFM через исходящий WebSocket. SFM работает только с устройствами Gen 2+. Подключение устройства к SFM не отключает его от Shelly Cloud — это независимые соединения.



