Web API 【Web Application Programming Interface】

概要

Web API(Web Application Programming Interface)とは、HTTPなどのWeb技術を応用して、あるコンピュータで動作しているソフトウェアの機能を、ネットワークを通じて他のコンピュータから利用できるようにする仕組み。

APIApplication Programming Interface)とは、コンピュータプログラムが提供する機能を他のプログラムから呼び出して利用するための規約で、処理要求や応答のデータ形式、双方のやり取りの手順などで定義される。

Web APIはWebサーバ上で動作しているプログラムが外部に機能を提供するためのAPIで、Webサイトに別のサイトの提供する機能やデータを組み込んだり、アプリケーションソフトからWeb上で提供されているサービスの機能やデータを利用するために用いられる。

Web APIで機能を公開しているサーバに対して、インターネットなどを通じて依頼内容をHTTPリクエストの形で送信すると、処理結果がHTTPレスポンスの形で送られてくる。呼び出し側が挙動や入力データを指定する引数URLパラメータクエリ文字列)などの形でURLの一部として指定することが多い。

送受信されるデータの形式はAPIの種類や目的によって様々だが、WebコンテンツWebサービスで馴染み深いHTMLJSONXMLプレーンテキストなどがよく用いられる。応答として画像ファイルPDFファイルCSVファイルなど、内容を特定形式のファイルにまとめて送る仕組みもよく見られる。

RESTful APIとSOAP

Web APIの構成法としてよく知られるものに「SOAPSimple Object Access Protocol/ソープ)と「REST」(Representational State Transfer/レスト)がある。

SOAPXMLHTTPを基本として、Web APIで用いるメッセージの形式や通信手順プロトコル)などを規定した標準規格で、用途や目的ごとに詳細な拡張仕様が規定されている。2000年代初頭にWebサービス実装の有力な規格として期待されたが、仕様の複雑さや規模の大きさが敬遠されあまり普及しなかった。

RESTはシンプルさを重視するAPIの設計原則で、セッションなどの状態管理の仕組みを持たない(ステートレスである)など、4つの原則で構成される。これをWeb APIの設計に適用したものを「RESTful API」(レストフルAPI)あるいは「REST API」という。

RESTfulなWeb APIではHTTPURLなどWeb技術の仕様をなるべくそのまま取り込みHTTPメソッドによる動作の指定、HTTPステータスコードによる結果の通知、URLだけで機能や対象の一意な指定や識別をう、実行状態を保存せず同じ入力に対しては常に同じ出力を返すなどの特徴がある。

REST自体は原則を示しているだけで個別の用途に応じた仕様の策定などは開発者に任されるため、似た目的のためにそれぞれ互換性のないAPI仕様が乱立するなどの問題はあるものの、仕様がシンプルで開発や利用が容易なことから広く普及している。

(2023.3.10更新)

他の辞典による解説 (外部サイト)

この記事の著者 : (株)インセプト IT用語辞典 e-Words 編集部
1997年8月より「IT用語辞典 e-Words」を執筆・編集しています。累計公開記事数は1万ページ以上、累計サイト訪問者数は1億人以上です。学術論文や官公庁の資料などへも多数の記事が引用・参照されています。
ホーム画面への追加方法
1.ブラウザの 共有ボタンのアイコン 共有ボタンをタップ
2.メニューの「ホーム画面に追加」をタップ
閉じる