Webhook (Incoming)

Der „Webhook (Incoming)“-Konnektor stellt einen HTTP-Endpunkt bereit, über den externe Systeme Daten per HTTP POST an niotix senden können. Er wird typischerweise verwendet, um andere Cloud-Systeme anzubinden, die ausgehende Webhooks unterstützen – beispielsweise IoT-Plattformen, Monitoring-Systeme oder Automatisierungslösungen. Die Endpunkt-URL wird automatisch generiert und kann aus dem schreibgeschützten Feld „API Endpunkt“ kopiert werden.

Details zur Funktion:

  • Authentifizierung: Token-basiert — das Token wird automatisch erzeugt und ist im Feld „API Endpunkt“ als ?token=<token> enthalten. Alternativ kann der Token direkt (ohne Bearer-Prefix) im Authorization-Header übergeben werden: Authorization: <token>.
  • HTTP-Methode: POST; OPTIONS wird für CORS-Preflight unterstützt (Antwort: 204).
  • Nachrichtenformat: Der Body muss gültiges JSON sein. Der Content-Type-Header wird serverseitig nicht geprüft; application/json wird empfohlen.
  • Batch-Verarbeitung: Ein einzelnes JSON-Objekt oder ein Array von Objekten. Die maximale Array-Größe beträgt standardmäßig 50 Einträge und ist per Umgebungsvariable (INCOMING_WEBHOOK_MAX_BATCH_SIZE) konfigurierbar.
  • Fehler-Antworten: 400 bei ungültigem JSON oder überschrittenem Array-Limit; 401 ohne Token; 403 bei unbekanntem Token oder deaktiviertem Konnektor.
  • Rate Limiting: Intern begrenzt auf 1.000 Anfragen pro 5 Sekunden (konfigurierbar per Umgebungsvariable).

Das eingehende Datenformat wird über das Template in das niotix-Standardformat transformiert — siehe Abschnitt Eingehende Konnektoren. Wenn die Quelldaten bereits im niotix-Format ankommen, genügt „Pass-through“. Für abweichende Formate kann eine JavaScript-Transformation hinterlegt werden.

Einstellungen

  • Instanz-Name: Ein individueller, leicht verständlicher Name für den Konnektor.
  • Beschreibung: Eine kurze Beschreibung.
  • Template: Legt fest, wie der eingehende Payload transformiert wird. Standardmäßig „Pass-through“ (keine Transformation).
  • API Endpunkt: Schreibgeschützt. Die vollständige URL inkl. Token, die das sendende System als HTTP-POST-Ziel verwenden muss.