Twitterのタイムラインから直接モーメントに追加したい

はじめに

皆さんはTwitterのモーメントを利用していますか?

モーメントというのはツイートをまとめて公開することができる機能で、 わたしの場合は今まで描いたイラストをまとめたモーメントを作成したりしています。

しかし現在、モーメントにツイートを追加するためにはTOP画面のメニューからモーメント一覧を選択し、モーメント編集画面に入る必要があります

これは非常に面倒なのでTOPのホーム画面に表示されているツイートから直接モーメントに追加したい、したくない?したいよね?

以下の画像のような事ができるChrome拡張がないかも探してみたのですが見つかりませんでした、無念。

モーメント追加のしくみ

そこでモーメントにツイートを追加するにはどうすればよいか調べてみました。


これはモーメント編集画面でChromeの開発者ツールを開いたところですが、 モーメントにツイートを追加する際に特定のURLにPOSTリクエストを送っているようなので どのようなリクエストを送っているか見て見ました。

URL:

https://twitter.com/i/moments/edit/1306763116579942401/add

/addの手前の数字の羅列はモーメントIDでこれ自体はモーメントのURL等にもなっている値です。

Form Data:

authenticity_token: 3XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
category: tweets
moment_id: 1306763116579942401
scribeData[items][0][moments_details][moment_id]: 1306763116579942401
scribeData[items][0][moments_details][visibility]: private
tweet_id: 1306955598903177217

authenticity_token は以下のサイトによるとCSRF対策トークンとのことでログイン時に発行されるもののようです。

category はおそらく、モーメントに追加するアイテムの種類かと思われます。

moment_id は上のURLでもあったモーメントIDですね。

scribeData[items][0][moments_details][moment_id] こちらもモーメントID

scribeData[items][0][moments_details][visibility] はモーメントの公開、非公開を表す値で公開は「public」非公開なら「private」になります。

tweet_id はその名の通りツイートのIDでこちらもモーメントIDと同様ツイートのURLとして確認できるものです。

まとめ

上記のリクエストの内容を見ると

  • モーメントID
  • ツイートID
  • authenticity_token

の三つがわかればモーメントにツイートを追加することが出来そうな気がします。(もちろんこれ以外にも必要なものは出てくるとは思いますが・・・)

モーメントIDとツイートIDに関しては画面などに表示されているので簡単に取得できそうですが authenticity_tokenだけはログインごとに変わるのと、タイムラインのページになさそうなので 何らかの方法で取得する必要がありそうです。

参考

twitterに学ぶなりすまし投稿対策
TOP

コメントする

メールアドレスが公開されることはありません。

CAPTCHA