Outdial

Overview

The VoIPBIN’s Outdial API offers functionalities for managing outdials and outdial targets, enabling users to efficiently handle the process of outbound calling.

VoIPBIN’s Outdial API, with its Outdial and Outdial Target resources, provides a reliable and scalable solution for outbound calling needs. It streamlines the process of managing multiple destinations, controlling retry attempts, and optimizing the efficiency of outbound calling campaigns. Whether it’s for telemarketing, customer outreach, or any other outbound communication, the Outdial API is a valuable tool for businesses and developers looking to engage with their audience effectively.

Outdial

The Outdial resource represents a collection of outdial targets.

An outdial is a set of destinations that are intended for outbound calling. It contains a group of outdial targets, each representing an individual destination address and the number of times it should be attempted.

Outdials are a fundamental concept in the Outdial API, allowing users to organize and manage groups of outbound calls. This feature is particularly useful for telemarketing, notifications, reminders, or any scenario where multiple outbound calls need to be made to specific destinations.

_images/outdial_overview_outdial.png

Outdial target

The Outdial Target is a critical component of the Outdial API, representing the actual destination addresses and the associated retry count for each address.

Each Outdial Target contains the address (phone number, SIP URI, etc.) of the destination that needs to be dialed. Additionally, it includes the number of times the destination should be attempted, also known as the retry count. The retry count specifies how many times the system should try to connect to the destination in case the call is not successfully answered or completed.

_images/outdial_overview_outdialtarget.png

Outdial

Outdial

{
    "id": "<string>",
    "campaign_id": "<string>",
    "name": "<string>",
    "detail": "<string>",
    "data": "<string>",
    "tm_create": "<string>",
    "tm_update": "<string>",
    "tm_delete": "<string>"
}
  • id: Outdial’s ID.

  • campaign_id: Campaign’s ID.

  • name: outdial’s name.

  • detail: outdial’s detail.

  • data: outdial’s data.

example

{
    "id": "40bea034-1d17-474d-a5de-da00d0861c69",
    "campaign_id": "00000000-0000-0000-0000-000000000000",
    "name": "test outdial",
    "detail": "outdial for test use.",
    "data": "",
    "tm_create": "2022-04-28 01:41:40.503790",
    "tm_update": "9999-01-01 00:00:00.000000",
    "tm_delete": "9999-01-01 00:00:00.000000"
}

Outdialtarget

Outdialtarget

{
    "id": "<string>",
    "outdial_id": "<string>",
    "name": "<string>",
    "detail": "<string>",
    "data": "<string>",
    "status": "<string>",
    "destination_0": {
        ...
    },
    "destination_1": {
        ...
    },
    "destination_2": {
        ...
    },
    "destination_3": {
        ...
    },
    "destination_4": {
        ...
    },
    "try_count_0": <number>,
    "try_count_1": <number>,
    "try_count_2": <number>,
    "try_count_3": <number>,
    "try_count_4": <number>,
    "tm_create": "<string>",
    "tm_update": "<string>",
    "tm_delete": "<string>"
}
  • id: outdialtarget’s ID.

  • outdial_id: outdial’s ID.

  • name: outdialtarget’s name.

  • detail: outdialtarget’s detail.

  • data: outdialtarget’s data.

  • status: outdialtarget’s status. See detail here.

  • destination_0: outdialtarget’s destination. See detail here.

  • destination_1: outdialtarget’s destination. See detail here.

  • destination_2: outdialtarget’s destination. See detail here.

  • destination_3: outdialtarget’s destination. See detail here.

  • destination_4: outdialtarget’s destination. See detail here.

  • try_count_0: destination 0’s try count.

  • try_count_1: destination 1’s try count.

  • try_count_2: destination 2’s try count.

  • try_count_3: destination 3’s try count.

  • try_count_4: destination 4’s try count.

Example

