EAI/ETL技術者のブログ

データ連携の基礎

いまさら聞けない「WebAPIとは?」 -基礎・利用方法・API連携を解説します

公開日:
更新日:
データ連携の基礎
#HULFT Square
#EAI
#API
#WebAPI
#REST
#SOAP
WebAPIとは?

初版公開日:2023.04.17
更新日:2024.10.31


WebAPIとは

WebAPIとは、Web上でAPIのやり取りを可能にしたものです。

まず「API」について考察してみましょう。APIとは、「Application Programming Interface」の頭文字をとったものです。直訳すると「プログラムからアプリケーションを操作するための仕組み」でしょうか。

普段ブラウザから見ているアプリケーション(画面)は「表玄関」であり、基本的には、人が画面上から操作することを想定して作られています。(近年は上記に形式に限らず、ソフトウェア型のロボットが代替して自動的に業務を行う「RPA」なども急速に普及しています。)

それに対して、APIは「裏口」です。裏口だと聞こえが悪いので、「勝手口」と言った方が良いかもしれませんね。

隣の席の同僚から「いまどきの家に勝手口なんてあるの?」と突っ込まれましたが、我が家にはありますのでスルーします。

おまけで英語での表現も紹介します。

勝手口:back entrance
裏口:back door

やはり勝手口の方が良さそうですね。

さて、勝手口と聞いて、どういった使い方を思い浮かべますか?

「もしも勝手口が無かったら、毎回玄関から、家の裏にあるゴミ箱まで回るのかぁ。なんだか面倒くさそうだな・・」 と連想したのは私だけでしょうか。

Googleで「勝手口」を検索してみたら、これから家を建てる方が「勝手口は必要なのか?」という質問を投げかけて、「ぜったい要る!」「ぜったい要らない!」という激しい論戦になっていました。

なんとなく「無くても良さそう」という雰囲気を感じました。これも一つの時代の流れでしょうか。

それはさておき、APIの必要性について考えてみましょう。

我々がアプリケーションから登録したデータは、多くの場合そのシステムで処理されるだけでなく、他のシステムにも連携されています。

名刺管理システムに名刺データを取り込んだら、顧客管理用のデータベースにも連携されていると思いますが、これもAPI経由のデータ連携ですね。

このような背景から、製品やサービスを選ぶときに、アプリケーションの本来の機能と同じように、APIの充実度が重要視されるようになりました。

WebAPIの代表例

WebAPIのもっとも身近な例は、Amazonや楽天での買い物かもしれません。

オンラインで買い物をする際に「Amazon最安値」という表示を見たことはないですか?
こういった表示は、Amazonとは関係ない個人のWebサイトで公開されていたりします。

この「最安値」のデータは、Amazonが提供するWebAPI経由で取得されています。
他にも、Amazonで買い物をしていると表示される「おススメ」や「ベストセラー」のデータもWebAPI経由でアクセスされているものなのです。調べてみると、日本語の丁寧な開発者ガイドもありました。

身近なものとしては、NHKが番組情報を提供している「番組表API(※)」なんてものもあります。

WebAPIの企業ユースに話を戻すと、最近ではクラウドサービス(インターネット経由で提供されるITサービス)の利用が急速に進み、業務システムの大半がクラウドサービスという企業も多くなりました。

基幹システムにおいても、以前はAPIが備わっていないケースが多く、刷新プロジェクトではAPI連携を可能とする実装が検討されています。

主にインフラとして圧倒的な存在感のAmazon Web Service(AWS)、アプリケーションではKintoneや、Salesforce.comなどが有名ですね。

このようにクラウドサービスの利用が進むと、外部のクラウド上に保有しているデータと、社内にあるオンプレミスのシステムとの連携が必要になります。

WebAPIのイメージ

WebAPIを利用するメリット

WebAPIを利用するメリットは以下の通りです。

