こんにちは、ささのき
SEです。
「これは〇〇のAPI使えば簡単だよ」とか「API叩いて」とか、最近よく言われるし、自分でもAPIを使ってるんですが、
「そもそもAPIって何?」
と、ちゃんと考えたことがなかったので、
今回は使う側の視点でAPIについて自分なりに調べてまとめてみました。
🪟APIとは?
APIを直訳すると Application Programming Interface の略
Interface(インターフェイス):接点・接続口・やり取りする場所
なのでAPIを直訳すると、
「プログラムからアプリケーションを操作するための接点」
という意味になります。
🤔APIってサービスじゃないの?
名前を調べたところで、私は勘違いに気づきました。
(APIってサービスじゃないの?だってみんな「〇〇のAPI使う」っていうやん。)
そう、APIはあくまで窓口でサービスじゃない!
サービスには人間向けの入り口(UI) と
プログラム向けの入り口(API) の2種類があり、
人間が操作する画面(UI)の代わりに、プログラムが直接サービスにアクセスできる仕組みがAPIらしい!
🔗サービスとAPIの関係
| 名前 | 説明 |
|---|---|
| サービス | 実際に動いている本体。データや機能の集まり |
| UI | 人間向けの入り口(Webやアプリの画面) |
| API | プログラム向けの入り口(裏口のような存在) |
🧑💻「APIを使う」ということ
開発の現場で「APIを使う」と言われたら、
「画面から手作業で操作するのではなく、プログラム経由でサービスを利用する」という意味。
🔑認証と権限
ほとんどのAPIにはセキュリティの仕組みがあり、
- 認証(Authentication):誰がアクセスしているかを確認
- 認可(Authorization):どの範囲まで操作できるかを制御
利用にはAPIキーやトークンを使うのが一般的です。
😻メリット、デメリット
| メリット | デメリット |
|---|---|
| 地図や翻訳などの機能をゼロから作らずに済む | APIキーやトークンの管理を誤るとセキュリティリスクになる |
| サービス提供元のデータを直接受け取れる | サービスごとに利用回数制限(レート制限)がある |
| 定期処理や連携をプログラムだけで実現できる | API仕様変更やサービス終了の影響を受けやすい |
| UI変更の影響を受けにくい | ネットワーク依存でオフライン時に使えない場合が多い |
🧑🔧注意点
- APIキーやトークンは漏らさないこと。
- サービスごとに利用制限(レート制限)がある。
- 仕様変更や廃止のリスクに備える必要がある。
📚まとめ
APIはプログラムからサービスを使うための入り口です。
UIは人間向け、APIはプログラム向けと覚えると理解しやすいです。
使えば開発スピードが上がり、自動化や連携も容易になりますが、安全に使うために認証や権限管理の理解も必要です。
調べてみて、APIは難しい概念ではなく「サービスを便利に使うための共通の仕組み」だと分かりました。
APIありがたや!
💏
こんどは自分でAPIをつくってみたいです🖥️
おわり🙆