Les menus représentent une file d'attente à laquelle un agent peut être attribué, ainsi que les options qu'un utilisateur final peut sélectionner lorsqu'il contacte un agent. Chaque objet représente un seul menu.
Il existe sept points de terminaison de menu :
/menu: extrait une liste de menus./menu/tree: extrait les menus dans une structure arborescente, qui imite le chemin qu'un utilisateur final emprunterait pour contacter un agent./menu/{:id}: extrait une seule ressource de menu./menu/current_status: renvoie l'état actuel de la file d'attente pour les menus avec des consommateurs en attente./menu/sla: renvoie un contrat de niveau de service pour tous les chemins de menu à partir de maintenant jusqu'au nombre de minutes spécifié précédemment./menu/sla_by_queue_group: renvoie un contrat de niveau de service pour tous les groupes de files d'attente à partir de maintenant jusqu'au nombre de minutes spécifié précédemment./menus/operation_hours: renvoie les heures d'ouverture du menu.
Reportez-vous au modèle suivant pour déterminer les champs susceptibles de contenir des informations personnelles :
{
"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"
}
}
}
]
}
Liste de menus
| Paramètre | Obligatoire | Type de données | Définition |
|---|---|---|---|
| sort_column | FALSE | Chaîne | Trie la réponse en fonction de n'importe quel champ de l'objet de réponse. |
| sort_direction | FALSE | ASC ou DESC | Indique le sens du tri, croissant ou décroissant. |
| page | FALSE | Chaîne | Associe à "per" pour indiquer la page d'enregistrements. Par exemple, si "per" est défini sur 200 et "page" sur 2, la réponse contient les enregistrements 201 à 400, car la page 1 contient les enregistrements 1 à 200. |
| per | FALSE | Chaîne | Associe à "page" pour indiquer le nombre d'enregistrements à inclure dans une page d'enregistrements. Par exemple, si "per" est défini sur 200 et "page" sur 2, la réponse contient les enregistrements 201 à 400, car la page 1 contient les enregistrements 1 à 200. |
| id[] | FALSE | Tableau[Chaîne] | Tableau[Chaînes]. ID des enregistrements à rechercher et à renvoyer |
| name[] | FALSE | Tableau[Chaîne] | Renvoie les enregistrements en fonction du nom de la ressource. |
| parent_id[] | FALSE | Tableau[Chaîne] | Renvoie les enregistrements en fonction de l'ID parent des enregistrements donnés. |
| position[] | FALSE | Tableau[Chaîne] | Renvoie les enregistrements en fonction de la position d'un menu. |
| menu_type[] | FALSE | Tableau[Chaîne] | Renvoie les enregistrements en fonction du type de menu. Valeurs possibles : ivr_menu, mobile_menu, web_menu |
| hidden[] | FALSE | Booléen | Renvoie les enregistrements qui ont été masqués (True) ou n'inclut pas les enregistrements qui ont été masqués (False). |
| with_deleted | FALSE | Booléen | Renvoie les enregistrements qui ont été supprimés (True) ou n'inclut pas les enregistrements qui ont été supprimés (False). |
Point de terminaison :
Method: GET
Type:
URL: https://{{subdomain}}.{{domain}}/manager/api/v1/menus
Autres exemples de requêtes/réponses :
Exemple de requête : liste de menus
Corps : Aucun
Exemple de réponse : liste de menus
[
{
"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"
}
]
}
}
]
}]
Code d'état : 200
Arborescence des menus
| Paramètre | Obligatoire | Type de données | Définition |
|---|---|---|---|
| menu_type | FALSE | Tableau[Chaîne] | Renvoie les enregistrements en fonction du type de menu. Valeurs possibles : ivr_menu, mobile_menu, web_menu |
| lang | FALSE | Chaîne | Renvoie les enregistrements qui ont une propriété de langue spécifique. Valeurs possibles : en, es, fr, de |
Point de terminaison :
Method: GET
Type:
URL: https://{{subdomain}}.{{domain}}/manager/api/v1/menus/tree
Autres exemples de requêtes/réponses :
Exemple de requête : arborescence des menus
Corps : Aucun
Exemple de réponse : arborescence des menus
[
{
"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": []
}
]
}]
Code d'état : 200
Menu unique
| Paramètre | Obligatoire | Type de données | Définition |
|---|---|---|---|
| record_id | FALSE | Chaîne | Renvoie un enregistrement spécifique en fonction de son ID. |
| with_deleted | FALSE | Booléen | Renvoie les enregistrements qui ont été supprimés (True) ou n'inclut pas les enregistrements qui ont été supprimés (False). |
Point de terminaison :
Method: GET
Type:
URL: https://{{subdomain}}.{{domain}}/manager/api/v1/menus/{{menu_id}}
Autres exemples de requêtes/réponses :
Exemple de requête : menu unique
Corps : Aucun
Exemple de réponse : menu unique
[
{
"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"
}
]
}
}
]
}]
Code d'état : 200
État actuel des menus
L'état actuel des menus renvoie tous les menus avec des appels ou des chats en file d'attente, ainsi que des données supplémentaires sur la durée de ces éléments en file d'attente.
Point de terminaison :
Method: GET
Type:
URL: https://{{subdomain}}.{{domain}}/manager/api/v1/menus/current_status
Autres exemples de requêtes/réponses :
Exemple de requête : état actuel des menus
Corps : Aucun
Exemple de réponse : état actuel des menus
[
{
"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
}
]
Code d'état : 0
Contrat de niveau de service des menus
| Paramètre | Obligatoire | Type de données | Définition |
|---|---|---|---|
| channel | TRUE | Chaîne | Chaîne. Valeurs acceptées : call, chat |
| minutes | TRUE | Chaîne | Chaîne. Nombre de minutes à prendre en compte à partir de maintenant lors du calcul du contrat de niveau de service. Par exemple, une valeur de 15 demande un contrat de niveau de service pour les 15 dernières minutes de chaque chemin de menu. |
Point de terminaison :
Method: GET
Type:
URL: https://{{subdomain}}.{{domain}}/manager/api/v1/menus/sla
Paramètres de requête :
| Clé | Valeur | Description |
|---|---|---|
| channel | {channel} | Chaîne. Valeurs acceptées : call, chat |
| minutes | {minutes} | Chaîne. Nombre de minutes à prendre en compte à partir de maintenant lors du calcul du contrat de niveau de service. Par exemple, une valeur de 15 demande un contrat de niveau de service pour les 15 dernières minutes de chaque chemin de menu. |
Autres exemples de requêtes/réponses :
Exemple de requête : contrat de niveau de service des menus
Requête :
| Clé | Valeur | Description |
|---|---|---|
| channel | {channel} | Chaîne. Valeurs acceptées : call, chat |
| minutes | {minutes} | Chaîne. Nombre de minutes à prendre en compte à partir de maintenant lors du calcul du contrat de niveau de service. Par exemple, une valeur de 15 demande un contrat de niveau de service pour les 15 dernières minutes de chaque chemin de menu. |
Corps : Aucun
Exemple de réponse : contrat de niveau de service des menus
[
{
"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
}
]
Code d'état : 200
Contrat de niveau de service des groupes de files d'attente
| Paramètre | Obligatoire | Type de données | Définition |
|---|---|---|---|
| channel | TRUE | Chaîne | Chaîne. Valeurs acceptées : call, chat |
| minutes | TRUE | Chaîne | Chaîne. Nombre de minutes à prendre en compte à partir de maintenant lors du calcul du contrat de niveau de service. Par exemple, une valeur de 15 demande un contrat de niveau de service pour les 15 dernières minutes de chaque chemin de menu. |
Point de terminaison :
Method: GET
Type:
URL: https://{{subdomain}}.{{domain}}/manager/api/v1/menus/sla_by_queue_groups
Paramètres de requête :
| Clé | Valeur | Description |
|---|---|---|
| channel | {channel} | Chaîne. Valeurs acceptées : call, chat |
| minutes | {minutes} | Chaîne. Nombre de minutes à prendre en compte à partir de maintenant lors du calcul du contrat de niveau de service. Par exemple, une valeur de 15 demande un contrat de niveau de service pour les 15 dernières minutes de chaque chemin de menu. |
Autres exemples de requêtes/réponses :
Exemple de requête : contrat de niveau de service des groupes de files d'attente
Requête :
| Clé | Valeur | Description |
|---|---|---|
| channel | {channel} | Chaîne. Valeurs acceptées : call, chat |
| minutes | {lminutes} | Chaîne. Nombre de minutes à prendre en compte à partir de maintenant lors du calcul du contrat de niveau de service. Par exemple, une valeur de 15 demande un contrat de niveau de service pour les 15 dernières minutes de chaque chemin de menu. |
Corps : Aucun
Exemple de réponse : contrat de niveau de service des groupes de files d'attente
[
{
"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
}
]
Code d'état : 200
Heures d'ouverture des menus
Point de terminaison :
Method: GET
Type:
URL: https://{{subdomain}}.{{domain}}/manager/api/v1/menus/operation_hours
Paramètres de requête : Aucun
Autres exemples de requêtes/réponses :
Exemple de requête : heures d'ouverture des menus
Requête : Aucune
Corps : Aucun
Exemple de réponse : heures d'ouverture des menus
[
{
"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
}
]
Code d'état : 200