APIとは? アプリ同士をつなぐ約束ごとと「API連携」

約14分 · 更新: 2026年10月23日

APIとは、プログラムが別のプログラムに「これをして」「このデータをください」と頼むときの、決められた頼み方です。頼む側は、相手の中のしくみを知らなくても、約束どおりに頼めば答えを受け取れます。天気アプリの予報や、お店のサイトの地図も、APIを通じて別の会社のサービスから届いていることがよくあります。

この記事でわかること

  • APIが「何と何の間の、どんな約束」なのか
  • 天気アプリ・地図・「Googleでログイン」の裏で起きていること
  • Web APIの依頼と返事の中身と、JSONの読み方
  • APIキーを秘密にする理由と、回数の制限
  • 仕事で聞く「API連携」の意味と、つなぐ前に確かめたいこと

前提知識: 特にありません。ITパスポート試験や基本情報技術者試験に出てくる言葉も、ふつうの言葉で説明します。

身近なところでは

スマホの天気アプリを開くと、今いる場所の予報がすぐに出ます。でも、アプリを作った会社が、自分で空を観測しているとは限りません。気象のデータを持つ会社のサーバに、「この場所の予報をください」と問い合わせていることがよくあります。サーバとは、求めに応じてデータを渡すコンピュータです。

同じことは、ほかの場面でも起きています。お店のサイトに、Googleマップの地図が埋め込まれていることがあります。ログインの画面に、「Googleでログイン」というボタンが並んでいることもあります。どれも、あるプログラムが、別の会社のプログラムに仕事を頼んでいます。

このとき、頼み方がばらばらでは困ります。何を、どんな書き方で頼めば、どんな形で答えが返ってくるのか。それを前もって決めて公開した約束ごとを、API(エーピーアイ)と呼びます。Application Programming Interfaceの略です。

APIは「頼み方」の約束ごと

Interfaceは、「接するところ」「つなぎ目」という意味です。つまりAPIは、プログラムとプログラムのつなぎ目で使う約束です。人が画面を見て操作するための約束ではなく、プログラムが使うための約束だという点が大事です。

約束には、主に次のようなことが書かれています。

  • 頼める仕事の名前(例: 「予報を調べる」)
  • 頼むときに添える情報(例: 場所や日付)
  • 返ってくる答えの形(例: 気温は数字で、単位は℃)
  • うまくいかなかったときの返事(例: 「その場所はわかりません」)

頼む側は、相手がどうやって予報を計算しているかを知らなくても、答えを受け取れます。反対に、受ける側は、約束さえ変えなければ、中のしくみを作り直せます。頼む側は、そのまま使い続けられます。

約束は、ふつう文書にまとめられます。この文書を「仕様書」や「APIドキュメント」と呼びます。

天気アプリはAPIという決まった頼み方で依頼し、決まった形の返事を受け取る。APIの奥にある計算やデータベースは外から見えない 天気アプリ 依頼 返事 API(決まった頼み方) 中のしくみ(外からは見えない) 予報の計算 データベース 約束が同じなら、中は作り直せる
頼む側が知っているのは、APIという「窓口」の使い方だけです。省略していること: 利用者を見分ける鍵(後で説明するAPIキー)、途中の通信、受ける側の中にある多くのプログラム。

Web API: インターネット越しに頼む

天気や地図のように、インターネットの向こうのサーバに頼むAPIを、Web APIと呼びます。今は「API」と言うと、このWeb APIを指すことが多くなりました。

Web APIの多くは、ブラウザがWebページを開くときと同じHTTPという決まりで、やり取りします。HTTPでは、頼む側が「依頼(リクエスト)」を送り、サーバが「返事(レスポンス)」を返します。HTTPそのものは「HTTPSとは?」でも説明しています。

Webページとの違いは、返事の中身です。Webページなら、人が読む文章や画像が返ります。Web APIでは、プログラムが読み取りやすい形のデータが返ります。

架空の天気のAPIで、依頼と返事の例を見てみましょう。相手の名前の「api.example.com」は、説明のために予約された名前で、実在のサービスではありません。

