נקודות קצה של תפריטים

התפריטים מייצגים תור שאפשר להקצות לנציג, ואפשרויות שמשתמש הקצה יכול לבחור כשהוא פונה לנציג. כל אובייקט מייצג תפריט אחד.

יש שבע נקודות קצה (endpoint) של תפריטים:

  • ‫/menu – שליפת רשימה של תפריטים.

  • ‫/menu/tree – שולף תפריטים במבנה עץ, שמדמה את הנתיב שמשתמש הקצה צריך לעבור כדי ליצור קשר עם נציג.

  • ‫/menu/{:id} – שליפת משאב תפריט אחד.

  • ‫/menu/current_status – מחזירה את סטטוס התור הנוכחי לתפריטים עם לקוחות שממתינים בתור.

  • ‫/menu/sla – החזרת הסכם רמת שירות לכל נתיבי התפריט מעכשיו ועד למספר הדקות שצוין קודם.

  • /menu/sla_by_queue_group – החזרת הסכם SLA לכל קבוצות התורים מעכשיו ועד למספר הדקות שצוין קודם.

  • ‫/menus/operation_hours – מחזיר את שעות הפעילות של התפריט.

כדי לקבוע אילו שדות עשויים להכיל פרטים אישיים מזהים, אפשר להיעזר במודל הבא:

   {
    "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"
          }
        }
      }
    ]
  }
פרמטר חובה סוג הנתונים הגדרה
sort_column לא נכון String ממיינת את התשובה על סמך כל שדה באובייקט התשובה.
sort_direction לא נכון ASC או DESC מציין את כיוון המיון, בסדר עולה או יורד
ייפתח לא נכון String משמש בשילוב עם per כדי לציין את מספר הדף של הרשומות. לדוגמה, אם הערך של per הוא 200 והערך של page הוא 2, התגובה תכיל את הרשומות 201-400, כי דף 1 יכיל את הרשומות 1-200.
לכל לא נכון String משויך לדף כדי לציין כמה רשומות ייכללו בדף של רשומות. לדוגמה, אם הערך של per הוא 200 והערך של page הוא 2, התגובה תכיל את הרשומות 201-400, כי דף 1 יכיל את הרשומות 1-200.
id[]‎ לא נכון Array[String] ‫Array[Strings]. מזהה הרשומות שרוצים לחפש ולהחזיר
name[] לא נכון Array[String] הפונקציה מחזירה רשומות לפי שם המשאב.
parent_id[] לא נכון Array[String] החזרת רשומות על סמך מזהה ההורה של הרשומות הנתונות
position[]‎ לא נכון Array[String] הפונקציה מחזירה רשומות לפי המיקום של התפריט
menu_type[] לא נכון String סוג התפריט שהעץ שלו יוחזר. מעבירים ערך יחיד בלי סוגריים, לדוגמה menu_type=ivr_menu. אם משמיטים את menu_type, ה-API מחזיר את עץ התפריט לנייד. כדי לאחזר יותר מסוג תפריט אחד, צריך לבקש את העץ פעם אחת לכל סוג.
hidden[]‎ לא נכון בוליאני הפונקציה מחזירה רשומות שהוסתרו (True) או לא כוללת רשומות שהוסתרו (False)
with_deleted לא נכון בוליאני הפונקציה מחזירה רשומות שנמחקו (True) או לא כוללת רשומות שנמחקו (False)

נקודת קצה (endpoint):

Method: GET
Type: 
URL: https://{​{subdomain}​}.{​{domain}​}/manager/api/v1/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"
                        }
                    ]
                }
            }
        ]
    }]

קוד סטטוס: 200

פרמטר חובה סוג הנתונים הגדרה
menu_type לא נכון Array[String] הפונקציה מחזירה רשומות על סמך סוג התפריט. מעבירים את menu_type[] פעם אחת לכל סוג, לדוגמה menu_type[]=ivr_menu&menu_type[]=web_menu, ומשתמשים בפורמט המערך הזה גם לסוג יחיד. אם צד הלקוח ב-HTTP דורש זאת, צריך לקודד את הסוגריים המרובעים בתור menu_type%5B%5D. אם לא מציינים את menu_type[]‎, ה-API מחזיר תפריטים מכל הסוגים. ה-API לא מסנן לפי פרמטר של סוג.
lang לא נכון String השפה שהעץ שלה יוחזר. אם לא מציינים את הפרמטר lang, ה-API מחזיר את העץ en. כדי לאחזר יותר משפה אחת, צריך לבקש את העץ פעם אחת לכל שפה.

נקודת קצה (endpoint):

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

דוגמאות נוספות לבקשות ולתגובות:

דוגמה לבקשה: עץ תפריטים

תוכן: אין

דוגמה לתגובה: עץ תפריטים

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

