メインコンテンツまでスキップ

ワークアイテムの更新

更新対象のワークアイテムのID({workitemId})が既知とすると、以下のようになります。

ワークアイテムの更新

取得した ID を指定してアイテムの更新の API を実行します。
追加の API と同様に、リクエストボディの fields パラメータに、キー・バリューの形式で更新するフィールドのシステム名とその値を指定します。

PUT /api/workitem/workitems/{workitemId}
Request Body
{
fields: {
"Name": "新しい値",
"PlannedStartDate": "2022-10-10",
"PlannedFinishDate": "2022-10-17"
}
}
備考

fieldsのパラメータ名は、次のリンクを参照ください。:ワークアイテムAPIのフィールドについて

レスポンスについて

ワークアイテムの更新は、以下のようなレスポンスが返ります。

Response
{
"items": [
{
"id": "2430"
"itemWarnings": []
"updatedAt": "2022-10-14T05:18:49.6713434"
"updatedBy": "21"
}
],
"affectedItems": [],
"addedTimeEntryIds": [],
"addedScheduleDependencyIds": []
}
  • items は更新したアイテムのフィールドの情報(フィールド名をキーとしたキー・バリュー)です。レスポンスに含まれるフィールドは、リクエストで指定した値と異なる値になった(サーバーで自動設定された)フィールドのみです。複数のアイテムを同時に更新した場合は、アイテムの数だけ配列に含まれます。
  • affectedItems は積み上げ計算で更新されたアイテムのフィールドの情報(フィールド名をキーとしたキー・バリュー)です。積み上げ計算がない場合は空です。 複数のアイテムが更新された場合は、アイテムの数だけ配列に含まれます。
  • addedTimeEntryIds は実績工数の追加を同時に行った場合に、追加した実績工数のIDです。string の配列です。
  • addedScheduleDependencyIds はリンクの追加を同時に行った場合に、追加したリンクのIDです。string の配列です。積み上げ計算が発生した場合は以下のようなレスポンスになります。

ID:2431のアイテムの進捗率を 0 から 10 に更新した例です。

Response
{
"items":[
{
"id":"2431",
"statusTypeId":"2",
"updatedAt":"2022-10-14T05:36:44.5191638",
"updatedBy":"21",
"itemWarnings":[]
}],
"affectedItems":[
{
"id":"2430",
"statusTypeId":"2",
"actualProgress":10.0,
"updatedAt":"2022-10-14T05:36:44.5191638",
"updatedBy":"21",
"itemWarnings":[]
},
{
"id":"60",
"actualProgress":45.0,
"updatedAt":"2022-10-14T05:36:44.5191638",
"updatedBy":"21",
"itemWarnings":[]
}
],
"addedTimeEntryIds":[],
"addedScheduleDependencyIds":[]
}

進捗率(ActualProgress)はリクエスト通りに更新されたため items には含まれませんが、進捗率に連動して更新されたステータス(StatuTypeId)が返されています。 affectedItems は子の進捗率の更新によって更新された親(ID:2430)の進捗率と、それに連動して更新されたステータスが返されています。 さらにその親(ID:60)のアイテムについては、進捗率は積み上げされていますが、ステータスはもともと作業中(ID:2)だっため返されていません。

レスポンスの利用についての補足

注記

このレスポンスはTimeTrackerのクライアントUIで画面の更新を最小限にするために変更内容を返却するようになっています。特に更新による差分情報が不要である場合はこのレスポンスを利用する必要はなく、ワークアイテムのIDを利用して取得し直したほうがシンプルになります。