GASでX(Twitter)自動投稿が動かない原因!OAuth2.0の認証の壁とAIの罠

スプレッドシート(スプシ)とGoogle Apps Script(GAS)を使ってX(旧Twitter)へ自動投稿する仕組みは、業務効率化の強力な手段です。
しかし、この自動化の過程で「認証エラー」にハマるケースが続出しています。

その原因は、X APIの認証方式がOAuth2.0へ変更されたことと、その古い情報と新しい情報を混ぜて生成AI(Gemini/Grokなど)が誤ったコードを提示するハルシネーションの罠にあると思いました。
この記事では、筆者が実際に直面した動かないコードの泥沼から脱出し、最新のOAuth2.0認証をクリアして自動投稿に成功した具体的な教訓と解決の糸口を解説します。

1. GAS X 自動投稿で生成AIのコードが動かない原因

スプレッドシート(スプシ)からGoogle Apps Script(GAS)を使って、X(旧Twitter)へ自動投稿する仕組みを構築しました。しかし、このシンプルな自動化を達成するまでに、私は生成AIの大きな罠にハマり、無駄な時間を費やしてしまいました。

「認証」というAPI実装の根幹に関わる部分で仕様変更があったにもかかわらず、生成AIは古い情報と新しい情報を混ぜた、もっともらしいが全く動かないコードを提供してきたからです。

生成AI(Gemini/Grok)の提案がことごとくエラーになった理由

今回、最初に頼ったのはGeminiやGrokといった生成AIでした。
「スプレッドシートからGASXに自動投稿するコード」を尋ねると、AIはすぐにコード付きで、ステップごとの詳細な手順を返してくれました。

しかし、その通りに試しても、投稿はことごとく失敗。
認証をクリアしたと思っても、実際に投稿処理が動かない、といった状況が続き、時間だけが浪費されていきました。

2. 失敗の本質:X APIの認証方式OAuth2.0 へ変更されていた

原因は、X APIの仕様が変更されていたことでした。

OAuth1.0 と OAuth2.0 の仕様混在がハルシネーションの原因

X APIの認証方式は、過去に OAuth1.0 から OAuth2.0 へと大きく変更されています。

生成AIの回答は、この新旧の認証方式に関する情報を混ぜて提供していたため、一見正しそうなコードに見えても、実際にAPIを叩くと認証エラーになってしまうという典型的なハルシネーション(嘘の情報)を生み出していたのです。

この認証方式の変更により、多くの開発者が「OAuth2.0」を前提とした最新のGASコードを探すことになりました。生成AIが提供したコードは、まさにこの過渡期の情報が混ざったものでした。

  • テキスト投稿:現在は主に OAuth2.0 が推奨・必要。
  • 画像投稿: OAuth1.0 の仕様が残っていたり、組み合わせて使ったりする必要があるようで、この辺りが特に複雑化していました。

3. OAuth2.0 認証における「初回手動承認プロセス」の壁

OAuth2.0 の認証で厄介だったのが、初回の手動承認プロセスです。

GASによる永続トークン取得に必要な手動ステップ

APIキーを設定するだけでなく、最初にX側から発行される認証用のURLにアクセスし、ユーザー自身が「許可」ボタンを押すという操作が必要です。この操作を行うことで、GAS(サーバー側)が永続的に利用できるトークンを取得できます。

この仕組みを知らないと、「コードは合っているはずなのに、なぜか投稿できない」という状況になり、エラーの原因がコードにあるのか、認証プロセスにあるのか、全く判断できません。
AIの指示にはこの重要な「手動ステップ」が曖昧だったり、含まれていなかったりするため、エラーの泥沼にハマる結果となりました。

4. 解決の糸口:GAS X 自動投稿に必要な「シンプルで最新の情報」

結局、AIの回答を信用するのをやめ、Google検索で色々な人の記事を徹底的に調べることにしました。
その結果、たどり着いたのが以下の記事です。(有益な情報をありがとうございます!)

最終的に参考にした記事: https://note.com/g_y181/n/nf82b6a084477

この記事は、OAuth2.0 を使った「テキスト投稿だけ」に焦点を絞った非常にシンプルなものでした。
この手順通りに進めたところ、難なく自動投稿
に成功! 長時間の格闘は嘘のように解決しました。

5. 教訓:仕様変更が頻繁なAPI実装では生成AIを盲信しない

この経験から得られた教訓は、以下の通りです。

生成AIは、一般的な知識や定型的なコードの生成には非常に強力です。しかし、今回のAPIのように「仕様が新しく変更された」「新旧の仕様が混在している」といった領域では、情報の精度が著しく低下します。

生成AIの回答は、まるで正解のように、完璧なステップで提示されるため、利用者はそれが「ハルシネーション(誤情報)」であることに気づきにくいのです。特に、私のように認証の理屈を深く理解していない場合、「AIが言っていることが正しい」と誤解してしまいがちです。

APIの実装のように、「動くか、動かないか」が明確に決まる分野でAIを使う際は、以下の点をチェックしましょう。

AIの回答がエラーになった際のチェックリスト

  • AIのコードを鵜呑みにせず、必ず最新の公式ドキュメントや信頼できる一次情報を確認する。
  • 特に認証や接続周りは、新旧の仕様変更がないか確認する。
  • AIの回答がエラーになったら、「コードの間違い」だけでなく「前提となる仕様や認証方式が古いのではないか」という視点を持つ。

自動化の仕組みは無事に構築できましたが、その過程で生成AIが持つ「知っていることと知らないことを混ぜて、もっともらしく嘘をつく」という特性を、身をもって体験した出来事でした。


この記事を書いた人
UTAGE総研株式会社 代表取締役
公的支援機関を中心に、長年にわたり中小企業支援に携わる経営コンサルタント。
代表著作に「ガンダムに学ぶ経営学」「ドラクエができれば経営がわかる」がある。

 

関連記事

  1. 夫婦経営が成功する秘訣とは?両利きの経営が鍵!

  2. 売れ残りは本当にお得?認知バイアスの罠

  3. 中小企業診断士2次試験対策に関する個人的な見解

  4. 講演の台本をつくるために

  5. たった一杯のコーヒーに290万ドル?「行動経済学」とは

  6. 市場環境の変化を捉た結婚式場と葬儀場

  7. 高いものが品質が良いとは限らない!ファストファッション・ハイブランド・…

  8. 文章を書くときの起承転結について

PAGE TOP