[1] [DFN[Web API]] は [[Web]] に関係する [[API]] です。
2つの意味でよく使われています。どちらの意味かは文脈で判断するしかありません。

* Web プロトコルによって提供される API

[2] [[Webサービス]]などの機能を主に [[JSON]]、[[XML]] などを情報交換形式として使いつつ [[API]]
の形で提供されるものを [DFN[Web API]] といいます。[[Webサービス]]、[[Webアプリケーション]]などの類義語ですが、
人間の[[利用者]]よりも[[プログラム]]からのアクセスが主な目的である点で異なっています。

[3] 人間の[[利用者]]が使う[[Webブラウザ]]上で動作する [[JavaScript]]
から呼び出すことを目的としたもの、それ以外の任意の[[プログラム]]から呼び出すことを目的としたもの、
その両方を目的としたものがあります。

[FIG(list)[
- [[Web APIの悪い設計]]
]FIG]

[8] [[Webブラウザー]]以外からのアクセスを主要な用途としている点で、「[[Web]]」
とは何かを考えさせられる題材でもあります。 [[Webアプリケーション]]の実装のための[[エンドポイント]]に対して
「[[アプリ]]向け [[Web API]]」のような言い方もするようです。([[ネイティブ]])[[アプリ]]が
[[Web]] の一部ではないのは明らかですが、[[アプリ]]より外側は [[Web]]
ということになるのでしょうか。

* Web ブラウザによって提供される API

[4] [[Webブラウザ]]によって[[文書]]に (主に [[JavaScript]] に) 提供される [[API]]
を [DFN[Web API]] といいます。[[DOM]] も似た意味ですが、本来の [[DOM]]
は単に[[文書]]にアクセスする [[API]] を指すのに対し、[[Web API]] はそれ以外の [[API]]
も含めたより広範な意味となっています。
[[Web API]] の方が [[DOM]] より新しい呼び方として好まれることもあります。

;; [10] それでも、 [[DOM API]] と呼ぶ方が意味が明確で良いかもしれません。

[5] かつては [[W3C]] に [[Web API WG]] がありましたが、[[WebApps WG]] に発展的に改組されています。

[11] 
[[Web API WG]] の設置が[TIME[2006年 (平成18年)][2006]]。[[憲章]]はその前年[TIME[2005年 (平成17年) 11月][2005-11]]。

[12] 当時は真新しい言葉だった気がします。

[13] というのもこれは [[W3C]] [[DOM WG]] が解散して [[DOM API]] の開発がストップしてしばらくたったタイミングで、
[[DOM WG]] 外で新しく作られた or 提案された [[API]] の多くは「DOM」を称してなかったので、
それらを含めて「DOM API」という人と、新たに「Web API」と呼ぶ人が出てきて混在していた、
ということなのだと思います。

;;
[14] [[DOM WG]] の活動停止は[TIME[2004年 (平成16年)][2004]]。
これで [[W3C DOM]] の歴史はほぼ幕を閉じた。
ところが世の中は [[W3C]] とは違った動きを見せていて (というか [[W3C]] が世の中と別の方向に向かっていた)、
[[Ajax]] が世界的に大流行したのが[TIME[平成17(2005)年][2005]]、
[[WHATWG]] が始まったのも[TIME[2004年 (平成16年)][2004]]。

* メモ

[9] 「Web」という言葉の意味を考えれば >>4 の方が「Web API」という語の相応しい意味のような気がしますが、
人口的には >>2 の意味の方が普及しているのかな? >>2 は Web 技術者以外のIT技術者も使うので。

[15] 
>>2 も >>4 も同じくらいの時期から安定して使われている意味なので、衝突してわかりにくいのは遺憾ながら、
どちらが正しい正しくないというのは適切ではないと思いますよ。


[6] [CITE@en[WebAPI - MozillaWiki]]
( ([TIME[2012-07-30 20:48:00 +09:00]] 版))
<https://wiki.mozilla.org/WebAPI>

[7] [CITE@en[API Design Principles]]
([TIME[2015-11-14 00:42:49 +09:00]] 版)
<https://w3ctag.github.io/design-principles/>
