bobheadxi / labelist

😶 simple serverless function to attach labels to Todoist items when I can't afford premium

Home Page:https://bobheadxi.dev/labelist/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

labelist

For context: Todoist is a to-do manager that has its very nice labels feature behind a paywall.

I feel a little bad for doing this but it turns out that the Todoist REST API allows you to add labels to your tasks, regardless of whether or not you actually have premium. So this serverless just receives webhooks for task creation/update and then attaches labels via the API.

This will probably stop working at some point, but it seems to have been like this for quite a while. I imagine integrations might depend on this too, so I might be safe for the time being.

There's a bit more context in my blog post.

Example

Create a wanna-be-labelled task with your free Todoist account:

before

With the function deployed, a few seconds later:

after

Setup

I have this deployed using Zeit Now. To get the webhooks, you'll need to set up a Todoist application.

  1. Create a Todoist application.
  2. Get an API token for your Todoist account.
  3. Create an account in Zeit Now and download the CLI.
  4. Set the token in Now:
now secrets add todoist_api_token $MY_TOKEN
  1. Deploy the function:
npm run deploy
  1. Find the alias address (probably looks something like labelist.bobheadxi.now.sh) in the Zeit Now UI, and the webhook endpoint $ZEIT_ADDR/api/hooks to your Todoist application under "webhooks".

About

😶 simple serverless function to attach labels to Todoist items when I can't afford premium

https://bobheadxi.dev/labelist/


Languages

Language:JavaScript 93.3%Language:HTML 6.7%