はじめに
こんにちは、エンジニア2年目の嶋田です。
まずは、この記事を開いていただきありがとうございます!
先日APIという目に見えないつながりに苦戦しました…
そこで備忘録としてまとめることにしました。
初学者の方や未経験のエンジニアの方にもわかりやすく、役に立つ内容を目指します!
目次
APIとは何か
「API」とは、「Application Programming Interface」の頭文字を取ったものです。
この英語のフレーズを訳すと「アプリケーション・プログラミング・インターフェース」となりますが、よりシンプルに言うならば、「アプリケーションをプログラミングするための接点」という意味合いになります。
インターフェースとは、コンピュータ用語において、「何か」と「何か」を繋ぐ役割を持つものを指します。たとえば、USBは「パソコン」と「周辺機器」を繋ぐものであり、これも一種のインターフェースです。
このことから、APIは「アプリケーション、ソフトウェア」と「プログラム」を繋ぐ役割を持つものと考えることができます。具体的には、異なるソフトウェアやサービスが互いに通信するための橋渡し役として機能します。
例えば、レストランや美容室の店舗のウェブサイトにGoogle マップの地図が埋め込まれていることが多くありませんか?
あれが!まさに!APIのおかげで実現しています!
このように、APIは私たちが日常的に利用するさまざまなサービスの背後で重要な役割を果たしています。
Google Maps APIの使用方法が気になった方はこちらの記事を参考にしてみてください!
WebAPIとは何か
APIの一種として、「Web API」についても触れておきたいと思います。
APIについて調べていると、REST APIやSOAPのようにさまざまな名前が挙がってきませんか?
私自身、調べていて混乱した理由の一つでした…
そこで、まず押さえておくといいなと感じたものが「WebAPI」です。
「Web API」って聞くと少し難しそうですが、実は私たちの身の回りに溢れています。
簡単に言えば、Web APIはインターネット上で動くAPIのことです。
これにより、ウェブサイトやアプリが他のサービスとデータをやり取りできるんです!
例えば、あなたがFacebookやTwitterでログインする機能、これもWeb APIのおかげで実現しています。
また、ウェブサイトに表示される天気予報や、ニュースの最新情報も同じくWeb APIを利用しています!
まとめると
Web APIは、インターネット上で提供されるAPIのことで、HTTPプロトコルを使用してサービスやアプリケーション間で情報を交換します。具体的には、ウェブサービスやアプリが他のサービスの機能やデータを利用するために使用される技術です。
APIとWeb APIの違い
APIとWeb APIの大きな違いは、利用される場所です。通常のAPIはソフトウェアやシステムの内部で使われ、異なる部分同士をつなぐ役割を持っています。一方、Web APIはインターネットを介して外部のサービスと連携するために使われます。つまり、Web APIはもっと広い世界(よりオープンでアクセスしやすい性質)で活躍していて、異なるプログラムやアプリケーションがインターネットを通じて情報を交換する際に使用されています。
エンドポイントって何?
APIの作成方法や概念について調べていると「エンドポイント」とたくさん出てきませんか?
エンドポイントは、簡単に言うとWeb APIの「住所」みたいなものです。特定のURLにアクセスすることで、特定の情報やサービスを取得できるようになっています。例えば、https://api.weather.com/current
というURLは、天気予報APIのエンドポイントで、ここにアクセスすると現在の天気情報を取得できます。このURLにリクエストを送ることで、APIは必要なデータを返してくれるということです!
HTTPメソッドの基本
Web APIとの通信には、「HTTPメソッド」と呼ばれる操作が使われます。これはWebサーバーに何をして欲しいかを伝える方法です。基本的なHTTPメソッドには以下があります。
-
GET: データの取得に使われます。例:
GET /api/items
はアイテムのリストを取得します。 -
POST: 新しいデータを作成するのに使われます。例:
POST /api/items
は新しいアイテムを作成します。一般的には「PUT」が更新に使われることが多いです。PATCHは部分的な更新に特化しています。 -
PATCH: 既存のデータを更新するのに使われます。例:
PATCH /api/items/1
はIDが1のアイテムを更新します。 -
DELETE: データを削除するのに使われます。例:
DELETE /api/items/1
はIDが1のアイテムを削除します。
最後に
私自身まだまだ勉強中なので、何か問題がありましたら教えてください!
この記事が皆さんの知識の一部となり、APIに対する理解を深める手助けになれば幸いです。
読んでいただき、ありがとうございました!