Connector for Cloud Tasks

Workflows connector that defines the built-in function used to access Cloud Tasks within a workflow.

Explore further

For detailed documentation that includes this code sample, see the following:

Code sample

YAML

# This workflow demonstrates how to use the Cloud Tasks connector:
# Create a Cloud Tasks queue and create a task in that queue
# Delete the task and then the queue
# Expected output: "SUCCESS"
- init:
    assign:
      - project_id: ${sys.get_env("GOOGLE_CLOUD_PROJECT_ID")}
      - location_id: "us-central1"
      - queue_id: "example-queue-id"
      - task_id: "example-task-id"
      # Replace TIME_IN_ZULU_FORMAT and CLOUD_FUNCTION_URL placeholders
      - schedule_time: "TIME_IN_ZULU_FORMAT"  # time in RFC3339 UTC "Zulu" format (eg. "2014-10-02T15:01:23Z")
      - cloud_function_url: "CLOUD_FUNCTION_URL"  # Cloud Function URL to be triggered by the task
- create_queue:
    call: googleapis.cloudtasks.v2.projects.locations.queues.create
    args:
      parent: ${"projects/" + project_id + "/locations/" + location_id}
      body:
        name: ${"projects/" + project_id + "/locations/" + location_id + "/queues/" + queue_id}
    result: queue
- create_task:
    call: googleapis.cloudtasks.v2.projects.locations.queues.tasks.create
    args:
      parent: ${queue.name}
      body:
        task:
          name: ${queue.name + "/tasks/" + task_id}
          scheduleTime: ${schedule_time}
          httpRequest:
            url: ${cloud_function_url}
            httpMethod: "GET"
    result: task
- get_task:
    call: googleapis.cloudtasks.v2.projects.locations.queues.tasks.get
    args:
      name: ${task.name}
- delete_task:
    call: googleapis.cloudtasks.v2.projects.locations.queues.tasks.delete
    args:
      name: ${task.name}
- delete_queue:
    call: googleapis.cloudtasks.v2.projects.locations.queues.delete
    args:
      name: ${queue.name}
- the_end:
    return: "SUCCESS"

What's next

To search and filter code samples for other Google Cloud products, see the Google Cloud sample browser.