天気のAPIへの依頼(GETで東京の予報を求め、APIキーを添える)と、サーバの返事(200 OKとJSONのデータ)の例 依頼(頼む側 → サーバ) GET /forecast?city=tokyo HTTP/1.1 Host: api.example.com 相手の名前 X-API-Key: (秘密の鍵) 誰からか 返事(サーバ → 頼む側) HTTP/1.1 200 OK 200 = 成功 Content-Type: application/json { "city": "東京", "weather": "晴れ", "high": 22 名前と値の組 }
架空のAPIの例です。鍵を送る欄の名前や頼み方は、サービスごとに違います。省略していること: そのほかの多くの欄、HTTPSによる暗号化。

依頼の1行目の「GET」は、「データを取得したい」という頼みの種類です。この種類をHTTPメソッドと呼びます。続く「/forecast?city=tokyo」が、頼みたい中身です。ここでは「予報を、東京について」と頼んでいます。

2行目の「Host」は、相手のサーバの名前です。名前から機器の番号を調べるしくみは、「DNSとは?」で説明しています。3行目は、誰が頼んでいるかを示す鍵です(後で説明します)。

返事の1行目の「200」は、「うまくいきました」という意味の数です。この3桁の数をHTTPステータスコードと呼びます。頼んだものが見つからないときは404、依頼が多すぎるときは429のように、結果ごとに番号が決まっています。

Web APIの作り方では、RESTという考え方が広く使われています。2000年に、HTTPの規格づくりに関わったロイ・フィールディングが博士論文で名づけました。扱う対象(例: 予報、注文)ごとに住所をつけ、取得や削除をHTTPメソッドで表す形がよく使われます。こうしたAPIをREST APIと呼びます。

JSON: プログラムが読みやすいデータの形

返事の後半の「{ }」で囲まれた部分は、JSON(ジェイソン)という書き方です。返事の2行目の「application/json」は、本文がこの書き方だという印です。「名前」と「値」を「:」でつないで組にし、組と組を「,」で区切ります。名前と文字の値は「" "」で囲み、数はそのまま書きます。

例の返事を表にすると、次のとおりです。

名前値意味
city"東京"場所(文字)
weather"晴れ"天気(文字)
high22最高気温(数)

「22」に単位がついていないことに注目してください。℃なのか、米国で使われる°F(華氏)なのかは、JSONの中ではなく、APIの仕様書に書かれています。仕様書を読まずに使うと、こうした取り違えが起こります。

JSONの書き方は、2017年の規格RFC 8259で決められています。JavaScriptというプログラミング言語の書き方がもとで、今ではほとんどの言語で読み書きできます。

APIキー: 「誰が頼んでいるか」を示す鍵

多くのWeb APIは、誰からでも無制限に頼みを受けるわけではありません。使う人や会社ごとに、推測できない長い文字の並びを発行します。これを「APIキー」と呼びます。頼む側は、依頼のたびにこのキーを添えます。

キーを受け取ったサーバは、どの利用者からの依頼かを見分けます。そして、使ってよい機能かを判断し、呼び出しの回数を数えて料金を決めます。例えばAppleの天気のAPIは、WeatherKitという名前です。2026年10月時点で、月50万回までの呼び出しは、開発者向けの会員の費用に含まれます。

キーを秘密にする理由と、守り方

このため、APIキーはパスワードと同じように秘密にします。送るときは、暗号化されたHTTPSを使います(「暗号とは?」)。とくに気をつけたいのは、プログラムのファイルにキーを直接書くことです。そのプログラムを公開すると、キーまで世界に公開されてしまいます。

スマホのアプリやWebページの中にキーを入れるのも危険です。配った中身は、使う人が取り出して調べられるからです。秘密のキーは自社のサーバだけに置き、そのサーバがキーを添えて相手に頼みます。

実際に、流出は数多く起きています。プログラムを保存・公開するサービスの代表が、GitHubです。セキュリティ会社GitGuardianが、2025年3月に報告を出しています。2024年に公開のGitHubで見つかったキーやパスワードなどの秘密の情報は、約2,380万件でした。

