# Google Tasks

Create, find, update, move, complete and delete tasks in Google Tasks, and manage task lists.

## Connect Google Tasks

1. In the sidebar, open **Connections** and press **Add connection**.
2. Type `google tasks` and choose **Google Tasks**.
3. Press **Sign in with Google**.
4. Choose your account in Google’s window and allow access.

You should see **Signed in as** and the account’s address.

You can also connect from a step: under **Connection**, press **New**.

**What if it says “Google sign-in isn’t set up here”?**

This installation has no Google app yet. An admin of the installation sees **Set up Google sign-in** instead, and sets it up once for everyone:

1. In Google Cloud, create an OAuth client of type **Web application**, and turn on the API for Google Tasks.
2. In GoRunner, copy the **Redirect address to add in Google Cloud**, and add it to the client.
3. Paste the **Client ID** and **Client secret**, then press **Save and sign in**.

Publish the app in Google Cloud. An app left in Testing signs everyone out after 7 days.

Everyone else sees who to ask.

[Set up Google sign-in for connections](https://docs.gorunner.io/self-host/oauth-apps)

**Can I use my own Google app?**

Yes. In the sheet, open **Use your own Google app** and paste its **Client ID** and **Client secret**. Add the **Redirect address to add in Google Cloud** to your app first. The connection then signs in through your app instead of the installation’s.

[Connections](https://docs.gorunner.io/build/connections) says how to sign in again, rename or delete it. In a product that embeds GoRunner, **Add connection** can be missing: then [your provider makes connections](https://docs.gorunner.io/embed/customer-connections) for you.

## Do things in Google Tasks

Add a **Google Tasks** step, choose a **Resource**, then an **Operation**. Choose a row to see its fields.

- [Task](https://docs.gorunner.io/apps/google-tasks#fields-f-task): Create · Get · Get Many · Update · Move · Delete
- [Task List](https://docs.gorunner.io/apps/google-tasks#fields-f-tasklist): Create · Get · Get Many · Rename · Clear Completed · Delete

To start a workflow from Google Tasks, use a [Schedule](https://docs.gorunner.io/apps/schedule), [Webhook](https://docs.gorunner.io/apps/webhook) or [Form](https://docs.gorunner.io/apps/form) trigger.

Later steps read a step’s output by its name: see [Use data from earlier steps](https://docs.gorunner.io/build/use-data-from-earlier-steps).

## Limits

- A reply from Google Tasks can be up to 16 MB (a file download can have its own limit). A larger one fails the step; it is never cut short.
- When Google Tasks says to slow down (429), the step waits as long as it asks, if the step’s time allows. Otherwise it fails and says when to try again.

Not in your list? See [When an app isn’t here](https://docs.gorunner.io/apps/when-an-app-isnt-here#q-not-in-list).

## For developers

In the API, which calls apps pieces, Google Tasks is `pieceId: "googletasks"` with `actionId: "googletasks"`, set by `resource` and an `operation_…` field, such as `operation_task`. [Get an app](https://docs.gorunner.io/api/apps/get-app) returns every field.

It can change something outside the run (`writes_external`). See [How versions and side effects work](https://docs.gorunner.io/apps#q-versions).

### Google Tasks › Task

### Create

- **Task List · Required**: The task list the task is in (My Tasks unless you pick another). Default: @default.
- **Title · Optional**: The task's title (at most 1,024 characters).
- **Notes · Optional**: Details under the title (at most 8,192 characters).
- **Due Date · Optional**: The day the task is due. Google Tasks keeps the date only: a time is dropped.
- **Status · Optional**: Open or completed. Empty leaves it as it is (a new task starts open). Options: Open, Completed.
- **Parent Task ID · Optional**: Make it a subtask of this task. Empty puts it at the top level.
- **After Task ID · Optional**: Place it right after this task (a sibling). Empty puts it first.

### Get and Delete

- **Task List · Required**: The task list the task is in (My Tasks unless you pick another). Default: @default.
- **Task ID · Required**: The task's id (the id a Create or Get Many step returned).

### Get Many

- **Task List · Required**: The task list the task is in (My Tasks unless you pick another). Default: @default.
- **Include Completed · Optional**: Include completed tasks. On by default.
- **Include Hidden · Optional**: Include hidden tasks. Tasks completed in the Google Tasks app or Gmail are hidden, so leave this on to see them. On by default.
- **Include Deleted · Optional**: Include deleted tasks. Off by default.
- **Include Assigned · Optional**: Include tasks assigned to you from Google Docs or Chat spaces. Off by default.
- **Due From · Optional**: Only tasks due on or after this date.
- **Due Before · Optional**: Only tasks due before this date.
- **Completed From · Optional**: Only tasks completed at or after this time.
- **Completed Before · Optional**: Only tasks completed before this time.
- **Changed Since · Optional**: Only tasks changed at or after this time.
- **Return All · Optional**: Read every task, page by page (at most 2000; past that the step fails rather than stop early). Off by default.
- **Limit · Optional**: How many tasks to return (1–2000). Default: 50. Shows when **Return All** is off.

### Update

- **Task List · Required**: The task list the task is in (My Tasks unless you pick another). Default: @default.
- **Task ID · Required**: The task's id (the id a Create or Get Many step returned).
- **Title · Optional**: The task's title (at most 1,024 characters).
- **Notes · Optional**: Details under the title (at most 8,192 characters).
- **Due Date · Optional**: The day the task is due. Google Tasks keeps the date only: a time is dropped.
- **Status · Optional**: Open or completed. Empty leaves it as it is (a new task starts open). Options: Open, Completed.

### Move

- **Task List · Required**: The task list the task is in (My Tasks unless you pick another). Default: @default.
- **Task ID · Required**: The task's id (the id a Create or Get Many step returned).
- **Parent Task ID · Optional**: Make it a subtask of this task. Empty puts it at the top level.
- **After Task ID · Optional**: Place it right after this task (a sibling). Empty puts it first.
- **To Task List · Optional**: Move the task to this list. Empty keeps it in its list.

### Google Tasks › Task List

### Create

- **Title · Required**: The list's name (at most 1,024 characters).

### Get, Clear Completed and Delete

- **Task List · Required**: The task list.

### Get Many

- **Return All · Optional**: Read every task list, page by page (at most 2000; past that the step fails rather than stop early). Off by default.
- **Limit · Optional**: How many task lists to return (1–2000). Default: 100. Shows when **Return All** is off.

### Rename

- **Task List · Required**: The task list.
- **Title · Required**: The list's name (at most 1,024 characters).

Source: https://docs.gorunner.io/apps/google-tasks
