FinTechやIoT(Internet of Things)の流れで、システムのAPIをインターネット上に公開する動きが進んでいる。こうしたAPIの作成を支援するツールが続々と登場している。無償で使えるオープンソースソフトウエア(OSS)も台頭してきた。エンジニアは最適なツールを選び出す知識が求められる。

 自社システムのAPIをインターネット上に公開し、他社システムと連携させて新サービスを生み出す「APIエコノミー」の動きが広がっている。

 典型例は、銀行がオンラインバンキングシステムのAPIを公開する動きだ。残高照会などの機能をインターネットを介して呼び出せるようにして、家計簿や会計といったFinTech企業のサービスと連携。新サービスを作り出し、新たな顧客を開拓しようとしている。TISの小西啓介氏(金融事業本部 フィナンシャル事業部 フィナンシャルシステム第5部主任)は、「最近、どうすれば公開APIを作れるのかという問い合わせが多い。セミナーや勉強会を開催すると、ユーザー企業ですぐに満席になる」と話す。

 ただし、インターネットにシステムのAPIを公開する際には「社内システム同士を連携させるときには無かった要件が加わる」(TIS ペイメントビジネス事業本部 ペイメントソリューション事業部 ペイメントソリューション第1部主査 鈴木 翔一朗氏)という点が課題だ。

 例えば、認証や攻撃対策といった「セキュリティ」、アクセスの流量を制御する「スロットリング」、メッセージのフォーマットやプロトコルを変換する「リクエスト/レスポンス変換」といった機能が必要になる。これらの機能を備えたAPIサーバーを自前で構築することは不可能ではない。とはいえ、「スケーラビリティーを確保しにくく、運用の手間も掛かる。本番環境では難しい」(鈴木氏)。

APIの非機能要求をすべて提供

 こうしたAPIを公開する際の課題を解決する手段として、「APIマネジメントツール」が続々と登場している。機能は大きく三つ挙げられる。(1)APIゲートウエイ、(2)モニタリング・分析、(3)開発者ポータル――である(図1)。

図1●公開APIの開発を支援する「APIマネジメントツール」の概要
図1●公開APIの開発を支援する「APIマネジメントツール」の概要
商用製品の多くは「API ゲートウエイ」「モニタリング・分析」「開発者ポータル」の三つの機能を備える。オープンソースソフトウエアの「Kong」はAPIゲートウエイに特化している
[画像のクリックで拡大表示]

 (1)のAPIゲートウエイは、リバースプロキシーとして動作し、インターネットに対する唯一の出入口となるものだ。公開APIを呼び出すリクエストを外部のAPI利用システムから受け取ると、APIゲートウエイはメッセージやプロトコルを変換。バックエンドのAPIを公開するシステムに、機能を呼び出すリクエストを送る。一度に複数のシステムを呼び出すことも可能だ。

 APIゲートウエイは、セキュリティやスロットリングといった機能も備える。さらに負荷に応じて自動でスケールアウトしたり、キャッシュで負荷を軽減したりするツールもある。APIに必要な非機能要求にかかわる実装をすべて搭載したソフトウエアといえる。

 (2)のモニタリング・分析は、APIの稼働状態や利用状況を確認できる機能。アクセス統計をグラフィカルに表示する機能を持つツールも多い。

 (3)の開発者ポータルは、外部の開発者のために、API活用の手引きとなるドキュメントを公開したり、APIの利用申請を受け付けたりする機能である。APIの仕様を定義する言語「Swagger」で記述したスクリプトから、ドキュメントを自動生成することも可能だ。本番環境とは独立したテスト環境を提供するツールもある。

 主な商用APIマネジメントツールは、これら三つの機能をすべて搭載する(表1)。OSSの「Kong」(国内ではブリスコラがサポート)はAPIゲートウエイに特化している。

表1●主なAPIマネジメントツール
表1●主なAPIマネジメントツール
提供形態、料金体系、日本語対応がツールによって異なる
[画像のクリックで拡大表示]