Work item updates
TFS 2017 | TFS 2015 | TFS 2013
Note
Looking for REST APIS that support TFS 2018 or later versions? See the Azure DevOps REST API Reference.
api-version = 1.0
Updates represent changes made to work items over time.
To get the entire work item at a point in time, use revisions.
If you haven't already, look at the information on getting started with these APIs.
Get a list of work items updates
GET https://{instance}/DefaultCollection/_apis/wit/workitems/{id}/updates?api-version={version}[&$top={int}&$skip={int}]
Parameter | Type | Default | Notes |
---|---|---|---|
URL | |||
instance | string | TFS server name ({server:port}). | |
id | int | ID of the work item. | |
Query | |||
api-version | string | Version of the API to use. | |
$top | integer | 200 | Number of updates to return, up to 200. |
$skip | integer | 0 | Number of updates to skip. |
Sample request
GET https://mytfsserver/DefaultCollection/_apis/wit/workitems/299/updates?api-version=1.0
Sample response
{
"count": 9,
"value": [
{
"id": 1,
"rev": 1,
"revisedBy": {
"id": "d291b0c4-a05c-4ea6-8df1-4b41d5f39eff",
"name": "Jamal Hartnett <fabrikamfiber4@hotmail.com>",
"url": "https://mytfsserver/DefaultCollection/_apis/Identities/d291b0c4-a05c-4ea6-8df1-4b41d5f39eff"
},
"revisedDate": "2014-12-29T20:49:23.933Z",
"fields": {
"System.Id": {
"newValue": 299
},
"System.AreaId": {
"newValue": 3570
},
"System.AreaPath": {
"newValue": "Fabrikam-Fiber-Git"
},
"System.NodeName": {
"newValue": "Fabrikam-Fiber-Git"
},
"System.TeamProject": {
"newValue": "Fabrikam-Fiber-Git"
},
"System.AreaLevel1": {
"newValue": "Fabrikam-Fiber-Git"
},
"System.Rev": {
"newValue": 1
},
"System.AuthorizedDate": {
"newValue": "2014-12-29T20:49:21.617Z"
},
"System.RevisedDate": {
"newValue": "2014-12-29T20:49:23.933Z"
},
"System.IterationId": {
"newValue": 3570
},
"System.IterationPath": {
"newValue": "Fabrikam-Fiber-Git"
},
"System.IterationLevel1": {
"newValue": "Fabrikam-Fiber-Git"
},
"System.WorkItemType": {
"newValue": "Task"
},
"System.State": {
"newValue": "To Do"
},
"System.Reason": {
"newValue": "New task"
},
"System.AssignedTo": {},
"System.CreatedDate": {
"newValue": "2014-12-29T20:49:21.617Z"
},
"System.CreatedBy": {
"newValue": "Jamal Hartnett <fabrikamfiber4@hotmail.com>"
},
"System.ChangedDate": {
"newValue": "2014-12-29T20:49:21.617Z"
},
"System.ChangedBy": {
"newValue": "Jamal Hartnett <fabrikamfiber4@hotmail.com>"
},
"System.AuthorizedAs": {
"newValue": "Jamal Hartnett <fabrikamfiber4@hotmail.com>"
},
"System.PersonId": {
"newValue": 77331
},
"System.Watermark": {
"newValue": 609
},
"System.Title": {
"newValue": "JavaScript implementation for Microsoft Account"
},
"Microsoft.VSTS.Scheduling.RemainingWork": {
"newValue": 4
},
"System.Description": {
"newValue": "Follow the code samples from MSDN"
},
"System.History": {
"newValue": "Jim has the most context around this."
},
"System.Tags": {
"newValue": ""
}
},
"relations": {
"added": [
{
"rel": "System.LinkTypes.Hierarchy-Reverse",
"url": "https://mytfsserver/DefaultCollection/_apis/wit/workItems/297",
"attributes": {
"isLocked": false,
"comment": "decomposition of work"
}
}
]
},
"url": "https://mytfsserver/DefaultCollection/_apis/wit/workItems/299/updates/1"
},
{
"id": 2,
"rev": 2,
"revisedBy": {
"id": "d291b0c4-a05c-4ea6-8df1-4b41d5f39eff",
"name": "Jamal Hartnett <fabrikamfiber4@hotmail.com>",
"url": "https://mytfsserver/DefaultCollection/_apis/Identities/d291b0c4-a05c-4ea6-8df1-4b41d5f39eff"
},
"revisedDate": "2014-12-29T20:49:24.67Z",
"fields": {
"System.AreaId": {
"oldValue": 3570,
"newValue": 4486
},
"System.AreaPath": {
"oldValue": "Fabrikam-Fiber-Git",
"newValue": "Fabrikam-Fiber-Git\\Website"
},
"System.NodeName": {
"oldValue": "Fabrikam-Fiber-Git",
"newValue": "Website"
},
"System.AreaLevel2": {
"newValue": "Website"
},
"System.Rev": {
"oldValue": 1,
"newValue": 2
},
"System.AuthorizedDate": {
"oldValue": "2014-12-29T20:49:21.617Z",
"newValue": "2014-12-29T20:49:23.933Z"
},
"System.RevisedDate": {
"oldValue": "2014-12-29T20:49:23.933Z",
"newValue": "2014-12-29T20:49:24.67Z"
},
"System.ChangedDate": {
"oldValue": "2014-12-29T20:49:21.617Z",
"newValue": "2014-12-29T20:49:23.933Z"
},
"System.Watermark": {
"oldValue": 609,
"newValue": 611
},
"System.History": {
"oldValue": "Jim has the most context around this.",
"newValue": "Moving to the right area path"
}
},
"url": "https://mytfsserver/DefaultCollection/_apis/wit/workItems/299/updates/2"
},
{
"id": 3,
"rev": 3,
"revisedBy": {
"id": "d291b0c4-a05c-4ea6-8df1-4b41d5f39eff",
"name": "Jamal Hartnett <fabrikamfiber4@hotmail.com>",
"url": "https://mytfsserver/DefaultCollection/_apis/Identities/d291b0c4-a05c-4ea6-8df1-4b41d5f39eff"
},
"revisedDate": "2014-12-29T20:49:26.99Z",
"fields": {
"System.Rev": {
"oldValue": 2,
"newValue": 3
},
"System.AuthorizedDate": {
"oldValue": "2014-12-29T20:49:23.933Z",
"newValue": "2014-12-29T20:49:24.67Z"
},
"System.RevisedDate": {
"oldValue": "2014-12-29T20:49:24.67Z",
"newValue": "2014-12-29T20:49:26.99Z"
},
"System.AssignedTo": {
"newValue": "Johnnie McLeod <fabrikamfiber2@hotmail.com>"
},
"System.ChangedDate": {
"oldValue": "2014-12-29T20:49:23.933Z",
"newValue": "2014-12-29T20:49:24.67Z"
},
"System.Watermark": {
"oldValue": 611,
"newValue": 612
},
"System.History": {
"oldValue": "Moving to the right area path",
"newValue": "Johnnie is going to take this work over."
}
},
"relations": {
"added": [
{
"rel": "System.LinkTypes.Related",
"url": "https://mytfsserver/DefaultCollection/_apis/wit/workItems/300",
"attributes": {
"isLocked": false,
"comment": "adding another task"
}
}
]
},
"url": "https://mytfsserver/DefaultCollection/_apis/wit/workItems/299/updates/3"
},
{
"id": 4,
"rev": 3,
"revisedBy": {
"id": "d291b0c4-a05c-4ea6-8df1-4b41d5f39eff",
"name": "Jamal Hartnett <fabrikamfiber4@hotmail.com>",
"url": "https://mytfsserver/DefaultCollection/_apis/Identities/d291b0c4-a05c-4ea6-8df1-4b41d5f39eff"
},
"revisedDate": "2014-12-29T20:49:25.623Z",
"relations": {
"added": [
{
"rel": "System.LinkTypes.Dependency-Forward",
"url": "https://mytfsserver/DefaultCollection/_apis/wit/workItems/300",
"attributes": {
"isLocked": false,
"comment": "Adding traceability to dependencies"
}
}
]
},
"url": "https://mytfsserver/DefaultCollection/_apis/wit/workItems/299/updates/4"
},
{
"id": 5,
"rev": 3,
"revisedBy": {
"id": "d291b0c4-a05c-4ea6-8df1-4b41d5f39eff",
"name": "Jamal Hartnett <fabrikamfiber4@hotmail.com>",
"url": "https://mytfsserver/DefaultCollection/_apis/Identities/d291b0c4-a05c-4ea6-8df1-4b41d5f39eff"
},
"revisedDate": "2014-12-29T20:49:26.523Z",
"relations": {
"removed": [
{
"rel": "System.LinkTypes.Dependency-Forward",
"url": "https://mytfsserver/DefaultCollection/_apis/wit/workItems/300",
"attributes": {
"isLocked": false,
"comment": "Adding traceability to dependencies"
}
}
]
},
"url": "https://mytfsserver/DefaultCollection/_apis/wit/workItems/299/updates/5"
},
{
"id": 6,
"rev": 4,
"revisedBy": {
"id": "d291b0c4-a05c-4ea6-8df1-4b41d5f39eff",
"name": "Jamal Hartnett <fabrikamfiber4@hotmail.com>",
"url": "https://mytfsserver/DefaultCollection/_apis/Identities/d291b0c4-a05c-4ea6-8df1-4b41d5f39eff"
},
"revisedDate": "2014-12-29T20:49:27.48Z",
"fields": {
"System.Rev": {
"oldValue": 3,
"newValue": 4
},
"System.AuthorizedDate": {
"oldValue": "2014-12-29T20:49:24.67Z",
"newValue": "2014-12-29T20:49:26.99Z"
},
"System.RevisedDate": {
"oldValue": "2014-12-29T20:49:26.99Z",
"newValue": "2014-12-29T20:49:27.48Z"
},
"System.ChangedDate": {
"oldValue": "2014-12-29T20:49:24.67Z",
"newValue": "2014-12-29T20:49:26.99Z"
},
"System.Watermark": {
"oldValue": 612,
"newValue": 613
},
"System.History": {
"oldValue": "Johnnie is going to take this work over.",
"newValue": "Adding the necessary spec"
}
},
"relations": {
"added": [
{
"rel": "AttachedFile",
"url": "https://mytfsserver/DefaultCollection/_apis/wit/attachments/098a279a-60b9-40a8-868b-b7fd00c0a439",
"attributes": {
"authorizedDate": "2014-12-29T20:49:26.99Z",
"id": 65274,
"resourceCreatedDate": "2014-12-29T20:49:26.99Z",
"resourceModifiedDate": "2014-12-29T20:49:26.99Z",
"revisedDate": "2014-12-29T20:49:27.48Z",
"comment": "Spec for the work",
"name": "Spec.txt"
}
}
]
},
"url": "https://mytfsserver/DefaultCollection/_apis/wit/workItems/299/updates/6"
},
{
"id": 7,
"rev": 5,
"revisedBy": {
"id": "d291b0c4-a05c-4ea6-8df1-4b41d5f39eff",
"name": "Jamal Hartnett <fabrikamfiber4@hotmail.com>",
"url": "https://mytfsserver/DefaultCollection/_apis/Identities/d291b0c4-a05c-4ea6-8df1-4b41d5f39eff"
},
"revisedDate": "2014-12-29T20:49:27.98Z",
"fields": {
"System.Rev": {
"oldValue": 4,
"newValue": 5
},
"System.AuthorizedDate": {
"oldValue": "2014-12-29T20:49:26.99Z",
"newValue": "2014-12-29T20:49:27.48Z"
},
"System.RevisedDate": {
"oldValue": "2014-12-29T20:49:27.48Z",
"newValue": "2014-12-29T20:49:27.98Z"
},
"System.ChangedDate": {
"oldValue": "2014-12-29T20:49:26.99Z",
"newValue": "2014-12-29T20:49:27.48Z"
},
"System.Watermark": {
"oldValue": 613,
"newValue": 614
}
},
"relations": {
"removed": [
{
"rel": "AttachedFile",
"url": "https://mytfsserver/DefaultCollection/_apis/wit/attachments/098a279a-60b9-40a8-868b-b7fd00c0a439",
"attributes": {
"authorizedDate": "2014-12-29T20:49:26.99Z",
"id": 65274,
"resourceCreatedDate": "2014-12-29T20:49:26.99Z",
"resourceModifiedDate": "2014-12-29T20:49:26.99Z",
"revisedDate": "2014-12-29T20:49:27.48Z",
"comment": "Spec for the work",
"name": "Spec.txt"
}
}
]
},
"url": "https://mytfsserver/DefaultCollection/_apis/wit/workItems/299/updates/7"
},
{
"id": 8,
"rev": 6,
"revisedBy": {
"id": "d291b0c4-a05c-4ea6-8df1-4b41d5f39eff",
"name": "Jamal Hartnett <fabrikamfiber4@hotmail.com>",
"url": "https://mytfsserver/DefaultCollection/_apis/Identities/d291b0c4-a05c-4ea6-8df1-4b41d5f39eff"
},
"revisedDate": "2014-12-29T20:49:28.74Z",
"fields": {
"System.Rev": {
"oldValue": 5,
"newValue": 6
},
"System.AuthorizedDate": {
"oldValue": "2014-12-29T20:49:27.48Z",
"newValue": "2014-12-29T20:49:27.98Z"
},
"System.RevisedDate": {
"oldValue": "2014-12-29T20:49:27.98Z",
"newValue": "2014-12-29T20:49:28.74Z"
},
"System.ChangedDate": {
"oldValue": "2014-12-29T20:49:27.48Z",
"newValue": "2014-12-29T20:49:27.98Z"
},
"System.Watermark": {
"oldValue": 614,
"newValue": 615
},
"System.History": {
"newValue": "Linking to a blog article for context"
}
},
"relations": {
"added": [
{
"rel": "Hyperlink",
"url": "https://blogs.msdn.com/b/bharry/archive/2014/05/12/a-new-api-for-visual-studio-online.aspx",
"attributes": {
"authorizedDate": "2014-12-29T20:49:27.98Z",
"id": 65275,
"resourceCreatedDate": "2014-12-29T20:49:27.98Z",
"resourceModifiedDate": "2014-12-29T20:49:27.98Z",
"revisedDate": "9999-01-01T00:00:00Z"
}
}
]
},
"url": "https://mytfsserver/DefaultCollection/_apis/wit/workItems/299/updates/8"
},
{
"id": 9,
"rev": 7,
"revisedBy": {
"id": "d291b0c4-a05c-4ea6-8df1-4b41d5f39eff",
"name": "Jamal Hartnett <fabrikamfiber4@hotmail.com>",
"url": "https://mytfsserver/DefaultCollection/_apis/Identities/d291b0c4-a05c-4ea6-8df1-4b41d5f39eff"
},
"revisedDate": "9999-01-01T00:00:00Z",
"fields": {
"System.Rev": {
"oldValue": 6,
"newValue": 7
},
"System.AuthorizedDate": {
"oldValue": "2014-12-29T20:49:27.98Z",
"newValue": "2014-12-29T20:49:28.74Z"
},
"System.RevisedDate": {
"oldValue": "2014-12-29T20:49:28.74Z",
"newValue": "9999-01-01T00:00:00Z"
},
"System.ChangedDate": {
"oldValue": "2014-12-29T20:49:27.98Z",
"newValue": "2014-12-29T20:49:28.74Z"
},
"System.Watermark": {
"oldValue": 615,
"newValue": 616
},
"System.Tags": {
"oldValue": "",
"newValue": "Tag1; Tag2"
}
},
"url": "https://mytfsserver/DefaultCollection/_apis/wit/workItems/299/updates/9"
}
]
}
Sample code
A page at a time
Sample request
GET https://mytfsserver/DefaultCollection/_apis/wit/workitems/299/updates?$skip=1&$top=2&api-version=1.0
Sample response
{
"count": 2,
"value": [
{
"id": 2,
"rev": 2,
"revisedBy": {
"id": "d291b0c4-a05c-4ea6-8df1-4b41d5f39eff",
"name": "Jamal Hartnett <fabrikamfiber4@hotmail.com>",
"url": "https://mytfsserver/DefaultCollection/_apis/Identities/d291b0c4-a05c-4ea6-8df1-4b41d5f39eff"
},
"revisedDate": "2014-12-29T20:49:24.67Z",
"fields": {
"System.AreaId": {
"oldValue": 3570,
"newValue": 4486
},
"System.AreaPath": {
"oldValue": "Fabrikam-Fiber-Git",
"newValue": "Fabrikam-Fiber-Git\\Website"
},
"System.NodeName": {
"oldValue": "Fabrikam-Fiber-Git",
"newValue": "Website"
},
"System.AreaLevel2": {
"newValue": "Website"
},
"System.Rev": {
"oldValue": 1,
"newValue": 2
},
"System.AuthorizedDate": {
"oldValue": "2014-12-29T20:49:21.617Z",
"newValue": "2014-12-29T20:49:23.933Z"
},
"System.RevisedDate": {
"oldValue": "2014-12-29T20:49:23.933Z",
"newValue": "2014-12-29T20:49:24.67Z"
},
"System.ChangedDate": {
"oldValue": "2014-12-29T20:49:21.617Z",
"newValue": "2014-12-29T20:49:23.933Z"
},
"System.Watermark": {
"oldValue": 609,
"newValue": 611
},
"System.History": {
"oldValue": "Jim has the most context around this.",
"newValue": "Moving to the right area path"
}
},
"url": "https://mytfsserver/DefaultCollection/_apis/wit/workItems/299/updates/2"
},
{
"id": 3,
"rev": 3,
"revisedBy": {
"id": "d291b0c4-a05c-4ea6-8df1-4b41d5f39eff",
"name": "Jamal Hartnett <fabrikamfiber4@hotmail.com>",
"url": "https://mytfsserver/DefaultCollection/_apis/Identities/d291b0c4-a05c-4ea6-8df1-4b41d5f39eff"
},
"revisedDate": "2014-12-29T20:49:26.99Z",
"fields": {
"System.Rev": {
"oldValue": 2,
"newValue": 3
},
"System.AuthorizedDate": {
"oldValue": "2014-12-29T20:49:23.933Z",
"newValue": "2014-12-29T20:49:24.67Z"
},
"System.RevisedDate": {
"oldValue": "2014-12-29T20:49:24.67Z",
"newValue": "2014-12-29T20:49:26.99Z"
},
"System.AssignedTo": {
"newValue": "Johnnie McLeod <fabrikamfiber2@hotmail.com>"
},
"System.ChangedDate": {
"oldValue": "2014-12-29T20:49:23.933Z",
"newValue": "2014-12-29T20:49:24.67Z"
},
"System.Watermark": {
"oldValue": 611,
"newValue": 612
},
"System.History": {
"oldValue": "Moving to the right area path",
"newValue": "Johnnie is going to take this work over."
}
},
"relations": {
"added": [
{
"rel": "System.LinkTypes.Related",
"url": "https://mytfsserver/DefaultCollection/_apis/wit/workItems/300",
"attributes": {
"isLocked": false,
"comment": "adding another task"
}
}
]
},
"url": "https://mytfsserver/DefaultCollection/_apis/wit/workItems/299/updates/3"
}
]
}
Sample code
Get a work item update
GET https://{instance}/DefaultCollection/_apis/wit/workitems/{id}/updates/{revisionId}?api-version={version}
Parameter | Type | Notes |
---|---|---|
URL | ||
instance | string | TFS server name ({server:port}). |
id | int | ID of the work item. |
Query | ||
api-version | string | Version of the API to use. |
Sample request
GET https://mytfsserver/DefaultCollection/_apis/wit/workitems/299/updates/2?api-version=1.0
Sample response
{
"id": 2,
"rev": 2,
"revisedBy": {
"id": "d291b0c4-a05c-4ea6-8df1-4b41d5f39eff",
"name": "Jamal Hartnett <fabrikamfiber4@hotmail.com>",
"url": "https://mytfsserver/DefaultCollection/_apis/Identities/d291b0c4-a05c-4ea6-8df1-4b41d5f39eff"
},
"revisedDate": "2014-12-29T20:49:24.67Z",
"fields": {
"System.AreaId": {
"oldValue": 3570,
"newValue": 4486
},
"System.AreaPath": {
"oldValue": "Fabrikam-Fiber-Git",
"newValue": "Fabrikam-Fiber-Git\\Website"
},
"System.NodeName": {
"oldValue": "Fabrikam-Fiber-Git",
"newValue": "Website"
},
"System.AreaLevel2": {
"newValue": "Website"
},
"System.Rev": {
"oldValue": 1,
"newValue": 2
},
"System.AuthorizedDate": {
"oldValue": "2014-12-29T20:49:21.617Z",
"newValue": "2014-12-29T20:49:23.933Z"
},
"System.RevisedDate": {
"oldValue": "2014-12-29T20:49:23.933Z",
"newValue": "2014-12-29T20:49:24.67Z"
},
"System.ChangedDate": {
"oldValue": "2014-12-29T20:49:21.617Z",
"newValue": "2014-12-29T20:49:23.933Z"
},
"System.Watermark": {
"oldValue": 609,
"newValue": 611
},
"System.History": {
"oldValue": "Jim has the most context around this.",
"newValue": "Moving to the right area path"
}
},
"_links": {
"self": {
"href": "https://mytfsserver/DefaultCollection/_apis/wit/workItems/299/updates/2"
},
"workItemUpdates": {
"href": "https://mytfsserver/DefaultCollection/_apis/wit/workItems/299/updates"
},
"parent": {
"href": "https://mytfsserver/DefaultCollection/_apis/wit/workItems/299"
}
},
"url": "https://mytfsserver/DefaultCollection/_apis/wit/workItems/299/updates/2"
}
Sample code
If the update included changes to the links or attachments, those are included, too.
Sample request
GET https://mytfsserver/DefaultCollection/_apis/wit/workitems/299/updates/4?api-version=1.0
Sample response
{
"id": 4,
"rev": 3,
"revisedBy": {
"id": "d291b0c4-a05c-4ea6-8df1-4b41d5f39eff",
"name": "Jamal Hartnett <fabrikamfiber4@hotmail.com>",
"url": "https://mytfsserver/DefaultCollection/_apis/Identities/d291b0c4-a05c-4ea6-8df1-4b41d5f39eff"
},
"revisedDate": "2014-12-29T20:49:25.623Z",
"relations": {
"added": [
{
"rel": "System.LinkTypes.Dependency-Forward",
"url": "https://mytfsserver/DefaultCollection/_apis/wit/workItems/300",
"attributes": {
"isLocked": false,
"comment": "Adding traceability to dependencies"
}
}
]
},
"url": "https://mytfsserver/DefaultCollection/_apis/wit/workItems/299/updates/4"
}