Apigee Integration とは? API 管理プラットフォーム Apigee の新機能をデモンストレーション付きで解説!
- API
- プラットフォーム
本記事は、2022年4月21日に開催された Google の公式イベント「 Google Cloud ML サミット」において、 Apigee カスタマーエンジニアリングジャパンリードの関谷和愛氏が講演された「 Apigee Integration : 企業システムと API をシームレスに統合」のレポート記事となります。
今回は Apigee の新機能である Apigee Integration の概要に触れつつ、具体的な Integration 開発について詳しく解説します。また、実際の画面を使った Apigee Integration のデモンストレーションもご紹介しますので、ぜひ最後までご覧ください。
なお、本記事内で使用している画像に関しては、 Google Cloud ML サミット「 Apigee Integration : 企業システムと API をシームレスに統合」を出典元として参照しております。
それでは、早速内容を見ていきましょう。
目次
Apigee Integration とは?
Apigee の概要
Apigee Integration の内容に入る前に Apigee の概要をおさらいしておきましょう。
Apigee は Google が提供している API 管理プラットフォームです。元々は Agipee 社のサービスでしたが、2016年に Google が Agipee を買収したことで、現在は Google のサービスとして提供されています。
近年、 API を公開する企業は増えており、ユーザーは API を活用することで効率的なシステム構築を実現できるようになりました。ここで大切なポイントは、 Apigee はユーザーではなく、 API を公開する企業にとってメリットが出るサービスだということです。
本来、 API 管理は容易ではなく、多くの作業工数や人的コストが発生しますが、 Apigee を活用することで手間なく適切に API を管理できるため、結果として自社の業務効率化や生産性向上に直結します。
ここで、 Apigee の利用イメージを下図に示します。
上図の右側に並んでいるようなバックエンドシステムが提供する API を、 Apigee 経由で左側に並んでいるクライアントアプリケーションに機能やデータとして提供できます。つまり、バックエンドシステムとクライアントアプリケーションを繋いで管理することが Apigee の大きな役割になります。
ただし、 Apigee は API 管理基盤と呼ばれる製品であり、連携ツールや統合製品ではありません。そのため、 Apigee に繋ぐバックエンドシステムは API を持っていることが大前提となっており、 API を持たないバックエンドシステムを Apigee に繋ぐためには一工夫して手間をかける必要があります。
そして、このような課題を解決するための機能として Apigee Integration が登場しました。
Apigee に関心のある方は以下の記事がオススメです。
API 活用の最前線に迫る! Apigee の3大活用パターン、国内事例、最新情報まで徹底解説!
API エコノミーとは何か? Apigee を活用した新しいエコシステム構築を徹底解説!
Apigee Integration の概要
Apigee Integration は API 管理基盤にインテグレーション機能を追加する Apigee のオプション機能です。
Apigee Integration を使うことで、コネクタにより多様なシステムを簡単に接続でき、高度なオーケストレーションをサポートします。また、 Google スケールで実証済みの専用ランタイムを採用しており、開発スピードアップやコスト・リスクの低減を実現できます。
以下、 Apigee Integration の構成を図で示します。
上図の中央にある青色の部分が従来の API 管理であり、赤色の部分がインテグレーションとなっています。この Apigee Integration によって、バックエンドシステムとの接続やバックエンド間のオーケストレーションなどを実行できます。
Integration 開発の概要
開発の流れ
次に具体的な Integration 開発の概要についてご説明します。
Apigee Integration で構築するアプリケーションの単位は「 Integration (統合)」です。下図に表示されているものが一つの Integration (統合)であり、これらを Integration Designer という画面で開発していく流れになります。
Integration (統合)の要素
Integration (統合)を作るための構成要素として、
- トリガー
- タスク
- コネクタ
の3つが挙げられます。 Apigee Integration では、これらを組み合わせて Integration (統合)を構築します。
以下、それぞれについて詳しく見ていきましょう。
トリガー
トリガーは Integration (統合)におけるエントリーポイントです。現状、下図の4つのトリガーが用意されており、設定された外部イベントが発生することで最初のタスクが実行されます。
タスク
タスクは Integration (統合)における作業単位です。 Integration (統合)は 1 つ以上のタスクから構成され、タスクを順に処理することで実行されます。
以下、具体的なタスクの例を表にまとめます。
コネクタ
コネクタは外部アプリケーションやデータソースへの接続を抽象化した部品です。対象ごとに異なるアクセス方法を隠蔽し、シンプルで統一的な利用を実現します。
下図で示したように BigQuery や Salesforce などが代表的なコネクタになります。
Apigee 本体との連携
最後に、作成した Integration (統合)を Apigee 本体と連携させる方法について解説します。
Apigee 本体と Integration (統合)を連携させるためには、大きく分けて下図の2つの方法があります。
1つ目は Integration target を使う方法です。 API プロキシのターゲットに Integration (統合)を指定することで Apigee 本体と連携します。
2つ目は Integration callout を使う方法です。 Apigee のポリシー部品の中に Integration callout というものが存在しており、これを活用することで指定した Integration (統合)を呼び出すことができます。
Apigee Integration のデモンストレーション
ここからは実際の画面を使って Apigee Integration のデモンストレーションを行います。
データベースと API の Integration (統合)
まずはデータベースと API の Integration (統合)のデモンストレーションです。
データベースには Cloud SQL を使い、 API リクエストのメソッドと Cloud SQL の Update や Delete などを結びつけて、直接操作するデモンストレーションになります。
最初に API リクエストを Apigee の API プロキシが受信します。通常は Target Endpoints がありバックエンドが指定されていますが、今回は Apigee Integration で作った Integration Endpoints が起動されるようになっています。
次に、 Integration (統合)に渡すための変数である method や orderPayload などをリクエストの中で準備します。なお、ここで Apigee のポリシーを設定することも可能です。
そして、その後は Integration (統合)が起動されます。下図は Apigee Integration のメイン画面となる Integration Designer です。
プロキシから API Trigger が起動された後、 Data Mapping や Task というものが起動されます。
Data Mapping や Task は入力変数と出力変数の結び付けや変換を行なっており、下図のようにドラッグ&ドロップで簡単に操作できます。また、 fuction から型を変換することも可能です。
次に、用意したデータレコードをデータベースへ渡しますが、ここからは method ごとに条件分岐が発生します。今回は method が POST のケースでご説明します。
POST の場合はコネクタ設定としてデータベースのテーブルを Orders とし、 Operation を Create に指定するだけで簡単に操作が完結します。
それでは、実際に動かしてみましょう。下図左側のターミナルには3つのテーブルが表示されています。そして、右側のターミナルで curl コマンドを表示しています。
実行すると、先程の API プロキシが受けた後に Integration (統合)を起動して、 Integration (統合)からデータベースに Insert が実行されました。
そして、 Integration (統合)側のログで確認してみると、 Data Mapping や Connectors が成功しており POST の method が実行されていることがわかります。
Salesforce との Integration (統合)
次に Salesforce との Integration (統合)のデモンストレーションをご紹介します。
このデモンストレーションでは、 Salesforce Trigger を利用して Salesforce で新しい Opportunity が作られた時に Integration (統合)が起動されるようにします。
まずは全体の流れをご説明します。
Opportunity が作られると Integration (統合)が起動して Opportunity 情報が渡されてくるので、次に Data Mapping Editor を起動します。
ここでは Salesforce から届くイベント情報の中から Opportunity の金額( OpportunityAmount )と Opportunity の名前( OpportunityName )を変数に取り出します。
続いて、 Opportunity の金額に応じて承認処理を行います。今回の例では 100 万円以上の場合はメールでの承認を取る Approval タスクに進み、そうでない場合は直接次のタスクに進むような流れになっています。
Approval タスクではメールアドレスなどが指定されており、承認された場合のみ次のタスクに進みます。そして、最後に Opportunity の情報を後続処理を行う外部の REST API に渡して終了、という流れになります。
それでは、実際に操作してみましょう。以下、 Salesforce の Opportunity 作成画面です。 Opportunity の名前や金額などを入力して Opportunity を作成します。
ここで、 Integration (統合)のログを確認すると、作成した Opportunity の情報が反映されていることがわかります。
今回の Opportunity は 999 万円で作成しているため Approval タスクの対象となります。正常に Approval タスクが動作すると、以下のような承認依頼メールが届きます。
メール内のリンクから Approval (承認)を行なった上で再度 Integration (統合)のログをチェックします。
すると、 Approval のステータスが成功( Succeeded )に変更されており、最後の REST API の呼び出しまで完了していることがわかります。
Apigee Integration に関する Q&A
Q.Apigee Integration の最安料金を教えてください
A.Apigee Integration は Apigee の有償オプションであり、コネクタ数や並行利用数などに応じて料金が変動します。詳しくは代理店窓口に直接お問い合わせください。
Q.Cloud Functions はコネクタに属すると考えれば良いですか?n
A.コネクタは Apigee Integration 内の様々なサービスに対応する接続部品であり、 Apigee Integration の一部になります。そして、 Cloud Functions はその接続先サービスの一つとして位置付けられています。2022年4月現在では Cloud Functions に対応するコネクタは存在しませんが、今後のアップデートにご期待ください。
Q.Apigee Integration の公開事例はありますか?
A.Apigee Integration は直近でリリースされた新オプションのため、まだ公開事例としてご紹介できるものはありませんが、実際にお試しいただいているお客様は増えつつあります。
Q.Apigee Integration は何かの OSS ベースですか?
A.Apigee Integration は元々 Google が社内利用していた複数のツールを簡単に連携させる仕組みをベースに開発されており、従来の Apigee のランタイムとは独立した Apigee Integration 専用のランタイムとして実装されています。
まとめ
今回は Apigee の新機能である Apigee Integration の概要に触れつつ、具体的な Integration 開発についての解説と実際の画面を使った Apigee Integration のデモンストレーションをご紹介しました。
Apigee Integration の登場により、 Apigee は API 管理とインテグレーション機能の統合プラットフォームに進化しました。多様なバックエンドシステムを簡単に接続し、並列実行や長時間ワークフローなど、高度なオーケストレーションを実現できます。
Apigee は Google Cloud 公式ページから無料トライアルが可能なので、まずは試してみることをオススメします。本記事を参考にして、ぜひ Apigee の活用を検討してみてはいかがでしょうか?
弊社トップゲートでは、Google Cloud (GCP) 利用料3%OFFや支払代行手数料無料、請求書払い可能などGoogle Cloud (GCP)をお得に便利に利用できます。さらに専門的な知見を活かし、幅広くあなたのビジネスを加速させるためにサポートをワンストップで対応することが可能です。
Google Workspace(旧G Suite)に関しても、実績に裏付けられた技術力やさまざまな導入支援実績があります。あなたの状況に最適な利用方法の提案から運用のサポートまでのあなたに寄り添ったサポートを実現します!
Google Cloud (GCP)、またはGoogle Workspace(旧G Suite)の導入をご検討をされている方はお気軽にお問い合わせください。
メール登録者数3万件!TOPGATE MAGAZINE大好評配信中!
Google Cloud(GCP)、Google Workspace(旧G Suite) 、TOPGATEの最新情報が満載!