Partially update a single task#

Deprecated

This endpoint is deprecated and may be removed in a future release.

This endpoint was deprecated on 2026-02-12.

It is scheduled for sunset on 2027-01-31.

Description#

Partially updates the properties of a task. Please note: Tasks are automatically restarted when the following properties are updated:

  • assignees

  • approvalSteps: If any participants who have already approved are updated, the task will be restarted.

  • location

Options#

Path

PATCH Operations Supported

/approvalSteps

replace

/assignees

replace

/description

replace

/dueDate

replace

/location

replace

/owner

replace

/title

replace

PATCH /prototype/platform/tasks/{taskId}

Required OAuth Scopes

task:write

Parameters#

Parameter

In

Type

Required

Description

X-Version

header

string

false

Version of the API (2022-01-01)

taskId

path

string

true

The unique identifier of the task

body

body

JSONPatchDocument

true

A collection of patch operations to apply to the task.

Body parameter example#

[
  {
    "op": "replace",
    "path": "/title",
    "value": "New Title"
  }
]

Code Samples#

curl -X PATCH https://api.app.wdesk.com/prototype/platform/tasks/{taskId} \
    -H 'Content-Type: application/json' \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer {access-token}' \
    -H 'X-Version: 2022-01-01'
http PATCH https://api.app.wdesk.com/prototype/platform/tasks/{taskId} \
    X-Version:2022-01-01 \
    Content-Type:application/json \
    Accept:application/json \
    Authorization:"Bearer {access-token}"
wget --method=PATCH "https://api.app.wdesk.com/prototype/platform/tasks/{taskId}" \
    --output-document -  \ 
    --header 'Content-Type: application/json' \ 
    --header 'Accept: application/json' \ 
    --header 'Authorization: Bearer {access-token}' \
    --header 'X-Version: 2022-01-01'
import requests

headers = {
  'X-Version': '2022-01-01',
  'Content-Type': 'application/json',
  'Accept': 'application/json',
  'Authorization': 'Bearer {access-token}'
}

r = requests.patch('https://api.app.wdesk.com/prototype/platform/tasks/{taskId}', headers = headers)

print(r.json())

Returns#

200 - OK#

Returns a PrototypeTask object containing details about the updated PrototypeTask.

400 - Bad Request#

Error response that indicates that the service is not able to process the incoming request. The reason is provided in the error message.

401 - Unauthorized#

Error response that indicates that the service is not able to process the incoming request. The reason is provided in the error message.

403 - Forbidden#

Error response that indicates that the service is not able to process the incoming request. The reason is provided in the error message.

404 - Not Found#

Error response that indicates that the service is not able to process the incoming request. The reason is provided in the error message.

409 - Conflict#

Error response that indicates that the service is not able to process the incoming request. The reason is provided in the error message.

429 - Too Many Requests#

Error response that indicates that the service is not able to process the incoming request. The reason is provided in the error message.

500 - Internal Server Error#

Error response that indicates that the service is not able to process the incoming request. The reason is provided in the error message.

503 - Service Unavailable#

Error response that indicates that the service is not able to process the incoming request. The reason is provided in the error message.

Example Responses#

{
  "approvalSteps": [
    {
      "completionMode": "ONE",
      "dueAt": null,
      "participants": [
        {
          "id": "V0ZVc2VyHzY0MTI5NzM0MzkxODg5OTI",
          "type": "USER"
        },
        {
          "id": "V0ZVc2VyHzU0MDg3OTc0MDE4MDg4OTY",
          "type": "USER"
        }
      ],
      "responses": [
        {
          "action": "REJECT",
          "comment": "please refine",
          "created": {
            "dateTime": "2023-06-11T13:00:00+00:00",
            "user_id": "V0ZVc2VyHzU0MDg3OTc0MDE4MDg4OTY"
          }
        }
      ]
    }
  ],
  "assignees": [
    {
      "id": "V1ZVd2VyFzU3NiQ1NDA4NjIzNzk2MjD",
      "type": "USER"
    }
  ],
  "created": {
    "dateTime": "2019-10-29T15:03:27Z"
  },
  "description": "Review document for spelling and grammar",
  "dueAt": "2019-10-30T00:00:00Z",
  "id": "VGFzax41MWNmOGZjMDQxMzc1MmRlYWZjMTA2ZjgyMzJiNDllZg",
  "modified": {
    "dateTime": "2019-10-29T15:03:27Z"
  },
  "sourceUrl": "https://app.wdesk.com/tasks/d/UVdOauIzVaVkQjdxTmzNNUOEUTQOakEnTnpJTE9ENXkuEkdGeaF4OENNJEV3NUTBmA?token=NTc0NDU2MTg1MjM0ODUyTM",
  "status": "Awaiting Approval",
  "title": "Review Document"
}
{
  "code": "400BadRequest",
  "message": "The request was unacceptable, often due to a missing or invalid parameter"
}
{
  "code": "401Unauthorized",
  "message": "No valid API token provided"
}
{
  "code": "403Forbidden",
  "message": "The API token does not have permissions to perform the request"
}
{
  "code": "404NotFound",
  "message": "The requested resource could not be found"
}
{
  "code": "409Conflict",
  "message": "The request conflicts with another request"
}
{
  "code": "429TooManyRequests",
  "message": "Too many requests have been made against the API in too short a time"
}
{
  "code": "500InternalServerError",
  "message": "The server encountered an unexpected condition that prevented it from fulfilling the request"
}
{
  "code": "503ServiceUnavailable",
  "message": "The server cannot handle the request due to a temporary overload or scheduled maintenance"
}