TodoistのPythonのAPI管理ライブラリ「python-todoist」を使って今日の予定を確認する方法を紹介します。

具体的には、
・TodoistのAPIで日付単位で取得する方法
・TodoistのAPIで今日の予定を取得する方法
の2つについてです。

python-todoistの基本的な使い方については「「python-todoist」ライブラリでタスクを取得する方法」をお読みください。

※2019/8/30にAPIバージョンがv8にアップデートされました。v7未対応のライブラリでは動作しないのでご注意ください。
v8の変更点については「TodoistのAPIのv8の主な変更点と対応方法」をお読みだくさい。

TodoistのAPIで日付単位で取得する方法

とりあえず1日の予定を取ってくれば良い訳ですが、このAPIは管理している情報にも一癖あります。

◆取得したタスク情報の中身(v7)

いろいろ情報がありますが、「’content’」がタスク名で 「’date_string’」と「’due_date_utc’」が日付情報となります。

さて、日付は「’date_string’」から取りたいところなんですが、なんと年情報がありません。
流石に1年先のタスクはないと思いますが、何年も使っている場合は去年以前の情報を取ってきてしまう可能性があります。という訳で「’due_date_utc’」から取るのが良さそうです。

UTC時間(世界協定時)と呼ばれる時差を計算する時の基準となる時間です。日本時間はUTC時間に+9時間です。よってこの時差も考慮する必要があります。

◆取得したタスク情報の中身(v8)
v8から以下のフォーマットに変わりました。

v8の主な変更点
・dueプロパティの追加
・date_stringやdue_date_utcなどプロパティを削除
・その他プロパティ名を一部変更

わかりやすくなりましたが旧プロパティは削除するという暴挙に思い切った変更を行っています。
しかも旧プロパティはそのままなのでv8とv7以前のデータが混在している状況です。

v7以前のプロパティは残しておくといいことがないので新しいタスクを作り直した方がいいですね。

TodoistのAPIで今日の予定を取得する方法

実装内容は以下の通りです。

◆実行結果

1月24日00:01 テスト
1月24日23:59 テスト2

旧プロパティのチェックはざっとしかやってません。
v7以前のタスクは作り直すことを推奨します。

終わりに

今回はPythonで予定を取得する方法について紹介しました。

APIについて理解しておけば自作ツールとの連携も可能となるので開発の幅が広がります。

APIと自作ツールの連携は初心者でも取り組みやすい開発分野です。
何を作ったらいいかわからないという方はまずはAPIを活用して連携ツールを作ってみましょう。

オススメ記事>>SlackbotでTodoistの予定を確認する
関連記事>>【Python+Todoist】スプレッドシートにタスクを出力する

関連記事>>Todoist活用方法まとめ