外部Twitterアプリが使用できなくなった背景はちょっと違うと考えている

2023-01-23
  • B!

Web programming 雑感

Twitter APIで何をやっても良いというものではない

今回の騒動について、Twitterの開発者契約も読まずに報道している内容が一人歩きしている感が気になるので、書いてみることにした。何が言いたいのかというと、そもそもTwitter APIの開発者契約の仕組み通りにTwitterが運営しているだけで、言い方悪いがタダ乗りしているサービスが騒いでいるとも解釈できるから。

Twitterアプリで起きていること

2023/1/12ごろから公式ではないTwitterアプリのいくつかが急に使用できなくなった。

原因はアプリに組み込まれているTwitter APIキーが使用できなくなったから。仕組みとしては単純な理由。3rd ParyのアプリがTwitterと連携する際にはTwitterから発行してもらうAPIキーを使用して連携するのだが、Twitter側がAPIキーの認可を取り消したのだ。

実際に使えなくなったアプリの一覧はこちら

Twitterが予告なく急に方針を変更するなんてひどい、、、とか巷では言われていますね。

要するに起きている状況はこうだ。

  1. APIの契約にTwitter類似アプリの開発禁止が追記された
  2. Twitterは契約に反しているアプリを粛々とAPI利用停止にしている
  3. APIの開発者契約が急に変更された

実は開発者契約の大枠は昔と変わっていない

色々と文句や不満が出ているが、開発者契約(Developer Agreement)の枠組みは以前の版から大きく変わってはいない。変更箇所はこちらにdiffで確認ができる。

全体的にみると、公式アプリに似ている3rd partyクライアントアプリの開発を禁じる条項が追記されたが、その他は概ね従来通りの内容である。余談だが、日本語版の開発者契約書も存在するが、和訳は便宜的な和訳であり公式見解は英文の原本に基づくという立場の企業は多いので原本の英語の契約書を確認した方がよい。

Twitterは禁止事項を黙認していた?

今回の改訂とAPI利用停止の動きについては、APIを使用したTwitterクライアントアプリを公開することが禁止条項へ追加されたことよりも、以前から記載されていたが黙認されていた禁止条項をTwitterが厳しく監視するようになった、という運営姿勢の変化が大きいのではなかろうかと考えている。開発者契約書には禁止事項やTwitterの権限がいろいろと書いているのだが、実際にそれらが話題になるほど厳しくBANされることは事例はこれまであまりなかった。

個人の感覚としては、開発者契約が少々変更しただけの割には騒ぎが大きいなと思う。

改訂前から開発者契約に記載されていたこと

では具体的に開発者契約の内容で以前から変わっていない内容をピックアップしてみる。

APIを使用してやっても良いこと

Copy a reasonable amount of and display the Twitter Content on and through your Services to End Users, as permitted by this Agreement;

訳すと、APIで合理的な量のTwitterコンテンツをコピーして表示することはOKだ。しかしこの条文の解釈によっては程度問題だが3rd Partyクライアントアプリはそもそもこの条項に対して限りなくグレーなのだ。

なぜかというとTwitterアプリはユーザーのTwitterのコンテンツを全てスマホアプリ内に表示するし、スムーズにスマホ画面でスクロール表示するためにコンテンツをキャッシュにコピーしている。となると、「これは全量データ利用であって、合理的な量のコンテンツ表示とコピーではないのでアクセス禁止にします」とTwitterはいつでも言えただろう。

次にAPIの用途で禁止していることを確認してみる

B. Commercial Use Restrictions.

商用利用の禁止、である。非営利団体やNGOを除きAPIを使用したサービスによるマネタイズは以前から禁止されている。要するに有料のTwitterクライアントアプリは明らかにアウトだ。また商用利用が定義する範囲は広く、無料アプリであっても独自のアプリ内広告を表示するものも契約を真面目に解釈すると以前からNGだった。

広告収入の改善が目的なのだろうか?

ということで、今回の騒動は従来のグレーゾンを明確にしてTwitterのコンテンツを丸ごと表示するクライアントアプリは禁止したと解釈ができることは当然なのだが、そんなことよりも開発者契約に定義されている権限をTwitterが厳しめに行使するようになったという変化の方が大きい。

これまでTwitterとしても苛烈なSNS業界の競争に勝つためにアクティブユーザーを伸ばしたいし、インフルエンサーが投稿しやすいツールからたくさん発信されてバズった方がよいだろうから、3rd Partyクライアントアプリを黙認していたところはあっただろう。しかし、3rd ParyアプリはTwitterの広告を全て表示できないし、3rd Paryアプリ内広告ではTwitetrの儲けに繋がらないという問題があることを考えると、3rd Partyクライアントアプリを禁止したくなることが想像できる。

急に契約が変更されたことについて

開発者契約には、Twitterはいきなり契約書を更新してもOKと定義されているのでこれはしょうがない(III. Updates and Removalsの項)。

Twitterには商用利用可能なAPIもある

今回は非商用利用向けの開発用APIの運営ポリシーが変わっとことによる騒動であった。こんなAPIポリシーで安定運用しようと考えても先行き不安であろう。しかし実はTwitterには開発用APIの他に、商用利用しても良い有料APIのメニューが別にあるのだ。

それがNTTデータの「なずき」というサービス。

Twitterの特約店だけができるサービスと言っても良いだろう。開発用APIでは取得できないデータを取ることもできる。例えば1週間以上前の過去ツイート検索ができる。NTTデータがTwitterから特約で取得したデータを再版するサービスという構造だ。3rd PartyはAPIの利用契約をNTTデータと締結する。この方が日本の商習慣で契約と支払いができるメリットがある。

※宣伝のつもりはないのだが、国内で使えるサービスがこれしかないのでこちらを紹介せざるを得ない。

Twitter本体としてはAPIビジネスによる収益化の側面と、Twitter上に流れるデータ管理のコンプライアンスの観点から、ちゃんとした法人のみへデータ提供する制度を構築するという意味がある。

業務でTwitter管理ツールを採用するときに考慮に入れること

広告宣伝やSNSマーケティングでTwitterを使用する際、本格的に取り組むと3rd Partyの分析ツールや時間投稿ツールなどを使用することになるだろう。一時的な利用であればどのようなツールを使用してもいよいが、中長期的に安定したTwitter管理ツールを求める場合はどのようなAPIでTwitterデータを扱っているツールなのか注意して業者を選定すべきだ。

業務で使用するTwitter管理用の3rd Partyツールを選定する際は、「なずき」のような商用利用可の全量データ収集APIをバックエンドで使用しているかツールのスペックを確認することをおすすめする。安定運用できているツールを提供している企業であれば担当営業へ「バックエンドでは商用のTwitter全量データAPIを使用しているか」と聞けば教えてくれる。

企業のツールに頼るという制約

Twitter APIと騒動について書いた。Twitterはボランティアではないので、結局のところAPIも収益に効果があるから提供しているものだ。そう考えると今月起きたことは騒動でもなんでもなくて、Twitterが経営的な判断をしただけの話であろう。

騒動になった要因は、情報発信や提供が特定の企業のツールに頼りっきりになっているためではないだろうか。元締めの企業がポリシーを変えると皆が困るということだ。個人でホームページや掲示板を作っていた25年前は面倒だったし進化もゆっくりだったけど誰にも縛られずに自由に発信ができたものだ。今は手軽に発信してコミュニティが急成長できるTwitterのようなツールがある反面、いち企業に握られるという短所もあると言える。