Endpoint menu

Menu mewakili antrean yang dapat ditetapkan kepada agen, dan opsi yang dapat dipilih pengguna akhir saat menghubungi agen. Setiap objek mewakili satu menu.

Ada tujuh endpoint menu:

  • /menu - mengambil daftar menu.

  • /menu/tree - menarik menu dalam struktur hierarki, yang meniru jalur yang akan digunakan pengguna akhir untuk menghubungi agen.

  • /menu/{:id} - mengambil satu resource menu.

  • /menu/current_status - Menampilkan status antrean saat ini untuk menu dengan konsumen yang menunggu dalam antrean.

  • /menu/sla - Menampilkan SLA untuk semua jalur menu dari sekarang hingga jumlah menit yang ditentukan sebelumnya.

  • /menu/sla_by_queue_group - Menampilkan SLA untuk semua grup antrean dari sekarang hingga jumlah menit yang ditentukan sebelumnya.

  • /menus/operation_hours - Menampilkan jam operasional menu.

Lihat model berikut untuk menentukan kolom mana yang mungkin berisi PII:

   {
    "id": 0,
    "name": "string",
    "parent_id": 0,
    "position": 0,
    "deleted": true,
    "hidden": "string",
    "menu_type": "ivr_menu",
    "output_msg": "string",
    "agent_assignments": [
      {
        "lang": "en",
        "queue_level": "primary",
        "channel_type": "chat",
        "assignee": {
          "id": 0,
          "name": "string", // This may be considered PII
          "last_name": "string", // This may be considered PII
          "first_name": "string", // This may be considered PII
          "agent_number": "string",
          "avatar_url": "string"
        }
      }
    ],
    "team_assignments": [
      {
        "lang": "en",
        "queue_level": "primary",
        "channel_type": "chat",
        "team": {
          "id": 0,
          "name": "string",
          "parent_id": 0,
          "position": 0,
          "deleted": true,
          "agents_count": 0,
          "assignees": {
            "id": 0,
            "name": "string", // This may be considered PII
            "last_name": "string", // This may be considered PII
            "first_name": "string", // This may be considered PII
            "agent_number": "string",
            "avatar_url": "string"
          }
        }
      }
    ]
  }
Parameter Wajib Jenis Data Definisi
sort_column FALSE String Mengurutkan respons berdasarkan kolom apa pun dalam objek respons.
sort_direction FALSE ASC atau DESC Mencatat arah pengurutan, baik menaik maupun menurun
halaman FALSE String Berpasangan dengan per untuk mencatat halaman data. Misalnya, jika per ditetapkan ke 200 dan page adalah 2, respons akan berisi kumpulan data 201-400, karena halaman 1 akan berisi 1-200.
per FALSE String Berpasangan dengan halaman untuk mencatat jumlah kumpulan data yang akan disertakan dalam halaman kumpulan data. Misalnya, jika per ditetapkan ke 200 dan page adalah 2, respons akan berisi kumpulan data 201-400, karena halaman 1 akan berisi 1-200.
id[] FALSE Array[String] Array[Strings]. ID kumpulan data yang akan ditelusuri dan ditampilkan
name[] FALSE Array[String] Menampilkan data berdasarkan nama resource.
parent_id[] FALSE Array[String] Menampilkan data berdasarkan ID induk dari data yang diberikan
position[] FALSE Array[String] Menampilkan data berdasarkan posisi menu
menu_type[] FALSE String Jenis menu yang hierarkinya akan ditampilkan. Teruskan satu nilai tanpa tanda kurung, misalnya menu_type=ivr_menu. Jika Anda menghilangkan menu_type, API akan menampilkan hierarki menu seluler. Untuk mengambil lebih dari satu jenis menu, minta hierarki sekali untuk setiap jenis.
hidden[] FALSE Boolean Menampilkan data yang telah disembunyikan (True) atau tidak menyertakan data yang telah disembunyikan (False)
with_deleted FALSE Boolean Menampilkan data yang telah dihapus (True) atau tidak menyertakan data yang telah dihapus (False)

Endpoint:

Method: GET
Type: 
URL: https://{​{subdomain}​}.{​{domain}​}/manager/api/v1/menus

Contoh Permintaan/Respons Lainnya:

Contoh permintaan: Daftar menu

Body: None

Contoh respons: Daftar menu