{
    "id": "1b3d7a92-7146-466d-90f5-4bc701ada4c0",
    "outdial_id": "40bea034-1d17-474d-a5de-da00d0861c69",
    "name": "test destination 0",
    "detail": "test detatination 0 detail",
    "data": "test data",
    "status": "done",
    "destination_0": {
        "type": "tel",
        "target": "+821100000001",
        "target_name": "",
        "name": "",
        "detail": ""
    },
    "destination_1": null,
    "destination_2": null,
    "destination_3": null,
    "destination_4": null,
    "try_count_0": 1,
    "try_count_1": 0,
    "try_count_2": 0,
    "try_count_3": 0,
    "try_count_4": 0,
    "tm_create": "2022-04-30 17:52:16.484341",
    "tm_update": "2022-04-30 17:53:51.183345",
    "tm_delete": "9999-01-01 00:00:00.000000"
}

Status

Outdialtarget’s status.

Type

Description

idle

The outdialtarget is idle

progressing

The outdialtarget is calling

done

The outdialtarget has done to dialing.

state diagram

_images/outdial_struct_outdialtarget_status.png

Tutorial

Get list of outdials

Example

$ curl --location --request GET 'https://api.voipbin.net/v1.0/outdials?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJjdXN0b21lciI6IntcImlkXCI6XCI1ZTRhMDY4MC04MDRlLTExZWMtODQ3Ny0yZmVhNTk2OGQ4NWJcIixcInVzZXJuYW1lXCI6XCJhZG1pblwiLFwibmFtZVwiOlwiYWRtaW5cIixcImRldGFpbFwiOlwiYWRtaW4gYWNjb3VudFwiLFwid2ViaG9va19tZXRob2RcIjpcIlBPU1RcIixcIndlYmhvb2tfdXJpXCI6XCJodHRwczovL2VueDM4NTN6M2pnMnEueC5waXBlZHJlYW0ubmV0L1wiLFwicGVybWlzc2lvbl9pZHNcIjpbXCIwMzc5NmUxNC03Y2I0LTExZWMtOWRiYS1lNzIwMjNlZmQxYzZcIl0sXCJ0bV9jcmVhdGVcIjpcIjIwMjItMDItMDEgMDA6MDA6MDAuMDAwMDAwXCIsXCJ0bV91cGRhdGVcIjpcIjIwMjItMDQtMTQgMDE6Mjg6NDYuNDU0ODk3XCIsXCJ0bV9kZWxldGVcIjpcIjk5OTktMDEtMDEgMDA6MDA6MDAuMDAwMDAwXCJ9IiwiZXhwIjoxNjUxNTU2OTA2fQ.hQ1WXO7Ionnw7FL9_keqZ2Np__Djm3lkIH5BJl1QSMs'

{
    "result": [
        {
            "id": "40bea034-1d17-474d-a5de-da00d0861c69",
            "campaign_id": "00000000-0000-0000-0000-000000000000",
            "name": "test outdial",
            "detail": "outdial for test use.",
            "data": "",
            "tm_create": "2022-04-28 01:41:40.503790",
            "tm_update": "9999-01-01 00:00:00.000000",
            "tm_delete": "9999-01-01 00:00:00.000000"
        }
    ],
    "next_page_token": "2022-04-28 01:41:40.503790"
}

Get a detail of outdial

