デジタルビジネスの出発点 「APIマネジメント」を理解する

2017.09.21
リスト
このエントリーをはてなブックマークに追加

企業内部に閉じている既存の業務システムに対し、デジタルビジネスにおけるシステムやサービスはむしろ外部開放が基本である。複数の企業同士がシステムやサービスを相互に連携させてそれぞれの顧客の”体験価値”を高めるアプローチであり、その手段としてWebAPI(Application Programming Interface)がある。

デジタルビジネスの先駆的企業である配車サービスの米Uber Technologiesの取り組みを例に、どういうことかをみてみよう(図1)。同社は自社のサービスを「Uber API(WebAPI)」として開放し、様々な企業が活用できるようにしている。利用する企業の1社がユナイテッド航空である。座席の予約サイト(アプリ)においてUberの配車サービスを呼び出せるようにし、旅客が座席を予約した時に目的地の空港で車を手配できるようにしている。米国ではよく知られるレストラン予約サービスであるOpenTableも同様に、レストランの予約と同時に車の手配を行えるようにした。


図1:Uber Technologies のAPIの例。繋がることでビジネスを創造(画面はそれぞれのアプリから)

この時、旅客やレストランの利用者はUberのアプリを立ち上げる必要がない。あたかもユナイテッド航空が配車サービスを提供しているかのようにシームレスに一連の予約を完了できる。少し考えれば分かることだが、これはUberやユナイテッド航空など、そして何よりも利用者に利点をもたらす。WebAPIを介してUberと周辺企業間で相互に事業が活性化されるのだ。これが「APIエコノミー(API経済圏)」とまで言われるゆえんである。

APIエコノミーを加速するAPIマネジメント

プログラミングの目線でWebAPIを表現すると、様々なプログラムから共通に呼び出す”サブルーチン”と言える。Uber APIの場合に「ドライバーと乗客をマッチングする配車サービス」というサブルーチンを、ユナイテッド航空の予約プログラムが呼び出している形だ。ユナイテッド航空からすれば、様々な企業が公開しているWebAPIを利用することで、自らのサービスを高度化できる。Uberにしても自身のサービスをGoogle MapsやBraintree(決済)といったWebAPIを組み合わせて構築している。

しかし、自社が提供するサービスを外部に開放するといっても、サブルーチンのように単にプログラムを用意すればいいわけではない。セキュリティや外部利用の制限など想定するべきことがある。それを行うのが、「APIマネジメント」と呼ばれるツール(またはサービス)であり、主な機能は以下の5つがある(図2)。


図2:APIマネジメントが備える5つの主要機能

(1)セキュリティ

WebAPIはインターネット上に公開されるものであり、アクセスコントロールや認証といった考慮が必ず必要となる。アクセスコントロールは、例えば事前に配布した「API Key」を組み込んだ外部アプリケーション(サービス)からのリクエストのみを受付けたりするといった、API利用者を絞り込む機能である。

もうひとつの認証は、外部サービスの利用者の利便性に関わるものである。ユナイテッド航空の利用者は予約システムにログインする際に認証を求められる。これは当然だが、予約システムの中で配車サービスを利用する際にUberへのログイン認証をしなければならないとすれば、Uberに別途ログインするのと変わらなくなってしまう。UberAPI経由でサービスを利用する人は予約システムの段階で認証しているので、再認証しなくても済むようにする必要がある。これを可能にするのが「OAuth」というプロトコルに対応する機能である。

(2)トラッフィック制御

公開したWebAPIがどれぐらいの頻度で利用されるかを予想することは難しい。従って、WebAPIのレスポンスを生成するバックエンド・システムの性能要件をあらかじめ規定することは事実上不可能だ。外部からの利用が多すぎて、自社のサービスのレスポンスに支障が生じるようでは、本末転倒でもある。このような場合に有効なのが「流量制限」である。

例えば1分間に10回までリクエストを受付け、11回以降はエラーを返すといった制限をかけることで、バックエンド・システムの許容する性能範囲で運用を続けることができる。また、この方法はDDoS攻撃への対処にも有効である。

(3)ライフサイクル管理

WebAPIは、一般的なアプリケーションの開発・テスト・運用と同様なプロセスを経て開発を進める。言い換えればWebAPIの開発・テスト時に利用する環境と、運用(WebAPI公開)向け環境との切り替えを厳密に行うことで品質の担保につながる。またWebAPIの改版時にはバージョン管理によるエンドポイントを示すURLをバージョンごとに一意にすることで、アプリケーション開発者が間違ったAPIを使うことを防止できなければならない。