[
    {
        "id": 1693,
        "name": "Death Star",
        "parent_id": null,
        "position": 0,
        "deleted": false,
        "menu_type": "ivr_menu",
        "output_msg": "You have reached the Death Star",
        "hidden": false,
        "agent_assignments": [
            {
                "lang": "en",
                "queue_level": "primary",
                "channel_type": "voice_call",
                "assignee": {
                    "id": 97,
                    "agent_number": 97,
                    "name": "Darth Vader",
                    "last_name": "Darth",
                    "first_name": "Vader"
                }
            },
            {
                "lang": "it",
                "queue_level": "primary",
                "channel_type": "voice_call",
                "assignee": {
                    "id": 1407,
                    "agent_number": 123,
                    "name": "Moff Tarkin",
                    "last_name": "Moff",
                    "first_name": "Tarkin"
                }
            }
        ],
        "team_assignments": [
            {
                "lang": "en",
                "queue_level": "primary",
                "channel_type": "voice_call",
                "team": {
                    "id": 10,
                    "name": "Storm Troopers",
                    "parent_id": null,
                    "position": 1,
                    "agents_count": 48,
                    "deleted": false,
                    "assignees": [
                        {
                            "id": 1,
                            "agent_number": null,
                            "name": "Storm Troooper 1",
                            "last_name": "Storm ",
                            "first_name": "Admin1",
                            "avatar_url": "https://subdomain.somedomain.com/data_uri_upload20171201-21853-1ijzccm.png"
                        },
{
                            "id": 2,
                            "agent_number": null,
                            "name": "Storm Troooper 2",
                            "last_name": "Storm ",
                            "first_name": "Admin1",
                            "avatar_url": "https://subdomain.somedomain.com/data_uri_upload20171201-21853-1ijzccm.png"
                        },
{
                            "id": 3,
                            "agent_number": null,
                            "name": "Storm Troooper 3",
                            "last_name": "Storm ",
                            "first_name": "Admin1",
                            "avatar_url": "https://subdomain.somedomain.com/data_uri_upload20171201-21853-1ijzccm.png"
                        }
                    ]
                }
            }
        ]
    }]

Status Code: 200

Parameter Wajib Jenis Data Definisi
menu_type FALSE Array[String] Menampilkan data berdasarkan jenis menu. Teruskan menu_type[] sekali per jenis, misalnya menu_type[]=ivr_menu&menu_type[]=web_menu, dan gunakan bentuk array ini bahkan untuk satu jenis. Jika klien HTTP Anda memerlukannya, enkode tanda kurung sebagai menu_type%5B%5D. Jika Anda menghilangkan menu_type[], API akan menampilkan menu dari setiap jenis. API tidak memfilter parameter jenis.
lang FALSE String Bahasa yang pohonnya akan ditampilkan. Jika Anda menghilangkan lang, API akan menampilkan hierarki en. Untuk mengambil lebih dari satu bahasa, minta hierarki sekali untuk setiap bahasa.

Endpoint:

Method: GET
Type: 
URL: https://{​{subdomain}​}.{​{domain}​}/manager/api/v1/menus/tree

Contoh Permintaan/Respons Lainnya:

Contoh permintaan: Hierarki menu

Body: None

Contoh respons: Menu hierarkis

[
    {
        "id": 2029,
        "name": "Mobile 1",
        "parent_id": null,
        "position": 0,
        "deleted": false,
        "menu_type": "mobile_menu",
        "output_msg": null,
        "hidden": false,
        "children": []
    },
    {
        "id": 2024,
        "name": "Death Star Venting System",
        "parent_id": null,
        "position": 1,
        "deleted": false,
        "menu_type": "mobile_menu",
        "output_msg": null,
        "hidden": false,
        "children": []
    },
    {
        "id": 2025,
        "name": "Droid Repair",
        "parent_id": null,
        "position": 2,
        "deleted": false,
        "menu_type": "mobile_menu",
        "output_msg": null,
        "hidden": false,
        "children": []
    },
    {
        "id": 2049,
        "name": "Emperor's Hotline",
        "parent_id": null,
        "position": 3,
        "deleted": false,
        "menu_type": "mobile_menu",
        "output_msg": null,
        "hidden": false,
        "children": []
    },
    {
        "id": 2026,
        "name": "Storm Trooper Armor",
        "parent_id": null,
        "position": 4,
        "deleted": false,
        "menu_type": "mobile_menu",
        "output_msg": null,
        "hidden": false,
        "children": [
            {
                "id": 2036,
                "name": "Armor Polishing Team",
                "parent_id": 2026,
                "position": 0,
                "deleted": false,
                "menu_type": "mobile_menu",
                "output_msg": null,
                "hidden": false,
                "children": []
            }
        ]
    }]

