Webhooks
2 min read
Webhooks connect an agent to any system that exchanges events over HTTP: automations, internal platforms, monitoring tools, or your own applications. A channel can receive events, send requests, or do both.
Receive only
Send only
Receive and reply
Create the channel
Define channel direction
Configure outbound delivery when needed
Save and copy the inbound URL
Describe the event to the agent
Identify the origin
You can append a suffix to the inbound URL to label events from different tools. One configuration can receive events through paths such as /clickup, /sentry, or /deployments. Kujira keeps that source so the agent can interpret where each event came from.
The secret URL authenticates the channel by itself. There is no allow list for webhooks: control access through the URL and, when supported by the sender, an HMAC signature.
Sign and verify events
To strengthen inbound delivery, configure a verification secret and the header name that carries the signature. When a secret is set, every POST must include a valid HMAC-SHA256 signature calculated over the unmodified body; the default header is x-kujira-signature.
Kujira accepts the usual hexadecimal value and the sha256= prefix. This allows providers using headers such as x-plane-signature or x-hub-signature-256 without changing verification.
Outbound requests use an independent secret. When you define one, Kujira signs every POST with HMAC-SHA256 in the x-kujira-signature header so the receiving system can verify that it came from the channel.
Avoid exposing secrets
Do not share the inbound URL or signing secrets in public documentation, chats, or repositories. Rotate them if you suspect exposure.
Response and processing
By default, Kujira accepts the event and returns immediately while the agent processes it in the background. If the sender needs the agent's response in the same request, add ?wait=1 to the URL: Kujira waits up to 25 seconds and returns 202 Accepted if the agent takes longer while work continues.
Set the echo filter when an agent action can generate another event to the same webhook. Specify the body paths that identify the author or your own identifiers so the channel discards that activity and avoids a loop.