curl --location --request GET 'https://api.voipbin.net/v1.0/outdials/40bea034-1d17-474d-a5de-da00d0861c69?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJjdXN0b21lciI6IntcImlkXCI6XCI1ZTRhMDY4MC04MDRlLTExZWMtODQ3Ny0yZmVhNTk2OGQ4NWJcIixcInVzZXJuYW1lXCI6XCJhZG1pblwiLFwibmFtZVwiOlwiYWRtaW5cIixcImRldGFpbFwiOlwiYWRtaW4gYWNjb3VudFwiLFwid2ViaG9va19tZXRob2RcIjpcIlBPU1RcIixcIndlYmhvb2tfdXJpXCI6XCJodHRwczovL2VueDM4NTN6M2pnMnEueC5waXBlZHJlYW0ubmV0L1wiLFwicGVybWlzc2lvbl9pZHNcIjpbXCIwMzc5NmUxNC03Y2I0LTExZWMtOWRiYS1lNzIwMjNlZmQxYzZcIl0sXCJ0bV9jcmVhdGVcIjpcIjIwMjItMDItMDEgMDA6MDA6MDAuMDAwMDAwXCIsXCJ0bV91cGRhdGVcIjpcIjIwMjItMDQtMTQgMDE6Mjg6NDYuNDU0ODk3XCIsXCJ0bV9kZWxldGVcIjpcIjk5OTktMDEtMDEgMDA6MDA6MDAuMDAwMDAwXCJ9IiwiZXhwIjoxNjUxNTU2OTA2fQ.hQ1WXO7Ionnw7FL9_keqZ2Np__Djm3lkIH5BJl1QSMs'

{
    "id": "40bea034-1d17-474d-a5de-da00d0861c69",
    "campaign_id": "00000000-0000-0000-0000-000000000000",
    "name": "test outdial",
    "detail": "outdial for test use.",
    "data": "",
    "tm_create": "2022-04-28 01:41:40.503790",
    "tm_update": "9999-01-01 00:00:00.000000",
    "tm_delete": "9999-01-01 00:00:00.000000"
}

Create a new outdial

Example

$ curl --location --request POST 'https://api.voipbin.net/v1.0/outdials?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJjdXN0b21lciI6IntcImlkXCI6XCI1ZTRhMDY4MC04MDRlLTExZWMtODQ3Ny0yZmVhNTk2OGQ4NWJcIixcInVzZXJuYW1lXCI6XCJhZG1pblwiLFwibmFtZVwiOlwiYWRtaW5cIixcImRldGFpbFwiOlwiYWRtaW4gYWNjb3VudFwiLFwid2ViaG9va19tZXRob2RcIjpcIlBPU1RcIixcIndlYmhvb2tfdXJpXCI6XCJodHRwczovL2VueDM4NTN6M2pnMnEueC5waXBlZHJlYW0ubmV0L1wiLFwicGVybWlzc2lvbl9pZHNcIjpbXCIwMzc5NmUxNC03Y2I0LTExZWMtOWRiYS1lNzIwMjNlZmQxYzZcIl0sXCJ0bV9jcmVhdGVcIjpcIjIwMjItMDItMDEgMDA6MDA6MDAuMDAwMDAwXCIsXCJ0bV91cGRhdGVcIjpcIjIwMjItMDQtMTQgMDE6Mjg6NDYuNDU0ODk3XCIsXCJ0bV9kZWxldGVcIjpcIjk5OTktMDEtMDEgMDA6MDA6MDAuMDAwMDAwXCJ9IiwiZXhwIjoxNjUxNTU2OTA2fQ.hQ1WXO7Ionnw7FL9_keqZ2Np__Djm3lkIH5BJl1QSMs' \
    --header 'Content-Type: application/json' \
    --header 'Cookie: token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJjdXN0b21lciI6IntcImlkXCI6XCI1ZTRhMDY4MC04MDRlLTExZWMtODQ3Ny0yZmVhNTk2OGQ4NWJcIixcInVzZXJuYW1lXCI6XCJhZG1pblwiLFwibmFtZVwiOlwiYWRtaW5cIixcImRldGFpbFwiOlwiYWRtaW4gYWNjb3VudFwiLFwid2ViaG9va19tZXRob2RcIjpcIlBPU1RcIixcIndlYmhvb2tfdXJpXCI6XCJodHRwczovL2VueDM4NTN6M2pnMnEueC5waXBlZHJlYW0ubmV0L1wiLFwicGVybWlzc2lvbl9pZHNcIjpbXCIwMzc5NmUxNC03Y2I0LTExZWMtOWRiYS1lNzIwMjNlZmQxYzZcIl0sXCJ0bV9jcmVhdGVcIjpcIjIwMjItMDItMDEgMDA6MDA6MDAuMDAwMDAwXCIsXCJ0bV91cGRhdGVcIjpcIjIwMjItMDQtMTQgMDE6Mjg6NDYuNDU0ODk3XCIsXCJ0bV9kZWxldGVcIjpcIjk5OTktMDEtMDEgMDA6MDA6MDAuMDAwMDAwXCJ9IiwiZXhwIjoxNjUxNTU2OTA2fQ.hQ1WXO7Ionnw7FL9_keqZ2Np__Djm3lkIH5BJl1QSMs' \
    --data-raw '{
        "name": "test outdial",
        "detail": "outdial for test use.",
        "data": "test data"
    }'

