Skip to main content

チャレンジ

Postmanを使用したDX APIの探索

Postmanを使用したDX APIの探索

9 タスク

1時間

表示の対象:All users Applies to: Pega Platform '24.2
中級
ユーザーエクスペリエンス
Constellation
ローコードアプリ開発
日本語
バージョンタグがご希望のコンテンツと一致しているかご確認ください。 または、最新バージョンをご利用ください。

シナリオ

Pega Digital Experience (DX) APIは、ケースとアサインメントのプログラムによる表示、作成、更新を可能にする、モデル主導型のREST APIエンドポイントのセットです。ConstellationアプリケーションとPega DX APIの間で送信されるメッセージを理解することは、アプリケーション開発プロセス中に発生する問題のトラブルシューティングに役立ちます。

ConstellationアプリケーションとDX APIの関係をより深く理解するための課題は、Postmanを使用して、Sweet LifeIncident ケースタイプにケース関連のDX API呼び出しをいくつか生成することです。

補足: Postmanは、APIを構築およびテストするための無料のオープンソースAPIプラットフォームです。Postmanの詳細については、「Postman documentation overview」を参照してください。

以下の表は、チャレンジに必要なログイン情報をまとめたものです。

ロール ユーザー名 パスワード
System Architect Author@SL pega123!
補足: 練習環境では、複数のチャレンジの完了をサポートする場合があります。その結果、チャレンジのウォークスルーに表示される設定は、お客様の環境と完全に一致しない場合があります。

このチャレンジを完了するには、Pegaインスタンスを起動する必要があります。

起動には5分ほどかかることがありますので、しばらくお待ちください。

チャレンジ ウォークスルー

詳細なタスク

1 TellUsMore_Serviceオペレーターを更新する

  1. チャレンジのPegaインスタンスに、以下のログイン情報を入力します。
    1. User nameフィールドに「Author@SL」と入力します。
    2. Password フィールドに「pega123!」と入力します
  2. Dev Studioに切り替えます。
  3. Dev Studioのヘッダーで、「 Configure > Org & Security > Organization > Operators」をクリックします。
  4. 演算子のリストで、TellUsMore_Service演算子を開きます。
    Fell us more Service operator from the list.
  5. Securityタブをクリックします。
  6. Update password」をクリックして、次にパスワードを「pega123!」に更新します。
  7. Force password change on next loginチェックボックスの選択がクリアであることを確認してください。
    Update the password for the TellUsMore_Service operator.
  8. Save」をクリックします。
補足: TellUsMoreアプリケーションにTellUsMore_Serviceオペレーターとして、入力したパスワードでログインすることで、パスワードの変更を確認できます。必ずAuthor@SLの資格情報で再ログインして、次のタスクを完了してください。

2 OAuth 2.0クライアント登録を設定する

補足: DX API V2のテストには認証資格情報が必要です。エンドポイント呼び出しに対するサンプル応答を生成するには、OAuth 2.0クライアント登録データインスタンスが必要です。
  1. Dev Studioのナビゲーションパネルで「Records > Security > OAuth 2.0 Client Registration」をクリックします。
  2. OAuth 2.0クライアント登録リストの右上隅で、「Create」をクリックします。
  3. OAuth 2.0 Client Registration short descriptionフィールドおよびClient nameフィールドの両方に、「Sweet Life DX API Test」を入力します。
    Creating the Sweet Life DX API Test OAuth 2.o record.
  4. Create and open」をクリックします。
  5. レコードを設定する
    1. Supported grant typesセクションで、Client credentials チェックボックスをクリアし、Password credentialsチェックボックスを選択します。
    2. Identity mappingフィールドで、下矢印キーを押してから、「pyDefaultIdentityMappingForPasswordGrant」を選択します。
    3. Enable refresh tokenチェックボックスを選択します。
      Oauth client registration.
    4. Client Credentialsセクションで、「View & download」をクリックします。
      The client credentials for the DX API test.
    5. View & download」ウィンドウで、「Download credentials」をクリックします。
      View and download credentials.
    6. お使いのコンピューターにSweet Life DX API TEst_Client Credentialsファイルをダウンロードしたことを確認してください。
    7. View & downloadウィンドウを閉じます。
    8. レコードのヘッダーで、「Save」をクリックします。
      補足: レコードを保存した後、資格情報をダウンロードするオプションは無効になります。

