查询帮助Scout v2 API的包装程序

python-helpscout-v2的Python项目详细描述


帮助Scout API客户端

此包包含一个用于查询帮助Scout的API的包装器。 该软件包试图尽可能笼统地假设 应用程序编程接口。因此,它将允许任何端点被请求,对象和 类型将动态创建。

可以找到有关可用端点、对象和其他内容的信息 在API's documentation上。 客户端尽可能少地包含api的内部知识,主要是 身份验证、分页以及如何返回对象。

为了处理对api的分页调用,在生成器中完成。 因此,如果使用hit 方法。

安装

可以安装该包克隆存储库并执行 python setup.py installpip install .

它也可以从pypi.org安装,执行pip install python-helpscout-v2

身份验证

为了使用api,您需要一个app id和app secret。

有关凭据的详细信息,请参见 helpscout's documentation

一般用途

一般的用法是实例化一个客户机,然后通过 做client.<endpoint>.<method>(<resource_id>, <params>)。其中:

  • endpoint是api文档中定义的端点之一。
  • method是api中定义的get、post、patch、put或delete之一。
  • resource id可以是none或要访问的特定资源的id, 更新或删除。例如:对话id.
  • params可以是none、字符串或具有要访问的参数的字典 在get方法或要发送的数据中。

示例

列出所有用户

>fromhelpscoutimportHelpScout>hs=HelpScout(app_id='ax0912n',app_secret='axon129')>users=hs.users.get()>users[0]User(id=12391,firstName="John",lastName="Doe",email="john.doe@gmail.com",role="user",timezone="America/New_York",createdAt="2019-01-03T19:00:00Z",updatedAt="2019-05-20T18:00:00Z",type="user",mention="johnny",initials="JD",_links={'self':{'href':'https://api.helpscout.net/v2/users/12391'}})>users[1].id9320

直接点击api获取所有邮箱

>fromhelpscout.clientimportHelpScout>hs=HelpScout(app_id='laknsdo',app_secret='12haosd9')>formailboxinhs.hit('mailboxes','get'):>print(mailbox){'mailboxes':[{'id':1930,'name':'Fake Support','slug':'0912301u','email':'support@fake.com','createdAt':'2018-12-20T20:00:00Z','updatedAt':'2019-05-01T16:00:00Z','_links':{'fields':{'href':'https://api.helpscout.net/v2/mailboxes/1930/fields/'},'folders':{'href':'https://api.helpscout.net/v2/mailboxes/1930/folders/'},'self':{'href':'https://api.helpscout.net/v2/mailboxes/1930'}}}]}

直接点击api获取特定邮箱

>fromhelpscout.clientimportHelpScout>hs=HelpScout(app_id='laknsdo',app_secret='12haosd9')>formailboxinhs.hit('mailboxes','get',resource_id=1930):>print(mailbox){'id':1930,'name':'Fake Support','slug':'0912301u','email':'support@fake.com','createdAt':'2018-12-20T20:00:00Z','updatedAt':'2019-05-01T16:00:00Z','_links':{'fields':{'href':'https://api.helpscout.net/v2/mailboxes/1930/fields/'},'folders':{'href':'https://api.helpscout.net/v2/mailboxes/1930/folders/'},'self':{'href':'https://api.helpscout.net/v2/mailboxes/1930'}}}

使用字典参数列出对话

>fromhelpscout.clientimportHelpScout>hs=HelpScout(app_id='asd12',app_secret='onas912')>params={'status':'active'}>conversations=hs.conversations.get(params=params)

使用参数

的字符串列出对话
>fromhelpscout.clientimportHelpScout>hs=HelpScout(app_id='asdon123',app_secret='asdoin1')>params='query=(createdAt:[2019-06-20T00:00:00Z TO 2019-06-22T23:59:59Z])'>conversations=hs.conversations.get(params=params)

删除对话

>fromhelpscout.clientimportHelpScout>hs=HelpScout(app_id='asdon123',app_secret='asdoin1')>conversation_id=10>hs.conversations.delete(resource_id=conversation_id)

请求预先制作的报告

>fromhelpscout.clientimportHelpScout>hs=HelpScout(app_id='asdon123',app_secret='asdoin1')>report_url='reports/happiness?start=2019-06-01T00:00:00Z&end=2019-06-15:00:00Z'>next(hs.hit(report_url,'get'))...

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java我能知道文件的哪个条目正在被修改吗?   多线程Java并发线程   java抓取包含多个页面的多个字母标签的网站   为什么if语句不排除Java中的另一个if语句?   Java可序列化哈希映射到ByteArray以创建blob   JavaEclipseLombokBuilder添加新建议   java将文件路径数组转换为文件数组,并计算每个文件的大小   在Java8流中添加大小数   Bouncy Castle 1.46之前版本的java兼容性问题   无法在AWS设备场上运行安卓 Java Appium测试   java为什么不使用mavenwarplugin将键与“WEBINF/classes/METAINF/MANIFEST.MF”合并?   java如何在引用子类的成员时调用super()   找不到java TestFx无头MonoclePlatformFactory   java AbstractMethodError onClientSessionEvent和“缺少控制媒体的权限”   正则表达式如何使用JAVA在字符串的大写字母前插入空格?   我的Spring安全项目中的java BCrypt(Spring安全)   java在我的网站上查看小程序更新时遇到问题   java如何使用schedule方法