0

我正在尝试开发一个可以从 Asana 获取数据并生成自定义电子表格报告的 Web 应用程序。这个包装类非常有助于使事情变得简单。

但是,我很难编写代码来获得特定任务所属的团队。即使当我通过 Asana 的 Web 应用程序将数据导出为 JSON 时,“团队”也没有提及。据我了解,Asana 本身并不提供团队和任务之间的关联。如果我错了,请纠正我。

但是,如果我的结论是正确的,是否有我可以使用的解决方法?团队是我的数据渲染的重要组成部分,我需要将它们正确映射到我试图从 Asana 生成的报告中。我要生成的报告本质上是分层的。

  • 组织
    • 团队
      • 项目
        • 任务
          • 子任务

我可以做些什么来实现这种层次结构吗?我唯一卡住的地方是让项目在一个特定的团队下。

4

1 回答 1

0

很高兴听到您发现该包装器很有用。我们将很快自己发布一个您可能感兴趣的 PHP 库。敬请期待!

我认为,下面是一些伪代码来派生您正在寻找的层次结构。让我知道它是否有帮助。

获取/工作区

    {
      "data": [
        {
          "id": 1234,
          "name": "Startup Inc"
        }
      ]
    }

获取 /workspaces/1234

    {
      "data": {
        "id": 1234,
        "name": "Startup Inc",
        "is_organization": true,
        ...
      }
    }

因为 is_corganization 为真,所以我们可以继续...

获取 /organizations/organization-id/teams

    {
      "data": [
        {
          "id": 9876,
          "name": "Ninja Team"
        }
      ]
    }

获取 /teams/9876/projects

    {
      "data": [
        {
          "id": 5678,
          "name": "Stealth Project"
        }
      ]
    }

获取 /projects/5678/tasks

    {
      "data": [
        {
          "id": 8675309,
          "name": "Top secret video"
        }
      ]
    }

获取 /tasks/8675309

    {
      "data": {
        "id": 8675309,
        "created_at": "2015-03-25T17:28:59.255Z",
        "modified_at": "2015-05-15T03:13:28.754Z",
        "name": "Top secret video",
        "notes": "https://www.youtube.com/watch?v=6WTdTwcmxyo",
        "completed": false,
        ... # All the task data
        ]
      }
    }
于 2015-05-15T03:21:24.520 回答