TwitterでリツイートIDを調べる方法

Twitterでは特定のツイートをリツイートした事実が重要となることがある。そのような場合、証拠としてタイムラインのスクリーンショットを残すことが一般的だが、当該アカウントがリツイートを解除してしまうと一切痕跡は残らず、スクリーンショットが捏造だと言われると反証が難しくなる。そこで、リツイートの証拠保全テクニックが必要となる。

通常、特定のツイートを証拠保全する際は、

https://twitter.com/{投稿者のスクリーンネーム}/status/{ツイートID}

のパーマリンクをWebアーカイブで保存すれば済むが、リツイートに対してのパーマリンクを取得することはできない。しかし、システム上は各人のリツイート操作ひとつひとつにもsnowflakeによる個別のIDが発行されている(これをリツイートIDと呼ぶ)ため、

https://twitter.com/{RT実行者のスクリーンネーム}/status/{リツイートID}

のパーマリンクをWebアーカイブで保存することで、リツイートの事実を第三者に証明可能な形で残すことができる。

リツイートIDは通常の手段では知得できないが、Twitterとやりとりするパケットの中に含まれており、ブラウザの開発者ツールなどで確認できる。

Twitter Japan(@TwitterJP)がリツイートした首相官邸(災害・危機管理情報) (@Kantei_Saigai)の緊急事態宣言解除のツイートを例にとって説明しよう。

Twitter Web Client(旧デザイン)での確認方法

スクリーンショット 2020-05-26 20.35.32

Twitter Web Client(旧デザイン)での確認方法は簡単で、当該リツイートの付近を開発者ツールのWebインスペクタで確認するだけで良い。div要素のdata-retweet-id属性に指定されている数字がリツイートIDとなる。

ただし、旧デザイン表示は2020年6月1日に廃止が予定されており、今後この方法は使えない。

Twitter Web Client(新デザイン)での確認方法

スクリーンショット 2020-05-26 20.54.30

Twitter Web Client(新デザイン)での確認方法は若干面倒になる。開発者ツールのネットワークタブを開き、リツイートしたアカウントのプロフィールからタイムラインを開く。そこで読み込まれた、

https://api.twitter.com/2/timeline/profile/{ユーザーID}.json?~

というJSONファイルを開き、オリジナルのツイートIDをキーにして目的のオブジェクト配列を検索機能などで探し出す。その中でid_strに指定されているのがリツイートIDとなる。

その他のクライアントでの確認方法

全てのTwitterクライアントで確認した訳ではないが、その他のクライアントでの確認方法は「Twitter Web Client(新デザイン)」での確認方法に準ずる。

ただし、使用するAPIバージョンによるのか、読み込むJSONファイルの名称は異なることがある。例えばTweetDeckの場合は

https://api.twitter.com/1.1/statuses/user_timeline.json?~

といったJSONファイルを確認する必要がある。その中でid_strに指定されているのがリツイートIDとなる。

表示例

以下がtwitter.comでオリジナルのツイートIDによるパーマリンク(https://twitter.com/Kantei_Saigai/status/1264877796741939200)にアクセスした場合の表示。

スクリーンショット 2020-05-26 22.41.08_2

以下がtwitter.comでTwitter JapanのリツイートIDによるパーマリンク(https://twitter.com/TwitterJP/status/1264890088061693955)にアクセスした場合の表示。

スクリーンショット 2020-05-26 22.41.12

ツイート上部に「(ユーザー名)さんがリツイート」と表示されているほか、本文の頭に「RT @スクリーンネーム: 」が追加され、リツイートされたことが分かりやすく表示されている。

Twitterでは、パーマリンク内のツイートIDさえ正しければスクリーンネームがでたらめな文字列でも正しいパーマリンクに自動転送される。これはリツイートIDを使ったパーマリンクでも同様である。

Twitterの仕様上、ユーザー名は自由に変更できるが、スクリーンネームは他人が使用中の文字列には変更できないため、なりすましは難しい。仮にスクリーンネームが変更されたとしてもTwitter IDチェッカー「idtwi」などを併用することで高い否認防止効果が期待できる。

ただし、リツイートが解除されたり、オリジナルのツイートが削除されたり、アカウントが削除・凍結されたりすると、リツイートIDによるパーマリンクも無効となり「このページは存在しません」と表示されてしまうことに注意。証拠保全目的ならば即座にWebアーカイブに保存することが必要となる。