3 AllowedStartingFieldsデータトランスフォームを作成する

  1. アプリエクスプローラーで、SL-TellUsMore-Work-Incidentクラス内で、「Data Model」を右クリックし、「Create > Data Transform」を選択します。 
  2. Labelフィールドに「AllowedStartingFields」と入力します。
  3. Create and open」をクリックします。
  4. データトランスフォームで、.pyDescriptionターゲットを「""」に設定します。
    Configuration of the AllowedStartingFields Data Transform.
    補足: AllowedStartingFields データトランスフォームに追加のフィールドを追加できます。DX API v2でケースを作成する際にフィールドを追加する方法の詳細については、「Adding fields while creating Cases in Constellation DX API」を参照してください。
  5. Save」をクリックします。

4 Postman環境を構成する

  1. 「DXAPIdefinition.postman_collection.zip」ファイルをあなたのデバイスにダウンロードし、開いて抽出します。
  2. 手順1からファイルを抽出し、そのファイルを「DXAPIdefinition.postman_collection.json」としてデバイスに保存します。
  3. Postmanのウェブサイトにアクセスし、まだアカウントをお持ちでない場合は無料アカウントを作成してください。
  4. このチャレンジのために、「Sweet Life DX API Test」という名前のPostmanワークスペースを作成します。
    Postman workspace
  5. Postmanワークスペースで、「Import」、「」をクリックし、次に「DXAPIdefinition.postman_collection.json」ファイルをインポートします。
    ファイルを選択すると、インポートが自動的に開始されます。
    The imported DX API definition file in Postman.
  6. DX APIの定義で、Variables タブをクリックします。
    Highlighting the Variables tab on the Postman work section.
  7. 前のタスクでダウンロードして保存した「Sweet Life DX API Test_ClientCredentials.txt」ファイルを開きます。 
  8. Current value列の値を変更して、「Sweet Life DX API Test_ClientCredentials(SLDXAPI_CC)」ファイルに含まれる情報に対応させます。
    SLDXAPI_CCファイルの情報に若干の変更を加える必要があります。次の表には詳細情報が含まれています。 
    Postman変数名 現在の値
    server SLDXAPI_CCファイルから、「https 」から「prweb」までのテキストを含む部分的なURLを入力してください。
    たとえば、https://*******.pegacea.net/prwebなどです。
    アスタリスクは、SLDXAPI_CCファイル内のサーバー固有の値に対応しています。
    baseUrl SLDXAPI_CCファイルから「https」から「prweb」までのテキストを含む部分的なURLを入力し、その後に「/api/application/v2
    を追加します。たとえば、「https://*******.pegacea.net/prweb/api/application/v2」などです。
    アスタリスクは、SLDXAPI_CCファイル内のサーバー固有の値に対応しています。
    AccessTokenURL SLDXAPI_CCファイルからアクセストークンエンドポイントの値を入力する
    ClientID SLDXAPI_CCファイルからクライアントIDを入力する
    ClientSecret SLDXAPI_CCファイルからクライアントシークレットを入力します。
    user TellUsMore_Service
    password pega123!
    OriginChannel ウェブ
  9. Save」をクリックします。
    Postman variables after the import and updates.
  10. Authorizationタブをクリックして、詳細を確認します。
    1. Auth Typeリスト内の値が「OAuth 2.0」であることを確認します。
    2. Tokenリストの値が「Available tokens」であることを確認してください。
      DX API definition
  11. Configure New Tokenセクションで、Passwordフィールドの値を確認し、その値が「{{password}}」であることを確認します。
    The visible Password value.
  12. 更新を行った場合は「Save」をクリックしてください。
  13. Authorization タブで、新しいトークンを生成し、「Get New Access Token」をクリックして認証設定が成功したことを確認してください。
    Postmanが入力した情報を承認すると、新しいアクセストークンが表示されます。
  14. Use Token」をクリックして、新しいトークンを認証プロファイルに保存します。
    Managing your access tokens.

Postmanは、認証プロファイルに関連付けられたトークンを更新します。