Create a new outdialtarget

Example

$ curl --location --request POST 'https://api.voipbin.net/v1.0/outdials/40bea034-1d17-474d-a5de-da00d0861c69/targets?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJjdXN0b21lciI6IntcImlkXCI6XCI1ZTRhMDY4MC04MDRlLTExZWMtODQ3Ny0yZmVhNTk2OGQ4NWJcIixcInVzZXJuYW1lXCI6XCJhZG1pblwiLFwibmFtZVwiOlwiYWRtaW5cIixcImRldGFpbFwiOlwiYWRtaW4gYWNjb3VudFwiLFwid2ViaG9va19tZXRob2RcIjpcIlBPU1RcIixcIndlYmhvb2tfdXJpXCI6XCJodHRwczovL2VueDM4NTN6M2pnMnEueC5waXBlZHJlYW0ubmV0L1wiLFwicGVybWlzc2lvbl9pZHNcIjpbXCIwMzc5NmUxNC03Y2I0LTExZWMtOWRiYS1lNzIwMjNlZmQxYzZcIl0sXCJ0bV9jcmVhdGVcIjpcIjIwMjItMDItMDEgMDA6MDA6MDAuMDAwMDAwXCIsXCJ0bV91cGRhdGVcIjpcIjIwMjItMDQtMTQgMDE6Mjg6NDYuNDU0ODk3XCIsXCJ0bV9kZWxldGVcIjpcIjk5OTktMDEtMDEgMDA6MDA6MDAuMDAwMDAwXCJ9IiwiZXhwIjoxNjUxNTU2OTA2fQ.hQ1WXO7Ionnw7FL9_keqZ2Np__Djm3lkIH5BJl1QSMs' \
    --header 'Content-Type: application/json' \
    --header 'Cookie: token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJjdXN0b21lciI6IntcImlkXCI6XCI1ZTRhMDY4MC04MDRlLTExZWMtODQ3Ny0yZmVhNTk2OGQ4NWJcIixcInVzZXJuYW1lXCI6XCJhZG1pblwiLFwibmFtZVwiOlwiYWRtaW5cIixcImRldGFpbFwiOlwiYWRtaW4gYWNjb3VudFwiLFwid2ViaG9va19tZXRob2RcIjpcIlBPU1RcIixcIndlYmhvb2tfdXJpXCI6XCJodHRwczovL2VueDM4NTN6M2pnMnEueC5waXBlZHJlYW0ubmV0L1wiLFwicGVybWlzc2lvbl9pZHNcIjpbXCIwMzc5NmUxNC03Y2I0LTExZWMtOWRiYS1lNzIwMjNlZmQxYzZcIl0sXCJ0bV9jcmVhdGVcIjpcIjIwMjItMDItMDEgMDA6MDA6MDAuMDAwMDAwXCIsXCJ0bV91cGRhdGVcIjpcIjIwMjItMDQtMTQgMDE6Mjg6NDYuNDU0ODk3XCIsXCJ0bV9kZWxldGVcIjpcIjk5OTktMDEtMDEgMDA6MDA6MDAuMDAwMDAwXCJ9IiwiZXhwIjoxNjUxNTU2OTA2fQ.hQ1WXO7Ionnw7FL9_keqZ2Np__Djm3lkIH5BJl1QSMs' \
    --data-raw '{
        "name": "test destination 0",
        "detail": "test detatination 0 detail",
        "data": "test data",
        "destination_0": {
            "type": "tel",
            "target": "+821021656521"
        }
    }'

