Skip to main content

Overview

Webhooks allow you to receive HTTP notifications whenever significant events occur in your organization. Instead of polling the API, you register a URL and Jinba Toolbox pushes event payloads to it in real time. Webhooks are configured per organization and can subscribe to one or more event types.

Event Types

Setting Up Webhooks

1

Create a webhook endpoint

Set up an HTTP endpoint on your server that can receive POST requests. The endpoint must return a 2xx status code to acknowledge receipt.
2

Register the webhook

Use the API or the web console to register your endpoint URL and select the events you want to subscribe to.
3

Store the signing secret

When you create a webhook, a signing secret is generated. Store it securely — you will use it to verify incoming payloads.
4

Send a test event

Verify your endpoint is working by sending a test event:

Webhook Configuration

Each webhook has the following properties:

Payload Format

Every webhook delivery sends a JSON payload with the following structure:

Event-Specific Payloads

tool.run.completed
tool.run.failed
toolset.published
member.added

Signature Verification

Every webhook request includes an X-Webhook-Signature header containing an HMAC-SHA256 signature of the request body, computed with your webhook’s signing secret.
Verify the signature on your server to ensure payloads have not been tampered with:

Webhook Management API

Retry Behavior

If your endpoint does not return a 2xx status code, Jinba Toolbox retries the delivery: After 3 consecutive failures, the webhook is automatically disabled. You can re-enable it manually from the web console or via the API once the underlying issue is resolved.

Best Practices

  • Always verify the signature before processing a payload to prevent tampering.
  • Return a 200 status quickly — perform any heavy processing asynchronously after acknowledging the webhook.
  • Use idempotent processing — webhook deliveries may arrive more than once due to retries. Use the runId or event timestamp to deduplicate.
  • Monitor webhook health — re-enable disabled webhooks promptly and investigate delivery failures.
  • Subscribe only to needed events — reduce noise by selecting only the events your integration requires.