Получить список всех задач и подзадач из Asana REST API - PullRequest
0 голосов
/ 20 сентября 2019

Я пытаюсь получить все задачи и подзадачи для проекта Asana, нажимая конечную точку REST https://app.asana.com/api/1.0/tasks?project=1234&opt_fields=..., но это дает только задачи, а не все подзадачи или подзадачи и т. Д. Я не вижу никакой другой конечной точкидля доступа ко всем подзадачам, похоже, что я могу получить эту информацию, включив subtasks.name и т. д. как часть opt_fields или получая доступ к подзадачам через конечную точку /tasks/987/subtasks.Это имеет все недостатки выполнения многих удаленных запросов с бэкэндом с ограниченной скоростью.

1 Ответ

0 голосов
/ 21 сентября 2019

В настоящее время нет способа получить все задачи, подзадачи и подзадачи.Самое близкое, к чему вы можете обратиться - это добавить subtasks.name, subtasks.id и т. Д. В этом случае я могу достичь конечной точки https://app.asana.com/api/1.0/tasks?project=1234&opt_fields=id,name,subtasks.name,subtasks.id,etc, и мне нужно было получить доступ только к нескольким полям в подзадаче.Как только я получил результаты от конечной точки, я мог извлечь подзадачи следующим образом (в рубине):

tasks = get_tasks_from_api()
subtasks = tasks.map { |t| t.subtasks } # this is an array of arrays [[x,y],[z]] etc
subtasks = subtasks.flatten # make into just an array [x,y,z]
subtasks = subtasks.compact # make sure there are no nils

tasks = tasks + subtasks # this will be all tasks followed by all subtasks
...