エンタープライズにおけるAPI活用における利点、課題はどこにあるのか。今回はその実情を知ってもらうべくAPIゲートウェイを開発している加藤さんにインタビューを行いました。聞き手はMOONGIFTの中津川です。
3年前から企画していたAPIゲートウェイとは?
Web API(以下API)が普及して10年くらい経ち、ここ数年ビジネスにおいてもAPIを公開することでサービスの利用率や競争力を高めていこうという動きが活発化しています。私たちNTTコミュニケーションズとしても自社サービスをAPI化し、利用を広めていこうと進めています。そんな中、各サービスごとにばらばらにAPIを出すのではなく、標準化や管理を統一して使いやすいAPIを提供していこうというのがAPIゲートウェイになります。ここ1、2年で同様のサービスが幾つか出てきています。
約3年前に企画して技術検証とプロジェクトの立ち上げ、そして今年の4月から正式に公開したサービスになります。技術検証はあらかじめ進めていたので実際の開発期間は半年くらいになります。
NTT Communications APIs | NTT Communications Developer Portal
すでに海外でははじまっているAPI管理サービス
AT&TやVerizonといったキャリアが既に動いています。キャリアで進んでいるのは主に3つの理由があります。
- 持っているサービスが幅広い
- 共通化したインタフェースを通して提供することで顧客ロイヤリティを向上する
- 多岐に渡る部門において技術的なクッションになる
といった理由から生まれているようです。
APIを管理する仕組みがない場合に起こる問題ですが、例えばAPIではありませんがNTTコミュニケーションズにおいて社内標準がないままに各部署がスマホアプリを自由に開発した時期があります。その結果として全体の品質やインタフェースの統一感がなく、利用者を混乱させてしまう状況にありました。同じようなことがAPIにおいても起こらないために、2つの施策を考えています。
- APIゲートウェイ
- APIチェックリスト
がそうです。
単に作るだけでなく、どう作るかを規程するAPIチェックリスト
技術力があればAPIを作ることはできます。ただ、どう作るのがベストであるのかは人によって判断が分かれるところです。そこでインタフェースやセキュリティ、データフォーマットなどについての統一規格としてAPIチェックリストを作成しました。気をつけた点としては、
- SOAPではなくREST APIを基本とする
- 軽量なフォーマットであるJSONフォーマット
- スキーマチェックや自動化を可能にするJSON Schemaを活用
があります。これらを守ることで利用企業様の困らないAPIが実現できると考えています。
※ APIチェックリストについては以下の記事を参照してください。
エンタープライズにおけるAPI提供というのは、社内システムのオープン化とも言えます。従来の業務システムというのは利用者が限定的であるため、メンテナンスを含め一時的に停止している時間があってもさほど問題にはなりませんでした。しかしAPI化すると言うことは外部からの自動化に利用されますので停止時間や情報の鮮度などが問題になります。そういった点も考慮してシステム開発されていなければなりませんので一定の枠組みを通して意識改革も行う必要があると考えています。
公開するだけではダメ。その次のステップは?
過去10年、多くのAPIが作られてきましたが作りっぱなしで終わっているケースも多く見られます。それを防ぐために、
- 他社のAPIを使ったマッシュアップ例の提示
- APIを使ったアプリケーション、ツール、サンプルコード
などが必要だと考えています。目下、そうした開発を支援するための仕組みやライブラリを充実させていこうと考えています。
実際にAPIを使って開発をしていこうとしている開発者から度々聞かれる声としては、開発の規模感が分からないと言った意見があります。これは実際、作りたいアプリケーションの規模感によって異なりますので、まずはエンジニアが中心となってAPIを使った小さなコードを書くところからはじめて、肌感覚を鍛えて欲しいと考えています。いきなり大きなものを作ろうとするのではなく、小さくはじめて徐々に大きくしていくと言った形です。
APIゲートウェイとして目指す形は?
まずは自社サービスをAPI化していこうというのが第一段階です。その後の段階としては私たちの顧客たる企業様のサービスをAPI化し、その管理、運用を行っていこうと考えています。とはいえ、現段階ではネットワークとクラウドについてAPI化を進めている段階なので、全体としてみればまだ2、3割といったところです。
また、IoT分野にも力を入れていきます。例えばAPIゲートウェイはIoTデバイスと開発者との間に立つ、いわゆるハブになると考えています。デバイスから収集したデータ、閾値などをAPIを通して公開していきます。さらにWebHookやWebSocketなどを使って情報を相互にプッシュしていく仕組みを導入すると言った予定もあります。
2年前くらいではAPIはまだ開発者が肌感覚で知っている程度でした。その後、昨年くらいから経営層においてもAPIの重要性が認知されるようになってきました。既存のサービスにAPIを追加するのは時間がかかるのですが、新規でサービスを開発する際においてはAPIを最初から準備しておく「APIファースト」によって開発コストは1.1〜1.2倍としつつも、効果を2〜3倍とするような広め方をしたいと考えています。
とはいえエンタープライズにおけるAPI活用はまだまだです。そこで私たちとしてはNTTコミュニケーションズ関係なしに、まずエンタープライズでのAPI活用を盛り上げるべく、Enterprise APIs Hack-Nightを企画しています。定期的に開催していきますのでぜひ参加してください!