Ein Webhook aus SeaTable hat eine eindeutig festgelegte Struktur. Dies ermöglicht die einfache Verarbeitung des Ereignisses durch eine beliebige Programmiersprache. Diese Artikel stellt die allgemeine Struktur und die möglichen Werte vor.

Wenn für eine Base ein Webhook eingerichtet wird, wird für jede Änderung an den Inhalten der Base ein HTTP-Request verschickt. Somit triggern z.B. die folgende Änderungen einen Webhook:

  • Eine neue Zeile wird hinzugefügt oder dupliziert.
  • Eine Zeile wird gelöscht.
  • Ein Zeileninhalt wird verändert.

``` { "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": [] } } ```

``` { "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": "" }] } } ```

``` { "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": [] } } ```

Der gesendete Requests eines Webhooks enthält immer die Werte “event” und “data”. Der Wert “event” ist aktuell immer “update”. In der Zukunft kann es sein, dass hier noch weitere Werte hinzukommen.

Der Wert “data” enthält ein Array mit weiteren Elementen. Diese sind der folgenden Tabelle aufgeführt.:

[table id=57 /]

Ausgestattet mit dieser Struktur können Sie nun Ihre eigene Webhook Schnittstelle entwickeln.