Status Code: 200

Menu tunggal

Parameter Wajib Jenis Data Definisi
record_id FALSE String Menampilkan data tertentu berdasarkan ID
with_deleted FALSE Boolean Menampilkan data yang telah dihapus (True) atau tidak menyertakan data yang telah dihapus (False)

Endpoint:

Method: GET
Type: 
URL: https://{​{subdomain}​}.{​{domain}​}/manager/api/v1/menus/{​{menu_id}​}

Contoh Permintaan/Respons Lainnya:

Contoh permintaan: Menu tunggal

Body: None

Contoh respons: Menu tunggal

[
    {
        "id": 1693,
        "name": "Death Star",
        "parent_id": null,
        "position": 0,
        "deleted": false,
        "menu_type": "ivr_menu",
        "output_msg": "You have reached the Death Star",
        "hidden": false,
        "agent_assignments": [
            {
                "lang": "en",
                "queue_level": "primary",
                "channel_type": "voice_call",
                "assignee": {
                    "id": 97,
                    "agent_number": 97,
                    "name": "Darth Vader",
                    "last_name": "Darth",
                    "first_name": "Vader"
                }
            },
            {
                "lang": "it",
                "queue_level": "primary",
                "channel_type": "voice_call",
                "assignee": {
                    "id": 1407,
                    "agent_number": 123,
                    "name": "Moff Tarkin",
                    "last_name": "Moff",
                    "first_name": "Tarkin"
                }
            }
        ],
        "team_assignments": [
            {
                "lang": "en",
                "queue_level": "primary",
                "channel_type": "voice_call",
                "team": {
                    "id": 10,
                    "name": "Storm Troopers",
                    "parent_id": null,
                    "position": 1,
                    "agents_count": 48,
                    "deleted": false,
                    "assignees": [
                        {
                            "id": 1,
                            "agent_number": null,
                            "name": "Storm Troooper 1",
                            "last_name": "Storm ",
                            "first_name": "Admin1",
                            "avatar_url": "https://subdomain.somedomain.com/data_uri_upload20171201-21853-1ijzccm.png"
                        },
{
                            "id": 2,
                            "agent_number": null,
                            "name": "Storm Troooper 2",
                            "last_name": "Storm ",
                            "first_name": "Admin1",
                            "avatar_url": "https://subdomain.somedomain.com/data_uri_upload20171201-21853-1ijzccm.png"
                        },
{
                            "id": 3,
                            "agent_number": null,
                            "name": "Storm Troooper 3",
                            "last_name": "Storm ",
                            "first_name": "Admin1",
                            "avatar_url": "https://subdomain.somedomain.com/data_uri_upload20171201-21853-1ijzccm.png"
                        }
                    ]
                }
            }
        ]
    }]

Status Code: 200

Status Saat Ini Menu menampilkan semua menu dengan panggilan atau chat dalam antrean beserta data tambahan tentang durasi item dalam antrean tersebut.

Endpoint:

Method: GET
Type: 
URL: https://{​{subdomain}​}.{​{domain}​}/manager/api/v1/menus/current_status

Contoh Permintaan/Respons Lainnya:

Contoh permintaan: Status menu saat ini

Body: None

Contoh respons: Status menu saat ini

[
    {
        "menu_id": 10,
        "lang": "en",
        "menu_path_id": 5,
        "menu_path": "zdco IVR Support/1 Day Shipping",
        "comm_type": "Call",
        "in_queue_count": 2,
        "oldest_in_queue": "2021-05-10T22:17:21.000Z",
        "oldest_duration_in_queue": 300,
        "total_queue_duration": 400,
        "average_queue_duration": 200
    }
]

Kode Status: 0

Parameter Wajib Jenis Data Definisi
saluran TRUE String String. Nilai yang diterima: panggilan, chat
menit TRUE String String. Jumlah menit untuk periode lihat balik dari sekarang saat menghitung SLA. Misalnya, nilai 15 akan meminta SLA selama 15 menit terakhir untuk setiap jalur menu

Endpoint:

Method: GET
Type: 
URL: https://{​{subdomain}​}.{​{domain}​}/manager/api/v1/menus/sla

Parameter kueri:

Kunci Nilai Deskripsi
saluran {channel} String. Nilai yang diterima: panggilan, chat
menit {minutes} String. Jumlah menit untuk periode lihat balik dari sekarang saat menghitung SLA. Misalnya, nilai 15 akan meminta SLA selama 15 menit terakhir untuk setiap jalur menu

