API利用が普及した現在、API利用の課題が顕在化してきた
システムはかつて巨大なモノリシックだったが、SOAやAPIによりマイクロサービス化が進んでいる。「APIエコノミー」という言葉は、登場したての頃には将来予測の段階に留まっていたが、今ではもう現実となり、日々拡大を続けている。現在では多くの企業が自社サービスをAPIとして提供し、こうしたAPIを組み合わせて多彩なサイトやアプリが生まれているのが実情だ。
楽天はAPIエコノミーの流れでは先駆者。2006年からAPIのオープン化を推進しており、今では多数の楽天サイトがAPIを公開している。楽天市場だけではなく、楽天トラベルや楽天ブックスでは商品やアイテムの検索結果をAPIで提供している。楽天のソウ・マーカス氏によると、楽天が一般公開しているAPIの利用者は1万5,000人を超えているという。
一方、楽天ではサードパーティーAPIも活用している。つまりプロバイダでもあり、ユーザーでもあるということだ。例えば楽天のフードデリバリーサービス「楽びん」では、Google MapsのAPIから地図を入手し、画面表示や配送ルートの最適化を実現している。今では楽天に限らず、多くのWebサイトがAPIで機能を提供し合い、「持ちつ持たれつ」のような関係にある。
これだけ多種多様なAPIの利用が日常化すると、不都合も生まれる。楽天コミュニケーションズのデバンジェリスト(デベロッパーとエバンジェリストの掛け合わせ)カヴェン・セイド・ミッチェル氏は開発者が抱える悩みとして、「ドキュメントがわかりにくい」「APIの管理が面倒」「何度も支払いを申請しなくてはならない」などを挙げる。提供元が異なるAPIを多数使うようになると、次第に煩雑さが重荷となってくる。
アプリの開発者からすると、自分が必要とする機能を提供するAPIを検索し、そのAPIの仕様となる情報を素早く入手する必要がある。APIの利用開始後は、利用しているAPIをまとめて管理することも重要だ。特に利用コスト(API利用料)については、業務で利用であれば事前に経費申請も都度行わなくてはならない。こうした管理をAPIごとにやろうとすると、かかる手間は無視できなくなってくる。
逆にAPIプロバイダからすると、自社が提供するAPIをいかに開発者にリーチできるかが最初の課題となる。機能を提供していても使ってもらえなければ意味がない。利用者が増えると、今度は課金や請求手続きの手間、APIパフォーマンス管理も課題となる。
そうしたなか、2年ほど前にAPIマーケットプレイス「RapidAPI」が生まれた。共同創設者兼CEOのイド・ジノ氏はイスラエル出身で20歳。今ではサンフランシスコに会社の本拠地を移した。ほんの数年で瞬く間に成長し、現在ではサイト利用者は50万人。サイトに登録されたAPIはMicrosoft、Spotify、NASAのものなど幅広く、8,000を超える。世界最大級のAPIマーケットプレイスへと成長した。
そしてついに、2018年7月11日からは楽天が日本向けに「Rakuten RapidAPI」として提供することとなった。楽天が「RapidAPI」を提供するR Software社と独占的な戦略パートナー契約を締結したためだ。これによって今まで「RapidAPI」で提供されてきた各種サービスを、今後は「Rakuten RapidAPI」で日本語でも利用できるようになる。これから日本のAPIプロバイダの登録が増えることが予想されるが、日本市場においても「Rakuten RapidAPI」によって「APIエコシステム」の形成が一層加速すれば、将来の大きな成長分野のひとつとなることが見込まれる。
APIが手軽に試せて、使える! デモではダッシュボードを作成
あらためて「Rakuten RapidAPI」とはどのようなサイトか具体的に見ていこう。サイトのインターフェースはとてもシンプルで、開発者が求める機能がそろっている。
サイトを開くと画面上部に検索バーがあり、画面中央にあるAPIリストでは提供元、説明、利用者数が並び、APIの概要を知ることができる。利用者数からある程度の信頼性や実績を推測できる。
いずれかのAPIを開くと、APIの概要や機能のテスト、ドキュメント、料金プラン一覧など必要な情報が表示される。提供元ごとに調べる必要がなく、日本語で表示され、テストや設定も「Rakuten RapidAPI」からできてしまうのだ。パフォーマンスやコストも管理できて、API提供元が多数に分かれていても請求は月に一度。これはかなりうれしいのではないだろうか。APIの接続ポイントもRakuten RapidAPIにまとめることができる。
APIプロバイダにもメリットがある。すでに登録ユーザーは50万人、今後は日本市場への進出でさらなる増加が見込まれる。リーチを大きく広げることができるだろう。提供の手間も軽減できそうだ。「Rakuten RapidAPI」ではAPI料金を自由に設定できて、請求や支払い対応なども行えるため、API提供にかかる労力を軽減できる。またAPIプロバイダにはユーザー管理やAPIパフォーマンスを監視する専用画面が提供される。
実際にどれだけAPIの検索と利用が簡単にできるか、使い勝手をソウ氏がデモで見せた。作成するのは現在地をもとにしたダッシュボード画面。現在地の都市名、天気、主要ニュース、背景画像、これら全てをAPIで取得してダッシュボード画面に表示する。
まずは現在地。IPアドレスから都市名を取得するAPIを検索し、候補から「IPInfo.io」を選んだ。[機能]タブを開くと、設定方法の説明や言語ごとのサンプルコードが表示され、どのようなレスポンスが返ってくるかを確認できる。
一般的にAPIを使う時は、API提供元にアクセスし、ユーザー登録など必要な設定を行う必要がある。そうした事前準備や設定手順が「Rakuten RapidAPI」で案内されている。登録を済ませてAPIキーを取得したら、「Rakuten RapidAPI」のAPI検証ペインに入力し、APIを通じて必要な情報(戻り値)が得られるかをサイト上で確認できる。画面右にはAPIキーも含めたサンプルコードが表示されるため、開発者は確認ができたらサンプルコードをそのまま自分のプログラムにコピー&ペーストすればいい。
天気は「AccuWeather」、背景画像は「Unsplash」、ニュースは「Bing News Search」をそれぞれ選んだ。ソウ氏によると「AccuWeather」は情報が多く、「Unsplash」はかっこいい写真素材が提供されるそうだ。同じ目的でもAPIにより、戻り値となる情報の鮮度や豊富さなどが多少異なる。いろいろと試してみて、好みのAPIを探すのも楽しそうだ。できあがったダッシュボードがこちら。
ソウ氏は「見てわかる通り、ほとんどがコピー&ペーストでできます」と簡単に開発ができることをアピールした。わずか15分足らずで、APIを利用する部分ができてしまった。
Rakuten RapidAPIにユーザー登録すると、利用APIを一元管理できるダッシュボードが利用できる。どれだけコールしたか、レイテンシーやエラー、そして大事な利用料金の統計情報を確認できる。APIごとの利用料金がリスト表示されるページもある。
先述した通り、日本のAPIプロバイダからのAPI登録はこれからだ。ミッチェル氏は「日本やアジアには多くのAPIプロバイダがいます。日本のAPIが登録されたら、提供API数はさらに増えるでしょう」と話す。日本のニュースメディアや銀行、あらゆるAPIがここに登録されたら、APIがより簡単に利用できるようになる。プロフェッショナルの開発者の開発効率を高めるだけではなく、子どもも含めて初心者でもAPIが手軽に利用できるようになり、開発の敷居を下げることにもつながりそうだ。
お問い合わせ
楽天コミュニケーションズ株式会社