Overview
タスク管理ツール remember the milk のAuth Tokenの発行方法に躓いたので、備忘録として記載
事前準備
- remember the milkで会員登録する
- API IntroductionでAPI keyの申請を行う
frobの取得
Auth Token発行時に利用するパラメータの取得を行う
frob取得のURL
https://www.rememberthemilk.com/services/auth/?api_key="API key申請時に取得"&perms=read&api_sig="api_sig(署名 ※後述)"
API Sigの生成
frob取得のURLのパラメータとして、署名(api_sig
)が必要
下記のパラメータを結合し、md5で暗号化する
- API key申請時に取得した
secret_key
(値のみ) - API key申請時に取得した
api_key
(keyと値) -
perms
と 種類(read
,delete
など)
require 'digest/md5'
code = secret_key
code << 'api_key' << api_key
code << 'perms' << 'read'
frob = Digest::MD5.hexdigest(code)
URLにアクセスし、下記のようなコードが出力されればOK
No callback URL specified for this API key. Your frob value is "ここにfrobのコードが表示される"
Auth Tokenの発行
Auth Token取得のURL
https://api.rememberthemilk.com/services/rest/?api_key="API key申請時に取得"&format=json&frob="取得したfrob"&method=rtm.auth.getToken&api_sig="api_sig(署名)"
API Sigの生成
Auth Token取得のURLのパラメータとして、署名(api_sig
)が必要
下記のパラメータを結合し、md5で暗号化する
- API key申請時に取得した
secret_key
(値のみ) - API key申請時に取得した
api_key
(keyと値) -
format
、json
を指定 -
frob
、上記で取得したfrob
(keyと値) -
method
、rtm.auth.getToken
(keyと値)
require 'digest/md5'
code = secret_key
code << 'api_key' << api_key
code << 'format' << 'json'
code << 'frob' << frob
code << 'method' << 'rtm.auth.getToken'
api_sig = Digest::MD5.hexdigest(code)
コード
発行用のRuby Script / Rustで作成しました