Menüendpunkte

Menüs stellen eine Warteschlange dar, der ein Agent zugewiesen werden kann, und Optionen, die ein Endnutzer auswählen kann, wenn er einen Agenten kontaktiert. Jedes Objekt steht für eine einzelne Speisekarte.

Es gibt sieben Menü-Endpunkte:

  • /menu: Ruft eine Liste von Menüs ab.

  • /menu/tree: Ruft Menüs in einer Baumstruktur ab, die den Pfad nachahmt, den ein Endnutzer verwenden würde, um mit einem Kundenservicemitarbeiter in Kontakt zu treten.

  • /menu/{:id}: Ruft eine einzelne Speisekartenressource ab.

  • /menu/current_status: Gibt den aktuellen Warteschlangenstatus für Menüs mit Nutzern zurück, die in der Warteschlange warten.

  • /menu/sla: Gibt ein SLA für alle Menüpfade von jetzt bis zur vorherigen angegebenen Anzahl von Minuten zurück.

  • /menu/sla_by_queue_group: Gibt ein SLA für alle Warteschlangengruppen ab jetzt bis zur vorherigen angegebenen Anzahl von Minuten zurück.

  • /menus/operation_hours: Gibt die Öffnungszeiten des Menüs zurück.

Anhand des folgenden Modells können Sie feststellen, welche Felder personenidentifizierbare Informationen enthalten könnten:

   {
    "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 Erforderlich Datentyp Definition
sort_column FALSE String Sortiert die Antwort nach einem beliebigen Feld im Antwortobjekt.
sort_direction FALSE ASC oder DESC Gibt die Sortierreihenfolge an, entweder aufsteigend oder absteigend
Seite FALSE String Wird mit „per“ kombiniert, um anzugeben, auf welcher Seite sich die Datensätze befinden. Wenn „per“ beispielsweise auf 200 und „page“ auf 2 festgelegt ist, enthält die Antwort die Datensätze 201–400, da Seite 1 die Datensätze 1–200 enthält.
pro FALSE String Wird mit „page“ kombiniert, um anzugeben, wie viele Datensätze auf einer Seite enthalten sein sollen. Wenn „per“ beispielsweise auf 200 und „page“ auf 2 festgelegt ist, enthält die Antwort die Datensätze 201–400, da Seite 1 die Datensätze 1–200 enthält.
id[] FALSE Array[String] Array[Strings]. ID der Datensätze, die gesucht und zurückgegeben werden sollen
name[] FALSE Array[String] Gibt Datensätze basierend auf dem Namen der Ressource zurück.
parent_id[] FALSE Array[String] Gibt Datensätze basierend auf der übergeordneten ID der angegebenen Datensätze zurück
position[] FALSE Array[String] Gibt Datensätze basierend auf der Position eines Menüs zurück
menu_type[] FALSE String Der Menütyp, dessen Baum zurückgegeben werden soll. Übergeben Sie einen einzelnen Wert ohne Klammern, z. B. menu_type=ivr_menu. Wenn Sie menu_type weglassen, gibt die API die Menüstruktur für Mobilgeräte zurück. Wenn Sie mehr als einen Menütyp abrufen möchten, fordern Sie den Baum für jeden Typ einmal an.
hidden[] FALSE Boolesch Gibt ausgeblendete Datensätze zurück (True) oder schließt ausgeblendete Datensätze nicht ein (False)
with_deleted FALSE Boolesch Gibt Datensätze zurück, die gelöscht wurden (True), oder schließt gelöschte Datensätze nicht ein (False)

Endpunkt:

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

Weitere Beispielanfragen/-antworten:

Beispielanfrage: Menüliste

Body: None

Beispielantwort: Menüliste

[
    {
        "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"
                        }
                    ]
                }
            }
        ]
    }]

Statuscode: 200

Parameter Erforderlich Datentyp Definition
menu_type FALSE Array[String] Gibt Datensätze basierend auf dem Menütyp zurück. Übergeben Sie menu_type[] einmal pro Typ, z. B. menu_type[]=ivr_menu&menu_type[]=web_menu, und verwenden Sie dieses Array-Format auch für einen einzelnen Typ. Wenn Ihr HTTP-Client dies erfordert, codieren Sie die Klammern als menu_type%5B%5D. Wenn Sie „menu_type[]“ weglassen, gibt die API Speisekarten aller Typen zurück. Die API filtert nicht nach einem Typparameter.
lang FALSE String Die Sprache, deren Baum zurückgegeben werden soll. Wenn Sie „lang“ weglassen, gibt die API den Baum en zurück. Wenn Sie mehr als eine Sprache abrufen möchten, fordern Sie den Baum für jede Sprache einmal an.

