Skip to main content
Create and manage webhook subscriptions to receive real-time notifications when events occur in your Avala organization.
Webhooks deliver event payloads to your HTTPS endpoint via POST requests. Each delivery is signed with your webhook secret so you can verify authenticity. Failed deliveries are retried automatically.

List Webhooks

Returns all webhook subscriptions for the authenticated user’s organization, ordered by most recent first.

Parameters

Request

Response

Fields


Create Webhook

Creates a new webhook subscription. If no secret is provided, one is generated automatically. The secret field is returned only in the creation response. Store it securely — it is used to verify delivery signatures and cannot be retrieved later.

Parameters

Request

Response

The secret is only returned once, at creation time. Store it securely. Use it to verify the X-Avala-Signature header on incoming deliveries.

Get Webhook

Returns the details of a specific webhook subscription.

Parameters

Request

Response

Fields

Same as List Webhooks fields.

Update Webhook

Updates an existing webhook subscription. You can also use PATCH for partial updates. The secret cannot be changed through this endpoint.

Parameters

Request

Response


Delete Webhook

Permanently deletes a webhook subscription. Pending deliveries for this webhook will not be retried.

Parameters

Request

Response

Returns 204 No Content on success.

Test Webhook

Sends a test ping event to the webhook’s target URL. The delivery is processed asynchronously — check the List Deliveries endpoint to see the result.

Parameters

Request

Response


List Deliveries

Returns all webhook delivery attempts for the authenticated user’s organization, ordered by most recent first.

Parameters

Request

Response

Delivery Fields


Get Delivery

Returns the details of a specific webhook delivery.

Parameters

Request

Response

Same format as individual items in List Deliveries.

Event Types


Delivery Statuses

Retry Behavior

Failed deliveries are retried automatically with exponential backoff. Avala makes up to 5 retry attempts before marking a delivery as failed. Retry rules:
  • 2xx responses are treated as successful. No retry.
  • 4xx responses (client errors) are not retried. These indicate a problem with your endpoint (bad URL, auth failure, rejected payload). Fix your endpoint and use the Test Webhook endpoint to re-verify.
  • 5xx responses and network errors (timeout, connection refused) are retried with the backoff schedule above.
  • The next_retry_at field on a delivery shows when the next attempt is scheduled. It is null for delivered or permanently failed deliveries.
Design your webhook endpoint to be idempotent. If you receive the same event twice (due to retries or network issues), your handler should produce the same result. Use the delivery uid as a deduplication key.

Signature Verification

Every delivery includes an X-Avala-Webhook-Signature header. Verify it using the secret from when you created the webhook:
Always verify signatures before processing webhook payloads to prevent spoofed events.

Error Responses

Validation Error (400)

Returned when the request body contains invalid events or a duplicate target URL.

Unauthorized (401)

Returned when the X-Avala-Api-Key header is missing or contains an invalid key.

Permission Denied (403)

Returned when the authenticated user does not have access to the requested webhook.

Not Found (404)

Returned when the specified webhook or delivery UID does not exist.