Setup

To begin receiving real-time event notifications via webhooks, visit Create a webhook

Event Ordering

Slash cannot guarantee the sequential delivery of events as they occur, nor can it ensure they will be received only once. Most events are generally received in the order in which they occurred; however, events created in close proximity may be received out of order. In the case that an event is received multiple times the eventId field should be used as an idempotency key.

Webhook Retries

If Slash does not receive a response code of 204 from your server within 10 seconds, it will retry delivery up to 12 times. The retry interval is as follows: 0.5, 2.5, 12.5, 62.5, 312.5, 1562.5, 7812.5, 39062.5, 195312.5, 976562.5, 4882812.5, 24414062.5 seconds.

Webhook Signing

Every webhook we send will include a slash-webook-signature header. In order to verify that the webhook actually came from Slash, we recommend verifying the header value by using our public RSA key, found here. To validate the signature, you can use any tool that supports RSA signature verification.

Nodejs Example

import crypto from 'crypto'

const signature = res.headers['slash-webhook-signature']

const result = crypto.verify(
  'sha256',
  Buffer.from(res.body),
  <SLASH_PUBLIC_RSA_KEY>,
  Buffer.from(signature, 'base64')
)