ZenPy搜寻结果最佳

时间:2019-11-14 09:42:48

标签: python zendesk-api

我正在使用ZenPy在ZenDesk中搜索一些票证:

open_tickets = zenpy_client.search(type='ticket', status=['new', 'open'], subject=subject, group=group_name, created_between=[two_weeks_ago_date, current_date])

问题是当我从此Search调用中获得太多结果时(超过1000,因为这是ZenDesk API的新查询限制)。我收到以下异常:

<Invalid search: Requested response size was greater than Search Response Limits>

我正在尝试查看ZenPy文档,但找不到任何可用于限制10个页面的搜索调用的参数(在这种情况下为1.000条记录,因为每个请求获得100张票证)。

我最终在电话中加入了try-catch,但我确定这不是最佳解决方案:

from zenpy.lib.exception import APIException
try:
    open_tickets = zenpy_client.search(type='ticket', status=['new', 'open'], subject=subject, group=group_name, created_between=[two_weeks_ago_date, current_date])
except APIException as ex:
    ... 

限制此搜索的最佳解决方案是什么?

我也知道我可以限制更多的日期,但是我们会在一周的某一天创建很多票证,所以没有办法过滤更多的票证,我只需要限制一下即可。

参考:

  1. https://developer.zendesk.com/rest_api/docs/support/search
  2. https://develop.zendesk.com/hc/en-us/articles/360022563994--BREAKING-New-Search-API-Result-Limits

谢谢!

1 个答案:

答案 0 :(得分:1)

).then(() => {返回的生成器支持Python切片,因此以下代码会将结果拉至1000,并防止超出新限制:

search