Googleは、APIキーの扱い方の注意として、次のようなことを挙げています。

  • アプリやWebページのプログラムにキーを入れない。プログラムの保管場所にも入れない
  • キーごとに、使えるサイトや機能を制限する
  • 使わなくなったキーは削除する
  • キーを定期的に新しいものに取り替える

ただし、ページに入れて見られる前提で作られたキーもあります。例えば、お店のサイトに地図を埋め込むキーは、ページを見た人にも見えてしまいます。この場合は「このお店のサイトからの依頼だけを受け付ける」といった制限をキーにかけて守ります。見えてもよいキーかどうかは、発行元の説明で確かめます。

回数の制限(レート制限)

多くのWeb APIには、決まった時間に頼める回数の上限があります。これを「レート制限」と呼びます。一部の利用者がサーバを使い切り、ほかの人が待たされるのを防ぐためです。誤ったプログラムが依頼を繰り返し、費用がふくらむのを防ぐ役目もあります。

例えばGitHubのAPIでは、2026年10月時点で、誰からかを示さない依頼は1時間に60回までです。利用者のしるしを添えて頼めば、1時間に5,000回まで使えます。

上限を超えると、多くのサーバは「429 Too Many Requests(依頼が多すぎます)」という返事を返します。この番号は、2012年の規格RFC 6585で決められました。返事に「何秒後に頼み直して」という情報がつくこともあります。よく作られたアプリは、それに従って間を空けてから頼み直します。

「Googleでログイン」の裏側

ほかのサイトに「Googleでログイン」するとき、そのサイトにGoogleのパスワードを渡しているわけではありません。パスワードを入力する画面は、Googleのものです。サイトが受け取るのは、Googleが発行した「この人は確かに本人です」という証明で、パスワードは含まれません。

このやり方は、OAuth(オーオース)という決まりがもとになっています。OAuthは、パスワードを渡さずに、ほかのアプリに「ここまでなら使ってよい」と許可を与えるための決まりです。2012年に、今の版のOAuth 2.0が規格になりました。

許可や証明は、「トークン」と呼ばれるデータで受け渡します。期限があり、使える範囲も限られた、通行証のようなものです。漏れても、パスワードより被害の範囲と期間を小さくできます。

ログインには、OpenID Connectという決まりを使います。OAuth 2.0に「誰であるか」を伝える部分を加えたもので、Googleのログインもこれに沿っています。本人の証明は、「IDトークン」と呼ぶトークンで届きます。

あなたがお店のサイトでGoogleでログインを押すと、Googleの画面に案内され、パスワードはGoogleにだけ入力する。Googleはサイトに本人の証明を渡す あなた お店のサイト Google ① ボタン ② 案内 ③ パスワード ④ 本人の証明 ⑤ 完了 パスワードはGoogleだけが見る
③のパスワードは、お店のサイトを通らずにGoogleに届きます。省略していること: 初回の「情報を渡してよいか」の確認。実際の④では、まず引換券がブラウザ経由で届き、サイトがGoogleで証明と交換します。

APIはWebだけのものではない

APIという言葉は、Web APIが広まるずっと前から使われてきました。例えばアプリは、ファイルを保存したいとき、OSに頼みます。OSとは、パソコンやスマホの部品を管理して、アプリに貸し出す土台のソフトです。この頼み方もAPIで、OSごとに違います(「OSとは?」)。

よく使う機能を、部品としてまとめたプログラムを「ライブラリ」と呼びます。グラフを描く、日付を計算する、といった部品です。ライブラリにも、どの部品をどう呼ぶかというAPIがあります。こちらは同じ機器の中での呼び出しなので、インターネットは通りません。

種類頼む相手通り道例
OSのAPIOS同じ機器の中ファイルを保存する
ライブラリのAPI部品のプログラム同じプログラムの中日付を計算する
Web API別のサーバインターネット天気の予報を取る

仕事で聞く「API連携」とは

会社では、「この2つのシステムをAPI連携する」という言い方をよく聞きます。これは、別々のシステムが、APIを通じて自動でデータをやり取りするようにすることです。人が一方の画面からデータを書き出し、もう一方に読み込ませる手間がなくなります。

