Script para adicionar tarefas ao Todoist pela API: todoist-addtask.sh
Sou fã do Todoist há anos, inclusive porque não faltam maneiras de enviar tarefas para ele a partir de outros programas. A partir de 2025 eu passei a fazer isso pela API REST, usando um script bem simples, que se limita a uma chamada ao utilitário curl
, como você pode ver na imagem:
O script todoist-addtask.sh precisa ser configurado no ponto indicado em um comentário, usando o seu token pessoal da API do Todoist (pegue o seu em Configurações/​Integrações/​Desenvolvedor, e não o mostre a ninguém!).
Depois de transformando em executável, pode ser executado como no exemplo:
./todoist-addtask.sh "Colocar o café para aerar" "amanhã 21h"
No primeiro parâmetro (descrição da tarefa) você pode até mesmo colocar referências a #projetos, @tags ou prioridades (p1, p2, p3), como faria ao digitar uma descrição de tarefa na interface do app.
Motivação
Incluir tarefas a partir de outros programas ou scripts é bem útil para demandas que surgem da própria execução dos scripts (por exemplo, me avisar pra providenciar porque um disco de backup está perto de lotar), mas também é uma questão de conforto – por exemplo, eu tinha uma tarefa para me lembrar de tomar remédios à noite, mas não queria que ela ficasse o dia inteiro visível na interface "Hoje" do app, então coloquei em uma crontab para enviar diariamente, às 19h, e-mail ao Todoist definindo essa tarefa.
Durante anos eu usei para isso, com muito sucesso a integração que o Todoist tem com o e-mail, que também permite enviar tarefas ao Todoist a partir de scripts diversos, ou diretamente da crontab de algum servidor, sem programar nada – basta fazer o programa enviar um e-mail para o endereço adequado.
Funcionava muito bem para mim, até que no início de 2025 o Todoist resolveu colocar IA na jogada, e minhas definições de tarefas começaram a ser reescritas – não só o texto, mas também os parâmetros de execução, de várias formas que efetivamente me atrapalhavam e impediam a finalidade original. Hoje essa ~opção consta na documentação como algo que precisa ser ativado manualmente, e que pode ser desativado nas configurações avançadas, mas no meu caso a ativação foi automática e sem me perguntar nada, infelizmente.
Me desagradou, mas felizmente agora é desativável, e eu tinha a carta da API REST na manga. Espero que não resolvam atrapalhar isso também!