EARLY BIRD40% off every lifetime licence — ending soon.Offer ends Sep 30, 2026.Get the lifetime deal

Every ticket event, delivered to a URL you choose.

NiroHelp’s event system turns ticket activity into a canonical feed — ticket.created, ticket.replied, ticket.assigned, ticket.overdue and more — and an outgoing webhook is the simplest way to get that feed anywhere: Make, n8n, a serverless function, or a script you wrote yourself.

Read the setup guide
Webhook endpoints screenshot

Why a webhook

One connection, any destination

No custom code required

Add an HTTPS endpoint under NiroHelp → Integrations and pick which events it should receive — one endpoint, or as many as you need.

Retried on a real backoff

A failed delivery retries up to 5 times — after 1, 5 and 30 minutes, then 2 and 12 hours — before it is logged as failed. Sending never blocks a ticket being saved.

HMAC-signed, every request

The X-NiroHelp-Signature header carries an HMAC-SHA256 of the timestamp and body under your endpoint’s secret, so you can verify a payload really came from your site.

A circuit breaker, not a silent failure

5 consecutive failures disable the endpoint automatically and flag it in wp-admin, instead of retrying a dead URL forever.

Coverage

The events you can subscribe to

The full canonical feed — subscribe to specific events, or to “All events”, which sends everything except agent-only private notes unless you name those too.

ticket.created
A ticket was submitted, created in wp-admin, or imported.
ticket.updated
Urgency, product, reason, order or a custom field changed.
ticket.replied
The customer, an agent or the AI replied.
ticket.customer_replied
The customer specifically replied.
ticket.assigned
A ticket was assigned, reassigned or unassigned.
ticket.status_changed
A ticket moved from one status to another.
ticket.resolved
A ticket was marked resolved.
ticket.overdue
A ticket has waited on an agent longer than the overdue threshold.
ticket.sentiment_negative
A ticket’s sentiment turned negative.
ticket.note_added
An agent-only private note was added — private, so it is never included in “All events”.
customer.created
A customer account was created.
ai.answered
The AI auto-responder replied to a ticket.
ai.escalated
The AI held an answer back, or could not answer — a person is needed.

The details

Everything Webhooks ships with.

Delivery
Queued and asynchronous, with up to 5 retries on an exponential backoff (1m, 5m, 30m, 2h, 12h). Nothing about sending a webhook blocks a ticket being saved.
Payload
A JSON POST body per event — id, event name, schema version, timestamp, actor, source, and the ticket or comment it concerns, capped at 64KB with the comment body trimmed first.
Signature
X-NiroHelp-Signature: t=<unix>,v1=<hex> — HMAC-SHA256 of "{timestamp}.{body}" under a per-endpoint secret prefixed whsec_, shown once at creation.
URL rules
HTTPS only (plain HTTP is refused outside WP_DEBUG); a URL that resolves to this server or a private network is rejected.
Reliability
A circuit breaker disables an endpoint after 5 consecutive failures and notices it in wp-admin until an administrator re-enables it.
Delivery log
Every attempt — status code, timing, response excerpt — is kept for a configurable window (14 days by default, up to 90).
Where to configure
NiroHelp → Integrations → Webhooks, inside the admin dashboard.

Common questions

No — outgoing webhooks are part of the free core plugin, the same as ticketing.

Ready to set up Webhooks?

It’s part of the free core plugin — install NiroHelp and turn it on under Integrations.

See all integrations