ぽぽろん研究所のサムシング

twitter:@poporon_labもよろしく

TwitterのAccount Activity APIを使おうと思ったらドキュメントにハメられた話【2022/08/12】

こんにちは、ぽぽろん研究所です。

短い夏休みの終わりが見え始め、頭の中ではすでに終焉のプレリュードが流れ始めています。明日はコミケの1日目で自分は参加する予定なので、切り替えていきたいと思っています。こちらは台風直撃と聞いて、すでにテンション萎え気味ですが。。。

今回はTwitterAPIの一つである、Account Activity APIを使って見ようと思った話です。Account Activity APIとは何か?簡単にいうと、高機能なTwitterAPIの総称です。具体的にはWebhookを登録して、リアルタイムに様々なことを行うことができます。

developer.twitter.com

しかし利用までの手順が面倒くさく、それどころか、公式ドキュメントのコマンドが違うという、余計に面倒くさいことになっていました。そのあたりを具体的に書いていけたらと思っています。

今回はハマったポイントとしてはWebhookの登録のところなので、その部分までについて簡単に手順を書いておきます。詳細な手順はこちらを参考ください。

  1. TwitterAPI利用レベルを上げる
  2. APIの設定を行う
  3. Webhookの登録を行う←ここでハマった

このWebhookの登録を行う際に、TwitterAPIを叩く必要があります。叩く際のコマンドは以下のようになってます。

$ curl --request POST 
 --url 'https://api.twitter.com/1.1/account_activity/all/:ENV_NAME/webhooks.json?url=https%3A%2F%2Fyour_domain.com%2Fwebhook%2Ftwitter' 
 --header 'authorization: OAuth oauth_consumer_key="CONSUMER_KEY", oauth_nonce="GENERATED", oauth_signature="GENERATED", oauth_signature_method="HMAC-SHA1", oauth_timestamp="GENERATED", oauth_token="ACCESS_TOKEN", oauth_version="1.0"'

developer.twitter.com

とりあえず、このAPI referenceのExampleに書いてある通りにコマンドを打ってみるが、何も帰ってこない、、、、どうやら、URLの記述が正確ではないらしく、このコマンドでは正常に動作しないようでした。今回はPostmanというアプリケーションを使用して、行うことで、無事にWebhookの登録を行うことができました。PostmanのアプリではAuthorization項目でOAuth1.0を選択して、Consumer Key, Consumer Secret, Access Token, Token Secretを入れ、Bodyにurlの項目を作り、自分のWebhookを値として入れます。

詳しいやり方はこちらの記事のWebhookの登録の項目を参考にしてください。この記事では最初のアカウントの設定から丁寧に解説されているので参考にしてください。

qiita.com

今回の出来事は前回もTwitterAPIを使おうとしたときに起こったことと同じような気がして、なんだかなぁといった感じです。人は過ちを繰り返すものだと、1年でリアルに経験することになってしまった気がします。

まだ、Webhookを登録しただけで、何も作っていないが、更新があればまた記事にしようと思います。それでは、また次回。