DELETE の概要
REST に完全に準拠した API のコンテキストでは、DELETE はリソースを削除するエンドポイント操作です。これには通常、基になるデータベースからのリソースの削除が含まれます。
Cloud API のコンテキストでは、DELETE は ClaimCenter から既存のリソースを「削除」する Cloud API メソッドです。リソースの「削除」の内容は、リソースタイプによって異なります。DELETE 操作は、削除と最も緊密に関連する機能に一致する ClaimCenter コードと連携します。そのコードでは理論上、以下の操作が行われる可能性があります。
- 対応するデータモデルインスタンスを運用データベースから削除する。
- 対応するデータモデルインスタンスに廃止済みのマークを付ける。
- 対応するデータモデルインスタンスとその他の関連インスタンスを変更して、そのデータが今後はアクティブでない、または利用可能でないことを示す。
GET、POST、および PATCH とは異なり、DELETE をサポートするベースコンフィギュレーションのエンドポイントは非常に少数です。これは、ほとんどの場合、ClaimCenter がデータの削除をサポートしていないためです。承認、キャンセル、完了、クローズ、却下、廃止、スキップ、取消ができるビジネスオブジェクトはいくつかありますが、削除ができるのはほんの少数です。
DELETE 呼び出しは、DELETE /notes/{noteId} など、DELETE メソッドとエンドポイントで構成されます。GET と同様に、DELETE も要求ペイロードの指定は許可されていません。
DELETE への応答には、成功または失敗を示す HTTP コードが含まれます。DELETE への応答には、応答ペイロードはありません。
チュートリアル:備考・経緯の DELETE 操作
このチュートリアルの前提事項は、Postman の環境を設定してあり適切なサンプルデータセットを用意していることです。詳細については、チュートリアル:Postman 環境のセットアップを参照してください。
このチュートリアルでは、Elizabeth Lee さん(ユーザー名 elee)として呼び出しを送信します。ベースコンフィギュレーションでは、Elizabeth Lee さんはマネージャで、備考・経緯の削除権限を持ちます。Elizabeth Lee さんとして、備考・経緯を作成し、それに対するクエリを行います。それから、その備考・経緯を削除し、その備考・経緯に対して 2 回目のクエリを行います。
チュートリアル手順
- Postman で、[Launchpad]タブの右側の[+]をクリックして、新しい要求を開始します。
- [権限]タブで、ユーザー名 aapplegate とパスワード gw を使用して、[Basic Auth]を選択します。
- 次の呼び出しを入力して、[送信]をクリックします。
GET
http://localhost:8080/cc/rest/common/v1/activities - ペイロードの 1 つ目のアクティビティの
idを特定します。この値は、以下では <activityId> となります。 - 2 つ目の要求タブを開き、1 つ目のタブを右クリックして、[Duplicate Tab]タブを選択します。
- [権限]タブで、ユーザー名 elee とパスワード gw を使用して、[Basic Auth]を選択します。
- 処理を POST に変更し、次の URL を入力します。ただし、[送信]はまだクリックしないでください。
- POST
http://localhost:8080/cc/rest/common/v1/activities/<activityId>/notes
- POST
- 要求ペイロードを指定します。
- タブの先頭行([パラメータ]で始まる行)で、[本文]をクリックします。
- ラジオボタンの行で[raw]を選択します。
- ラジオボタンの行の末尾で、ドロップダウンリストの値を[テキスト]から[JSON]に変更します。
- ラジオボタンの下のテキストフィールドに以下を貼り付けます。
{ "data": { "attributes": { "body": "API tutorial note to be deleted" } } }
- [送信]をクリックします。応答ペイロードで、備考・経緯の ID を特定します。
- 3 つ目の要求タブを開き、2 つ目のタブを右クリックして、[Duplicate Tab]タブを選択します。
- これは 2 つ目のタブの複製なので、このタブでもユーザー
eleeを使用します。
- これは 2 つ目のタブの複製なので、このタブでもユーザー
- 処理を DELETE に変更し、次の URL を入力します。ただし、[送信]はまだクリックしないでください。
- DELETE
http://localhost:8080/cc/rest/common/v1/notes/<noteID>
- DELETE
- DELETE では要求本文は指定できません。3 つ目のタブで、[本文]タブに移動し、[なし]ラジオボタンを選択します。
- [送信]をクリックします。(成功の DELETE への応答は「204 - No content」です)。
作業の確認
3 つ目のタブで要求を再送します。この要求は、すでに削除(DELETE)された備考・経緯の DELETE 操作を試行しているので、「リソースが見つかりません」という内容のエラーが返されます。