ブログ

BLOG

Trelloの終わったタスクを自動アーカイブする方法

2022.8.02

  • お役立ち

タスク管理を簡単にしてくれる、みんな大好きTrello。

そんなTrelloですが、ちょっと面倒だなと思うのが「終わったタスクのアーカイブ」です。

私は個人のタスク管理にも使っていますが、気がついたら終わったタスクが溜まっていて、まとめてアーカイブしていました。
本当はタスクが完了した時点でアーカイブしていけばいいのでしょうが、地味に面倒くさいんですよね…

そんな面倒くさがりな私が導き出した答えが「月1自動アーカイブ」です。

設定はややこしいですが、一度設定すれば、指定したリストに終わったタスクをポポイっと投げておくだけで、Trelloがキレイにしてくれます。

控えめにいって、めちゃくちゃ楽です。
なので、今回は「月1自動アーカイブ」の設定方法を紹介したいと思います!

記事通りに進めれば誰でも設定できますので、ぜひ試してみてくださいね。

これからすること

【デモあり】個人タスクの管理もTrelloがおすすめで作った「自分タスク管理用ボード」の「終わったお仕事リスト」にあるカードを、毎月1日に自動アーカイブするようにします。

手順1. Trelloの情報を取得する

自動アーカイブに必要な「APIキー」「トークン」「リストID」を取得します。

APIキー取得

①Trelloにログインした状態で下記URLにアクセス

Trello – 開発者向けAPIキー

②「規約に同意する」にチェックを入れAPIキーを取得する

③表示されたAPIキーを控えておく

トークン取得

①下記URLをブラウザで開く
(<apiキー>は置き換える)

 

https://trello.com/1/authorize?key=<apiキー>&name=&expiration=never&response_type=token&scope=read,write

 

②ページ下にある許可をクリックしトークンを表示する

 

③表示されたトークンを控える

リストID取得

①下記のURLを開き、表示されたページから自動アーカイブする「ボードID」を取得する
(<apiキー><トークン>は置き換える)

 

https://trello.com/1/members/me/boards?key=<apiキー>&token=<トークン>

 

表示されたページにはTrelloの全コードが表示されるので、「Ctrl + F」で対象のボード名を検索します。
今回は「自分タスク管理用ボード」を検索しました。ボード名のすぐ前にIDが出ているので控えておきます。

②下記のURLを開き、表示されたページから自動アーカイブする「リストID」を取得する
(<ボードID><apiキー><トークン>は置き換える)

 

https://trello.com/1/boards/<ボードID>/lists?key=<apiキー>&token=<トークン>&fields=name

これでボード内にあるリストのIDが表示されます。
今回は「終わったお仕事」のリストIDを控えておきます。

手順2. GASでプロジェクトを作る

GASは(Google Apps Script)の略語で、Googleが提供するアプリケーション開発プラットフォームです。
このGASを使って、自動アーカイブするためのプロジェクトを作成します。

GASを開く

①Googleのメニューから「ドライブ」を選択

GASの始め方

 

②Googleドライブの「新規」をクリック

GASの始め方

 

③「その他」 > 「Google Apps Script」をクリック

プロジェクトを作る

①エディタを開き、下記の関数をコピペ
(デフォルトで入っている「function myFunction ( ) { }」は消す)

 

  1. function archiveCardsInList() {
  2.   const PROPERTIES = PropertiesService.getScriptProperties().getProperties();
  3.   const DATAS = getCardDatasInList(
  4.     PROPERTIES.API_KEY,
  5.     PROPERTIES.TOKEN,
  6.     PROPERTIES.LIST_ID
  7.   );
  8.   archiveCardsByDatas( DATAS, PROPERTIES.API_KEY, PROPERTIES.TOKEN );
  9. }
  10. function getCardDatasInList( apiKey, token, listId ) {
  11.   const URL =
  12.       ‘https://api.trello.com/1/lists/’ + listId + ‘/cards’
  13.     + ‘?key=’ + apiKey
  14.     + ‘&token=’ + token
  15.     + ‘&fields=id,name,dateLastActivity,shortUrl,desc’
  16.   ;
  17.   const RESPONSE = UrlFetchApp.fetch( URL );
  18.   const DATAS = JSON.parse( RESPONSE.getContentText( ‘UTF-8’ ) );
  19.   return DATAS;
  20. }
  21. function archiveCardsByDatas( datas, apiKey, token ) {
  22.   datas.forEach( function( data ) {
  23.     const ID = data[“id”];
  24.     const URL = ‘https://api.trello.com/1/cards/’ + ID;
  25.     const PAYLOAD = { ‘key’: apiKey, ‘token’: token, ‘closed’: ‘true’, };
  26.     const OPTIONS = { ‘method’: ‘put’, ‘payload’: PAYLOAD, };
  27.     UrlFetchApp.fetch( URL, OPTIONS );
  28.   } );
  29. }

 

②「プロジェクト名」「ファイル名」を変更

 

③「プロジェクトの設定」をクリック > タイムゾーンを設定 > 「スクリプトプロパティを追加」をクリック

 

④スクリプトプロパティにプロパティと値を設定する

API_KEY : 手順1で取得したTrelloのAPIキー
TOKEN : 手順1で取得したTrelloのトークン
LIST_ID : 手順1で取得したTrelloのリストID

 

⑤「トリガー」をクリック > 「トリガーを追加」をクリック

 

⑥トリガーを設定 > 「保存」をクリック

毎月1日、0~1時の間に自動アーカイブする設定にしていますが、お好みで調整してください。

 

⑦プロジェクトを実行するアカウントを選択

 

⑧エラーを解消(でない場合もある)

「advance」をクリック

「(プロジェクト名)に移動」をクリック

⑨Trelloとプロジェクトを紐づける

「Allow」をクリック

トリガーができていたら完了です。

 

実行してみる

①「エディタ」を開く > 「実行」をクリック

 

②アーカイブされたことを確認する

お疲れさまでした

これで「月1自動アーカイブ」の設定は完了です。
慣れれば10分くらいで終わるので、必要に応じて設定してみてください。

今回紹介した以外にも、Trelloではさまざまな操作を自動化できます。また、Google拡張機能と連携させることで、ガントチャートが作れたりと、あなた好みにカスタマイズすることもできます。

機能を拡張することで、まだまだ便利になる可能性があります。ぜひ、カスタマイズを楽しんでくださいね。