F.Ko-Jiの「一秒後は未来」

Twitterの古いダイレクトメッセージAPIは2018年6月に廃止らしい

Twitter のダイレクトメッセージ API のドキュメントを見返していたら、今まで使われていたエンドポイントはすべて2018年6月19日 (日本時間だと6月20日?) で廃止されると書かれていました。

例えば「POST direct_messages/new (deprecated) — Twitter Developers」などにありますが、

Important: This endpoint will be deprecated and non-functional on June 19, 2018. See the DM Migration Guide for further information.

ということだそうです。そのまま訳すと「機能しなくなる」ということなので、この日をもって使えなくなるということでしょうか。

Direct Message API migration — Twitter Developers」に移行ガイドがあるのでそれに従って変更すればいいのですが、

– Message is defined in JSON POST body
– content-type header must be set to application/json
– JSON body is not included in the generation of the OAuth signature.

といった変更があるようで、使用しているライブラリが未対応だと「Could not authenticate you.」と OAuth の認証エラーが返されてしまいます。つまり、エンドポイントが機能しなくなってアプリケーションエラーとなる恐れとともに、ライブラリの対応が遅れてエラーとなる恐れもあります。DM 関連の API を使用している場合は注意が必要です。

PHP でよく利用されているライブラリの「abraham/twitteroauth」はかなり前にプルリクが作られてるけどだいぶ放置されている…。一応このプルリクの修正内容を見れば対応方法は分かります。実際にこの通りに修正してみると上手く動作しました。

(追記: 2018-07-24) 上記プルリクは v0.9 に取り込まれたようです。

調べたら User Streams API なども同時期に廃止になるんですね。そういえばニュースで見かけた記憶があった。

» Twitterの“流れるタイムライン”なくなる? 「User Streams API」が来年6月20日に廃止 – ITmedia NEWS

(追記: 2018-07-24) TwitterOAuth での対応方法を書きました。
Twitter のダイレクトメッセージ API 新仕様に TwitterOAuth で対応する方法

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

著者について

fkoji

F.Ko-Ji

Webエンジニアやってます。最近は ドットインストール の開発がお仕事です。その傍ら、個人で Meity電車遅延なう梅酒.in#グラドル自画撮り部 の部室といったネットサービスを開発・運営してます。梅酒と草野球とリアル脱出ゲームが好きです。

» 詳しいプロフィールや運営サービスの一覧など