Endpunkt:

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

Weitere Beispielanfragen/-antworten:

Beispielanfrage: Menüstruktur

Body: None

Beispielantwort: Menübaum

[
    {
        "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": []
            }
        ]
    }]

Statuscode: 200

Einzelne Speisekarte

Parameter Erforderlich Datentyp Definition
record_id FALSE String Gibt einen bestimmten Datensatz anhand der ID zurück
with_deleted FALSE Boolesch Gibt Datensätze zurück, die gelöscht wurden (True), oder schließt gelöschte Datensätze nicht ein (False)

Endpunkt:

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

Weitere Beispielanfragen/-antworten:

Beispielanfrage: Einzelne Speisekarte

Body: None

Beispielantwort: Einzelne Speisekarte

[
    {
        "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"
                        }
                    ]
                }
            }
        ]
    }]

Statuscode: 200

„Aktueller Status der Menüs“ gibt alle Menüs mit Anrufen oder Chats in der Warteschlange zurück, einschließlich zusätzlicher Daten zur Dauer dieser Elemente in der Warteschlange.

Endpunkt:

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

Weitere Beispielanfragen/-antworten:

Beispielanfrage: Aktueller Status der Speisekarten

Body: None

Beispielantwort: Aktueller Status der Speisekarten

[
    {
        "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
    }
]

Statuscode: 0

Parameter Erforderlich Datentyp Definition
channel TRUE String String. Zulässige Werte: call, chat
Minuten TRUE String String. Die Anzahl der Minuten, die bei der Berechnung des SLA ab dem aktuellen Zeitpunkt zurückgerechnet werden sollen. Beispiel: Ein Wert von 15 würde das SLA für die letzten 15 Minuten für jeden Menüpfad anfordern.

Endpunkt:

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

Abfrageparameter:

Schlüssel Wert Beschreibung
channel {channel} String. Zulässige Werte: call, chat
Minuten {minutes} String. Die Anzahl der Minuten, die bei der Berechnung des SLA ab dem aktuellen Zeitpunkt zurückgerechnet werden sollen. Beispiel: Ein Wert von 15 würde das SLA für die letzten 15 Minuten für jeden Menüpfad anfordern.

Weitere Beispielanfragen/-antworten:

Beispielanfrage: SLA für Speisekarten

Abfrage:

Schlüssel Wert Beschreibung
channel {channel} String. Zulässige Werte: call, chat
Minuten {minutes} String. Die Anzahl der Minuten, die bei der Berechnung des SLA ab dem aktuellen Zeitpunkt zurückgerechnet werden sollen. Beispiel: Ein Wert von 15 würde das SLA für die letzten 15 Minuten für jeden Menüpfad anfordern.

Body: None

Beispielantwort: SLA für Menüs

[
    {
        "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
    }
]

Statuscode: 200

SLA für Warteschlangengruppen

Parameter Erforderlich Datentyp Definition
channel TRUE String String. Zulässige Werte: call, chat
Minuten TRUE String String. Die Anzahl der Minuten, die bei der Berechnung des SLA ab dem aktuellen Zeitpunkt zurückgerechnet werden sollen. Beispiel: Ein Wert von 15 würde das SLA für die letzten 15 Minuten für jeden Menüpfad anfordern.

Endpunkt:

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

Abfrageparameter:

Schlüssel Wert Beschreibung
channel {channel} String. Zulässige Werte: call, chat
Minuten {minutes} String. Die Anzahl der Minuten, die bei der Berechnung des SLA ab dem aktuellen Zeitpunkt zurückgerechnet werden sollen. Beispiel: Ein Wert von 15 würde das SLA für die letzten 15 Minuten für jeden Menüpfad anfordern.

Weitere Beispielanfragen/-antworten:

Beispielanfrage: SLA für Warteschlangengruppen

Abfrage:

Schlüssel Wert Beschreibung
channel {channel} String. Zulässige Werte: call, chat
Minuten {lminutes} String. Die Anzahl der Minuten, die bei der Berechnung des SLA ab dem aktuellen Zeitpunkt zurückgerechnet werden sollen. Beispiel: Ein Wert von 15 würde das SLA für die letzten 15 Minuten für jeden Menüpfad anfordern.

Body: None

Beispielantwort: SLA für Warteschlangengruppen

[
    {
        "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
    }
]

Statuscode: 200

Endpunkt:

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

Abfrageparameter: Keine

Weitere Beispielanfragen/-antworten:

Beispielanfrage: Öffnungszeiten für Speisekarte

Suchanfrage: Keine

Body: None

Beispielantwort: Öffnungszeiten für die Speisekarte

[
    {
        "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
    }
]

Statuscode: 200