Kapso Trigger icon

Kapso Trigger

Starts the workflow when Kapso WhatsApp webhook events are received. Copy the n8n webhook URL into Kapso and set the matching Webhook Secret on the Kapso API credential.

Kapso Trigger

AI-generated

Summary

Starts a workflow when Kapso sends a WhatsApp webhook (POST at path kapso), verifies its HMAC signature, and routes each event to an output matching its Kapso event type.

Inputs

  • Webhook Secret (Kapso API credential) (required) — Configured on the kapsoApi credential, not on the node. Used to verify the x-webhook-signature header (HMAC-SHA256 hex of the raw body). If it is empty, the webhook returns 500.
  • Webhook URL (required) — Copy the n8n Test URL (while testing) or Production URL (once the workflow is active) into Kapso Dashboard > Integrate > API & Webhooks > WhatsApp webhooks.
  • Setup and events notices — Display-only notices. The node has no other configurable parameters.

Output shape

Nine main outputs, one per event type: Message Received, Message Sent, Message Delivered, Message Read, Message Failed, Conversation Created, Conversation Ended, Conversation Inactive, and Other Event. Each emitted item is the original payload fields plus kapso_event (the resolved event type).

The event type is read from the x-webhook-event header, falling back to body type, then body event. If body.data is an array, each element becomes a separate item (batched delivery). Unrecognized event types go to Other Event. If no event type can be resolved, nothing is emitted. The node replies immediately (responseMode onReceived). It returns 401 on a missing or invalid signature, 400 on an empty or invalid-JSON body, and 500 if no secret is set. The source does not show the normalized fields mentioned in the UI notice (content, message_id, conversation_id, contact data). Those appear only if they are present in the Kapso payload.

Examples

Example 1: Auto-reply to inbound WhatsApp messages

Set the Webhook Secret on the Kapso API credential, paste the Production URL into Kapso, and connect the Message Received output to a Kapso send-message node.

Example 2: Alert on delivery failures

Connect the Message Failed output to a Slack or email node. Use message_id and the payload error details in the alert.

Example 3: Log all other Kapso events

Connect Other Event to a spreadsheet or database node, and use kapso_event to see which event type arrived.

Links

Discussion