Оглавление
Вебхук от SeaTable имеет четко определенную структуру. Это позволяет легко обрабатывать событие любым языком программирования. В этой статье представлена общая структура и возможные значения.
Какие изменения вызывает веб-крючок
Если для базы настроен webhook, то при каждом изменении содержимого базы отправляется HTTP-запрос. Так, например, следующие изменения вызывают срабатывание веб-крючка:
- Добавляется или дублируется новый ряд.
- Строка удаляется.
- Содержимое строки изменяется.
Примеры вебхуков, отправляемых SeaTable
Пример 1: был добавлен новый ряд (например, в веб-интерфейсе SeaTable, через веб-форму или через вызов API)
{
"event": "update",
"data": {
"dtable_uuid": "fae0a3a42ba94df88e8303fd385e37de",
"row_id": "Fk-i7xZGS5iA5aSvaG5HAA",
"op_user": "4bc9a7c79c5942c5b6238413f2132bea@auth.local",
"op_type": "insert_row",
"op_time": 1649922777.279,
"table_id": "9g8f",
"table_name": "Opportunities",
"row_name": "",
"row_data": []
}
}
Пример 2: было выбрано значение с единственным выбором
{
"event": "update",
"data": {
"dtable_uuid": "fae0a3a42ba94df88e8303fd385e37de",
"row_id": "QoNno3QiTF26sxmG1sl3_g",
"op_user": "4bc9a7c79c5942c5b6238413f2132bea@auth.local",
"op_type": "modify_row",
"op_time": 1649929622.589,
"table_id": "9g8f",
"table_name": "Opportunities",
"row_name": "",
"row_data": [{
"column_key": "589r",
"column_name": "Prio",
"column_type": "single-select",
"column_data": {
"options": [{
"name": "++",
"color": "#F4667C",
"textColor": "#FFFFFF",
"id": "381992"
},
{
"name": "+",
"color": "#FBD44A",
"textColor": "#FFFFFF",
"id": "830278"
}
]},
"value": "381992",
"old_value": ""
}]
}
}
Пример 3: строка была удалена
{
"event": "update",
"data": {
"dtable_uuid": "fae0a3a42ba94df88e8303fd385e37de",
"row_id": "QoNno3QiTF26sxmG1sl3_g",
"op_user": "4bc9a7c79c5942c5b6238413f2132bea@auth.local",
"op_type": "delete_row",
"op_time": 1649929650.668,
"table_id": "9g8f",
"table_name": "Opportunities",
"row_name": "",
"row_data": []
}
}
Возможные значения, которые может принимать веб-крючок
Запрос, отправляемый webhook, всегда содержит значения “event” и “data”. В настоящее время значение “событие” - это всегда “обновление”. В будущем, возможно, сюда будут добавлены и другие значения.
Значение “data” содержит массив с последующими элементами. Они перечислены в следующей таблице:
Значение | Тип | Пример |
---|---|---|
dtable_uuid | Строка (32) | fae0a3a42ba94df88e8303fd385e37de |
row_id | Струна (22) | QoNno3QiTF26sxmG1sl3_g |
op_user | Строка (32) + “auth.local” | 4bc9a7c79c5942c5b6238413f2132bea@auth.local |
op_type | вставитьстроку, delete_row, изменитьстроку | вставить_строку |
оп_время | Временная метка | 1649929650.668 |
идентификатор таблицы | Струна (4) | 9g8f |
имя_стола | Строка | Задачи |
имя_строки | Строка | |
данные строки | Объект | { … } |
op_app | Строка | Имя токена API |
Вооружившись этой структурой, вы теперь можете разработать свой собственный интерфейс Webhook.