Google Tasks is a task management service built into Google Workspace, allowing users to create, organize, and track personal and professional to-do lists. The Google Tasks API is a RESTful interface that provides programmatic access to Google Tasks data, enabling applications to create, read, update, and delete tasks and task lists on behalf of authenticated users. Tasks can include titles, notes, due dates, completion status, and subtasks, and they integrate seamlessly with other Google Workspace products such as Gmail, Google Calendar, and Google Docs. The API is widely used for automating task creation from external business systems, synchronizing task data with project management platforms, and building productivity workflows that connect to-do lists with other enterprise applications.
Power end-to-end data operations for your Google Tasks API with Nexla. Our bi-directional Google Tasks connector is purpose-built for Google Tasks, making it simple to ingest data, sync it across systems, and deliver it anywhere — all with no coding required. Nexla turns API-sourced data into ready-to-use, reusable data products and makes it easy to send data to Google Tasks or any other destination. With comprehensive monitoring, lineage tracking, and access controls, Nexla keeps your Google Tasks workflows fast, secure, and fully governed.
Features
Type: API
SourceDestination
Seamless API Integration: Connect to any endpoint as source or destination without coding, with automatic data product creation
Visual Composition & Chaining: Build complex integrations using visual templates, chain API calls, and compose workflows with data validation and filtering
API Proxy: Expose curated slices of your data securely with a secure and customizable API proxy that validates and transforms data on the fly
Request optimization with intelligent batching, retry, and caching to minimize API calls and costs
An active Google account with access to the Google Tasks data you want to connect is required. The account must have Google Tasks enabled and accessible. Google Tasks is included with all personal Google accounts and Google Workspace accounts.
The Nexla Google Tasks API connector uses OAuth 2.0 to authenticate with the Google Tasks API. During the authorization process, Nexla will request access to the following scope:
https://www.googleapis.com/auth/tasks — Allows Nexla to create, read, update, and delete tasks and task lists on your behalf.
This scope grants full read and write access to Google Tasks, which is required for both data ingestion and data delivery workflows. The authorization is managed entirely by Google's OAuth 2.0 infrastructure, and access can be revoked at any time from your Google Account permissions page.
If you are using a Google Workspace (formerly G Suite) account, your organization's administrator may need to approve third-party application access. If you encounter an authorization error during the OAuth flow, contact your Google Workspace administrator to ensure that the Nexla application is permitted to access Google Tasks data. For additional details, refer to Google's documentation on controlling third-party app access.
After selecting the data source/destination type, click the Add Credential tile to open the Add New Credential overlay.
Enter a name for the credential in the Credential Name field and a short, meaningful description in the Credential Description field.
Click the Authorize button to initiate the OAuth 2.0 authorization flow. A new browser window will open, directing you to the Google sign-in page.
Sign in with the Google account that has access to the Google Tasks data you want to connect. If you are already signed in, select the appropriate account from the list.
Review the permissions that Nexla is requesting, and click Allow to grant access. Google will redirect you back to Nexla once authorization is complete.
The OAuth authorization flow is managed entirely by Google. Nexla does not have access to your Google account password. The authorization grants Nexla a secure token that allows it to access Google Tasks data on your behalf. This access can be revoked at any time from your Google Account permissions page.
Click the Save button at the bottom of the overlay. The newly added credential will now appear in a tile on the Authenticate screen during data source/destination creation and can be selected for use with a new data source or destination.
To create a new data flow, navigate to the Integrate section, and click the New Data Flow button. Select the Google Tasks API connector tile, then select the credential that will be used to connect to the Google Tasks API instance, and click Next; or, create a new Google Tasks API credential for use in this flow.
Nexla provides pre-built templates that can be used to rapidly configure data sources to ingest data from common Google Tasks API endpoints. Each template is designed specifically for the corresponding Google Tasks API endpoint, making data source setup easy and efficient. Select the endpoint from which this source will fetch data from the Endpoint pulldown menu. Available endpoint templates are listed in the expandable boxes below. Click on an endpoint to see more information about it and how to configure your data source for this endpoint.
List Task Lists
Returns all task lists for the authenticated Google Tasks user. Use this endpoint to discover and enumerate a user's task lists before retrieving tasks from specific lists.
Response data is extracted from $.items[*] — each element represents one task list with its ID, title, and last-updated timestamp.
Task list IDs returned by this endpoint are required by the List Tasks in a List and Get Task endpoints. Use the task list ID as a lookup value in chained Nexla data flows.
List Tasks in a List
Returns all tasks from a specific Google Tasks task list. Use this endpoint to ingest tasks for analysis, synchronization with other project management tools, or productivity reporting.
Response data is extracted from $.items[*] — each element represents one task with its title, status, due date, and notes.
Configure the following parameter: Task List ID — the unique identifier of the task list whose tasks you want to retrieve. Task list IDs can be obtained from the List Task Lists endpoint.
Use the dueMin and dueMax query parameters appended to the URL to filter tasks by due date. For example, append ?dueMin=2024-01-01T00:00:00Z or use date/time macros for incremental data ingestion.
Get Task
Returns a specific task from a Google Tasks task list by task ID. Use this endpoint when you need to retrieve or reprocess details for a known individual task.
Response data is extracted from $ (the root object).
Configure the following parameters: Tasklist — the unique identifier of the task list containing the task; Task — the unique identifier of the task to retrieve.
Both task list IDs and task IDs can be obtained by first using the List Task Lists and List Tasks in a List endpoints respectively.
Get Task List
Returns a specific task list for the authenticated user by task list ID. Use this endpoint to retrieve the details and properties of a single known task list.
Response data is extracted from $ (the root object).
Configure the following parameter: Tasklist — the unique identifier of the task list to retrieve.
Task list IDs can be obtained from the List Task Lists endpoint. Use this endpoint when you need to verify or refresh metadata for a specific task list.
List Hotel Views
Lists hotel views for a specified Google Travel Partner account with optional filtering and pagination. Use this endpoint to retrieve the status and configuration of hotel property listings.
Response data is extracted from $.hotelViews[*] — each element represents one hotel view with its property details and listing status.
Configure the following parameters: Parent — the resource name of the Travel Partner account; Filter — optional filter expression to narrow results by hotel status or partner ID.
This endpoint is part of the Google Travel Partner API and requires Travel Partner API access enabled in your Google Cloud project.
List Reconciliation Reports
Returns a paginated list of reconciliation reports for a specified Google Travel Partner account. Use this endpoint to retrieve a history of hotel booking reconciliation reports.
Sends a GET request to the Travel Partner API reconciliation reports endpoint with the specified date range and pagination parameters.
Response data is extracted from $.reconciliationReports[*] — each element represents one report with its name and metadata.
Configure the following parameters: End Date and Start Date — optional date range filters; additional optional parameters for API key, OAuth token, and response format.
This endpoint is part of the Google Travel Partner API. Use Start Date and End Date to limit results to a specific reporting period, which is useful for scheduled reconciliation workflows.
Once the selected endpoint template has been configured, click the Test button to the right of the endpoint selection menu to retrieve a sample of the data that will be fetched. Sample data will be displayed in the Endpoint Test Result panel on the right, allowing you to verify that the source is configured correctly before saving. If the sample data is not as expected, review the selected endpoint and associated settings, make any necessary adjustments, and test again.
Google Tasks API sources can also be manually configured to ingest data from any valid Google Tasks API endpoint, including endpoints not covered by the pre-built templates, chained API calls, or custom request parameters. Select the Advanced tab at the top of the configuration screen, and follow the instructions in Connect to Any API to configure the API method, endpoint URL, date/time and lookup macros, path to data, metadata, and request headers.
The Google Tasks API base URL is https://tasks.googleapis.com/tasks/v1/ (for example, https://tasks.googleapis.com/tasks/v1/users/@me/lists to list task lists, or https://tasks.googleapis.com/tasks/v1/lists/{'{tasklist}'}/tasks to list tasks in a list). List endpoints wrap records inside an items array — set Path to Data to $.items[*] to extract individual records; the response also carries kind and nextPageToken metadata fields outside that array. The tasks.list endpoint supports dueMin and dueMax query parameters (RFC 3339 timestamps) for filtering tasks by due date, which are useful as date/time macros for incremental ingestion runs. You do not need to add an Authorization header — this is handled automatically by your Google Tasks API credential.
Once all of the relevant settings have been configured, click the Create button in the upper right corner of the screen to save and create the new Google Tasks API data source. Nexla will now begin ingesting data from the configured endpoint and will organize any data that it finds into one or more Nexsets.
Click the + icon on the Nexset that will be sent to the Google Tasks API destination, and select the Send to Destination option from the menu. Select the Google Tasks API connector from the list of available destination connectors, then select the credential that will be used to connect to the Google Tasks API, and click Next; or, create a new Google Tasks API credential for use in this flow.
Nexla provides pre-built templates that can be used to rapidly configure destinations to send data to common Google Tasks API endpoints. Select the endpoint to which this destination will send data from the Endpoint pulldown menu. Then, click on the template in the list below to expand it, and follow the instructions to configure additional endpoint settings.
Insert Task
Creates a new task on a specified Google Tasks task list. Use this endpoint to programmatically add tasks from external data sources such as CRM records, support tickets, or form submissions.
Configure the following parameter: Tasklist — the unique identifier of the task list in which to create the new task.
The request body should include at minimum a title field. Optional fields include notes, due (RFC 3339 timestamp), and status (needsAction or completed). The Google Tasks API does not support batch task creation — each task requires a separate API call.
Update Task
Replaces the full content of a specified task on a Google Tasks task list. Use this endpoint to overwrite all task fields with new data from an external source.
Configure the following parameters: Tasklist — the unique identifier of the task list; Task — the unique identifier of the task to update.
This endpoint performs a full replacement of the task resource. All fields must be provided in the request body, as omitted fields will be cleared. Use Patch Task List if you need partial update semantics.
Patch Task List
Updates the authenticated user's specified task list using patch semantics, applying only the fields provided in the request. Use this endpoint to rename a task list or update its properties without overwriting unspecified fields.
Configure the following parameter: Tasklist — the unique identifier of the task list to update.
Only fields included in the request body will be updated — unspecified fields retain their current values. This is the recommended approach for updating task list titles without affecting other properties.
Create Task List
Creates a new task list and adds it to the authenticated user's Google Tasks account. Use this endpoint to programmatically provision task lists for new projects, users, or workflow categories.
The request body must include a title field specifying the name of the new task list.
The newly created task list's ID is returned in the API response. Capture this ID via the Response Webhook feature if you need to reference the new list in subsequent operations.
Move Task
Moves a specified task to another position in the task list or to a different task list entirely. Use this endpoint to reorganize tasks programmatically as part of workflow automation.
Sends a POST request to the Google Tasks API move endpoint with the target position or list in the request parameters.
Configure the following parameters: Tasklist — the source task list ID; Task — the task ID to move; Parent — optional ID of the parent task (for subtask nesting); Previous — optional ID of the preceding task; Destinationtasklist — optional ID of the destination task list if moving to a different list.
Moving a task to a different task list creates a new task in the destination list and deletes the original. The task ID will change after a cross-list move.
Clear Completed Tasks
Clears all completed tasks from a specified task list by marking them as hidden. Use this endpoint in scheduled cleanup workflows to maintain a clean, active task list.
Sends a POST request to the Google Tasks API clear endpoint for the specified task list.
Configure the following parameter: Tasklist — the unique identifier of the task list from which to clear completed tasks.
Cleared tasks are marked as hidden and removed from the default list view, but they are not permanently deleted. This operation cannot be undone programmatically — cleared tasks cannot be restored via the API.
Delete Task
Permanently deletes a specified task from a Google Tasks task list. Use this endpoint to remove tasks that are no longer relevant as part of automated data lifecycle workflows.
Configure the following parameters: Tasklist — the unique identifier of the task list; Task — the unique identifier of the task to delete.
Task deletion is permanent and cannot be undone. Retrieve task IDs using the List Tasks in a List source endpoint before deletion.
Delete Task List
Permanently deletes a specified task list and all tasks within it from the authenticated user's Google Tasks account. Use this endpoint to remove obsolete task lists in automated cleanup workflows.
Configure the following parameter: Tasklist — the unique identifier of the task list to delete.
Deleting a task list permanently removes all tasks within it. This action cannot be undone. Retrieve task list IDs using the List Task Lists source endpoint before deletion.
Set Hotels Live on Google
Activates hotels to appear live on Google travel properties for a Travel Partner account. Use this endpoint to control the live status of hotel listings programmatically.
Sends a request to the Google Travel Partner API to set the live status for specified hotel properties.
Configure the following parameters: Account Id — the Travel Partner account identifier; Live on Google — flag to set the live status; Partner Hotel IDs — the list of hotel IDs to activate or deactivate.
This endpoint is part of the Google Travel Partner API and requires Travel Partner API access enabled in your Google Cloud project.
Query Free Booking Links Report Views
Queries free booking links report views with optional filtering and aggregation for a Google Travel Partner account. Use this endpoint to trigger report generation or submit report query parameters.
Sends a POST or query request to the Travel Partner API free booking links report endpoint.
Configure the following parameters: Account Name — the Travel Partner account resource name; Aggregate By, Filter, Page Size, Page Token — optional query controls.
This endpoint is part of the Google Travel Partner API. Use the corresponding source endpoint to retrieve the results after submission.
Query Participation Report Views
Queries participation report views with optional filtering and aggregation for a Google Travel Partner account. Use this endpoint to submit participation report query parameters.
Sends a request to the Travel Partner API participation report endpoint with filtering and aggregation parameters.
Configure the following parameters: Account Name — the Travel Partner account resource name; Aggregate By, Filter, Page Size, Page Token — optional query controls.
This endpoint is part of the Google Travel Partner API and requires Travel Partner API access enabled in your Google Cloud project.
Query Property Performance Report Views
Queries property performance report views with optional filtering and aggregation for a Google Travel Partner account. Use this endpoint to submit property performance report query parameters.
Sends a request to the Travel Partner API property performance report endpoint with filtering and aggregation parameters.
Configure the following parameters: Account Name — the Travel Partner account resource name; Aggregate By, Filter, Page Size, Page Token — optional query controls.
This endpoint is part of the Google Travel Partner API. Combine with the Participation Report endpoint for a comprehensive hotel listing health assessment.
Create Reconciliation Report
Creates a new reconciliation report for a specified Google Travel Partner account with provided file contents. Use this endpoint to submit hotel booking reconciliation data to Google.
Sends a POST request to the Travel Partner API reconciliation reports endpoint with the report file data in the request body.
Configure the following parameters: Account — the resource name of the Travel Partner account; File Contents — the report data; File Name — the name of the report file; Report Name — the resource name for the new report.
This endpoint is part of the Google Travel Partner API. Reconciliation reports are used to match Google's booking data with your own records for billing and performance verification.
Update Brand
Updates Travel Partner brand information including display names, icons, and approval states. Use this endpoint to manage hotel brand configurations for a Google Travel Partner account.
Sends a PATCH or PUT request to the Travel Partner API brands endpoint with the updated brand data.
Configure the following parameters: Brand Name — the resource name of the brand to update; Update Mask — the list of fields to update; additional optional fields for display names, icons, and states.
This endpoint is part of the Google Travel Partner API. Only fields specified in the Update Mask will be modified. Display name and icon changes require Google approval before they are activated on travel surfaces.
Create Account Link v2
Creates a new account link between a Google Travel Partner account and an external partner account. Use this endpoint to establish programmatic linkages between Travel Partner accounts and partner systems.
Sends a POST request to the Travel Partner API account links endpoint with the link configuration in the request body.
Configure the following parameter: Account — the resource name of the Travel Partner account under which the link will be created.
This endpoint is part of the Google Travel Partner API. The request body must include the external account reference and the desired link type. This is the v2 version of the Create Account Link endpoint.
Google Tasks API destinations can also be manually configured to send data to any valid Google Tasks API endpoint. Select the Advanced tab at the top of the configuration screen, and follow the instructions in Connect to Any API to configure the API method, data format, endpoint URL, request headers, attribute exclusions, record batching, and response webhooks.
The Google Tasks API accepts and returns JSON. The base URL is https://tasks.googleapis.com/tasks/v1/; create a task with a POST to https://tasks.googleapis.com/tasks/v1/lists/{'{tasklist}'}/tasks, and include the task list and task ID at the end of the URL for PATCH/PUT/DELETE operations (e.g., .../lists/{'{tasklist}'}/tasks/{'{task}'}). The API does not have a native batch endpoint for task operations — each task must be created or updated individually, so when batching is enabled Nexla sends the batched records as individual calls within the configured batch size. You do not need to add an Authorization header — this is handled automatically by your Google Tasks API credential.
Once all endpoint settings have been configured, click the Done button in the upper right corner of the screen to save and create the destination. To begin sending data to the Google Tasks API, open the destination resource menu, and select Activate.
The Nexset data will not be sent to the Google Tasks API until the destination is activated. Destinations can be activated immediately or at a later time, providing full control over data movement.