WorkFlowyの非公式APIを使ってTextwellでリンク作成 WFLinker

今週はコレで試行錯誤。いつの間にやら12月。


WorkFlowy API

GitHubを見ていると、さりげなくWorkFlowyを読み書きするラッパーが置かれていたりする。そんな難しい理屈では無さそうなのは下記アドレスをSafariで開くと分かります。ツリー構造をJSON形式で返してくる。これをどう扱えば良いのだろう?

https://workflowy.com/get_initialization_data


芸がないけど

Textwell 1.5.2
分類: 仕事効率化,ユーティリティ
価格: \360 (Sociomedia)

リストからトピックとIDの対照表を抜き出し、リストアップするアクションにしてみました。タップするとTextwellにWorkFlowyのURLアドレスが貼り付きます。ついでに検索機能も付けたので、カーソル行をキーワードにトピックの絞り込みもできます。

Import Textwell ActionWFLinker


使い方

空行で立ち上げると、全トピックが得られます。アーカイヴされているトピックも対象となる。タップするとリンクが作成されるので、EvernoteやTodoistに転送してお使いください。上段の検索は正規表現検索になります。インクリメンタルサーチです。
トピックが取得できない場合は、ログイン画面を開きます(単純にWorkFlowyに飛ぶだけですが)。一度ログインし、内蔵ブラウザを閉じてから再度起動してください。ただしAPI認証には時間差があるので、少し時間を置くと良いようです。


力量不足

JSON自体が多段の階層構造になっていて、どう扱えば良いかわからず、下手な抜き出し方をしています。トピック内に「{」や「}」があると見かけの表示が壊れるかも知れない。申し訳ない。JSONを裁く作法があるんだと思うけど、手に負えず。
JSONの各要素は省略記号で書かれていて、id がトピックIDで、nm は name と思われます。ただ、idがハイフンで仕切られていて、それぞれが何かわからない。最後の部分はURLアドレスと同じなので、そこは何とか理解。ch は子トピックで、no は note。lm はタイムスタンプと思うけど、変換されているのでどう戻せば良いのやら。トピックの書き込みも「push_and_poll」にPOSTすれば出来るらしいけど、そのためのデータの揃え方がわからず。力及ばずです。