5 新しいインシデントケースを作成する

  1. Postmanのナビゲーションペインで、casesフォルダーを展開し、「Create new Incident - success」をクリックします。
    The Create new Incident - success case.
  2. Bodyタブをクリックし、次に次のJSONコードを入力します:
    {
        "content": {
             "pyDescription": "Description"
        },
        "caseTypeID": "SL-TellUsMore-Work-Incident",
        "parentCaseID": ""
    }
  3. Send」をクリックしてDX APIリクエストを送信します。
    The Create new Incident Case request.
  4. リクエストページの下部に向かって、DX APIによって返されるJSONレスポンスデータオブジェクトを分析します。
    1. caseInfo オブジェクトを確認し、IDケースに注意してください。
      Caseinfo ID Response object
    2. relatedCaseTypes オブジェクトを確認してください。
      Related Casetypes Postman
    3. assignments オブジェクトを確認してください。
      APIレスポンスのassignments オブジェクトは、ケースの一部として作成されたアサインメントに関する情報を提供します。それには、割り当てID、担当者の名前、完了期限、および関連するデータや添付ファイルなどの詳細が含まれる場合があります。
      The assignments JSON object.
    4. availableChildCaseTypes オブジェクトを確認してください。
      The the availableChildCaseTypes JSON data.
    5. availableActions オブジェクトを確認してください。
      Create DX APIのレスポンスで返される availableActions オブジェクトは、作成された作業オブジェクトに対してユーザーが実行できるアクションのリストです。これらのアクションはケースタイプで定義されており、作業オブジェクトの送信、下書きとして保存、またはキャンセルなどのオプションを含むことができます。
      The availableActions JSON data.
    6. stages セクションを確認してください。 
      Pega DX APIでは、ケース作成の応答におけるstagesオブジェクトは、新しく作成されたケースが現在位置しているケースのステージを参照します。Pega Platform™のステージは、特定のアクションやタスクが実行されるケースの論理的な区分を表します。各ステージには通常、ケースが次のステージに進む前に完了しなければならない一連の手順またはアサインメントがあります。Pega DX APIでケースを作成すると、レスポンスにケースの現在のステージに関する情報を提供するステージオブジェクトが含まれます。このオブジェクトには、ステージ名、ID、ステータス、現在のステージに関するその他の詳細などのプロパティが含まれている可能性があります。この情報は、ケースの進捗を追跡し、ケースが次のステージに進む前に完了する必要があるタスクやアサインメントを決定するのに役立ちます。
      The stages JSON data.
  5. nextAssignmentInfo オブジェクトで、DX APIによって返された割り当てID(例:ASSIGN-WORKLIST SL-TELLUSMORE-WORK I-1!CREATEFORM_DEFAULT)を次のタスクのためにコピーします。
    The nextAssignmentlnfo JSON object.
  6. App Studioに戻り、アプリケーションをプレビューしてから「TellUsMore - BO Portal」を開きます。
  7. Incidents」をクリックし、新しく作成されたケースがランディングページに表示されていることを確認します。
    Highlighting the new Incident Case on the Incidents landing page of the BO Portal.

6 アサインメントの詳細を得る

  1. Postmanのナビゲーションペインで、assignments > {assignmentsID} フォルダーパスを展開します。
  2. Get first assignment details リクエストを開きます。
    The path to Get first assignment detail file
  3. 中央の作業ペインで、Paramsタブをクリックし、クエリーパラメーターの値を変更します。
    1. viewType行に「page」と入力します。
    2. pageName行は空のままにしておいてください。
    3. assignmentID行に、タスク5の手順5でコピーした新しいケース呼び出しから返されたnextAssignmentオブジェクトの値を入力します。
      たとえば、ASSIGN-WORKLIST SL-TELLUSMORE-WORK I-1!CREATEFORM_DEFAULTなどです。
      Get first assignment details modified Query parameters.
  4. Save」をクリックし、次に「Send」をクリックします。
  5. JSONレスポンスオブジェクトを調査し、次のタスクのためにsubmitオブジェクトの詳細をコピーします(例:ASSIGN-WORKLIST SL-TELLUSMORE-WORK I-1!CREATEFORM_DEFAULT)。
    The submit response object.

