Sync Asana Tasks with Google Tasks
Overview
Use this workflow template to integrate your Asana projects with Google Tasks, enabling one-way synchronization from Asana into your preferred Google Task List.
Main workflow
Handle Events Map
Why use this template?
Centralized task management
Combine your task lists in a single Google Tasks view. If you favor Google's clean, minimalist interface, this integration ensures you no longer need to switch between tools. Everything flows directly to your preferred workspace.
Strengthened Google ecosystem integration
Google Tasks works with Calendar, Gmail, and Drive. Syncing Asana tasks here lets you associate your work items with emails, events, and documents. Mmaking your productivity more connected and efficient.
Access anywhere, anytime
Google Tasks is available on web, iOS, and Android. This means your Asana tasks are synced and ready on your phone, tablet, or desktop. Keeping you capable on the move.
Simplify to maximize focus
Prefer to minimize distractions? Syncing over to the streamlined layout of Google Tasks lets you concentrate on completing tasks without the noise of complex project tools.
How it works
Event-driven triggering
Upon task creation, updates, or deletion in Asana, a webhook signals SimWorkflow to act.
Dynamic sync logic
-
New tasks
Created in the designated Google Task List.
-
Edited tasks
Reflected immediately in Google.
-
Deleted tasks
Cleanly removed to prevent clutter.
Preserved task details
Sync includes:
-
Task Title
-
Task Description/Notes
-
Due Date
-
Completion Status
Setting up this template
Step 1: Configure Asana OAuth 2.0 credentials
-
Go to your Asana developer settings and generate a Client ID and Client Secret.
-
In SimWorkflow:
-
Log into your account.
-
Visit Credentials → Create credentials → Choose OAuth 2.0.
-
From the Provider dropdown, pick Asana.
-
Name it "Asana", add your Client ID and Secret, and save.
-
Step 2: Configure Google Tasks OAuth 2.0 credentials
-
Set up an OAuth client at Google Cloud Console with access to
https://www.googleapis.com/auth/tasks
. -
In SimWorkflow:
-
Go to Credentials → Create credentials → OAuth 2.0.
-
Choose Google as the provider.
-
Name it "Google Tasks", paste your Client ID and Secret, add the scope above, and save.
-
Step 3: Configure SimWorkflow access
3.1 Generate a Personal access token
-
Navigate to Settings → Personal access tokens.
-
Name it "SimWorkflow" and set the token expiration (e.g., 30 days)
-
Create and copy the token.
3.2 Register the Token
-
Return to Credentials → Create credentials → choose Bearer token.
-
Name it "SimWorkflow", paste in your token, and save.
Step 4: Import and customize the template
-
Hit Use this template at the top-right corner.
-
Enter the Handle Events Map task by clicking on the down arrow icon.
-
For the following tasks, assign your credentials in the Configuration tab:
-
Fetch Asana Task → Asana (OAuth 2.0)
-
Create/Update/Delete Google Task → Google Tasks (OAuth 2.0)
-
Add to Variables/Remove from Variables → SimWorkflow (Bearer Token)
-
-
Save changes and activate by toggling the Enable switch.
Step 5: Activate template-level Webhook
-
Go to Workflow definitions and locate your Asana tasks to Google tasks workflow definition.
-
Click the menu (⋯) → Webhook settings.
-
Toggle Webhook on, copy the Endpoint URL, and select the user to run the workflow.
-
In the Verification request response field, paste:
{
"headers": {
"Content-Type": "text/plain",
"x-hook-secret": "${headers['x-hook-secret']}",
"X-Content-Type-Options": "nosniff"
},
"body": null
}
Step 6: Register Webhook with Asana
-
Still in Workflow definitions, click Create workflow definition.
-
Add a new HTTP Task:
-
Switch to the Configuration tab.
-
Use your Asana OAuth credentials.
-
In the HTTP request field, paste:
{ "url": "https://app.asana.com/api/1.0/webhooks", "method": "POST", "headers": { "Content-Type": "application/json" }, "body": { "data": { "target": "REPLACE_WITH_WORFLOW_DEFINITION_WEBHOOK_ENDPOINT", "filters": [ { "resource_type": "task" } ], "resource": "REPLACE_WITH_RESOURCE_ID" } } }
-
-
Trigger Test request.
-
Asana will send a POST request to the workflow definition webhook endpoint with HTTP header called
X-Hook-Secret
. -
Go to Workflow definitions and locate your Asana tasks to Google tasks workflow definition.
-
Open the first workflow and click on Input to open the workflow JSON input and locate the
x-hook-secret
in theheaders
field. Copy the value ofx-hook-secret
field.
Step 7: Add necessary variables
7.1 Google Task List ID
-
Go to Workflow definitions and locate your Asana tasks to Google tasks workflow definition.
-
Click the menu (⋯) → Variables.
-
Click Add variable.
-
Set Variable key =
taskListId
, Variable alue = your Google Task List's ID. -
Save.
7.2 Webhook Secret from Asana
-
Add another variable:
-
Variable key =
asanaWebhookSecret
, Varialbe value = thex-hook-secret
you obtained. -
Save.
Step 8: Enable Webhook payload validation
-
Go to Workflow definitions and locate your Asana tasks to Google tasks workflow definition.
-
Click the menu (⋯) → Webhook settings.
-
Under Validate the payload, enter:
Swf.hmacSha256Hex($['swf:variables'].asanaWebhookSecret, $.body) === $.headers['x-hook-signature']
-
Save the settings to ensure only genuine Asana originated webhooks are accepted.
You're all set
From now on:
-
Task creations, updates, and deletions in Asana are reflected in Google Tasks automatically.
-
No maintenance required, just complete your work and let SimWorkflow handle the rest.
-
You can track, debug, or customize the workflow anytime via the SimWorkflow interface.
In this page
- Overview
- Why use this template?
- How it works
- Setting up this template
- Step 1: Configure Asana OAuth 2.0 credentials
- Step 2: Configure Google Tasks OAuth 2.0 credentials
- Step 3: Configure SimWorkflow access
- Step 4: Import and customize the template
- Step 5: Activate template-level Webhook
- Step 6: Register Webhook with Asana
- Step 7: Add necessary variables
- Step 8: Enable Webhook payload validation
- You're all set