Upcall Destination

Upcall creates real phone conversations seconds after a lead comes in and automatically follows up at the right time and with the right message, 24/7/365.

This destination is maintained by Upcall. For any issues with the destination, contact their team.

NOTE: Upcall is currently in beta, which means that there may still be some bugs for us to iron out. This doc was last updated on February 21, 2019, and we’d love to hear your feedback. If you are interested in joining our beta program or have any feedback to help us improve the Upcall Destination and its documentation, let us know!

Getting Started

Before you start, make sure Upcall supports the source type and connection mode you’ve chosen to implement. You can learn more about connection modes here.

Web Mobile Server
📱 Device-mode
☁️ Cloud-mode
  1. From your Segment UI’s Destinations page click on “Add Destination”.
  2. Search for “Upcall” within the Destinations Catalog and confirm the Source you’d like to connect to.
  3. Drop in the “API Key” into your Segment Settings UI which you can find from your Upcall dashboard.


If you’re not familiar with the Segment Specs, take a look to understand what the Identify method does. An example call in Node would look like:

  userId: 'userId12345',
  traits: {
    firstName: 'Bob',
    lastName: 'Dole',
    phone: '+16501234567'
  integrations: {
    Upcall: {
      campaign_id: [YOUR UPCALL CAMPAIGN ID]

When you call Identify, you must include a phone number (in US or E.164 format) as a phone trait. Upcall will check whether the lead with the same number exists in the campaign.

If they do not exist, the lead will be added to the campaign and immediately called (if the campaign is live). If they do exist in the campaign, no action will be taken.

The campaign_id parameter is optional and is added to the integrations object. If not provided, we will add the lead to the most recent campaign (in pending, live or paused state). It is recommended to specify it otherwise leads might get mixed up in multiple campaigns.


You can send computed traits and audiences generated using Segment Personas to this destination as a user property. To learn more about Personas, contact us for a demo.

For user-property destinations, an identify call is sent to the destination for each user being added and removed. The property name is the snake_cased version of the audience name, with a true/false value to indicade membership. For example, when a user first completes an order in the last 30 days, Personas sends an Identify call with the property order_completed_last_30days: true. When the user no longer satisfies this condition (for example, it’s been more than 30 days since their last order), Personas sets that value to false.

When you first create an audience, Personas sends an Identify call for every user in that audience. Later audience syncs only send updates for users whose membership has changed since the last sync.


Segment lets you change these destination settings from the Segment app without having to touch any code.


You can find your key in your Upcall dashboard under Settings > Integrations > API

This page was last modified: 09 Jun 2020

Get started with Segment

Segment is the easiest way to integrate your websites & mobile apps data to over 300 analytics and growth tools.
Create free account