Skip to content

n8n Triggers

The Tenreply Trigger node registers a webhook with Tenreply and fires your workflow every time the selected event occurs. Only one event per trigger node; add multiple trigger nodes if you need to react to different events.

Event payloads

message.received

{
"id": "msg_abc123",
"conversationId": "conv_xyz",
"contactId": "contact_def",
"type": "text",
"content": { "text": "Hello, I need help!" },
"status": "delivered",
"waMessageId": "wamid.abc",
"timestamp": "2026-06-01T10:00:00.000Z"
}

conversation.created / conversation.status_changed

{
"id": "conv_xyz",
"status": "open",
"channel": "whatsapp",
"contactId": "contact_def",
"assignedAgentId": null,
"createdAt": "2026-06-01T10:00:00.000Z"
}

contact.created / contact.updated

{
"id": "contact_def",
"phoneNumber": "+1234567890",
"name": "Jane Doe",
"email": "jane@example.com",
"tags": ["vip"],
"createdAt": "2026-06-01T10:00:00.000Z"
}

message.sent / message.delivered / message.read / message.failed

Same schema as message.received with the updated status field.

broadcast.completed

{
"broadcastId": "bcast_123",
"name": "June promo",
"sent": 842,
"failed": 3,
"completedAt": "2026-06-01T11:00:00.000Z"
}

Signature verification

Each delivery includes the header X-Tenreply-Signature: sha256=<hmac-hex>. The node verifies this automatically using the secret returned when the subscription was created. To skip verification (e.g. local testing), open the node’s Options and disable Verify Signature.