如何整合ASANA API的API调用
我是一名自由网络开发人员,在Asana的许多不同工作区与许多客户合作。无法获得整合视图使这成为一件乏味且难以管理的事情,因此我正在整合自己的小工具,以帮助我获得按到期日顺序分配给我的任务的“超级视图”。为了便于扫描,我需要将项目名称放在任务详细信息的旁边 在我看来,最简单的方法是对分配给我的所有任务进行单个API调用,并同时请求项目名称、任务名称、任务id、截止日期和工作区名称 然而,API似乎不允许这种整合类型的请求,因此,工作流是这样的 API调用以获取我的所有工作区 循环遍历工作区,为每个工作区调用API以获取所有任务 使用PHP对这些任务进行相应的排序 循环执行这些任务,对每个项目的第一个实例进行API调用,以获取项目名称,同时缓存数据 这样我每个项目只打一次电话 我遇到的问题是,当我开始进行API调用以获取项目详细信息时,出现了500个错误。我怀疑我是否达到了每分钟100个电话的上限,但我仍然会犯错误。有鉴于此,我正在寻找一种方法来进行整合调用,该调用包含我需要的所有数据,但我似乎无法找到它如何整合ASANA API的API调用,api,asana,Api,Asana,我是一名自由网络开发人员,在Asana的许多不同工作区与许多客户合作。无法获得整合视图使这成为一件乏味且难以管理的事情,因此我正在整合自己的小工具,以帮助我获得按到期日顺序分配给我的任务的“超级视图”。为了便于扫描,我需要将项目名称放在任务详细信息的旁边 在我看来,最简单的方法是对分配给我的所有任务进行单个API调用,并同时请求项目名称、任务名称、任务id、截止日期和工作区名称 然而,API似乎不允许这种整合类型的请求,因此,工作流是这样的 API调用以获取我的所有工作区 循环遍历工作区,为每个
有人对此有什么指导吗?好消息!实际上,我们确实支持指定所需的字段,包括嵌套字段。因此,尽管您仍然需要对每个工作区分别进行调用,但您可以执行以下操作:
workspaces = GET /workspaces
for id in workspaces
tasks = GET /workspaces/:id/tasks?assignee=me&opt_fields=name,due_on,projects.name
如果您只对未完成的任务感兴趣,您可以添加&completed_-since=now-或者如果您想要未完成和最近完成的任务,&completed_-since=。。。使用时间戳可以排除以前完成的任何任务
此外,500不是我们发送的速率限制代码——这可能是请求本身的问题。您是如何要求项目详细信息的?谢谢@agnoster。能够以嵌套字段为目标是非常有帮助的——我完全没有想到点符号。实际上,我已经求助于维护JSON字典,这些字典可以单独更新,并充当对工作区和项目的引用。仅供参考,我所有的API调用都使用了[Asana API PHP Class]github.com/ajimix/Asana-API-PHP-Class/,因此请求的结构应该是正确的——只有在我调用了一定数量的任务之后才会出现500次。