Webhooks Integration Updates

On September 21st, CallRail will be launching changes to its Webhooks integration that all current users will need to update their code for, since fields from the Webhook payloads are being removed. After September 21st, those fields will no longer be present in the Webhooks payloads.

The recommended replacements for these fields are already in the Webhook payloads. If you’re currently using and storing any of the fields being removed, please migrate to using their recommended replacements as soon as possible so your Webhooks integration will continue to function properly.

Fields to be updated and their replacements

The table below shows our former Webhook fields on the left, with their necessary replacements in the cell to their right.

 Call Webhooks (former)  Call Webhooks (current)
 "id"  "resource_id"
 "tracker_id"  "tracker_resource_id"
 "person_id"  "person_resource_id"

 

 SMS Webhooks (former)  SMS Webhooks (current)
 "id"  "resource_id"
 "thread_id"  "thread_resource_id"
 "person_id"  "person_resource_id"

 

 Form Webhooks (former)  Form Webhooks (current)
 "id"  "resource_id"
 "person_id"  "person_resource_id"
 "masked_id"  "resource_id"

 

Further information

If you are validating the contents of your Webhooks payload, you will need to adjust your validation to not expect the fields listed above. 

The fields being removed from the payload contain an all-numeric ID that was was a string, but was able to be stored as an integer. The replacement fields contain alphanumeric IDs that must be stored as a string. This string ID will be formatted with a 3-letter prefix that references the resource followed by a 35 character alphanumeric identifier. 

For example, the value for a Calls “resource_id” would look like “CALb14811eb573645c6989000cf426b9772”.

If you are storing the “id” fields, you’ll need to ensure you’re using the replacement fields, and ensure your database will handle IDs as a string rather than an integer. 

API usage

It may also be necessary to backfill your stored data using our API to make your historical CallRail data include the IDs in the latest format. This is especially relevant if you store IDs in our previous format for reference purposes. 

Our API v3 accepts the old-format numeric "masked IDs" on a request, and returns the alphanumeric "resource" IDs in the response. For example, this request:

GET
/v3/a/{account_id}/calls/{call_masked_id like 123456789}.json

Would include the "resource" ID in the response:

"id": "CAL8154748ae6bd4e278a7cddd38a662f4f"

This can be done for each object (Calls, Forms, Texts) requiring a backfill. See our API documentation for detailed information on using our API for these purposes. Also, the steps to create an API key can be found in this support article.