7 アサインメントのDX APIエンドポイントを使用してGet submit action detailsを取得する

  1. Postmanのナビゲーションペインで、assignments > {assignmentID} > actions > {actionID}フォルダーパスを展開します。
  2. Get submit action details リクエストを開きます。
    The Get submit action details file path.
  3. 中央の作業ペインで、Paramsタブをクリックし、クエリーパラメーターの値を変更します。
    1. viewType行は空のままにしておいてください。
    2. excludeAdditionalActions行に「true」と入力します。
    3. assignmentID行に、タスク6、手順5のsubmitオブジェクトの値を入力します(例:ASSIGN-WORKLIST SL-TELLUSMORE-WORK I-1!CREATEFORM_DEFAULT)。
    4. actionID行に「DetermineCategory」と入力します。
      Query params for Get submit action details API call.
  4. Save」をクリックし、次に「Send」をクリックします。
  5. JSONレスポンスオブジェクトを確認します。
  6. 応答で、Headersタブをクリックし、次のタスクのためにetag値をコピーします。
    Highlighting the etag value from the Get submit action details response object.

8 サブミットアクションを実行する

  1. Postmanのナビゲーションペインで、assignments > {assignmentID} > actions > {actionID} フォルダーパスを展開します。
  2. Submit first assignment リクエストファイルを開きます。
    The Submit first assignment file path
  3. 中央の作業パネルで、Paramsタブを開き、クエリーパラメーターの値を変更します。
    1. viewType行に「none」と入力します。
    2. assignmentID行に、タスク5、手順5でコピーしたsubmitオブジェクトの値を入力します。(たとえば、ASSIGN-WORKLIST SL-TELLUSMORE-WORK I-1!CREATEFORM_DEFAULT)。
    3. actionID行に「DetermineCategory」と入力します。
      The Submit first assignment query params.
  4. Headersタブをクリックし、次にif match行で、タスク6の手順6でコピーしたetag オブジェクトからの値を入力します。
    The Submit first assignment Header etag value.
  5. Bodyタブをクリックし、次に次のJSONリクエストコードを入力します:
    {
        "content": {
            "IncidentType": "Product faulty or unsafe",
            "IncidentSubType": "Product not as described"
        }
    }
  6. Save」をクリックし、次に「Send」をクリックします。
  7. JSONレスポンスオブジェクトを確認し、リクエストが成功したことを確認します。
  8. App Studioに戻り、アプリケーションをプレビューして、TellUsMore - BO Portalを開きます。
  9. インシデントのランディングページに、Incident TypeフィールドおよびIncident SubTypeフィールドの値が含まれていることを確認します。
    The TellUsMore-BO Portal with the Case Incident Type and Incident SubType populated by DX API

9 DX APIで新しい製品を作成する

  1. Postmanに戻ります。
  2. Postmanのナビゲーションペインで、data > {data_view_ID} フォルダーパスを展開します。
  3. Create Product リクエストを開きます。
    The Create Product file path.
  4. 中央の作業ペインで、Paramsタブをクリックし、data_view 行に「D_ProductSavable」と入力します。
    The Create Product query params.
  5. Bodyタブをクリックして、次のJSONコードを入力します。
    {
        "data": {
            "Name":"Shocker",
            "Category":"20b3b6c4-d7d5-4516-a4ed-4cda31ddc5da",
            "SKU":"32491"
        }
    }
    The JSON code for Create Product.
  6. Save」をクリックし、次に「Send」をクリックします。
  7. JSONレスポンスオブジェクトを確認します。CategoryNamepyGUIDSKUの各フィールドに注目します。
    Create product JSON response object.
  8. App Studioに戻り、「Data > Product > Records」をクリックします。
  9. Shocker製品が製品レコードのリストに含まれていることを確認してください。
    Shocker is included in the Product records.

このチャレンジは、下記のモジュールで学習したことを実践するための内容です。


このモジュールは、下記のミッションにも含まれています。

トレーニングを実施中に問題が発生した場合は、Pega Academy Support FAQsをご確認ください。

このコンテンツは役に立ちましたか?

このコンテンツは 67% のユーザーにとって役に立ちました。

改善できるところはありますか?

We'd prefer it if you saw us at our best.

Pega Academy has detected you are using a browser which may prevent you from experiencing the site as intended. To improve your experience, please update your browser.

Close Deprecation Notice