PATCH およびビジネスアクション POST のチェックサム

要求ペイロードを含む処理の場合、チェックサムを要求ペイロードに指定することができます。これは、PATCH とビジネスアクションを実行するほとんどの POST に適用されます(ビジネスアクション POST で要求ペイロードを許可しない場合でも、チェックサムを指定できます。ただし、これは要求ヘッダーに指定する必要があります。詳細については、DELETE のチェックサムを参照してください)。

checksum プロパティは、data プロパティの子で、attributes プロパティの兄弟です。これは次の構文を使用します。

"checksum": "<value>"

例えば、次のペイロードはアクティビティの PATCH 用です。このペイロードは、新しい属性値(priority を urgent に設定)とチェックサム値(7a0d9677f11e246bbe3c124889219c50)を設定します。

{
  "data": {
    "attributes": {
      "priority": {
        "code": "urgent"
      }
    },
    "checksum": "7a0d9677f11e246bbe3c124889219c50"
  }
}

チェックサムは、ルートリソースや任意の包含リソースに指定できます。1 つのリソースにチェックサムを指定する場合に、その他のリソースにチェックサムを指定する必要はありません。例:

  • ルートリソースのみにチェックサムを指定できます。
  • 包含リソースの 1 つのみにチェックサムを指定できます。
  • ルートリソースと複数の包含リソースにチェックサムを指定できます(ただし、すべての包含リソースにはできません)。

チュートリアル:チェックサムを使用したアクティビティの PATCH

このチュートリアルでは、Postman を使用する環境を設定し、適切なサンプルデータセットを用意していることを前提としています。詳細については、チュートリアル:Postman 環境のセットアップを参照してください。

このチュートリアルでは、アクティビティに PATCH を 2 回実行します。両方の PATCH には、チェックサム値が含まれています。最初の PATCH は成功し、2 回目の PATCH は失敗します。

チュートリアル手順

  1. Postman で、[Launchpad]タブの右側の[+]をクリックして、新しい要求を開始します。
    1. [権限]タブで、ユーザー名 aapplegate とパスワード gw を使用して、[Basic Auth]を選択します。
  2. サンプルデータには、「警察調書の取得」アクティビティが 1 つ含まれています。これは、未了クレームに対するオープンなアクティビティであるため、PATCH を実行できます。次の呼び出しを入力し、[送信]をクリックして、このアクティビティに対してクエリを実行します。
    1. GET http://localhost:8080/cc/rest/common/v1/activities?filter=subject:sw:Get%20police%20report
  3. 応答ペイロードで返される最初のアクティビティの ID、件名、およびチェックサムをメモします(これらの値は、後続のステップでは、<ActivityID>、<originalSubject>、および <originalChecksum> と呼ばれます)。
  4. 2 つ目の要求タブを開き、1 つ目のタブを右クリックして、[Duplicate Tab]を選択します。
  5. 処理を PATCH に変更し、次の URL を入力します。ただし、[送信]はまだクリックしないでください。
    1. PATCH http://localhost:8080/cc/rest/common/v1/activities/<ActivityID>
  6. 要求ペイロードを指定します。
    1. タブの先頭行([パラメータ]で始まる行)で、[本文]をクリックします。
    2. ラジオボタンの行で[raw]を選択します。
    3. ラジオボタンの行の末尾で、ドロップダウンリストの値を[テキスト]から[JSON]に変更します。
    4. 以下を、ラジオボタンの下のテキストフィールドに貼り付けます。件名に、元の件名に「-1」を追加して指定します。
      {
        "data": {
          "attributes": {
            "subject" : "<originalSubject>-1"
          },
          "checksum": "<originalChecksum>"
        }
      }
  7. [送信]をクリックします。ペイロードのチェックサム値が ClaimCenter に保存されているアクティビティのチェックサム値に一致します。したがって、PATCH は成功し、応答ペイロードが要求ペイロードの下に表示されます。
  8. 再度[送信]をクリックします。現在、ペイロードのチェックサム値は ClaimCenter で計算されたアクティビティのチェックサム値に一致していません。したがって、2 回目の PATCH は不成功で、エラーメッセージが表示されます。

チュートリアル:チェックサムを使用したアクティビティのアサイン

このチュートリアルでは、Postman を使用する環境を設定し、適切なサンプルデータセットを用意していることを前提としています。詳細については、チュートリアル:Postman 環境のセットアップを参照してください。

このチュートリアルでは、ビジネスアクション(アクティビティのアサイン)を 2 回実行します。両方の試行には、チェックサム値が含まれています。最初の試行は成功し、2 回目の試行は失敗します。

チュートリアル手順

  1. Postman で、[Launchpad]タブの右側の[+]をクリックして、新しい要求を開始します。
    1. [権限]タブで、ユーザー名 aapplegate とパスワード gw を使用して、[Basic Auth]を選択します。
  2. サンプルデータには、「警察調書の取得」アクティビティが 1 つ含まれています。これは、未了クレームに対するオープンなアクティビティであるため、PATCH を実行できます。次の呼び出しを入力し、[送信]をクリックして、このアクティビティに対してクエリを実行します。
    1. GET http://localhost:8080/cc/rest/common/v1/activities?filter=subject:sw:Get%20police%20report
  3. 応答ペイロードで返される最初のアクティビティの ID およびチェックサムをメモします(これらの値は、後続のステップでは、<ActivityID> および <originalChecksum> と呼ばれます)。
  4. 2 つ目の要求タブを開き、1 つ目のタブを右クリックして、[Duplicate Tab]を選択します。
  5. 処理を POST に変更し、次の URL を入力します。ただし、[送信]はまだクリックしないでください。
    1. POST http://localhost:8080/cc/rest/common/v1/activities/<ActivityID>/assign
  6. POST /{activityId}/assign エンドポイントには、アサインの実行方法を指定する要求ペイロードが必要です。要求ペイロードを指定します。
    1. タブの先頭行([パラメータ]で始まる行)で、[本文]をクリックします。
    2. ラジオボタンの行で[raw]を選択します。
    3. ラジオボタンの行の末尾で、ドロップダウンリストの値を[テキスト]から[JSON]に変更します。
    4. 以下を、ラジオボタンの下のテキストフィールドに貼り付けます。件名に、元の件名に「-1」を追加して指定します。
      {
        "data": {
          "attributes": {
              "autoAssign": true
          },
          "checksum": "<originalChecksum>"
        }
      }
  7. [送信]をクリックします。ペイロードのチェックサム値が ClaimCenter に保存されているアクティビティのチェックサム値に一致します。したがって、POST /assign が成功し、応答ペイロードが要求ペイロードの下に表示されます。
  8. 再度[送信]をクリックします。現在、ペイロードのチェックサム値は ClaimCenter で計算されたアクティビティのチェックサム値に一致していません(前のステップで成功した POST /assign は、チェックサム値を変更します)。したがって、2 回目の POST /assign は不成功で、エラーメッセージが表示されます。