(4)Analytics Service

公開したWebAPIがどれだけ使われているのか?どんな時間帯に使われるのか?どんなアプリケーションから使われているのか?どの地域から使われているのか?といったことを評価するために、WebAPIの呼出し履歴を分析し可視化する機能である。また、WebAPIを直接的に売り物とするビジネス(例えば、天気予報API)において、従量課金の根拠となるメータリング情報としてもWebAPI呼出し履歴が活用できる。

(5)Developer Service

API提供側がWebAPIを利用するアプリの開発者に向けた情報発信の仕組み、「開発者ポータル」を持つことで、アプリ開発者が自律的に開発を進めることを促進することができる。Developer Serviceには開発者ポータルを構築する雛形が備わっており、WebAPI仕様の公開、利用申請の受け付け及びAPI Keyの配布、アプリ開発者をサポートするコミュニティといった仕組みも含まれている。

富士通が提供するAPIマネジメント「Apigee」

APIマネジメントを実現するツールやサービスを提供する企業は多数存在する(図3)。富士通はこの分野で高い実績を持つ米Apigeeと提携し、パブリッククラウドである「K5」上で「K5 API Management」として提供している。この分野では大手ICT企業によるベンチャーの買収が進んでおり、例えば米CA Technologies社はLayer7を、米Red Hatは3scaleという有力ベンチャーをそれぞれ買収した。昨年には米ApigeeもGoogleに買収された。しかし富士通との提携は変わらずに継続する方針であり、世界各国のK5にAPIマネジメントを順次展開している。


図3:APIマネジメント製品におけるApigeeの位置づけ
(米ガートナーの「Magic Quadrant for Full Life Cycle API Management」2016)

富士通がApigeeを採用した理由は、スケールアウトするアーキテクチャを持っており、大量のAPI呼び出しに耐えられる構造である点が大きい。事実、多くの流通業がApigeeを使っており、1日で10億回以上のトランザクションを日常的に処理できているのに加え、ブラック・フライデー(クリスマス商戦)時のピーク時には毎秒5万回のトランザクションを問題なく処理した実績もある。

加えてApigeeのハイブリッドクラウド戦略に基づき、Amazon Web ServicesやGoogle Cloud Platformなどのクラウド環境でのサービス提供に加え、全く同じアーキテクチャを持つオンプレミス向けソフトウェア製品を提供しており、富士通としても同様にクラウドサービスとオンプレミスの両方の選択肢をもたらすことができる点も、採用の理由である。

システム・モダナイゼーションとしてのWebAPIの価値

デジタルビジネスにおけるアプリケーション開発に欠かせないのは述べてきた通りだが、もう1つ、既存システムを外部から呼び出し可能にするモダナイゼーションの側面もWebAPIにはある。富士通には顧客に納品したハードウェアやソフトウェアの保守サポートを担う部門や要員向けに、契約管理や機器管理、保守部品管理、インシデント管理を行うシステムがある。

それぞれ個別にデータを持っているが、事務所のPCで操作する分にはそれほど問題はなかった。しかし客先においてタブレットで参照するには不便なことは明らかである。そこでサイロ化していた各システムにWebAPIを設け、外部からアクセス可能にした。同時にお客様起点で必要な情報を串刺しで取得するタブレット・アプリを開発したのである。

これだけだと単に既存システムにWebAPIを設けただけだが、APIマネジメントを使って社外からセキュアにアクセス可能としたことも見逃せない。APIマネジメントの設定によって特定のタブレット・アプリのみに対してアクセスを許可したり、WebAPIの呼び出しの監視を行ったりすることでセキュリティを確保。VPN(仮想プライベート網)を使わずに外部からの利用を可能にした。

今後は、富士通のサポートビジネスを支えるパートナー様に対してもWebAPIを公開することで、パートナー様独自のサポートシステムを構築できることを目指しており、パートナー・エコシステムの充実にもWebAPIの活用を計画している。本来、顧客起点でデータを管理するように全面再構築するべきかも知れない。この点では暫定手段だが、時間もコストもセーブできたのはWebAPI、およびAPIマネジメントの大きな利用価値と考えている。

執筆者:鈴木 弘樹(富士通 ミドルウェア事業本部 シニアディレクター)
川合 康太(富士通 デジタルビジネスプラットフォーム事業本部 ビジネスプラットフォームサービス統括部 シニアマネージャー)

この記事は、IT Leaders特別編集版『Knowledge Integration in Action 2017 in Summer』からの抜粋です。

トップ写真:DrAfter123/Getty Images

EVENTイベント