Creating automated (dialer-initiated) callbacks from the API

Hi Folks!

Do we already have (or plan to) support for automated (dialer-initiated) callbacks? I'm looking for an API endpoint that allows the automated callback creation, and I've found /api/v2/outbound/campaigns/{campaignId}/callback/schedule, but this one is marked as deprecated, with a message saying that we should use /api/v2/conversations/{conversationId}/participants/{participantId}/callbacks instead, but that one doesn't seem to create an automated (dialer-initiated) callback... Can anybody please shed some light on this, please?

PS: I've noticed that scripts supports the "Outbound.Schedule Callback" action, and it works fine for public callbacks, so I wonder that it MAY indicate that we've something in the API to support this...

If you want to place an automated call, you can use POST /api/v2/outbound/contactlists/{contactListId}/contacts to insert a contact into the contact list. This isn't a callback media type, but it looks like you just want the system to automatically place the call, which is what that will do.

If you want to create an immediate or scheduled callback, you can use POST /api/v2/conversations/callbacks to create a new conversation with a callback or POST /api/v2/conversations/{conversationId}/participants/{participantId}/callbacks to add a callback to an existing conversation. They are functionally the same, but one will create the callback as part of the existing conversation object and the other will start fresh. Using an existing conversation is generally used for creating callbacks while an agent is interacting with a customer. A new callback is generally used when the request is unrelated to an ongoing conversation. It's entirely up to you which to use.

As a side note, POST /api/v2/outbound/campaigns/{campaignId}/callback/schedule was deprecated because callback media types are not currently a function of the outbound solution. The feature wasn't removed, just moved to a different API.

1 Like

Thanks Tim! Nice explanation. But I need a way to create "dialer-initiated" scheduled callbacks via API. For example: If a business rule on customer's CRM decides that we should contact the customer tomorrow at 3PM, it will call an API method to insert this callback, which should be DIALED BY DIALER, and the call should only be transferred to the agent when there's a person on the line (Disposition: callable.person), so the agents don't spend time dialing callbacks themselves. Got it?

That isn't a product feature. The options I mentioned are the only options. If you want a scheduled time for a call or callback media types, you can't use Dialer; it only supports unscheduled calls in various dialing modes. The callback resources I mentioned are the only ways to create callbacks, scheduled or otherwise.

But this IS a product feature. When you schedule a callback from a Dialer rule, from example, it creates a "dialer-initiated" callback. Even scripts have the "Outbound.Schedule Callback" feature, that takes a date/time as an argument, and a dialer-initiated callback occurs on the scheduled time. That's why it makes sense to have a method on the API to do that. It should be somewhere. :relaxed:

The ability to create callback media in a conversation for dialer via an API call is not a product feature per the dialer dev team. You can submit an enhancement request to have it added.