MyGPTsのActionsのカスタムしたら「Unable to load conversation undefined」と言われた。
MyGPTsでのGoogle Calendar APIを使ったカスタムアクションの実装とトラブルシューティング
前提
今回のカスタムアクションでは、Google Calendar APIを用いて、OAuth認証を通じたGoogleの認証プロセスを組み込んだアクションを開発していました。具体的には、ユーザーとの会話中にアクションがトリガーされると、OAuthフローが開始され、Googleの認証ページに遷移した後、再びChatGPTに戻ってくるという流れです。
発生した問題
アクションのコードを変更した後、実行しようとしたところ、次のエラーメッセージが表示されました。
「Unable to load conversation undefined」
最初は何が原因かわからず、試行錯誤が必要でした。
仮説
エラーメッセージ「Unable to load conversation undefined」は、会話IDが取得できていない、もしくはコールバックがうまくいっていないことを示唆しているのではないかと考えました。OAuthフローを通過する際、リダイレクトURLが重要な役割を果たしているため、その部分に問題があるのではないかと推測しました。
解決方法
実際にGoogle Cloud Consoleを確認したところ、Callback URL(リダイレクトURL)が変更されていました。これが原因でOAuthフローが正常に戻ってこず、エラーが発生していたのです。
解決策としては、Google Cloud Console内のプロジェクト設定でリダイレクトURLを正しいものに修正しました。この変更後、エラーは解消され、正常にアクションが動作するようになりました。
まとめ
この経験を通じて学んだのは、OAuthフローで使用されるリダイレクトURLが非常に重要であることです。アクションのコード変更時には、リダイレクトURLが適切かどうかを再確認することが、トラブルを未然に防ぐポイントです。
著者について
takumi0706です。エンジニアになりたい人でして、現在はバックエンド開発(フロントもちょっと)に注力しています。技術的な挑戦を続ける中で学んだことをアウトプットすることをなるたけ努力してます。
- ポートフォリオサイト: takumi0706.simple.ink
- GitHub: takumi0706
- X(旧Twitter): @1ye_q
これからも技術的な知見を深め、共有していくことを目指していますので、ぜひフォローやフィードバックをお寄せください。
takumi0706
Discussion