基礎から分かるAPI管理【第3回】
API公開で必要なタスクは? 開発者/提供者視点で解説
自社サービスの市場価値向上を目的にAPI開発およびAPI公開をする際、どのようなタスクが必要なのか、API提供者の観点で解説する。
第2回「APIとは何か? Web APIとの違い、利用者のタスクを解説」では、API利用者の観点から、Web APIの概要、Web APIを自社サービスに組み込む際の留意点および実施すべきタスクについて紹介した。第3回ではAPI提供者の観点で、自社サービスの市場価値向上を目的にAPIの開発および公開をする際にどのようなタスクが必要なのかについて述べる。
併せて読みたいお薦め記事
連載「基礎から分かるAPI管理」インデックス
APIで新たなビジネスに取り組む
マイクロサービスで不可欠なAPI
API開発および公開のために必要なタスク
API開発および公開をする際、既存サービスにAPIを実装するパターン、新規サービスにAPIを実装するパターンが考えられる。ここでは上記2つのパターンで共通的に実施すべきタスクと、個々のパターンごとに実施すべきタスクを説明する。
共通で必要なタスク
共通で必要なタスクについては、利用者のAPI利用時の利便性、セキュアな状態でのAPI公開を考慮し、下記タスクを実施する。
他社/他製品の良いAPI仕様を参考にしたAPI仕様定義
API開発に当たり、まずはAPI仕様の定義が必要だ。API仕様定義の際に参考になるのが、他社が持つAPI仕様である。参考にするAPIは、自社サービスに類似したサービスを提供している他社のAPIが適当だ。そうしたサービスが存在しない場合、API利用者が多いと想定されるサービスが持つAPIを参考にするとよい。
API利用者が多いサービスは、API利用分析や利用者のフィードバックを基に、より利便性の高いAPIを提供している可能性が高い。
APIレファレンス(API利用者に公開するAPI仕様のドキュメント)の充実
第2回で紹介した通り、API利用者が公開されたAPIを利用する際、最初に実施するタスクがAPIレファレンスの確認だ。
APIのリクエストおよびレスポンスのフォーマット、パラメーター、API利用のための認証有無といった情報に加えて下記の要素を含めることで、API利用者の利便性を高めることができる。
- 他言語対応(グローバルにサービス展開する場合)
- グローバルに展開しているサービスの場合、日本語だけでなく他言語(英語、中国語など)版のレファレンスを用意しておくことで、API利用を促進することができる
- 簡易なAPIテスティングツールの提供
- APIレファレンスの一部としてGUI(グラフィカルユーザーインタフェース)で利用可能な簡易なAPIテスティングツールを提供しておき、そこで利用者に実際にAPIを利用してもらう
API利用のためのSDK提供
自社が公開しているAPIを、API利用者側のサービスへ容易に組み込めるようにするために、SDK(ソフトウェア開発キット)を開発および提供する。
SDKにはAPI利用のための認証認可やAPIコール、APIコール時のエラーハンドリングといった処理を簡易にできる機能を搭載、API利用者側が開発を効率的に進められるようにする。
SDKはプログラミング言語ごとに提供する必要があり、全ての言語を網羅することは非現実的である。そのためAPI利用者側がサービスの実装に用いる言語の利用割合を考慮し、対応言語を選定する。
セキュアな状態でのAPI公開
自社サービスの市場価値向上を目的にAPIを公開する場合、インターネットに公開するのが一般的だ。APIを公開するサーバは、通常のWebサーバと同様にDMZ(非武装地帯)に配置するため、昨今増大するサイバー攻撃への対策が必要となる。
ファイアウォール、WAF(Webアプリケーションファイアウォール)、DDoS(分散サービス拒否)攻撃対策など外部からのサイバー攻撃への対策、APIを公開するサーバへのウイルス対策ソフトの導入、不要なポートの閉塞などの内部対策も実施する。
既存サービスにAPIを実装する場合のタスク
既存サービスにAPIを実装する場合、該当サービスで提供している全てのデータや処理のAPIを公開するのが理想だが、サービスを実現しているシステムのアーキテクチャを根本的に見直す必要が出てくる。
このため既存サービスにAPIを実装する場合、全サービスではなく、サービスを構成する一部の機能を利用可能なAPIの提供が適切だ。ここではAPIを提供する一部機能の選定方法およびAPI実装方法について述べる。
APIとして公開する機能の選定方法
市場価値の高い機能やデータを見極め、その機能やデータを公開するためのAPIを優先して提供する。例えば、自社しか持たないデータだが、さまざまな業種で活用することによって価値が生まれるデータを持っているとしよう。その場合、APIを介してAPI利用者がデータを参照できるようにすることで、自社サービスの市場価値向上につながる。
API実装方法
一部機能のAPI提供のために、既存サービスを実現しているシステムを改修するのではなく、API提供に必要なインタフェースだけ新規実装する。それだけでは足りない場合は既存システムのシステム内部機能を流用することで、迅速なAPI提供が可能となる。
新規サービスにAPIを実装する場合のタスク
新規サービスにAPIを実装する場合、API公開を前提としたサービスおよびシステムアーキテクチャを検討する。
API公開に適したアーキテクチャとして、「マイクロサービスアーキテクチャ」が存在する。マイクロサービスアーキテクチャは、サービスを構成する機能群を細かな単位に分割し(マイクロサービス)、それらの機能間のメッセージング(データのやりとり)をAPIで実現することで、大きな機能を実現する。
マイクロサービスごとにAPIの公開可否を容易に変更することができるため、API利用者のニーズに応じたAPI公開戦略を取ることができる。
APIマネジメント製品(APIゲートウェイ)の紹介
既存サービス、新規サービスにかかわらず、単一のサービスであればAPIレファレンスやSDK、API管理(公開/非公開の制御、バージョン管理、利用ログ分析など)は容易に実施可能だ。しかしながら自社の複数サービスのAPIを一元的に管理する場合、各サービスが個々に持つAPIレファレンスの記述粒度をそろえたり、適切なバージョン管理を導入したりといった作業が発生し、API管理が非常に複雑になる。
上記の課題を解決するための製品として、「APIマネジメント製品」がベンダーから提供されており、さまざまな企業が採用している。第4回では、APIマネジメント製品が持つ主要な機能および市中製品の特徴について紹介する。
岡野隆也(おかの・たかや)
元データベースエンジニア。これまで、システム障害時の技術サポート、データ分析、クラウドサービスの開発、セキュリティ関連システムの開発など、さまざまな業務に従事。現在はSoE(Systems of Engagement)領域のビジネス拡大に向け新技術の検証・評価、PoC(概念実証)実施に従事中。国内外問わず旅行に行くのが趣味。まだ南半球に行ったことがないため、近年中の実現を画策している。
Copyright © ITmedia, Inc. All Rights Reserved.
基礎から分かるAPI管理
この記事の著者
関連記事
こんなメディアも見られています
TechTargetジャパンに関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。
ベンダーコンテンツ PR
From Informa TechTarget
SpecialPR
アクセスランキング
-
1
「Excel至上主義」の終わらせ方 丸2日の手作業地獄から情シスと現場を救うには
-
2
「Microsoft 365のセキュリティ運用」に関するアンケート
-
3
取手市がVDIと決別した理由 更改費用「4倍超」を約1.7倍に圧縮
-
4
急増する「AIはこう言ってる」マン 判断を狂わせる「AI忖度」を防ぐには?
-
5
221人調査で分かった「情シス最大のストレス」は?
-
6
「Salesforceのテスト自動化ツール」に関するアンケート
-
7
IT製品の導入に関するアンケート「サーバ&ストレージ」編
-
8
「データストレージの活用方法」に関するアンケート
-
9
「AI時代の統合基盤・エンタープライズAI管理」に関するアンケート
-
10
自宅のWi-Fiが「遅い」「途切れる」本当の原因は? Dellが推奨する鉄則
ホワイトペーパーランキング PR
-
1
年収2000万「クラウドセキュリティのプロ」になれる資格とは
-
2
セキュリティソフトをすり抜ける標的型攻撃メール、不審メールの見破り方とは?
-
3
Windows Updateの通信集中で回線が逼迫、ネットワーク刷新事例に学ぶ解決策
-
4
財務を戦略的組織へ進化させるAI活用術、4つの主要な障壁と解消方法
-
5
「NAS」「SAN」「DAS」は何が違う? いまさら聞けないストレージの基礎
-
6
“あのファイル転送”で暗躍するノーウェアランサム
-
7
標的型攻撃メールを見破るには? サンプル文面を例に傾向を解説
-
8
商用利用の安全性を確保し大量のコンテンツを高速で生成する、AI活用の秘訣
-
9
マンガで解説、1日で生成AI環境を構築できるワークショップの中身とは?
-
10
Dark AIが台頭する時代の新発想、「より高度なAIで対抗する」具体的方法とは?
TechTargetジャパン SNS
インフォメーション
注目情報をチェック
TechTargetジャパンをフォロー