Я использую API Zendesk с PHP и пытаюсь получить количество билетов с определенной маркой для каждого представления.
Единственное решение, которое я нашел, — это получить все просмотры, загрузить все билеты в этом представлении, получить марку для каждого билета.
Должно быть более оптимальное решение, чем это.
Может кто-то указать мне верное направление?
Лучшее, о чем я мог подумать, — это пройти аутентификацию с помощью учетной записи пользователя, которая имеет доступ только к билетам с этим конкретным брендом, а затем использовать API View Counts подсчитать общее количество билетов в каждом представлении (что исключает получение информации о билетах, которые пользователь не может просматривать).
Таким образом, вы будете вызывать несколько представлений с одним API следующим образом:
https://subdomainname.zendesk.com/api/v2/views/count_many.json?ids=VIEW_ID_1,VIEW_ID_2,VIEW_ID_3,VIEW_ID_4
и ответ вернется в виде массива view_counts, каждый из которых содержит атрибут «значение» — количество билетов, найденных для этого представления.
Однако над этим документом есть примечание для счетчиков представлений, в котором объясняется атрибут «значение». Говорится:
Кэшированное количество билетов в представлении. Может также быть нулевым, если
Система загружает и кэширует новые данные. Не путать с 0
Билеты
что довольно раздражает, потому что я вдруг оказался ноль для некоторых значений, и это было довольно запутанным.
https://subdomain.zendesk.com/api/v2/views/{id}/count.json
это возвратит количество билетов для одного просмотра, и ответ будет
{
"view_count": {
"view_id": 25,
"url": "https://company.zendesk.com/api/v2/views/25/count.json",
"value": 719,
"pretty": "~700",
"fresh": true
}
}
если вы хотите попробовать с несколькими идентификаторами, используйте
https://subdomain.zendesk.com/api/v2/views/count_many.json?ids={view_id},{view_id}
Рассчитывает размер представления по количеству билетов, которые он вернет. Возвращает значения только для личных и общих представлений, доступных пользователю, выполняющему запрос.