Contoh Permintaan/Respons Lainnya:

Contoh permintaan: SLA Menu

Kueri:

Kunci Nilai Deskripsi
saluran {channel} String. Nilai yang diterima: panggilan, chat
menit {minutes} String. Jumlah menit untuk periode lihat balik dari sekarang saat menghitung SLA. Misalnya, nilai 15 akan meminta SLA selama 15 menit terakhir untuk setiap jalur menu

Body: None

Contoh respons: SLA Menu

[
    {
        "menu_path_id": 100,
        "lang": "en",
        "menu_path": "Support/1 Day Shipping",
        "sla": 96.5
    },
    {
        "menu_path_id": 100,
        "lang": "es",
        "menu_path": "Support/1 Day Shipping Spanish",
        "sla": 99.0
    },
    {
        "menu_path_id": 101,
        "lang": "en",
        "menu_path": "Support/3 Day Shipping",
        "sla": 0.0
    }
]

Status Code: 200

SLA grup antrean

Parameter Wajib Jenis Data Definisi
saluran TRUE String String. Nilai yang diterima: panggilan, chat
menit TRUE String String. Jumlah menit untuk periode lihat balik dari sekarang saat menghitung SLA. Misalnya, nilai 15 akan meminta SLA selama 15 menit terakhir untuk setiap jalur menu

Endpoint:

Method: GET
Type: 
URL: https://{​{subdomain}​}.{​{domain}​}/manager/api/v1/menus/sla_by_queue_groups

Parameter kueri:

Kunci Nilai Deskripsi
saluran {channel} String. Nilai yang diterima: panggilan, chat
menit {minutes} String. Jumlah menit untuk periode lihat balik dari sekarang saat menghitung SLA. Misalnya, nilai 15 akan meminta SLA selama 15 menit terakhir untuk setiap jalur menu

Contoh Permintaan/Respons Lainnya:

Contoh permintaan: SLA grup antrean

Kueri:

Kunci Nilai Deskripsi
saluran {channel} String. Nilai yang diterima: panggilan, chat
menit {lminutes} String. Jumlah menit untuk periode lihat balik dari sekarang saat menghitung SLA. Misalnya, nilai 15 akan meminta SLA selama 15 menit terakhir untuk setiap jalur menu

Body: None

Contoh respons: SLA grup antrean

[
    {
        "queue_group_id": 20,
        "queue_group_name": "Shipping",
        "sla": null
    },
    {
        "queue_group_id": 24,
        "queue_group_name": "Customer Support",
        "sla": 99.2
    },
    {
        "queue_group_id": 29,
        "queue_group_name": "Escalations",
        "sla": 98.3
    }
]

Status Code: 200

Endpoint:

Method: GET
Type: 
URL: https://{​{subdomain}​}.{​{domain}​}/manager/api/v1/menus/operation_hours

Parameter kueri: Tidak ada

Contoh Permintaan/Respons Lainnya:

Contoh permintaan: Jam buka menu

Kueri: Tidak ada

Body: None

Contoh respons: Jam buka menu

[
    {
        "created_at": "2020-07-31T03:08:29.000Z",
        "fri_end_time": 86400,
        "fri_start_time": 0,
        "holidays": [],
        "id": 1,
        "mon_end_time": 86400,
        "mon_start_time": 0,
        "sat_end_time": 86400,
        "sat_start_time": 0,
        "sun_end_time": 86400,
        "sun_start_time": 0,
        "thu_end_time": 86400,
        "thu_start_time": 0,
        "time_zone": "Africa/Cairo",
        "tue_end_time": 86400,
        "tue_start_time": 0,
        "updated_at": "2021-03-24T13:23:43.000Z",
        "wed_end_time": 86400,
        "wed_start_time": 0
    },
    {
        "created_at": "2022-08-01T11:33:21.000Z",
        "fri_end_time": 28800,
        "fri_start_time": 21600,
        "holidays": [],
        "id": 2,
        "mon_end_time": 28800,
        "mon_start_time": 21600,
        "sat_end_time": 0,
        "sat_start_time": 0,
        "sun_end_time": 0,
        "sun_start_time": 0,
        "thu_end_time": 28800,
        "thu_start_time": 21600,
        "time_zone": "Europe/Helsinki",
        "tue_end_time": 28800,
        "tue_start_time": 21600,
        "updated_at": "2022-11-09T10:47:20.000Z",
        "wed_end_time": 28800,
        "wed_start_time": 21600
    }
]

Status Code: 200