API-Dokumentation
Die Webhooky-API ist bewusst winzig: eine Endpoint-URL pro Benachrichtigungskanal, ein POST-Request pro Benachrichtigung. Keine API-Keys, kein SDK, kein OAuth – das Geheimnis steckt in der URL.
Dein Endpoint
Jeder Endpoint, den du in der App anlegst, hat eine eindeutige URL:
https://api.webhooky.app/DEIN_KEY
Behandle den Key wie ein Passwort – wer die URL hat, kann dir Benachrichtigungen senden. Du kannst einen Endpoint jederzeit in der App löschen (und einen neuen erstellen).
Benachrichtigung senden
Sende einen HTTP-POST an deinen Endpoint. Der einfachste mögliche Aufruf:
curl -X POST "https://api.webhooky.app/DEIN_KEY"
Das stellt eine Push-Benachrichtigung mit dem Titel, Text, Sound und der Vibration zu, die du für den Endpoint in der App konfiguriert hast.
Titel, Nachricht, Sound & Vibration überschreiben
Sende beliebige dieser Felder im JSON-Body, um die Benachrichtigung pro Request zu steuern:
curl -X POST "https://api.webhooky.app/DEIN_KEY" \
-H "Content-Type: application/json" \
-d '{
"title": "Neue Bestellung 🎉",
"message": "Bestellung #1042 · 49,99 €",
"sound": "cash_register",
"vibrate": true
}'
title– ersetzt den Endpoint-Namen als Benachrichtigungstitel (max. 100 Zeichen).message– ersetzt den konfigurierten Text (max. 500 Zeichen).sound– spielt für diese Benachrichtigung einen anderen Sound. Akzeptiert jede Sound-ID aus der App (z. B.cash_register,error_1,doorbell_1,level_up_1); unbekannte IDs werden ignoriert.vibrate–true/false, überschreibt die Vibrationseinstellung des Endpoints für diese Benachrichtigung.- Alle Felder sind optional und unabhängig; fehlende Felder fallen auf die Endpoint-Konfiguration in der App zurück.
- Längere Werte werden gekürzt, Whitespace wird normalisiert. Alle anderen JSON-Felder werden für die Anzeige ignoriert, aber mit dem Ereignis gespeichert, wenn Payload speichern aktiv ist.
Pro Endpoint bietet die App zusätzlich die Einstellungen Lautlos (kein Ton, keine Vibration, erscheint still) und Wichtig (Heads-up-Banner auf Android), die für alle Benachrichtigungen des Endpoints gelten.
Testseite
Wenn du deine Endpoint-URL im Browser öffnest (HTTP-GET), erscheint eine Testseite mit Eingabefeldern für Titel, Nachricht und JSON-Payload plus Senden-Button. Praktisch, um dein Setup ohne Tools zu prüfen.
Antworten
| Status | Bedeutung |
|---|---|
200 | Webhook angenommen. JSON-Body: {"success": true, "delivered": 1, "devices": 1, "message": "…"} |
400 | Kein Key in der URL. |
402 | Gratis-Limit erreicht (100 Benachrichtigungen). Upgrade auf Premium in der App. |
404 | Key nicht gefunden – Endpoint wurde gelöscht oder die URL ist falsch. |
405 | Methode nicht erlaubt – nur GET und POST werden unterstützt. |
Zustellung & Limits
- Benachrichtigungen werden über FCM/APNs an alle Geräte deines Accounts zugestellt, meist in unter einer Sekunde.
- Der Gratis-Plan enthält insgesamt 100 Benachrichtigungen; Premium hebt das Limit auf.
- Ereignisse landen im Verlauf in der App. Der Request-Payload wird nur gespeichert, wenn du Payload speichern für den Endpoint aktivierst.
- Es gibt kein festes Rate-Limit, aber Bursts können von den Push-Providern gedrosselt werden. Ein Ereignis = eine Benachrichtigung (pro Gerät dedupliziert).
Content-Types
JSON (application/json) wird empfohlen. Form-Posts (application/x-www-form-urlencoded) und Raw-Text-Bodies werden ebenfalls akzeptiert – wenn sich ein JSON-Objekt mit title/message finden lässt, wird es verwendet.