Типы событий
| Тип | Когда возникает | subject |
payload |
|---|---|---|---|
board.item.created |
создан объект командой или агентом | id объекта | { "objectType": "sticky_note" } |
board.connector.created |
создана связь | id связи | { "from": "<id>", "to": "<id>" } |
board.connector.updated |
изменён маршрут или точки связи | id связи | { "routing": "elbow" } |
app.invoked |
вызвано действие приложения | id приложения | { "action": "app.hello" } |
Содержимого доски в payload нет: только идентификаторы и типы.
Конверт
{
"id": "9f0c3a4e-6f3a-4e57-9a2f-5d1c0d1c9b11",
"type": "board.item.created",
"orgId": "3f2c7d1a-8e4b-4c6a-9f01-2b3c4d5e6f70",
"boardId": "roadmap-1a2b3c4d",
"actor": { "id": "5b0e…", "type": "user" },
"subject": "item_7c1e2f3a9b4d",
"payload": { "objectType": "sticky_note" },
"occurredAt": "2026-10-27T12:34:56.789Z"
}
actor.type — user, agent или integration. Для агента actor.id — id агента; человек, поставивший задачу, остаётся в строке задачи.
Заголовки
| Заголовок | Значение |
|---|---|
X-Remo-Event |
id события: ключ идемпотентности |
X-Remo-Event-Type |
тип события |
X-Remo-Attempt |
номер попытки, начиная с 1 |
X-Remo-Signature |
t=<unix>,v1=<hex> |
Content-Type |
application/json |
Подпись — HMAC-SHA256 секретом подписки по строке "<t>.<тело>". Окно — 5 минут. Подписывается тело до разбора JSON.
Доставка
2xx— доставлено, событие помечается опубликованным.- иной ответ, таймаут (5 секунд) или ошибка соединения — повтор.
- лестница повторов: 10 с, 30 с, 2 мин, 10 мин, 30 мин, 1 ч, 3 ч.
- восьмая неудача —
dead_at, автоматических повторов больше нет. - доставка at-least-once: дедуплицируйте по
X-Remo-Event. - редиректы запрещены.
Администрирование
| Метод и путь | Что делает |
|---|---|
GET /orgs/:id/webhook |
конфигурация: url, enabled, fingerprint, lastDeliveryAt, lastError |
PUT /orgs/:id/webhook |
создать или заменить эндпоинт; возвращает секрет один раз |
POST /orgs/:id/webhook/rotate |
новый секрет |
DELETE /orgs/:id/webhook |
удалить эндпоинт и секрет |
GET /orgs/:id/webhook/deliveries?limit=50&dead=1 |
последние события организации |
POST /orgs/:id/webhook/replay |
вернуть в очередь: {eventIds?} или все «мёртвые» |
Все маршруты требуют администратора организации. Изменяющие маршруты и replay пишут аудит; чтение списка и доставок — нет.
Чего событий нет
Изменения и удаления существующих объектов и правки текста не порождают событий — ни у человека, ни у агента.
Куда дальше
HTTP API — маршруты, команды и коды ответов.