AsanaCreateTaskOperator¶
使用 AsanaCreateTaskOperator
创建 Asana 任务。
使用操作符¶
AsanaCreateTaskOperator 最低要求新任务的名称和用于连接到你的帐户的 Asana 连接(conn_id
)。还有许多其他 你可以通过 task_parameters
指定的任务属性。你必须至少在 task_parameters
或连接中指定 workspace
、parent
或 projects
中的一个。
AsanaDeleteTaskOperator¶
使用 AsanaDeleteTaskOperator
删除现有的 Asana 任务。
使用操作符¶
AsanaDeleteTaskOperator 需要要删除的任务 ID。使用 conn_id
参数指定用于连接到你的帐户的 Asana 连接。
AsanaFindTaskOperator¶
使用 AsanaFindTaskOperator
搜索符合某些条件的 Asana 任务。
AsanaUpdateTaskOperator¶
使用 AsanaUpdateTaskOperator
更新现有的 Asana 任务。
使用操作符¶
AsanaUpdateTaskOperator 最低需要更新的任务 ID 和用于连接到您帐户的 Asana 连接 (conn_id
)。还有许多其他 您可以通过 task_parameters
覆盖的任务属性。
# 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