皆さん、ChatGPTを使って業務効率化していますか?
私もChatGPTと日々格闘しながら、自分に合っている業務効率化の形を模索していますが、その過程でふと疑問に思ったことがあります。
ChatGPTからOutlookの予定を参照したり、Slackに連絡を投稿したりする話を調べていると、コネクタという言葉が出てきませんか?
「業務効率化」という目的を果たすだけなら、コネクタという言葉を「APIのようなものだろう」と何となく捉え、深く考えずに使っていても、作業上は困りませんでした。
今回はChatGPTをきっかけに疑問を持ちました。
ただ、コネクタとAPIはChatGPTだけの概念ではありません。さまざまなサービスや自動化ツールを連携させる場面で使われる、基本的な仕組みです。
せっかくなので、コネクタとAPIは何が違うのか、ChatGPTを例にあげながら言語化してみようと思います。
結論から言えば、
APIはサービスを外部から操作するための技術的な窓口であり、コネクタはその窓口をChatGPTや自動化ツールから使いやすくするための接続の仕組みです。
ただし、コネクタは単に「簡単なAPI」というわけではありません。あらかじめ用意された接続設定、認証方法、利用できる操作を通じて、外部サービスと連携しやすくする仕組みです。
利用者は「何ができるか」「どこまで許可するか」を確認しながら、外部サービスとの連携を始められます。
なおChatGPTでは、以前「コネクタ」と呼ばれていた外部連携は現在「アプリ」という名称に整理されていますが、
本記事では一旦「コネクタ」と共通して表記しています。
※「コネクタ」が指す仕組みや呼び方はツールによって少し異なりますが、本記事では外部サービスと連携するために用意された接続の仕組みとして扱います。
APIはサービスの「受付窓口」
API(Application Programming Interface)は、別のソフトウェアからサービスの機能やデータを利用するための決まりです。
「決まり」と言われても、正直イメージ湧かないですよね。
ここで身近な例をあげると、例えばMicrosoft Graph APIというAPIがMicrosoft社から提供されています。
このMicrosoft Graph APIを使えば、許可された範囲でMicrosoft 365のメール、予定表、ファイルなどにプログラムからアクセスできます。Microsoft Graph
つまり、APIは、外部のソフトウェアから特定のサービスを利用するための窓口のようなものです。
APIを直接使う開発者は、「どの操作を呼ぶか」「どのデータを渡すか」「返ってきた結果をどう処理するか」を実装します。
また、同時に、次のようなことも設計します。
-
誰が使うのかを確認する
利用者やアプリが本人であることを確認し、ログイン情報を安全に扱います。 -
何をしてよいかを決める
メールを読む、予定を作る、Slackへ投稿するなど、許可する操作の範囲を設定します。 -
失敗や混雑に対応する
通信が失敗したときのやり直し、二重投稿の防止、短時間に呼び出しすぎないための制御を実装します。
つまりAPIは、自由度の高い受付窓口です。
その分、受付の利用規約を読み、通行証を管理し、混雑時の対応まで自分で用意していく必要があります。
Slackでは、APIの操作ごとに、アプリやワークスペース単位で利用回数の上限が設けられています。上限を超えた場合は、再試行までの待ち時間が返されます。Slackのレート制限
コネクタとは、「案内と通行証が付いた入口」
コネクタは、サービスのAPIや連携機能を、ChatGPT、Power Automate、iPaaSなどの利用画面から扱えるように包んだ接続アダプターです。
利用者は通常、接続画面でサインインし、「予定表の読み取り」などに同意します。
以後は、用意された操作を選ぶ、あるいは自然言語で依頼することで、許可された範囲の処理を行えます。
ChatGPTの画面でアプリの操作許可を求められたことはありませんか。あれが、コネクタによる連携のイメージです。
例えるなら、
APIは航空券、ホテル、現地の移動手段などを、それぞれ個別に予約できる窓口です。
自由に組み合わせられる一方で、予約条件の確認、利用者情報の入力、変更やキャンセルへの対応まで、自分で組み立てる必要があります。
一方、コネクタは「航空券とホテルがセットになった旅行パッケージ」のようなものです。
行き先や日程を選び、案内に沿って申し込めば、あらかじめ用意された範囲で利用できます。
細かな手続きが整理されているため始めやすい反面、選べる航空会社、ホテル、オプションはパッケージが対応しているものに限られます。
APIを直接使う場合は、必要な機能を自由に組み合わせて独自の旅行を作るイメージで、コネクタでは、用意されたパッケージを使って、まず目的地にたどり着くイメージです。
ただし、パッケージに含まれていない選択肢は利用できません。コネクタで使えるのは、そのコネクタが公開している操作だけです。
「Slackへ投稿」はあっても、特定の細かな状態変更や独自の検索条件はない、ということがありますよね。
実際にできることは、サービス本体のAPIの全機能ではなく、コネクタの説明、接続時に同意した権限、組織の設定の掛け合わせで決まります。
予定表、チャット、ChatGPTでは何が起きるか
ここで、「今日の予定を整理して、対応が必要なものをチームのチャットへ知らせる」仕組みを考えましょう。
以下は、仕組みを説明するための例です。
ここでは、予定表サービスの読み取りと、チャットサービスへの投稿を行えるコネクタ、または自動化ツールの連携が利用可能であることを前提にします。
| 役割 | 担当するもの | 行うこと | 注意点 |
|---|---|---|---|
| データの保管 | クラウドの予定表サービス | 予定、会議招待、場所、出席者を管理 | 個人予定・共有予定のどこまで読むかを決める |
| 取得と実行 | 予定表サービスのコネクタ | 許可された予定を取得する | PC上の予定表アプリではなく、クラウド上のデータにアクセスする構成が一般的 |
| 判断と文章化 | ChatGPT | 予定を要約し、未回答・重複・場所未設定などを候補として抽出する | AIの判断は提案として扱い、確定処理の前に確認を入れる |
| 共有 | チャットサービスのコネクタ | チーム用チャネルへ要約を投稿する | 投稿先と含める情報を最小限にする |
| 通知 | チャットサービスの通知機能、または自動化フロー | 自分や担当者に通知する | 通知の重複と過剰通知を避ける |
PC上の予定表アプリを起動しておく必要がない場合があるのは、操作対象がローカルアプリではなく、クラウド上の予定表やメールボックスだからです。
コネクタや自動化ツールは、各サービスが提供する連携口を通じてデータにアクセスします。
ただし、社内ネットワーク内だけで運用しているシステム、共有用の予定表やメールボックス、組織のアクセス制限、管理者の設定によっては、追加の準備が必要になることがあります。
ChatGPTの外部連携でも、情報を読むことと、外部サービスに書き込むことは同じ扱いではありません。
予定の参照は読み取りですが、チャットへの投稿や予定の作成は書き込みです。
影響の大きい外部操作では確認が求められる場合があり、組織の管理者は利用できるアプリや操作を制御できます。OpenAI公式ヘルプ
これは、「サービスにつながること」と「どこまで自動で実行してよいか」を分けて考えるための大切な仕組みです。
コネクタが便利な理由と、越えられない境界
コネクタの強みは、開発や設定の負担を抑えながら、業務の仮説を検証しやすいことだと思います。
たとえば、毎朝の予定要約、問い合わせメールの下書き、Slackへの定型レポート、共有ドライブ内の資料検索は、小さく始めやすい領域です。
自然言語で指示できるAIと組み合わせれば、「データを取る」「要点を整える」「人に届ける」という流れを、業務担当者自身が具体化しやすくなります。
一方、コネクタに任せきりにはできません。特に次の点は使う前に注意が必要です。
- やりたい操作は本当に用意されているか。APIにはあってもコネクタにはない機能があります。
- 誰の、どのデータにアクセスできるか。必要最小限の権限に絞ります。
- 誤投稿、重複実行、接続切れが起きたらどうするか。通知先と手作業の戻し方を決めます。
- 人事・顧客・契約などの機微情報を、要約や外部投稿に含めないか。
- 利用ログ、保管期間、管理者の承認が組織のルールに合うか。
どちらから始める?
迷ったら、まずはコネクタで小さく試すのがおすすめです。
| コネクタが向いているケース | APIが向いているケース |
|---|---|
| 個人やチーム内の業務を少し楽にしたい | 顧客向けを含む、本格的な仕組みを作りたい |
| 毎朝の予定要約や定型的な通知をしたい | 自社独自の複雑なルールに対応したい |
| まず効果があるか確かめたい | 大量のデータを扱ったり、頻繁に処理したりしたい |
| 最後は人が内容を確認して実行したい | 自社のシステムやデータベースと深くつなげたい |
| 用意された機能の範囲で十分に目的を達成できる | エラー時の対応や記録を、細かく決めて運用したい |
多くの場合は、「まずコネクタで試し、必要になったらAPIを検討する」という順序が現実的です。
最初に、対象にする業務を一つに絞りましょう。
たとえば「毎朝、今日の予定を要約して自分に送る」のように、入力する情報、出力先、最後に確認する人を決めます。コネクタで問題なく動き、効果も感じられるなら、そのまま使い続けられます。
一方で、「条件によって処理を細かく変えたい」「社内の別のデータと照らし合わせたい」「大量の処理を安定して続けたい」となったら、IT部門と相談してAPIを使う仕組みを検討するタイミングです。
APIは、サービスを自由に組み合わせるための技術的な操作口。コネクタは、その操作口を使って、すぐ試せるように整えられた入口です。
なんとなく使ってみることも、始めるうえでは大切です。ただ、その業務効率化の裏側にある仕組みを少し理解しておくと、より高度なことをやりたくなったときに、実現までの近道になります。
※本記事は筆者個人の見解であり、記載内容は公開情報に基づいています。