# "Tasks" Endpoints - PUT Workspace Project Task

**URL:** <https://community.toggl.com/t/tasks-endpoints-put-workspace-project-task/381>\
**Category:** API References\
**Tags:** api, endpoints, put, tasks\
**Created:** [December 2, 2024, 5:30pm UTC](https://community.toggl.com/t/tasks-endpoints-put-workspace-project-task/381 "2024-12-02T17:30:15Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![Support](https://yyz2.discourse-cdn.com/flex012/user_avatar/community.toggl.com/support/32/1577_2.png) [@Support](https://community.toggl.com/u/Support)\
**Post date:** [December 2, 2024, 5:30pm UTC](https://community.toggl.com/t/tasks-endpoints-put-workspace-project-task/381/1 "2024-12-02T17:30:15Z")

</div>

```auto
https://api.track.toggl.com/api/v9/workspaces/{workspace_id}/projects/{project_id}/tasks/{task_id}

```

Put project task for given workspace.

- cURL
- Go
- Ruby
- JavaScript
- Python
- Rust

```auto
extern crate tokio;extern crate serde_json;use reqwest::{Client};use reqwest::header::{CONTENT_TYPE};#[tokio::main]async fn main() -> Result<(), reqwest::Error> { let client = Client::new().basic_auth("<email>", "<password>"); let json = client.request(Method::PUT, "https://api.track.toggl.com/api/v9/workspaces/{workspace_id}/projects/{project_id}/tasks/{task_id}".to_string()).json(&serde_json::json!(\{"active":"boolean","estimated_seconds":"integer","name":"string","user_id":"integer"\})) .header(CONTENT_TYPE, "application/json") .send() .await? .json() .await?; println!("{:#?}", json); Ok(())}

```

### Parameters[​](https://engineering.toggl.com/docs/api/tasks/#parameters-4)

#### Path[​](https://engineering.toggl.com/docs/api/tasks/#path-4)

| name | type | required | description |
| --- | --- | --- | --- |
| workspace\_id | integer | true | Numeric ID of the workspace |
| project\_id | integer | true | Numeric ID of the project |
| task\_id | string | true | Numeric ID of project task |

#### Body[​](https://engineering.toggl.com/docs/api/tasks/#body-2)

| Name | Type | Description |
| --- | --- | --- |
| active | boolean | Use false to mark the task as done |
| estimated\_seconds | integer | Task estimation in seconds |
| name | string | Name |
| user\_id | integer | Creator ID, if omitted, will use requester user ID |

### Response[​](https://engineering.toggl.com/docs/api/tasks/#response-4)

#### 200[​](https://engineering.toggl.com/docs/api/tasks/#200-4)

| Name | Type | Description |
| --- | --- | --- |
| active | boolean | False when the task has been done |
| at | string | When the task was created/last modified |
| client\_name | string | null |
| estimated\_seconds | integer | null |
| id | integer | Task ID |
| integration\_ext\_id | string | The external ID of the linked entity in the external system (e.g. JIRA/SalesForce) |
| integration\_ext\_type | string | The external type of the linked entity in the external system (e.g. JIRA/SalesForce) |
| integration\_provider | string | The provider (e.g. JIRA/SalesForce) that has an entity linked to this Toggl Track entity |
| name | string | Task Name |
| permissions | string | - |
| project\_billable | boolean | - |
| project\_color | string | Metadata |
| project\_id | integer | Project ID |
| project\_name | string | - |
| rate | number | Rate for this task |
| rate\_last\_updated | string | null |
| recurring | boolean | Whether this is a recurring task |
| toggl\_accounts\_id | string | null |
| tracked\_seconds | integer | The value tracked\_seconds is in milliseconds, not in seconds. |
| user\_id | integer | null |
| workspace\_id | integer | Workspace ID |

#### 400[​](https://engineering.toggl.com/docs/api/tasks/#400-4)

Possible errors:

- Invalid project\_id
- Invalid task\_id

#### 403[​](https://engineering.toggl.com/docs/api/tasks/#403-4)

User does not have access to this resource.

#### 500[​](https://engineering.toggl.com/docs/api/tasks/#500-4)

Internal Server Error