例えば、会計ソフトが、銀行口座の入出金を自動で取り込むしくみです。日本では、2017年5月に成立し、2018年6月に施行された銀行法などの改正で、こうした連携の制度が整えられました。銀行には、家計簿や会計のサービスの会社とAPIでつなぐ体制づくりに努めることが求められました。

ほかにも、ネットショップの注文を配送の会社に自動で伝える、といった使い方があります。どれも、外の会社がクラウドで提供するサービスを、自社のしくみにつなぐ場面です(「クラウドとは?」)。

つなぐ前に確かめたいこと

  • どのデータが、どちら向きに流れるか(個人情報が含まれるなら、その扱いの決まりも)
  • 誰の権限でつなぐか。必要な範囲だけを許可しているか(最小権限の原則)
  • 相手のAPIが止まったり、約束が変わったりしたら、何が起きるか
  • 呼び出しの回数の上限と、料金
  • APIキーやトークンを、誰がどこで保管するか

よくある誤解

誤解: APIとは、インターネットのサービスのこと

実際は、APIは「プログラムどうしの頼み方の約束」全体を指します。OSやライブラリにもAPIがあります。Web APIが身近になり、「API」を「Web API」の意味で使うことが増えたため、混同されやすいのです。

誤解: 「Googleでログイン」を使うと、そのサイトにGoogleのパスワードが渡る

実際は、上で見たとおり、パスワードはGoogleの画面にだけ入力し、サイトには期限つきの証明(トークン)が渡ります。画面の切り替わりが一瞬なので、どこで入力しているかを意識しにくいのです。ただし、偽のログイン画面を見せるフィッシングもあります。入力の前に、アドレス欄の名前が本物のGoogleのもの(accounts.google.com)かを確かめましょう。

誤解: うっかり公開したAPIキーは、ファイルから消せば大丈夫

実際は、保管場所の過去の版や、すでに写した人の手元に残ります。発行元でキーを無効にして、作り直すのが基本です。GitGuardianの2025年3月の報告では、2022年に漏れた秘密の約70%が、その時点でもまだ使える状態でした。ファイルの見た目から消えると、解決したように見えてしまうのです。

数字で見る

項目数字時点・出典
RESTの提案2000年フィールディングの博士論文
OAuth 2.0の規格2012年10月RFC 6749
「依頼が多すぎます」(429)の規格2012年4月RFC 6585
JSONの今の規格2017年12月RFC 8259
HTTPの意味の今の規格2022年6月RFC 9110
GitHubのAPIの回数の上限1時間に60回(誰からか示さない)、5,000回(示す)2026年10月時点、GitHub
WeatherKitの会員の費用に含まれる呼び出し月50万回2026年10月時点、Apple
公開のGitHubで見つかった秘密の情報約2,380万件2024年、GitGuardian(2025年3月の報告)
銀行のAPI連携の制度を整えた法改正2017年5月成立、2018年6月施行金融庁

規格は長く使われますが、回数の上限や料金は、サービスの都合でよく変わります。使うときは、その時点の提供元の説明を確かめてください。

もっと詳しく学ぶ

次に読む

シリーズ「ネットワークとインターネット」の記事

  1. インターネットはどうやってデータを届けるの? パケットとルータ
  2. IPアドレスとは? ネットの住所のしくみとIPv4・IPv6
  3. Wi-Fiのしくみとは? 電波でデータを送る方法と速さが変わる理由
  4. HTTPSとは? 鍵マークが守っているもの・守れないもの
  5. DNSとは? 名前からIPアドレスを調べるしくみ
  6. 5Gとは? 4Gと何が違うのか、速さと遅延のしくみ
  7. TCPとUDPの違いとは? 確実に届けるか、速さを取るか
  8. Bluetoothとは? イヤホンやスマートウォッチがつながるしくみ
  9. IoTとは? モノがネットにつながるしくみと注意点
  10. イーサネットとは? 有線LANがデータを運ぶしくみ
  11. APIとは? アプリ同士をつなぐ約束ごとと「API連携」
  12. ブラウザのしくみとは? URLを入れてからページが表示されるまで

この分野の問題: Web技術の基礎

参考にした資料

やさしい解説の一覧へ