Skip to main content
Webhooks let you react to events in your Nulix knowledge base the moment they happen. Instead of polling the API for changes, you register an HTTPS endpoint in your own infrastructure and Nulix sends an HTTP POST request to that URL whenever a subscribed event fires. This makes it easy to sync content, send notifications, update downstream systems, or trigger any automated workflow automatically.

Supported Events

Nulix emits webhook events for the following actions:

Registering a Webhook

1

Open Webhook Settings

In your Nulix workspace, go to Settings > Webhooks.
2

Add a New Webhook

Click Add Webhook. Enter the full HTTPS URL of the endpoint in your system that will receive the events.
3

Select Events

Choose one or more events to subscribe to. You can subscribe to all events or limit delivery to specific ones.
4

Save and Test

Click Save. Use the Send Test Event button to confirm your endpoint is reachable and responding correctly.

Registering a Webhook via the API

If you prefer to manage webhooks programmatically — for example, as part of an automated setup script or a multi-tenant integration — you can also register webhook endpoints using the REST API. Send a POST /webhooks request with the destination URL and the list of events you want to subscribe to.
A successful request returns the new webhook object including its auto-generated secret, which you’ll use for signature verification:
Store the secret value immediately — Nulix only returns it in the creation response. If you lose it, delete the webhook and create a new one to get a fresh secret.

Webhook Payload

Every webhook delivery is an HTTP POST request with a JSON body. The payload follows a consistent structure across all event types:
The event field identifies what happened, timestamp is the UTC time of the event, and data contains the resource that was affected.

Verifying Webhook Signatures

To confirm that a delivery genuinely came from Nulix and not from a third party, verify the X-Nulix-Signature header included with every request. Nulix generates this header by computing an HMAC-SHA256 hash of the raw request body using your webhook’s secret key. To verify it on your end:
1

Retrieve Your Webhook Secret

Find the secret for your webhook under Settings > Webhooks. Each webhook has its own unique secret.
2

Compute the Expected Signature

Using HMAC-SHA256, hash the raw request body with your webhook secret as the key.
3

Compare the Signatures

Compare your computed hash to the value in the X-Nulix-Signature header. If they match, the delivery is authentic. Reject requests where the signatures do not match.
Here is an example signature verification in Node.js:

Retry Policy

If your endpoint does not return a 2xx HTTP status code, Nulix automatically retries the delivery using exponential backoff: After five failed retries, Nulix marks the delivery as permanently failed. You can view the full delivery log — including request and response details — under Settings > Webhooks > Delivery Logs.
Your endpoint must respond with an HTTP 200 status within 10 seconds. If it takes longer, Nulix treats the delivery as failed and initiates the retry sequence. Offload any heavy processing to a background job and return 200 immediately upon receipt.

Next Steps

Return to the Integrations Overview to explore other ways to connect Nulix to your tools, or visit API Access to query and manage knowledge base content programmatically.