株式会社 bubekichiの開発案件で、Slack連携機能の追加開発を行いました。
要件定義(課題提起から仕様提案まで)
DB設計
バックエンド実装
TypeScript
Next.js(App Router)
Slack Events API / Slack Web API
prisma
Slack上の名前と管理画面の名前が一致しないことによる混乱を解消するため、Slackと連携して受講生情報を自動同期する機能を実装しました。
Slackの team_join
や user_change
イベントをトリガーに、ユーザー情報(名前・メールアドレス)を取得し、DB上の profile
テーブルを自動更新する仕組みを構築。
Slack APIの制限や必要スコープの調査・検証も含め、自前ワークスペースを使った動作確認を経て、安全に本番環境へ導入しました。
ブログに実装内容含め詳細に書いています。