100万番煎じという感じの記事だけど、Twitter API v2 は初めて触ったのでメモとしてちょっと書いておきます。
Twitter API Playgroundが便利
TwitterのDeveloper Portalに入ると、API Playground使ってみてねと言われて以下のURLに飛ぶので、ここでどのAPIをどのように使うか実験できて便利でした。
oauth-playground.glitch.me
検索API
今回使いたかったのがこれです。
developer.twitter.com
こういう風にAPI Playgroundで検索クエリを入れて試したりできて、curlのリクエスト例とかもついでに取得できて便利です。
検索クエリの書式は普通のTwitterの検索と似てるけど、一部Operatorが違って、このへんを参考に組み立てると良いです。
developer.twitter.com
あとページング用にsince_idというパラメータを指定できるので、定期実行の際は最後に取得したツイートのIDを保持しておいて次回はそれ以降のものを取得するようにできます。
googleworkspace/apps-script-oauth2 が便利
GASでTwitter API v2 を叩いて認証した上で検索APIを定期実行するぞ!と思ったときに認証部分が一番面倒だけど、googleworkspace/apps-script-oauth2を使うと楽でした。ちなみにこれとは別にDeveloper Portalで自分でアプリケーションを作って、OAuth 2.0を有効化し、リダイレクト先をGASのURLにしたり、CLIENT_IDとCLIENT_SECRETを取得しておく必要はあります。
このRepositoryのsamples以下にサービスごとにサンプルコードが沢山あるので、Twitter.gsを探してこれを参考にGASを書き始めるとOAuth 2.0 の認証ができるようになります。
github.com
users.read
とかtweet.read
とか呼び出すAPIに応じて権限を調整します。ちなみに上記のサンプルコードではCLIENT_IDとCLIENT_SECRET直書きみたいになっていたので自分はScript Propertiesに入れるようにしました。
developers.google.com
Script Propertiesのバグ
自分はScript Properties使った際に以下のバグを踏んだ。登録したプロパティをUIから削除しようとしても削除されないということがあるらしく、その場合はそのプロパティを削除するだけのコードをちょろっと書いて1度実行する必要があった……。
Script properties cannot be deleted via UI [173495423] - Visible to Public - Issue Tracker
こちらからは以上です。