【ノーコード】RunMyProcess からAPI Server 経由でZuora のデータと連携
Akorbi Digital RunMyProcess を使えば、予算申請や契約管理など複雑なビジネスプロセスをノーコードでアプリ化できます。CData API Server はZuora の仮想データベースを作成して、Zuora のOData API(RunMyProcess でネイティブに使用可能)を生成するために使用します。RunMyProcess をCData API Server と連携することで、対応するすべてのSaaS、Big Data、およびNoSQL ソースへ接続でき、Zuora のデータに素早くアクセスできます。
この記事では、二つのステップでZuora のデータへの接続方法を説明します。
- API Server からZuora への接続
- RunMyProcess からAPI Server に接続してZuora のデータを取得
API Server の設定
以下のリンクからAPI Server の無償トライアルをスタートしたら、セキュアなZuora OData サービスを作成していきましょう。
Zuora への接続
RunMyProcess からZuora のデータを操作するには、まずZuora への接続を作成・設定します。
- API Server にログインして、「Connections」をクリック、さらに「接続を追加」をクリックします。
- 「接続を追加」をクリックして、データソースがAPI Server に事前にインストールされている場合は、一覧から「Zuora」を選択します。
- 事前にインストールされていない場合は、コネクタを追加していきます。コネクタ追加の手順は以下の記事にまとめてありますので、ご確認ください。
CData コネクタの追加方法はこちら >> - それでは、Zuora への接続設定を行っていきましょう!
-
Zuora はユーザー認証にOAuth 標準を使用しています。OAuth 認証ついて詳しくは、オンラインヘルプドキュメントを参照してください。
Tenant プロパティの設定
プロバイダへの有効な接続を作成するには、アカウントの設定と合致するテナント値を1つ選択する必要があります。以下は、利用可能なオプションのリストです。- USProduction:リクエストはhttps://rest.zuora.com に送信されます。
- USAPISandbox:リクエストはhttps://rest.apisandbox.zuora.com に送信されます。
- USPerformanceTest:リクエストはhttps://rest.pt1.zuora.com に送信されます。
- EUProduction:リクエストはhttps://rest.eu.zuora.com に送信されます。
- EUSandbox:リクエストはhttps://rest.sandbox.eu.zuora.com に送信されます。
デフォルトではUSProduction テナントを使用します。
Zuora サービスの選択
データクエリとAQuA API の2つのZuora サービスを使用します。デフォルトでは、ZuoraService はAQuADataExport に設定されています。DataQuery
データクエリ機能は、非同期の読み取り専用SQL クエリを実行することで、Zuora テナントからのデータのエクスポートを実現します。 このサービスは、素早く軽量なSQL クエリでの使用を推奨します。制限
- フィルタ適用後の、テーブルごとの入力レコードの最大数: 1,000,000
- 出力レコードの最大数: 100,000
- テナントごとの、実行用に送信される同時クエリの最大数: 5
- テナントごとの、同時クエリの制限に達した後に実行用に送信され、キューに追加されるクエリの最大数: 10
- 1時間単位での、各クエリの最大処理時間: 1
- GB 単位での、各クエリに割り当てられるメモリの最大サイズ: 2
- Index Join を使用する際のインデックスの最大値。言い換えれば、Index Join を使用する際にWHERE 句で使われる一意の値に基づいた、左のテーブルから返されるレコードの最大数: 20.000
AQuADataExport
AQuA API のエクスポートは、すべてのオブジェクト(テーブル)のすべてのレコードをエクスポートするように設計されています。AQuA のクエリジョブには以下の制限があります。制限
- AQuA のジョブ内のクエリが8時間以上実行されている場合、ジョブは自動的に停止されます。
- 停止されたAQuA のジョブは3回再試行可能で、その後失敗として返されます。
- 接続情報の入力が完了したら、「保存およびテスト」をクリックします。
Zuora はユーザー認証にOAuth 標準を使用しています。OAuth 認証ついて詳しくは、オンラインヘルプドキュメントを参照してください。
Tenant プロパティの設定
プロバイダへの有効な接続を作成するには、アカウントの設定と合致するテナント値を1つ選択する必要があります。以下は、利用可能なオプションのリストです。
- USProduction:リクエストはhttps://rest.zuora.com に送信されます。
- USAPISandbox:リクエストはhttps://rest.apisandbox.zuora.com に送信されます。
- USPerformanceTest:リクエストはhttps://rest.pt1.zuora.com に送信されます。
- EUProduction:リクエストはhttps://rest.eu.zuora.com に送信されます。
- EUSandbox:リクエストはhttps://rest.sandbox.eu.zuora.com に送信されます。
デフォルトではUSProduction テナントを使用します。
Zuora サービスの選択
データクエリとAQuA API の2つのZuora サービスを使用します。デフォルトでは、ZuoraService はAQuADataExport に設定されています。DataQuery
データクエリ機能は、非同期の読み取り専用SQL クエリを実行することで、Zuora テナントからのデータのエクスポートを実現します。 このサービスは、素早く軽量なSQL クエリでの使用を推奨します。制限
- フィルタ適用後の、テーブルごとの入力レコードの最大数: 1,000,000
- 出力レコードの最大数: 100,000
- テナントごとの、実行用に送信される同時クエリの最大数: 5
- テナントごとの、同時クエリの制限に達した後に実行用に送信され、キューに追加されるクエリの最大数: 10
- 1時間単位での、各クエリの最大処理時間: 1
- GB 単位での、各クエリに割り当てられるメモリの最大サイズ: 2
- Index Join を使用する際のインデックスの最大値。言い換えれば、Index Join を使用する際にWHERE 句で使われる一意の値に基づいた、左のテーブルから返されるレコードの最大数: 20.000
AQuADataExport
AQuA API のエクスポートは、すべてのオブジェクト(テーブル)のすべてのレコードをエクスポートするように設計されています。AQuA のクエリジョブには以下の制限があります。制限
- AQuA のジョブ内のクエリが8時間以上実行されている場合、ジョブは自動的に停止されます。
- 停止されたAQuA のジョブは3回再試行可能で、その後失敗として返されます。
API Server のユーザー設定
次に、API Server 経由でZuora にアクセスするユーザーを作成します。「Users」ページでユーザーを追加・設定できます。やってみましょう。
- 「Users」ページで ユーザーを追加をクリックすると、「ユーザーを追加」ポップアップが開きます。
-
次に、「ロール」、「ユーザー名」、「権限」プロパティを設定し、「ユーザーを追加」をクリックします。
-
その後、ユーザーの認証トークンが生成されます。各ユーザーの認証トークンとその他の情報は「Users」ページで確認できます。
Zuora 用のAPI エンドポイントの作成
ユーザーを作成したら、Zuora のデータ用のAPI エンドポイントを作成していきます。
-
まず、「API」ページに移動し、
「 テーブルを追加」をクリックします。
-
アクセスしたい接続を選択し、次へをクリックします。
-
接続を選択した状態で、各テーブルを選択して確認をクリックすることでエンドポイントを作成します。
OData のエンドポイントを取得
以上でZuora への接続を設定してユーザーを作成し、API Server でZuora データのAPI を追加しました。これで、OData 形式のZuora データをREST API で利用できます。API Server の「API」ページから、API のエンドポイントを表示およびコピーできます。
(オプション)Cross-Origin Resource Sharing (CORS) を構成
Ajax などのアプリケーションから複数のドメインにアクセスして接続すると、クロスサイトスクリプティングの制限に違反する恐れがあります。その場合には、[OData]->[Settings]でCORS 設定を構成します。
- Enable cross-origin resource sharing (CORS):ON
- Allow all domains without '*':ON
- Access-Control-Allow-Methods:GET, PUT, POST, OPTIONS
- Access-Control-Allow-Headers:Authorization
設定への変更を保存します。
RunMyProcess DigitalSuite Studio からZuora のデータにアクセス
Zuora への接続とOData エンドポイントがあれば、RunMyProcess からZuora のデータにアクセスできます。
Provider の作成
- RunMyProcess にログインして、「DigitalSuite Studio」を開きます。
- 「Resources」をクリックしてリソースページを表示したら、「CONNECTORS」タブを選択すると次のような画面が表示されます。
- 「+」(New Provider)ボタンをクリックすると新規プロバイダー作成用の画面が表示されるので、リソースを使用するプロジェクトを選択して、「Confirm」ボタンをクリックします。
- プロバイダーの設定画面が表示されるので、次の情報を入力します。
- URL:API Server の「API」ページにある、次のOData エンドポイントを指定します。https://myserver/api.rsc/
- Authentication Schema:「Login/Password」を指定します。
- Login:設定したAPI Server のユーザー名を指定します。
- Password:上記のユーザー用のAuthtoken に設定します。
- 「ACCEPTANCE」、「TEST」タブにも同じ情報を入力します。Note:その際、右上の「Copy this configuration」ボタンをクリックすることで設定をコピーでき、コピー先のタブで「Paste previously copied configuration」ボタンをクリックすることで既存の設定を反映できます。
- 完了したら、「Save」をクリックして保存します。
Connector を作成してZuora のデータを取得
- 次に「CONNECTORS」タブから、作成したプロバイダーの右端のボタンをクリックして、メニューから「Add connector」を選択します。
- 次のような画面が表示されるので、「Connector URL」にAPI Server で設定したテーブルのOData エンドポイントを指定します。例:odataendpoint/
- 入力したら右上の「Save」ボタンをクリックしたあと、「Launch」ボタンをクリックしてコネクタのテスト実行用の画面を開き、右上の「Launch test」ボタンをクリックして実行します。次のように、指定したテーブルの情報がJSON で返ってくれば成功です。
詳細と無料トライアル
これで、RunMyProcess からZuora のデータに接続できました。Zuora や、その他250以上のデータソースのOData フィードを作成する方法は、API Server ページ を参照してください。無料トライアルにサインアップして、RunMyProcess からZuora のデータに連携してアプリを作成しましょう。