API

APIの定義

Application Programming Interface (API)は、二つのアプリケーションあるいはシステムが会話できるように中間に入るものである。レストランのホールスタッフが分かりやすいだろう。お客さんがメニューから食べたい物を選び、ホールスタッフを通して注文する。ホールスタッフが注文をシェフに伝えて、できたらお客さんに渡す。この例えでは、ホールスタッフがAPIだ。つまり、APIではアプリ、あるいはシステムが提供する自分の情報やファンクションが定義される。第三者はそのAPIを自分のアプリに繋げて、自分のアプリのために利用できる。

APIは幅広く使われるが、中でもよくあるのはウェブAPIである。例えば、DX ReviewでTwitterとFacebookでアカウント登録ができる。このためにDX ReviewをFacebookとTwitterのAPIに繋げている。また、スマートフォンで天気予報を確認すると、天気予報のアプリが天気情報を提供しているAPIを使っている。無料のウェブAPIがあるけれど、APIの利用を商品として提供している企業もある。

DXとAPI

DXに於いては、APIは複数の意味で有能なツールである。ここでは2つを軽く紹介する。

一つ目は、コスト削減である。例えば、自社で開発するのではなく第三者のAPIを利用することにより、開発コストを削減できる。これはマッシュアップとも呼ばれる。

二つ目は、社内の効率化である。特に大手企業ではシステムがとても複雑で、密結合性が故に一つの改修を実装するためのコストとリスクがとても高い。システム全体をマイクロサービスに分割して、それぞれのシステムをAPIで繋げることでこの問題を解決できる場合が多い。