I menu rappresentano una coda a cui può essere assegnato un agente e le opzioni che un utente finale può selezionare quando contatta un agente. Ogni oggetto rappresenta un singolo menu.
Esistono sette endpoint di menu:
/menu: mostra un elenco di menu./menu/tree: estrae i menu in una struttura ad albero, che riproduce il percorso che un utente finale utilizzerebbe per contattare un agente./menu/{:id}: recupera una singola risorsa di menu./menu/current_status- Restituisce lo stato attuale della coda per i menu con consumatori in attesa in coda./menu/sla: restituisce un SLA per tutti i percorsi di menu a partire da ora fino al numero di minuti specificato in precedenza./menu/sla_by_queue_group: restituisce un SLA per tutti i gruppi di code a partire da ora fino al numero di minuti specificato in precedenza./menus/operation_hours- Restituisce l'orario di apertura del menu.
Fai riferimento al seguente modello per determinare quali campi potrebbero contenere 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"
}
}
}
]
}
Elenco menu
| Parametro | Obbligatorio | Tipo di dati | Definizione |
|---|---|---|---|
| sort_column | FALSE | Stringa | Ordina la risposta in base a qualsiasi campo dell'oggetto risposta. |
| sort_direction | FALSE | ASC o DESC | Indica la direzione dell'ordinamento, crescente o decrescente |
| pagina | FALSE | Stringa | Coppie con per per indicare la pagina dei record. Ad esempio, se per è impostato su 200 e page è 2, la risposta conterrà i record da 201 a 400, poiché la pagina 1 conterrà i record da 1 a 200. |
| per | FALSE | Stringa | Coppie con la pagina per annotare quanti record verranno inclusi in una pagina di record. Ad esempio, se per è impostato su 200 e page è 2, la risposta conterrà i record da 201 a 400, poiché la pagina 1 conterrà i record da 1 a 200. |
| id[] | FALSE | Array[Stringa] | Array[Strings]. ID dei record da cercare e restituire |
| name[] | FALSE | Array[Stringa] | Restituisce i record in base al nome della risorsa. |
| parent_id[] | FALSE | Array[Stringa] | Restituisce i record in base all'ID padre dei record specificati |
| position[] | FALSE | Array[Stringa] | Restituisce i record in base alla posizione di un menu |
| menu_type[] | FALSE | Array[Stringa] | Restituisce i record in base al tipo di menu. Valori possibili: ivr_menu, mobile_menu, web_menu |
| hidden[] | FALSE | Booleano | Restituisce i record che sono stati nascosti (True) o non include i record che sono stati nascosti (False) |
| with_deleted | FALSE | Booleano | Restituisce i record eliminati (True) o non include i record eliminati (False) |
Endpoint:
Method: GET
Type:
URL: https://{{subdomain}}.{{domain}}/manager/api/v1/menus
Altri esempi di richieste/risposte:
Esempio di richiesta: elenco dei menu
Body: None
Esempio di risposta: elenco dei 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"
}
]
}
}
]
}]
Codice di stato: 200
Struttura del menu
| Parametro | Obbligatorio | Tipo di dati | Definizione |
|---|---|---|---|
| menu_type | FALSE | Array[Stringa] | Restituisce i record in base al tipo di menu. Valori possibili: ivr_menu, mobile_menu, web_menu |
| lang | FALSE | Stringa | Restituisce i record con una proprietà di lingua specifica. Valori possibili: en, es, fr, de |
Endpoint:
Method: GET
Type:
URL: https://{{subdomain}}.{{domain}}/manager/api/v1/menus/tree
Altri esempi di richieste/risposte:
Esempio di richiesta: struttura del menu
Body: None
Esempio di risposta: struttura ad albero del menu
[
{
"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": []
}
]
}]
Codice di stato: 200
Menu singolo
| Parametro | Obbligatorio | Tipo di dati | Definizione |
|---|---|---|---|
| record_id | FALSE | Stringa | Restituisce un record specifico in base all'ID. |
| with_deleted | FALSE | Booleano | Restituisce i record eliminati (True) o non include i record eliminati (False) |
Endpoint:
Method: GET
Type:
URL: https://{{subdomain}}.{{domain}}/manager/api/v1/menus/{{menu_id}}
Altri esempi di richieste/risposte:
Esempio di richiesta: menu singolo
Body: None
Esempio di risposta: menu singolo
[
{
"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"
}
]
}
}
]
}]
Codice di stato: 200
Stato attuale dei menu
Il menu Stato attuale restituisce tutti i menu con chiamate o chat in coda con dati aggiuntivi sulla durata di questi elementi in coda.
Endpoint:
Method: GET
Type:
URL: https://{{subdomain}}.{{domain}}/manager/api/v1/menus/current_status
Altri esempi di richieste/risposte:
Richiesta di esempio: stato attuale dei menu
Body: None
Esempio di risposta: stato attuale dei menu
[
{
"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
}
]
Codice di stato: 0
Menu SLA
| Parametro | Obbligatorio | Tipo di dati | Definizione |
|---|---|---|---|
| canale | VERO | Stringa | Stringa. Valori accettati: call, chat |
| minuti | VERO | Stringa | Stringa. Il numero di minuti da considerare a partire da ora per il calcolo dell'SLA. Ad esempio, un valore di 15 richiederebbe l'SLA per gli ultimi 15 minuti per ogni percorso del menu |
Endpoint:
Method: GET
Type:
URL: https://{{subdomain}}.{{domain}}/manager/api/v1/menus/sla
Parametri di query:
| Chiave | Valore | Descrizione |
|---|---|---|
| canale | {channel} | Stringa. Valori accettati: call, chat |
| minuti | {minutes} | Stringa. Il numero di minuti da considerare a partire da ora per il calcolo dell'SLA. Ad esempio, un valore di 15 richiederebbe l'SLA per gli ultimi 15 minuti per ogni percorso del menu |
Altri esempi di richieste/risposte:
Esempio di richiesta: SLA del menu
Query:
| Chiave | Valore | Descrizione |
|---|---|---|
| canale | {channel} | Stringa. Valori accettati: call, chat |
| minuti | {minutes} | Stringa. Il numero di minuti da considerare a partire da ora per il calcolo dell'SLA. Ad esempio, un valore di 15 richiederebbe l'SLA per gli ultimi 15 minuti per ogni percorso del menu |
Body: None
Esempio di risposta: SLA del 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
}
]
Codice di stato: 200
SLA dei gruppi di code
| Parametro | Obbligatorio | Tipo di dati | Definizione |
|---|---|---|---|
| canale | VERO | Stringa | Stringa. Valori accettati: call, chat |
| minuti | VERO | Stringa | Stringa. Il numero di minuti da considerare a partire da ora per il calcolo dell'SLA. Ad esempio, un valore di 15 richiederebbe l'SLA per gli ultimi 15 minuti per ogni percorso del menu |
Endpoint:
Method: GET
Type:
URL: https://{{subdomain}}.{{domain}}/manager/api/v1/menus/sla_by_queue_groups
Parametri di query:
| Chiave | Valore | Descrizione |
|---|---|---|
| canale | {channel} | Stringa. Valori accettati: call, chat |
| minuti | {minutes} | Stringa. Il numero di minuti da considerare a partire da ora per il calcolo dell'SLA. Ad esempio, un valore di 15 richiederebbe l'SLA per gli ultimi 15 minuti per ogni percorso del menu |
Altri esempi di richieste/risposte:
Richiesta di esempio: SLA dei gruppi di code
Query:
| Chiave | Valore | Descrizione |
|---|---|---|
| canale | {channel} | Stringa. Valori accettati: call, chat |
| minuti | {lminutes} | Stringa. Il numero di minuti da considerare a partire da ora per il calcolo dell'SLA. Ad esempio, un valore di 15 richiederebbe l'SLA per gli ultimi 15 minuti per ogni percorso del menu |
Body: None
Esempio di risposta: SLA dei gruppi di code
[
{
"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
}
]
Codice di stato: 200
Orario di apertura del menu
Endpoint:
Method: GET
Type:
URL: https://{{subdomain}}.{{domain}}/manager/api/v1/menus/operation_hours
Parametri di query: nessuno
Altri esempi di richieste/risposte:
Richiesta di esempio: orario di apertura del ristorante
Query: nessuna
Body: None
Esempio di risposta: orari di apertura del ristorante
[
{
"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
}
]
Codice di stato: 200