45 JCS - SaaS Extensionアプリケーションから起動するCPQ Cloud RESTful Webサービスの識別

Oracle Configure, Price, and Quote Cloud RESTful APIを使用して、標準のHTTP動詞を使用してデータを取得したり外部アプリケーションと統合したりできます。

RESTful APIを使用してCPQ Cloudのコマース・プロセスで様々なアクションを起動することによってCPQ Cloudトランザクションを作成および更新する、Oracle PaaS上で動作するセキュアなJCS - SaaS Extensionアプリケーションを開発できます。

CPQ Cloud RESTfulリソースの検索

CPQ Cloud RESTful APIリソースを検索する方法には、1)インタフェース・カタログまたは2)オンライン・ヘルプの2つのオプションがあります。

インタフェース・カタログを使用した検索

CPQ Cloudインタフェース・カタログを使用して、RESTfulリソースを検索できます。CPQ Cloudインタフェース・カタログには、CPQ Cloudによってサポートされるすべてのサービスのインタフェースがすべてリストされます。

インタフェース・カタログを使用して、RESTful APIを検索する手順:
  1. CPQ Cloudにログインします。
  2. 画面の右上隅にある管理プラットフォーム・アイコンをクリックします。
  3. 統合プラットフォームの下で、インタフェース・カタログをクリックします。
  4. 図に示すように、ドロップダウン・メニューから「REST」オプションを選択します。
  5. 「名前」列の下のエンドポイントをクリックし、スキーマを探索します。

注意:

インタフェース・カタログのサービス・スキーマは、JSONフォーマットのみです。各スキーマには、すべてのフィールド、およびフィールドごとにサポートされているデータ型が含まれます。

オンライン・ヘルプでの検索

一方、オンライン・ヘルプを使用して、CPQ Cloud REST APIを探索することもできます。

オンライン・ヘルプからREST APIにアクセスする手順:
  1. CPQ Cloudにログインします。
  2. 画面の右上隅にある「ヘルプ」アイコンをクリックします。
    online_help.jpgの説明が続きます
    図online_help.jpgの説明

    別のウィンドウが開きます。

  3. CPQ Cloudとの統合の章を展開してから、REST APIトピックを展開します。
「Oracle CPQ CloudサービスのREST API」を参照してください。

CPQ Cloud RESTful Webサービス・リクエストのテスト

RESTful APIをテストし、必要なデータを取得するには、cURLコマンド・ライン・ツールを使用して、サーバーとデータをやり取りできます。また、ブラウザを使用して、GET操作用のエンドポイントを探索できます。

この例では、ブラウザを使用してRESTful APIにアクセスします。
  1. たとえば、次のような有効なREST URL (エンドポイント)があることを確認します。
    https://<cpqServerInstance>/rest/v1/commerceDocumentsOraclecpqoTransaction/?limit=1
  2. CPQ Cloudにログインします。
  3. ブラウザで、RESTエンドポイントのURLを開きます。次に例を示します。
    https://<cpqServerInstance>/rest/v1/commerceDocumentsOraclecpqoTransaction/?limit=1
    次のJSONコードに示すような内容のレスポンスを予測できます。
    { "hasMore": true, "limit": 1, "count": 1, "items": [{ "_last_document_number": "38", "totalContractValue_t": "236133.32", "_buyer_company_name": "A Company", "totalOneTimeNetAmount_t": "60045.28", "totalMonthlyDiscount_t": "0", "totalOneTimeListAmount_t": "60355.28", "_id": "36311839", "_step_var_name": "pending_process", "transactionName_t": "TestCo1 #1", "parent_transaction_id_versionTransaction_t": null, "priceWithinPolicy_t": "true", "_supplier_company_name": "A Company", "status_t": "CREATED", "owner_t": "Anna Howell", "totalOneTimeDiscount_t": "310", "lastUpdatedDate_t": "2015-02-26 10:23:00", "_document_var_name": "transaction", "transactionID_t": "CPQ-3", "createdDate_t": "2015-02-26 00:00:00", "_currency_pref": "USD", "totalMonthlyNetAmount_t": "4899.89", "lastPricedDate_t": "2015-02-26 10:15:00", "version_number_versionTransaction_t": "1", "_customer_t_company_name": "TestCo1", "_date_added": "2015-02-26 10:15:57.0", "_process_var_name": "varName1", "_date_modified": "2016-02-22 23:18:10.0", "totalMonthlyListAmount_t": "4899.89", "totalAnnualValue_t": "118843.96", "links": [{ "rel": "self", "href": "http://<cpqServerInstance>/rest/v1/commerceDocumentsOraclecpqoTransaction/36311839" }, { "name": "transactionLine", "rel": "child", "href": "http://<cpqServerInstance>/rest/v1/commerceDocumentsOraclecpqoTransaction/36311839/transactionLine", "kind": "" }] }], "links": [{ "rel": "canonical", "href": "http://<cpqServerInstance>/rest/v1/commerceDocumentsOraclecpqoTransaction" }, { "rel": "next", "href": "http://<cpqServerInstance>/rest/v1/commerceDocumentsOraclecpqoTransaction?limit=1&offset=1" }, { "rel": "self", "href": "http://<cpqServerInstance>/rest/v1/commerceDocumentsOraclecpqoTransaction?limit=1&offset=0" }], "offset": 0 }

    limit=1パラメータが使用されていた(最初の要素がリクエストされた)ため、hasMore属性は、レスポンスがページ区切りされていることを示します。items属性には、commerceDocumentsOraclecpqoTransactionエンドポイントのすべてのフィールドと値が含まれ、links属性には、他の子エンドポイントのURLが含まれます。