業務改善の第一歩を学ぶ 【第2章】APIの仕組みとは?概要を解説!
「BIZTEL」では、多彩なAPI群を用意しており、柔軟なシステム連携によるコールセンター運営のサポートが可能です。また、BIZTELブログで掲載中の「BIZTEL API使ってみた」シリーズでは、担当者がAPI連携を活用した様々な機能実装にチャレンジし、センター運営の新たな可能性を拡げる活動をしています。
ですが、「そもそもAPIって?」「なんだか難しそう…」と思う方も多いのではないでしょうか。
そこで、この「業務改善の第一歩を学ぶ」シリーズでは、「BIZTEL API使ってみた」の記事で数々の機能実装に挑戦している田中 美穂さんが、APIの基礎から応用までわかりやすく解説します。
今回は、【第2章】APIの仕組みとは?概要を解説! です。
前回の記事はこちら
目次
はじめに
こんにちは!BIZTEL開発部門の田中です。
この記事をご覧いただき、ありがとうございます!
第1章で、API(Application Programming Interface)は、異なるソフトウェアやシステムが互いに通信し、データや機能をやり取りするための仕組みということを学びました。
この仕組みには、クライアントとサーバーが重要な役割を担っています。また、APIリクエスト(※1)にはさまざまな種類があり、それぞれが特定の役割を果たします。
※1 APIリクエスト:あるシステムから別のソフトウェアやシステムに対して、データ・機能の提供を要求すること。
第2章では、以下の流れに沿って「APIの仕組み」を学んでいきましょう!
- クライアントとサーバーの関係
- リクエストとレスポンスの流れ
- メソッド
クライアントとサーバーの関係
先ほど紹介した通り、APIとは「異なるソフトウェアやシステムが互いに通信し、データや機能をやり取りするための仕組み」です。
そして、その仕組みには「クライアント」と「サーバー」が重要な役割を担っています。では、その役割とは何でしょうか?
例えば、あなたが図書館の本を予約し、それを受け取りに行ったとします。あなたが、「この予約した本を貸してください」と言うと、図書館の職員がその本を持ってきて、貸してくれます。このとき、あなたがお願いする人(クライアント)で、職員がお願いをきいてくれる人(サーバー)となります。
APIを動かすときには、お願いする人(クライアント)と、その願いを叶えてくれる人(サーバー)が必要ということです。
以下の図は、クライアントとサーバーの関係を示しています。
- クライアント(API利用者)が「○○サービスの▲▲に関する情報が欲しい」とお願いします。
- サーバー(API提供者)がそのお願いを受け取り、内部で必要な処理を行います。
- 処理が完了したら、サーバーは結果をクライアントに返します。
レストランで例えると、以下のようになります。
- クライアント:APIを利用してデータやサービスをリクエストする側。これは、レストランで料理を注文するお客さまのイメージです。
- サーバー:APIで受け付けたリクエストに応じて、データやサービスを提供する側。これは、注文のあった料理を調理し、提供するレストランのスタッフ(ウェイターやクック)のイメージです。
リクエストとレスポンスの流れ
次に、APIにおけるリクエストとレスポンスの流れを見てみましょう。
リクエストとは、クライアントがサーバーに送るお願いのことです。
また、レスポンスとは、サーバーがクライアントに返す応答のことを指します。
クライアントからリクエストが出ると、サーバーがリクエスト内容に応じて処理を行い、クライアントにレスポンスを返します。
例えば、クライアントが「現在の東京の天気に関する情報がほしい」とリクエストした場合、サーバーは「今日は晴れです」とレスポンスを返すというような流れです。
レストランで例えると、以下のようになります。
- リクエスト:お客さんがウェイターに「野菜炒め(ごはん少なめ、副菜は豆腐)がほしい」と言う
- レスポンス:ウェイターがお客さんに「野菜炒め(ごはん少なめ、副菜は豆腐)」を提供する
では次に、「リクエストの種類」について、見ていきましょう!
メソッド
リクエストにはいくつか種類があり、それらを総称して「メソッド」といいます。
メソッドは、APIを通じてサーバーに「何をしたいか」を伝えるための指示です。各メソッドには、特定の役割があります。
以下は、代表的なメソッドの種類と役割をまとめた表です。
APIの基本的な仕組みを理解することは、APIを効果的に利用するための重要なステップです。次は、実際にAPIを使ってみましょう。
APIを使ってみよう
ここまで説明続きでしたが、次は実際にAPIを動かして理解を深めていきます。
Webブラウザ(Chromeなど)を用意できる環境であれば、すぐに実践できます。準備ができたら、ぜひ一緒にやってみましょう!
手順
1. APIのページを開く
Webブラウザを開き、以下のURLをコピー&ペーストしてください。
今回利用するのは、東京都が公開しているオープンデータAPIです。以下のWebページが表示されればOKです。
2. 興味のあるデータを選択する
ページに表示されている「新型コロナコールセンター相談件数」や「公共施設一覧」などの項目から興味のあるデータをクリックします。私は、東京都のイベント一覧に興味があるので「東京都イベント一覧情報」を取得してみようと思います。
3. APIを試してみる
「東京都イベント一覧情報」の詳細ページが開きます。右上の「Try it out」ボタンをクリックします。
「Parameters」の入力欄が編集可能になります。「Parameters」とは、APIに送る追加情報のことです。ここでは、これを検索条件として利用し、東京都のイベント一覧情報を絞り込むための条件を指定します。
今回は、無料かつ予約不要のイベントを検索するために、「料金_要否」に0を、「予約申込_要否」に0を設定して検索してみましょう。
設定が完了したら、ページ下部の「Execute」ボタンをクリックします。
4. 実行結果を確認
実行結果が、下部に表示されます。
サーバーからのレスポンスは JSON形式(※2)で表示されています。「Server response > Response body」を確認すると、今回設定した条件に合致したイベント情報が、JSON形式で表示されています。
※2 JSON (JavaScript Object Notation) :JavaScriptのオブジェクト表記法をベースにした、データを構造化して表現するためのテキスト形式。主にWebアプリケーション間などでデータを交換するために使われる。
5. ブラウザで確認
オープンデータのAPI画面での実行結果と同じ内容を、Webブラウザでも確認することができます。
以下の「リクエストURL」をコピーして、WebブラウザのURLに貼り付けて実行してみてください。
Webブラウザに貼り付けて実行します。
APIページの実行結果と同じ「レスポンス」が、ブラウザからも確認できました。
このようにAPIを利用すると、いろいろなデータをやり取りすることができます。
今回は、APIを使うことで、どのように情報がやり取りされるのかを確認しました。次回の第3章では、Postman(※3)を使って実際にAPIを実行してみましょう。
※3 Postman:APIが正しく動作するかを簡単にテストしたり、開発したりするためのツール。
第2章の振り返り
- クライアントとサーバーの関係
- クライアントは、APIを利用してデータやサービスをリクエストする役割で、サーバーはそのリクエストに応じてデータやサービスを提供する役割を担っています。この関係がAPIの基本的な動作原理です。
- リクエストとレスポンスの流れ
- リクエストが、クライアントからサーバーに送られ、サーバーはその内容に応じて処理を行い、レスポンスをクライアントに返します。
- メソッド
- APIリクエストには、様々な種類があり、それらを総じて「メソッド」と言います。具体的には、情報を取得する「GET」、新しい情報を送る「POST」、既存の情報を更新する「PUT」、情報を削除する「DELETE」などがあります。
- APIの実際の使用例
- APIを利用して東京都のオープンデータを取得し、パラメータを設定してリクエストを送信し、レスポンスを確認する具体的な手順を学びました。
まとめ
第2章では、APIの仕組みについて解説しました。
クライアントとサーバーの関係や、リクエストとレスポンスの流れについて、さらにAPIメソッドの種類とその使い方も学びました。
次の章では、「APIリファレンスの読み方」と「ChatGPTのAPIをPostmanで実行する方法」を見ていきましょう!
