{
    "id": "1b3d7a92-7146-466d-90f5-4bc701ada4c0",
    "outdial_id": "40bea034-1d17-474d-a5de-da00d0861c69",
    "name": "test destination 0",
    "detail": "test detatination 0 detail",
    "data": "test data",
    "status": "idle",
    "destination_0": {
        "type": "tel",
        "target": "+821021656521",
        "target_name": "",
        "name": "",
        "detail": ""
    },
    "destination_1": null,
    "destination_2": null,
    "destination_3": null,
    "destination_4": null,
    "try_count_0": 0,
    "try_count_1": 0,
    "try_count_2": 0,
    "try_count_3": 0,
    "try_count_4": 0,
    "tm_create": "2022-04-30 17:52:16.484341",
    "tm_update": "2022-04-30 17:52:16.484341",
    "tm_delete": "9999-01-01 00:00:00.000000"
}

Get list of outdialtargets

Example

$ curl --location --request GET 'https://api.voipbin.net/v1.0/outdials/40bea034-1d17-474d-a5de-da00d0861c69/targets?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJjdXN0b21lciI6IntcImlkXCI6XCI1ZTRhMDY4MC04MDRlLTExZWMtODQ3Ny0yZmVhNTk2OGQ4NWJcIixcInVzZXJuYW1lXCI6XCJhZG1pblwiLFwibmFtZVwiOlwiYWRtaW5cIixcImRldGFpbFwiOlwiYWRtaW4gYWNjb3VudFwiLFwid2ViaG9va19tZXRob2RcIjpcIlBPU1RcIixcIndlYmhvb2tfdXJpXCI6XCJodHRwczovL2VueDM4NTN6M2pnMnEueC5waXBlZHJlYW0ubmV0L1wiLFwicGVybWlzc2lvbl9pZHNcIjpbXCIwMzc5NmUxNC03Y2I0LTExZWMtOWRiYS1lNzIwMjNlZmQxYzZcIl0sXCJ0bV9jcmVhdGVcIjpcIjIwMjItMDItMDEgMDA6MDA6MDAuMDAwMDAwXCIsXCJ0bV91cGRhdGVcIjpcIjIwMjItMDQtMTQgMDE6Mjg6NDYuNDU0ODk3XCIsXCJ0bV9kZWxldGVcIjpcIjk5OTktMDEtMDEgMDA6MDA6MDAuMDAwMDAwXCJ9IiwiZXhwIjoxNjUxNTU2OTA2fQ.hQ1WXO7Ionnw7FL9_keqZ2Np__Djm3lkIH5BJl1QSMs'

{
    "result": [
        {
            "id": "1b3d7a92-7146-466d-90f5-4bc701ada4c0",
            "outdial_id": "40bea034-1d17-474d-a5de-da00d0861c69",
            "name": "test destination 0",
            "detail": "test detatination 0 detail",
            "data": "test data",
            "status": "done",
            "destination_0": {
                "type": "tel",
                "target": "+821021656521",
                "target_name": "",
                "name": "",
                "detail": ""
            },
            "destination_1": null,
            "destination_2": null,
            "destination_3": null,
            "destination_4": null,
            "try_count_0": 1,
            "try_count_1": 0,
            "try_count_2": 0,
            "try_count_3": 0,
            "try_count_4": 0,
            "tm_create": "2022-04-30 17:52:16.484341",
            "tm_update": "2022-04-30 17:53:51.183345",
            "tm_delete": "9999-01-01 00:00:00.000000"
        },
        ...
    ],
    "next_page_token": "2022-04-28 01:44:07.212667"
}