こんにちは。
ワークスアイディの奥西です。
日頃からIT領域の仕事をさせて頂いていると
お客さまとの打ち合わせの会話の中にも
「ここはAPIで連携できないかな?」という相談を受けることがあります。
理解の浸透が進んできているAPIですが、
いざ、分かりやすく説明しようとしても難しくなってしまいます。
本日はAPIの種類を分かりやすく解説していきますね。
分かっているようで、ボヤッとしている方も一緒に考えていきましょう!
APIとは
APIはApplication Programming Interfaceの略で、
ピンとこないですかね……。
APIを使うことで、異なるシステムやアプリケーションがスムーズに連携し、
機能を共有することができます。
例えば、タクシー配車アプリで位置情報を提供するために、
Google Maps APIやMapbox APIを使用して、
地図データとナビゲーション機能を提供しています。
それにより、ユーザーが目的地までの配車を依頼し、
リアルタイムで車の位置を追跡することが可能になるということです。
APIの仕組み
APIは、
クライアント(リクエストを送る側)は、サーバー(レスポンスを返す側)に
特定のデータやサービスを要求します。
サーバーはそのリクエストを受け取り、適切なデータやサービスを返します。
この一連のやり取りがAPIの基本的な仕組みです。
クライアントとサーバーの関係は、飲食店でのやり取りに似ています。
-クライアント(お客さん)
飲食店に来るお客さんです。
お客さんはメニューを見て、注文したい料理を決めて店員に伝えます。
クライアントは、サービスやデータをリクエストする側です。
-サーバー(飲食店)
店員が注文を受け取り、キッチンで料理を作り、
完成した料理(サービスやデータ)をお客さんに提供します。
この「飲食店」がサーバーに相当します。
サーバーは、クライアントからのリクエストに応じて、
サービスやデータを提供する側です。
API連携のメリット・デメリット
API連携のメリット・デメリットを簡潔にあげてみます。
メリット
1.効率化
システム間でデータを自動的に交換することで、手動入力やデータの
2.スケーラビリティ
APIを利用することで、新しい機能やサービスを
3.柔軟性
APIを使えば、特定の機能を他のサービスやアプリケーションと
4.開発コスト削減
既存のAPIを利用することで、ゼロからシステムを開発するよりも
デメリット
1.API提供企業に依存してしまう
提供元が仕様変更すると、それに合わせて修正しなければなりませんし、
提供が終了されてしまうと、連携自体が出来なくなってしまう場合があります。
2.利用コストがかかる
前述の通り、既存APIを利用することで開発にかかるコストは抑えられますが、
有償のAPIや従量課金制のサービスもあるので、ランニングコストがかかる場合があります。
APIの種類について
APIにはさまざまな種類があり、それぞれ異なる用途や特性を持っています。
主要なAPIの種類を紹介しますね。
1.REST API
REST APIは、
REpresentational State Transfer(リプレゼンテーショナル・ステイト・トランスファー)の略です。
覚えられないです…。
例えば、スマホアプリが天気予報を表示するとします。
そのアプリは天気情報を提供するサーバーにデータをリクエストし、サーバーはアプリにデータを返します。
このやり取りを効率的に行うために使われるのがREST APIです。
2.WEB API
WEB APIは、
代表的な例としては、Google MapsのAPIやX(旧Twitter)のAPIがあります。
これらのAPIを利用することで、
アプリケーションに地図情報やツイートのデータを組み込むことができます。
要するに、WEB APIは他のサービスやアプリの機能を自社のアプリで使えるようにするためのものです。
3.ネイティブAPI
ネイティブAPIは、特定のプラットフォームやオペレーティングシステム上で動作する
例えば、iOSやAndroidのアプリが利用するAPIがこれに該当します。
特定のデバイスやOS(オペレーティングシステム)専用のAPIです。
デバイス固有の機能(カメラ、GPS、センサーなど)にアクセスすることができます。
4.ライブラリAPI
ライブラリAPIは、
例えば、PythonのNumPyというライブラリを使えば、数学的な計算を簡単に行うことができます。
JavaのApache Commonsライブラリを使えば、文字列操作などの便利な機能を利用できます。
5.ランタイムAPI
ランタイムAPIは、
プログラムの動作中に新しい機能を呼び出したり、動作を変更したりすることができます。
例えば、Javaや.NETのランタイムAPIは、プログラムの実行中に必要な機能を提供してくれます。
6.データベースAPI
データベースAPIは、
例えば、SQLという言語を使ってデータベースに
データを追加したり、更新したり、削除したり、検索したりできます。
プログラムはデータベースに保存されている情報を効率的に扱うことができます。
まとめ
APIの提供方法もいくつかありますが、今回は「APIの種類」について書いてみました。
APIはビジネスを拡張ために活用されてきており、
APIを公開する企業がグローバルで増えつつあります。
API公開によって自社だけでなく、他社のサービスも活用して
広がっていく経済圏を「APIエコノミー」といいます。
APIは新たな価値創出の鍵となる技術ですね。
APIの活用がビジネスの成長に大きく貢献することが期待されます。
是非、皆さまの会社でも「APIの活用について」議論してみてください。
本日もGOOD JOB!!
▼こちらもおすすめ