AsanaCreateTaskOperator

使用 AsanaCreateTaskOperator 创建一个 Asana 任务。

使用操作符

AsanaCreateTaskOperator 至少需要新任务的名称和用于连接到您的帐户的 Asana 连接(conn_id)。通过 task_parameters 可以指定许多其他 任务属性。您必须在 task_parameters 或连接中至少指定 workspaceparentprojects 中的一个。

AsanaDeleteTaskOperator

使用 AsanaDeleteTaskOperator 删除现有的 Asana 任务。

使用操作符

AsanaDeleteTaskOperator 需要删除的任务 ID。使用 conn_id 参数指定用于连接到您的帐户的 Asana 连接。

AsanaFindTaskOperator

使用 AsanaFindTaskOperator 搜索符合某些条件的 Asana 任务。

使用操作符

AsanaFindTaskOperator 需要一个符合 此处 描述的搜索参数字典。使用 conn_id 参数指定用于连接到您的帐户的 Asana 连接。如果未在 search_parameters 中覆盖,则将使用通过连接提供的任何参数进行搜索。

AsanaUpdateTaskOperator

使用 AsanaUpdateTaskOperator 更新现有的 Asana 任务。

使用操作符

AsanaUpdateTaskOperator 至少需要更新的任务 ID 和用于连接到您的帐户的 Asana 连接(conn_id)。 通过 task_parameters 可以覆盖许多其他 任务属性

tests/system/asana/example_asana.py[源代码]


# Create a task. `task_parameters` is used to specify attributes the new task should have.
# You must specify at least one of 'workspace', 'projects', or 'parent' in `task_parameters`
# unless these are specified in the connection. Any attributes you specify in
# `task_parameters` will override values from the connection.
create = AsanaCreateTaskOperator(
    task_id="run_asana_create_task",
    task_parameters={"notes": "Some notes about the task."},
    name="New Task Name",
)
# Find tasks matching search criteria. `search_parameters` is used to specify these criteria.
# You must specify `project`, `section`, `tag`, `user_task_list`, or both
# `assignee` and `workspace` in `search_parameters` or in the connection.
# This example shows how you can override a project specified in the connection by
# passing a different value for project into `search_parameters`
one_week_ago = (datetime.now() - timedelta(days=7)).strftime("%Y-%m-%d")
find = AsanaFindTaskOperator(
    task_id="run_asana_find_task",
    search_parameters={"project": ASANA_PROJECT_ID_OVERRIDE, "modified_since": one_week_ago},
)
# Update a task. `task_parameters` is used to specify the new values of
# task attributes you want to update.
update = AsanaUpdateTaskOperator(
    task_id="run_asana_update_task",
    asana_task_gid=ASANA_TASK_TO_UPDATE,
    task_parameters={"notes": "This task was updated!", "completed": True},
)
# Delete a task. This task will complete successfully even if `asana_task_gid` does not exist.
delete = AsanaDeleteTaskOperator(
    task_id="run_asana_delete_task",
    asana_task_gid=ASANA_TASK_TO_DELETE,
)

create >> find >> update >> delete

此条目是否有帮助?