|Help Centre

Webhook integration

Last updated at

POST your call data to a webhook endpoint using a simple macro.

Step by step activation

1. Log in to Freespee, open the Workflows tab and request the Webhook integration.

2. Once the request has been approved click on Setup to add your settings.


 3. Enter your webhook URL endpoint (it must be an https endpoint), press SAVE & ACTIVATE and that's it! We will now send call data to your endpoint. 



Optional settings you can edit / set for the Webhook are:

  • Optional macro - If this is not changed, the default data (in grey) will be sent to your endpoint
  • Send as JSON - Send data formatted as a JSON instead of form url-encoded
  • Enable pre-call - Freespee will send an additional webhook before connecting the call to the end number
  • Enable after Outbound call (optional) - This will ensure data is sent also after an outbound call takes place, and not only for incoming traffic. 
  • Include SSL signature with all requests - Sign a request sent from Freespee for additional security (data will be in the payload, and signature in the sign) 
  • Retry failed requests - Freespee will retry all instances which failed (did not get a 200 OK) every 30 minutes for up to 7 days until we get a successful response (200 OK). If we don't get a successful response we give up trying after 7 days.
  • Delay post-call request until recording is available (optional): This enables the {recording_id} macro. Postpones post call request until recording_id is available. If no recording is found after 30 minutes we will send anyway

You can also click the button Send test request that will send a test request to your endpoint to verify if it is working properly.

Click Save Changes to confirm the activation.




Macros: Available macros are shown on the right hand side of the screen, with macros displayed in green to show they have already been added to aid the user. 



How it works

  • Freespee will POST the data specified by the macro to your webhook endpoint after each call (and optionally before the call)
  • You can choose to send POST data as "application/x-www-form-urlencoded" or JSON.
  • An HTTPS enabled endpoint is mandatory for this App to function
  • Freespee will timeout after 20 seconds
  • Optionally, you can respond with a JSON containing a value that Freespee will save together will the call. The JSON response must be in the format '{"append":"some_data"}' and the data appended can be maximum 40 characters.

What we send

  • start={start} (start time of call, UTC, format YYYY-MM-DD HH:MM:SS)
  • duration={duration} (duration of call in seconds)
  • from_nr={from_nr} (callers phone number)
  • from_nr_area={from_nr_area} (callers geographical area)
  • to_nr={to_nr} (tracking phone number)
  • end_nr={end_nr} (destination phone number)
  • channel={channel} (channel, ex Google SEM)
  • answered={answered} (answered, 1 or 0)
  • publisher_id={publisher_id} (publisher id, if exists)
  • campaign_id={campaign_id} (campaign id, if exists)
  • referrer={referrer} (visitor referrer url, if exists)
  • url={url} (visitor url, if exists)
  • details={details} (additional details)
  • custnr={custnr} (unique customer ID)
  • event_type={event_type} (type of event 0 = post-call, 1 = textMessage/SMS, 2 = pre-call)
  • id={id} (Unique callid)
  • fsid={fsid} (Unique Freespee call id)

Getting Started



Did you find this article helpful?

Gold StarGreen LightYellow LightRed Light

Powered by Customer Thermometer

If you still need help you can ask our Support team