・自システムにない新しいサービスを追加できる
WebAPIを使用することで、自システムにはない既存のアプリや機能を利用したり、外部のデータを連携できたりします。自システムでは実装が難しい機能や収集の難しいデータも手間なく簡単に追加できるのがWebAPIを利用する1つ目のメリットです。
また、ほとんどのクラウドサービスは、WebAPIを提供しているため、自システム(オンプレミス)とクラウドサービスを連携することができます。それにより、多様なサービスやデータを使用できるようになります。
さらには、企業サービスの向上やマーケティングのために自社内のデータだけでなくオープンデータを活用する風潮も強まっています。企業や自治体、関連企業が相互に情報を共有することでより高いシナジーを求めるデータの連携が活発になってきているのではないでしょうか。

・開発の手間や時間を抑えられる
前述の通り、WebAPIを使用することで、既存の機能を利用できるため、一から機能を開発するよりも開発スピードや生産性を大幅に向上できます。新機能に対して、少ない時間で対応できるため、今後発生する利用者の新しいニーズにもリアルタイムで対応できます。また、昨今ではデータ分析でのシステムデータ利用のニーズが高まっていますが、利用者のニーズに合わせて都度データ出力処理を開発する、複数のシステム担当者と調整して必要なデータを準備する、といった手間も短縮でき、必要な人に、迅速にデータを届けることでビジネスの要求に対する対応速度を大幅に向上させることができます。

・業務効率化につながる
WebAPIを使用することで複数のシステムへ同時にデータを連携することも可能です。それにより、複数のシステムへ一つ一つ手作業で入力するよりも「短時間で」「正確に」データを登録することができます。

WebAPI利用時の注意点

Web APIの活用が進むにつれ、システム管理者側が考慮すべき点が増えてくるのも事実です。これまでと違いAPIとして社内外に広く公開されるため、密結合なデータ連携を行っていた時代と比べてセキュリティリスクが増加します。
今までは、データを使いたい方がシステムの担当者に依頼して、どんなデータにいつどれくらいの頻度でアクセスするのかなどの調整を経てデータを連携していました。
Web APIが普及するに連れ、利用者に対してどのAPIを公開するのか、参照・登録・更新のどのAPIへのアクセス権限を与えるかといった認証・認可を管理する仕組みをしっかりと作っておく必要があります。また、責任分界点を明確にした上で、自システムのデータを相手先に届けるまで責任をもって暗号化する必要があります。データそのものを暗号化する、SSL・TSLなどを用いて通信を暗号化するといった形でデータの機密性に合わせた提供方式を準備する必要があります。

↓HULFT Squareについて知りたい方はコチラ↓

~iPaaSの新たな選択肢~HULFT Squareとは
この記事を読む


WebAPIの種類-RESTとSOAPの違いとは?

WebAPIには種類がありますがその中でも主流のWebAPIが「REST」と「SOAP」の二つとなります。これらはデータ送受信時のルールのことでHTTPリクエストを送りその結果を受け取るという点では共通しております。

ここではこれらの違いについて簡単にご紹介します。

・REST
HTTPリクエストを送る際、「GET」や「POST」等のメソッドを利用してリクエストを送ります。レスポンスはXMLやJSONのデータ形式で受け取ります。
・SOAP
HTTPのリクエストを送る際もレスポンスを受け取る際もXMLのデータを扱います。

上記の通り、リクエストの送り方やレスポンスの受け取り方、データ形式等が異なります。
それぞれの違いについてご説明させていただきましたが、現在主流のWebAPIは「REST」となります。理由としては以下のような点が挙げられます。
・[GET][POST][DELETE]といったメソッドを利用してリクエストができる簡易さ。
・XMLデータだけでなく、JSONという形式のデータも扱うことができるという点。

「誰でもわかるWebAPIの使い方」資料をプレゼント!

「WebAPIとは一体なに?」という疑問にお答えするための資料を作りました。
弊社では、EAIツール「DataSpider」の販売・サポートを通じて、企業内のデータ連携の課題を解決するためのお手伝いをしています。
その現場で、「WebAPI」に関するご質問が増えていることから作成した資料です。

「WebAPIって何?」「RESTとSOAPって何が違うんだっけ?」
という基礎的な知識を求めている方に、特におススメです!

誰でもわかるWebAPIの使い方

※参考:NHK番組表API

ページトップへ戻る


この記事をシェアする

この記事を書いたスタッフ

著者の顔写真

小林 良平

小林 良平