A webhook is a way for ReliaRing to notify your systems the instant something happens, no need to keep asking "anything new yet?" When an event occurs, such as a call ending or a text arriving, we send a message to a web address (URL) you provide. It's the best way to log activity into your CRM, spreadsheet, or custom app in real time.
You'll find webhooks under Developers → Webhooks (admin access required).
Create a webhook
- Go to Developers → Webhooks and add a new webhook.
- Enter the URL where we should send events. It must be an https:// address that can receive POST requests.
- Choose which events you want to receive (see the list below).
- Save. We show you a signing secret once, copy it now; you'll use it to verify that incoming messages really came from ReliaRing.
Events you can subscribe to
Subscribe to only what you need. Available events include:
- Calls:
call.initiated,call.ringing,call.answered,call.completed,call.failed,call.transferred,call.recording.ready - Messages (SMS):
sms.sent,sms.delivered,sms.received,sms.failed - Voicemail:
voicemail.received,voicemail.transcribed,voicemail.deleted - Fax:
fax.received,fax.sent,fax.failed - Phone numbers:
number.provisioned,number.released,number.ported.in,number.ported.out - Billing:
billing.invoice.created,billing.payment.succeeded,billing.payment.failed,billing.low_balance - Account & users:
account.updated,account.suspended,account.reactivated,user.created,user.updated,user.deleted
Verify that events are genuine
Because your webhook URL is on the public internet, always confirm each message really came from ReliaRing before acting on it. The default and recommended method is an HMAC-SHA256 signature: we sign every delivery using your signing secret, and your server recomputes the signature to check it matches. (Bearer token and basic auth options are also available if you prefer.)
Keep your signing secret safe. If it's ever exposed, open the webhook and rotate the secret, then update your verification code. The old secret stops working immediately.
Reliable delivery, retries, and testing
- Test button: send a sample event from the webhook screen to confirm your endpoint is reachable and responds correctly.
- Automatic retries: if your endpoint is briefly down or slow, we retry delivery so you don't lose events.
- Delivery history: every attempt is logged with its response and timing. You can review it and manually retry a failed delivery.
- Pause / resume: temporarily stop deliveries (for maintenance, say) without deleting the webhook.
Tips
- Respond quickly (a 2xx status) and do any heavy processing afterward, so deliveries aren't marked as failed for being slow.
- Subscribe only to the events you actually use to keep traffic manageable.
- Start with the Test button and the delivery history when debugging.
Prefer to pull data on demand instead? Use the API directly, see Getting Started with the ReliaRing API.