Create a workflow by using the Google Cloud console

This quickstart shows you how to create, deploy, and execute your first workflow using the Google Cloud console. The workflow sends a request to a sample API and then uses the response to create and send a request to a public API. The workflow then returns the public API's response.


For step-by-step guidance on this task directly in the Google Cloud console, click Guide me:

Guide me


The following sections take you through the same steps as clicking Guide me.

Before you begin

Some of the steps in this document might not work correctly if your organization applies constraints to your Google Cloud environment. In that case, you might not be able to complete tasks like creating public IP addresses or service account keys. If you make a request that returns an error about constraints, see how to Develop applications in a constrained Google Cloud environment.

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Cloud project. Learn how to check if billing is enabled on a project.

  4. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  5. Make sure that billing is enabled for your Cloud project. Learn how to check if billing is enabled on a project.

  6. Enable the Workflows API.

    Enable the Workflows API
  7. In the Google Cloud console, go to the Service Accounts page.

    Go to Service Accounts
  8. Select a project and then click Create service account.
  9. In the Service account name field, enter a name, such as sa-name.
  10. Click Create and continue.
  11. To send logs to Cloud Logging, click the Select a role field and select Logging > Logs Writer.

    To learn more about service account roles and permissions, see Grant a workflow permission to access Google Cloud resources.

  12. Click Done.

Create and deploy a workflow

  1. To create a new workflow, open the Workflows page in the Google Cloud console:
    Go to the Workflows page

  2. On the Workflows page in the console, select Create.

  3. Enter a name for the new workflow, such as myFirstWorkflow.

  4. Choose us-central1 for the region.

  5. For service account, select the service account you created earlier.

  6. Select Next.

  7. In the workflow editor, copy and paste the following workflow:

    YAML

    main:
      params: [input]
      steps:
        - checkInputExists:
            switch:
              - condition: ${input != null}
                next: checkSearchTermInInput
            next: getCurrentTime
        - checkSearchTermInInput:
            switch:
              - condition: ${"searchTerm" in input}
                assign:
                  - searchTerm: ${input.searchTerm}
                next: readWikipedia
        - getCurrentTime:
            call: http.get
            args:
              url: https://us-central1-workflowsample.cloudfunctions.net/datetime
            result: currentDateTime
        - setFromCallResult:
            assign:
              - searchTerm: ${currentDateTime.body.dayOfTheWeek}
        - readWikipedia:
            call: http.get
            args:
              url: https://en.wikipedia.org/w/api.php
              query:
                action: opensearch
                search: ${searchTerm}
            result: wikiResult
        - returnOutput:
            return: ${wikiResult.body[1]}

    JSON

    {
      "main": {
        "params": [
          "input"
        ],
        "steps": [
          {
            "checkInputExists": {
              "switch": [
                {
                  "condition": "${input != null}",
                  "next": "checkSearchTermInInput"
                }
              ],
              "next": "getCurrentTime"
            }
          },
          {
            "checkSearchTermInInput": {
              "switch": [
                {
                  "condition": "${\"searchTerm\" in input}",
                  "assign": [
                    {
                      "searchTerm": "${input.searchTerm}"
                    }
                  ],
                  "next": "readWikipedia"
                }
              ]
            }
          },
          {
            "getCurrentTime": {
              "call": "http.get",
              "args": {
                "url": "https://us-central1-workflowsample.cloudfunctions.net/datetime"
              },
              "result": "currentDateTime"
            }
          },
          {
            "setFromCallResult": {
              "assign": [
                {
                  "searchTerm": "${currentDateTime.body.dayOfTheWeek}"
                }
              ]
            }
          },
          {
            "readWikipedia": {
              "call": "http.get",
              "args": {
                "url": "https://en.wikipedia.org/w/api.php",
                "query": {
                  "action": "opensearch",
                  "search": "${searchTerm}"
                }
              },
              "result": "wikiResult"
            }
          },
          {
            "returnOutput": {
              "return": "${wikiResult.body[1]}"
            }
          }
        ]
      }
    }

    This workflow makes a call to a sample API. The returned day of the week is passed to the Wikipedia API. Relevant articles on Wikipedia about the current day of the week are returned.

  8. Select Deploy.

Execute the workflow

Now that your workflow has been successfully deployed, we can execute it for the first time. After deploying the workflow, you'll be taken to its Details page:

Workflow details page

To execute the workflow:

  1. On the Workflow Details page, select Execute.

  2. On the Execute workflow page, select Execute.

  3. View your workflow's results in the Output pane:

    Workflows quickstart output

You've deployed and executed your first workflow!

Clean up

To avoid incurring charges to your Google Cloud account for the resources used on this page, follow these steps.

  1. Go to the Workflows page in the Google Cloud console.
    Workflows

  2. From the list of workflows, click a workflow to go to its Workflow Details page.

  3. Click Delete.

  4. Type the name of the workflow and then click Confirm.

What's next