Skip to content

Webhook management

Webhooks allow Batida to integrate with external systems by sending or receiving HTTP requests. Batida supports both inbound webhooks (receiving events from external systems) and outbound webhooks (sending Batida events to external endpoints).

Inbound webhooks

Inbound webhooks let external systems trigger actions in Batida by sending HTTP POST requests to a unique URL.

Creating an inbound webhook

  1. Navigate to Settings > Webhooks.
  2. Click Create Inbound Webhook.
  3. Enter a name and description.
  4. Batida generates a unique URL.
  5. Optionally define a secret for payload verification.
  6. Save the webhook.

Receiving events

External systems send events by posting JSON payloads to the webhook URL:

bash
POST https://app.batida.io/webhooks/inbound/whk_abc123
Content-Type: application/json
X-Batida-Signature: sha256=<signature>

{
  "event": "alert_fired",
  "monitor": "api-latency",
  "message": "API latency above 500ms"
}

Outbound webhooks

Outbound webhooks send Batida events to external systems when specific actions occur.

Creating an outbound webhook

  1. Navigate to Settings > Webhooks.
  2. Click Create Outbound Webhook.
  3. Enter a name, target URL, and the events you want to subscribe to.
  4. Configure retry settings.
  5. Save the webhook.

Supported events

EventDescription
incident.createdA new incident was created
incident.status_changedAn incident's status was updated
incident.resolvedAn incident was resolved
postmortem.publishedA postmortem was published
action_item.completedAn action item was marked as complete

Payload format

Outbound webhooks send a JSON payload with event details:

json
{
  "event": "incident.created",
  "timestamp": "2026-04-20T14:30:00Z",
  "data": {
    "id": "inc_xyz789",
    "title": "Payment gateway returning 500 errors",
    "severity": "P2",
    "status": "investigating",
    "url": "https://app.batida.io/incidents/inc_xyz789"
  }
}

Delivery logs

Every webhook delivery is logged. View delivery logs to see:

  • Whether the delivery succeeded or failed.
  • The HTTP status code returned by the target.
  • The request payload and response body.
  • Timestamp of each delivery attempt.

Retry policy

Failed outbound webhook deliveries are retried automatically:

AttemptDelay
1stImmediate
2nd1 minute
3rd5 minutes
4th30 minutes
5th2 hours

If all retries fail, the delivery is marked as failed and logged. You can manually retry from the delivery log.

TIP

Always verify webhook signatures on the receiving end to ensure the payload is authentic. See the API documentation for signature verification details.

Built by the Batida team