Save as a Google Task:
The Chrome extension Save web contents as a task, hereafter referred to as the extension, mediates a convenient transfer of selected contents from a web page opened in a browser to the user's account in the Google Tasks hosted by Google. The extension does not transmit any data anywhere except the Google Tasks API. The extension does not intentionally store any data received from the Google Identity API or Google Task API except for the selected by the user target tasklist id that is saved into the localstorage of the user’s browser.
The extension creates tasks using the Google Tasks API. Tasks can be created only in tasklists and only if the user enables the extension to do it. Thus for its function the extension needs three values received from the Google API:
When activated for the first time the extension asks the user to allow the extension to create, edit, organize, and delete all user's tasks in the Google Tasks application.
When the user grants the access to their Google Task account in the Sign in with Google popup, the extension receives an access token - a string allowing the extension to create, edit, organise, and delete user's tasks by adding the access token to web requests to the Google Tasks API.
The extension does not store or and send the access token anywhere except the Google Tasks API. The access token is handled by the Chrome Identity API. For each request to the Google Tasks API, the extension receives an access token by making a call to the Chrome Identity API.
The extension does not ask the user for any personal details. The access token cannot be used to retrieve a user’s name or email. The access token cannot be used for anything else except to create, edit, organise, and delete user's Google tasks.
Each time the extension is activated by the user by clicking on the extension’s icon, the access token is used to load the metadata of the tasklists existing in the user’s account in the Google Tasks. The extension converts the received metadata into a SELECT element in which the user can select the taskslist where new tasks are to be created. Of the received metadata the extension uses tasklist names and ids. The rest of the received properties are automatically erased from the computer memory by the browser.
Each time the user selects a tasklist from the options in the SELECT element, the selected tasklist id, not name, is saved into the user's browser localstorage API so that the previously selected tasklist can be automatically selected when the user reuses the extension on another web page.
New tasks are created in the tasklist selected by the user or the default first tasklist in the SELECT element. Only the title and details values selected by the user are sent to the Google Tasks API. The response from the Google API to the web request contains the metadata of the created task including the URL address of the created task. The URL is displayed to the user so that the user can navigate to the created tasks. The rest of the values received in the response are not used and are automatically erased from the computer memory by the browser.
When the user creates another task, the new URL replaces the URL of the previously created task. The URL of the previously created task is automatically erased from the computer memory by the browser.
When the user navigates to another web page, the URL of the last saved task is automatically erased from the computer memory by the browser.