Webhook

To receive information after the call, add a Webhook URL.

Configure a Webhook

  1. Navigate to the Settings of the specific campaign you want to configure.

  2. Scroll to the bottom of the settings window.

  3. Click on 'Add Webhook URL'.

  4. Enter the URL where you want the Webhook data to be sent.

  5. Click on 'Save changes' located at the top right of the window

Webhook Response Example

{
  "createdAt": "2024-03-11T14:56:41.642Z",
  "phoneFrom": "+15555551234",
  "status": "COMPLETED",
  "webhookUrl": "{webhookUrl}",
  "hangUpReason": "CALL_FINISHED",
  "duration": 128,
  "contactStatus": {
    "callMeLater": false,
    "doNotCall": false,
    "wrongNumber": false
  },
  "summary": {
    "Inquiry Asked": "Interested in learning more about our services"
  },
  "campaign": {
    "id": "{campaignId}",
    "name": "{campaignName}"
  },
  "id": "{callId}",
  "contact": {
    "name": "John",
    "phoneNumber": "+1234567890",
    "data": {
      "email": "john@voxia.ai",
      "position": "Product Manager",
      "company": "Voxia"
    }
  },
  "twilio": {
    "accountSid": "{accountSid}",
    "callSessionId": "{callSessionId}"
  },
  "organizationId": "{organizationId}",
  "transcript": [
    {
      "content": "Hello, this is Voxia. How can I assist you today?",
      "role": "Voxia"
    },
    {
      "content": "Hi, can you tell me more about your services?",
      "role": "user"
    },
    {
      "content": "Certainly! We offer personalized AI calling services. Would you like to schedule a demo?",
      "role": "Voxia"
    },
    {
      "content": "Yes, that sounds great. Thank you!",
      "role": "user"
    },
    {
      "content": "You're welcome! I'll set that up and send you a confirmation. Have a great day!",
      "role": "Voxia"
    }
  ],
  "interested": {
    "description": "The caller showed interest in scheduling a demo, indicating a positive engagement.",
    "reached": true
  },
  "variables": {
    "name": "John",
    "phoneNumber": "+1234567890",
    "email": "john@voxia.ai",
    "position": "Product Manager",
    "company": "Voxia"
  },
  "isTestCall": false
}

Webhook Fields Description

FieldDescription

createdAt

Timestamp when the call was initiated in ISO 8601 format.

phoneFrom

Phone number from which the call originated.

status

Status of the call:

  • COMPLETED: The call was successfully completed.

  • NO_ANSWER: The call was not answered.

  • BUSY: The line was busy when the call was attempted.

  • VOICE_MAIL: The call was redirected to voicemail.

  • FAILED: The call attempt failed due to errors.

  • DO_NOT_CALL_REGISTRY_MATCHED: The number is registered in the Do Not Call Registry, preventing the call.

webhookUrl

URL to which the Webhook data is sent post-call.

hangUpReason

Reason for the call termination:

  • USER_REQUESTED_HANGUP: User asked to hang up.

  • ADMIN_MANUAL_HANGUP: Call ended by an admin.

  • USER_MANUAL_HANGUP: User manually ended the call.

  • CALL_FINISHED: Call ended after the completion of all interactions.

duration

Total duration of the call in seconds.

contactStatus

Object indicating the contact's preferences:

  • callMeLater: Boolean indicating if the contact requested a callback later.

  • doNotCall: Boolean indicating if the contact requested not to be called again.

  • wrongNumber: Boolean indicating if the contact reported this as a wrong number.

summary

Object summarizing the Key Questions made during the call.

campaign

Information about the campaign associated with the call:

  • id: Campaign id.

  • name: Name of the campaign.

id

Unique identifier for the call.

contact

Details about the person contacted:

  • name: Contact's name.

  • phoneNumber: Contact's phone number.

  • data: Contains additional properties that can be used as variables in the script during the call

twilio

Twilio information:

  • accountSid: Unique identifier for the Twilio account.

  • callSessionId: Unique session identifier for the call.

organizationId

Unique identifier for the organization.

transcript

Array of dialogue exchanges during the call, with each entry detailing the content spoken and the role of the speaker.

interested

Object detailing whether the caller expressed interest in the services:

  • description: The Interest Criteria defined by the user for the campaign.

  • reached: Boolean indicating whether the Interest Criteria was reached.

variables

Variables used in the campaign. This always includes the contact's name and phone number, along with other variables added by the user.

isTestCall

Boolean indicating if the call was a test call.

Last updated