Webhooks-Anleitung
Automatisieren Sie Ihren Workflow, indem Sie Fast Memo mit externen Diensten verbinden. Erhalten Sie Echtzeit-Benachrichtigungen bei Änderungen an Notizen, Kategorien oder Daten.

Was sind Webhooks?
Webhooks in Fast Memo sind ausgehende HTTP-POST-Benachrichtigungen, die an von Ihnen konfigurierte URLs gesendet werden. Wenn ein bestimmtes Ereignis in der App eintritt, sendet Fast Memo einen JSON-Payload an Ihren Endpunkt mit Details darüber, was passiert ist.
- HTTP-POST-Anfragen
Jeder Webhook sendet einen JSON-Payload per HTTP POST an die von Ihnen angegebene URL. Keine Authentifizierungs-Header erforderlich.
- 14 verfügbare Trigger
Wählen Sie aus 14 verschiedenen Ereignissen: Notizerstellung, Updates, Löschung, Kategorieänderungen, Datenimport/-export und mehr.
- IoT & Automatisierung
Verbinden Sie Fast Memo mit Diensten wie IFTTT, Zapier, n8n, Home Assistant oder Ihrem eigenen Server für benutzerdefinierte Automatisierungen.
So richten Sie es ein
Einstellungen öffnen
Gehen Sie zu den Einstellungen in Fast Memo und finden Sie die Webhooks-Option im Bereich Erweitert.
Trigger wählen
Sie sehen eine Liste aller 14 verfügbaren Trigger. Jeder kann unabhängig mit seiner eigenen URL konfiguriert werden.
URL eingeben und aktivieren
Geben Sie die URL Ihres Endpunkts in das Textfeld ein. Aktivieren Sie dann den Trigger, indem Sie das Kontrollkästchen antippen. Das POST-Label bestätigt die HTTP-Methode.
Fertig — es wird automatisch ausgelöst
Jedes Mal, wenn das entsprechende Ereignis in der App eintritt, sendet Fast Memo eine POST-Anfrage an Ihre URL mit einem JSON-Body, der das Ereignis beschreibt.
Verfügbare Trigger
Jeder Trigger hat seine eigene URL und einen Ein-/Ausschalter. Sie können so viele konfigurieren, wie Sie möchten.
| Trigger | Kategorie | Aktion |
|---|---|---|
| Textnotiz hinzufügen | Notizen | note/addTextNote |
| Todo-Notiz hinzufügen | Notizen | note/addTodoNote |
| Kanban-Notiz hinzufügen | Notizen | note/addKanbanNote |
| Code-Notiz hinzufügen | Notizen | note/addCodeNote |
| Notiz aktualisieren | Notizen | note/updateNote |
| Vorübergehend löschen | Notizen | note/temporaryDeleteNote |
| Notiz löschen | Notizen | note/deleteNote |
| Notiz wiederherstellen | Notizen | note/restoreNote |
| Kategorie erstellen | Kategorien | category/createCategory |
| Kategorie aktualisieren | Kategorien | category/updateCategory |
| Kategorie löschen | Kategorien | category/deleteCategory |
| Daten exportieren | Daten | generic/export |
| Daten importieren | Daten | generic/import |
| Daten löschen | Daten | generic/wipeData |
Payload-Referenz
Jeder Webhook sendet einen JSON-Body per HTTP POST. Nachfolgend das exakte Payload-Format für jeden Trigger. Alle Payloads enthalten ein "success"-Feld auf true und einen "action"-String.
Notizerstellung
POST — Textnotiz hinzufügen
{
"success": true,
"action": "note/addTextNote",
"id": "abc123",
"type": "text",
"title": "My Note",
"text": "<p>Hello world</p>",
"createdAt": 1713700000,
"updatedAt": 1713700000,
"important": false,
"readOnly": false,
"hidden": false,
"locked": false,
"category": { "iconId": "book", "name": "Personal" }
}POST — Todo-Notiz hinzufügen
{
"success": true,
"action": "note/addTodoNote",
"id": "abc123",
"type": "todo",
"title": "Shopping List",
"list": [
{ "id": "item1", "text": "Buy milk", "checked": false },
{ "id": "item2", "text": "Buy eggs", "checked": true }
],
"createdAt": 1713700000,
"updatedAt": 1713700000,
"important": false,
"readOnly": false,
"hidden": false,
"locked": false,
"category": { "iconId": "cart", "name": "Shopping" }
}POST — Kanban-Notiz hinzufügen
{
"success": true,
"action": "note/addKanbanNote",
"id": "abc123",
"type": "kanban",
"title": "Sprint Board",
"columns": [
{
"id": "col1",
"title": "To Do",
"cards": [
{ "id": "card1", "text": "Design UI" }
]
},
{
"id": "col2",
"title": "Done",
"cards": []
}
],
"createdAt": 1713700000,
"updatedAt": 1713700000,
"important": false,
"readOnly": false,
"hidden": false,
"locked": false,
"category": { "iconId": "briefcase", "name": "Work" }
}POST — Code-Notiz hinzufügen
{
"success": true,
"action": "note/addCodeNote",
"id": "abc123",
"type": "code",
"title": "API Handler",
"tabs": [
{
"id": "tab1",
"title": "index.ts",
"code": "console.log('hello')",
"language": "typescript"
}
],
"activeTabId": "tab1",
"createdAt": 1713700000,
"updatedAt": 1713700000,
"important": false,
"readOnly": false,
"hidden": false,
"locked": false,
"category": { "iconId": "code", "name": "Dev" }
}Notiz-Lebenszyklus
POST — Notiz aktualisieren (einzeln)
{
"success": true,
"action": "note/updateNote",
"id": "abc123",
"type": "text",
"title": "Updated Note",
"text": "<p>New content</p>",
"createdAt": 1713700000,
"updatedAt": 1713800000,
"important": true,
"readOnly": false,
"hidden": false,
"locked": false,
"category": { "iconId": "book", "name": "Personal" }
}POST — Notiz aktualisieren (mehrere)
{
"success": true,
"action": "note/updateNote",
"extra": "multiple",
"ids": ["abc123", "def456"],
"property": "important"
}POST — Vorübergehend löschen (einzeln)
{
"success": true,
"action": "note/temporaryDeleteNote",
"id": "abc123"
}POST — Vorübergehend löschen (mehrere)
{
"success": true,
"action": "note/temporaryDeleteNote",
"extra": "multiple",
"ids": ["abc123", "def456"]
}POST — Notiz löschen (einzeln)
{
"success": true,
"action": "note/deleteNote",
"id": "abc123"
}POST — Notiz löschen (mehrere)
{
"success": true,
"action": "note/deleteNote",
"extra": "multiple",
"ids": ["abc123", "def456"]
}POST — Notiz löschen (alle)
{
"success": true,
"action": "note/deleteNote",
"extra": "all"
}POST — Notiz wiederherstellen (einzeln)
{
"success": true,
"action": "note/restore",
"id": "abc123"
}POST — Notiz wiederherstellen (mehrere)
{
"success": true,
"action": "note/restoreNote",
"extra": "multiple",
"ids": ["abc123", "def456"]
}POST — Notiz wiederherstellen (alle)
{
"success": true,
"action": "note/restoreNote",
"extra": "all"
}Kategorie-Operationen
POST — Kategorie erstellen
{
"success": true,
"action": "category/createCategory",
"iconId": "book",
"name": "Personal"
}POST — Kategorie aktualisieren
{
"success": true,
"action": "category/updateCategory",
"prevCategory": { "iconId": "book", "name": "Personal" },
"nextCategory": { "iconId": "star", "name": "Favorites" }
}POST — Kategorie löschen
{
"success": true,
"action": "category/deleteCategory",
"iconId": "book"
}Daten-Operationen
POST — Daten exportieren
{
"success": true,
"action": "generic/export"
}POST — Daten importieren
{
"success": true,
"action": "generic/import"
}POST — Daten löschen
{
"success": true,
"action": "generic/wipeData",
"cloud": false
}Einschränkungen & Hinweise
- Die HTTP-Methode ist immer POST — sie kann nicht in GET, PUT oder andere Methoden geändert werden.
- Es gibt ein 5-Sekunden-Timeout pro Anfrage. Wenn Ihr Endpunkt nicht innerhalb von 5 Sekunden antwortet, wird die Anfrage verworfen.
- Keine Wiederholungsversuche — wenn eine Anfrage fehlschlägt, wird sie stillschweigend verworfen.
- Eine URL pro Trigger — Sie können nicht mehrere Endpunkte für dasselbe Ereignis konfigurieren.
- Keine benutzerdefinierten Header oder Authentifizierungstoken — es werden nur Standard-JSON-Content-Type-Header gesendet.
- Die Funktion befindet sich in der BETA-Phase. Payloads und Verhalten können sich in zukünftigen Versionen ändern.