קוד סטטוס: 200

תפריט אחד

פרמטר חובה סוג הנתונים הגדרה
record_id לא נכון String הפונקציה מחזירה רשומה ספציפית על סמך המזהה
with_deleted לא נכון בוליאני הפונקציה מחזירה רשומות שנמחקו (True) או לא כוללת רשומות שנמחקו (False)

נקודת קצה (endpoint):

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

דוגמאות נוספות לבקשות ולתגובות:

דוגמה לבקשה: תפריט אחד

תוכן: אין

דוגמה לתגובה: תפריט יחיד

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

קוד סטטוס: 200

התכונה "הסטטוס הנוכחי של התפריטים" מחזירה את כל התפריטים עם שיחות או צ'אטים בתור, עם נתונים נוספים על משך הזמן של הפריטים האלה בתור.

נקודת קצה (endpoint):

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

דוגמאות נוספות לבקשות ולתגובות:

דוגמה לבקשה: הסטטוס הנוכחי של התפריטים

תוכן: אין

דוגמה לתגובה: הסטטוס הנוכחי של התפריטים

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

קוד סטטוס: 0

פרמטר חובה סוג הנתונים הגדרה
ערוץ TRUE String מחרוזת. ערכים קבילים: call, chat
דקות TRUE String מחרוזת. מספר הדקות שצריך לבדוק לאחור מעכשיו כשמחשבים את ה-SLA. לדוגמה, אם הערך הוא 15, המערכת תבקש את הסכם ה-SLA של 15 הדקות האחרונות לכל נתיב בתפריט

נקודת קצה (endpoint):

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

פרמטרים של שאילתה:

מפתח ערך תיאור
ערוץ {channel} מחרוזת. ערכים קבילים: call, chat
דקות {minutes} מחרוזת. מספר הדקות שצריך לבדוק לאחור מעכשיו כשמחשבים את ה-SLA. לדוגמה, אם הערך הוא 15, המערכת תבקש את הסכם ה-SLA של 15 הדקות האחרונות לכל נתיב בתפריט

דוגמאות נוספות לבקשות ולתגובות:

בקשה לדוגמה: הסכם רמת השירות (SLA) של התפריט

שאילתה:

מפתח ערך תיאור
ערוץ {channel} מחרוזת. ערכים קבילים: call, chat
דקות {minutes} מחרוזת. מספר הדקות שצריך לבדוק לאחור מעכשיו כשמחשבים את ה-SLA. לדוגמה, אם הערך הוא 15, המערכת תבקש את הסכם ה-SLA של 15 הדקות האחרונות לכל נתיב בתפריט

תוכן: אין

דוגמה לתגובה: הסכם רמת השירות (SLA) של התפריט

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

קוד סטטוס: 200

הסכם רמת השירות (SLA) של קבוצות התורים

פרמטר חובה סוג הנתונים הגדרה
ערוץ TRUE String מחרוזת. ערכים קבילים: call, chat
דקות TRUE String מחרוזת. מספר הדקות שצריך לבדוק לאחור מעכשיו כשמחשבים את ה-SLA. לדוגמה, אם הערך הוא 15, המערכת תבקש את הסכם ה-SLA של 15 הדקות האחרונות לכל נתיב בתפריט

נקודת קצה (endpoint):

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

פרמטרים של שאילתה:

מפתח ערך תיאור
ערוץ {channel} מחרוזת. ערכים קבילים: call, chat
דקות {minutes} מחרוזת. מספר הדקות שצריך לבדוק לאחור מעכשיו כשמחשבים את ה-SLA. לדוגמה, אם הערך הוא 15, המערכת תבקש את הסכם ה-SLA של 15 הדקות האחרונות לכל נתיב בתפריט

דוגמאות נוספות לבקשות ולתגובות:

דוגמה לבקשה: הסכם רמת השירות (SLA) של קבוצות תורים

שאילתה:

מפתח ערך תיאור
ערוץ {channel} מחרוזת. ערכים קבילים: call, chat
דקות {lminutes} מחרוזת. מספר הדקות שצריך לבדוק לאחור מעכשיו כשמחשבים את ה-SLA. לדוגמה, אם הערך הוא 15, המערכת תבקש את הסכם ה-SLA של 15 הדקות האחרונות לכל נתיב בתפריט

תוכן: אין

דוגמה לתגובה: הסכם רמת השירות (SLA) של קבוצות תורים

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

קוד סטטוס: 200

נקודת קצה (endpoint):

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

פרמטרים של שאילתה: אין

דוגמאות נוספות לבקשות ולתגובות:

דוגמה לבקשה: שעות הפעילות של התפריט

שאילתה: אין

תוכן: אין

דוגמה לתגובה: שעות הפעילות של התפריט

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

קוד סטטוס: 200