Skip to main content
Webhooks let Artie send HTTP POST notifications to an endpoint you control whenever subscribed events happen—for example replication issues, backfill progress, or DDL events.

Configure a webhook

Create and manage webhooks from Settings > Webhooks in the Artie dashboard. When configuring a webhook, note the following:
  • Webhook URL — Must be HTTPS. If the URL is a Slack incoming webhook (hooks.slack.com), Format defaults to Slack.
  • Authorization (Bearer token) — Optional. If set, Artie sends Authorization: Bearer <value> on each delivery. This is a shared secret in the header, not an HMAC signature over the body.
  • FormatEvent Payload sends the raw JSON event (see payload schema). Slack sends a Block Kit-style payload for Slack incoming webhooks.
View-only users can browse webhooks and logs but cannot create, edit, delete, or test them.

Verify your endpoint

  • After saving your webhook, click on it to open its delivery logs, and click Send test in the top right. You can also select one or more webhooks in the table and use Test selected.

Outgoing delivery behavior

  • Method and content type: POST with Content-Type: application/json.
  • Authentication: If you configured a bearer token, validate the Authorization header on your server.
  • Retries: Your endpoint should return an HTTP 2xx status. Non-2xx responses are retried; after repeated failures the webhook will show a Failing status and you will receive email alerts.

Payload schema (Event Payload)

The JSON body for Event Payload format is defined in the API specification:

Webhook outgoing payload (OpenAPI)

Field-level reference for PayloadsWebhookOutgoingPayload
Event Payload deliveries use JSON that is compatible with the Events API, so you can forward webhook events directly to an Events API pipeline for storage and replication.

Troubleshooting

  • 2xx required: Return a successful status from your handler; otherwise Artie will retry and may mark the webhook Failing.
  • Bearer mismatch: If you set a secret in Artie, your server must accept the same value in Authorization: Bearer ….
  • Slack vs Event Payload: Slack URLs expect Block Kit payloads; use Event Payload for generic JSON consumers.