PUT/projects/{id}.json

Update Project

Modifies a single project.

Checkout our Teamwork.com code sample repo on GitHub for a few update project code samples

Also use this endpoint to:

  • Enable and Disable Projects Features: All features in Projects such as Tasks, Messages, Time, Billing and more can be enabled and disabled via the API.
{
  "project": {
    "use-tasks": "1",
    "use-messages": "1",
    "use-time": "1",
    "use-riskregister": "1",
    "use-billing": "1",
    "use-milestones": "1",
    "use-files": "1",
    "use-notebook": "1",
    "use-links": "1"
  }
}
  • Set/Remove a Project Owner: This allows you to set a project owner by using in the project id in the path and sending in the id of the owner in the body of the request.

Please note:

If the project is inside a portfolio board, you will also recieve the column and the card that project is associated with. This affects the board because you can filter by project owner.

Your response will look like this:

{
    "linkedColumnId": "12345",
    "STATUS": "OK",
    "linkedCardId": "12345"
}
  • Update a Project Status: Modifies a single project status. Inactive to archive project, active to unarchive project.
{
  "project": {
    "status": "inactive"
  }
}
  • Add or update the Project logo: This will add an image to become a Project logo. It will replace the existing logo if there is one in place. First, use the file upload API call to upload a file and receive back a file reference string. Then, perform the following to update a project.
{
    "project": {
        "logoPendingFileRef": "{your_uploaded_file_reference}"
    }
}
  • Update or remove custom fields on a project: To update the custom fields, pass in the updated values of the custom fields this endpoint. Eg:
{
    "project": {
        "customFields": [
            {
                "customFieldId": 68, 
                "value": "Jane Doe"
            }, 
            {
                "customFieldId": 75, 
                "value": "Finance"
            }
        ]
    }
}

To delete custom fields from a project pass an empty array for the customFields param. Eg:

{
    "todo-item": {
        "customFields": []
    }
}


Path Params

  • Name
    id
    Type
    string
    required
    Description

Body Params

    • Name
      project
      Type
      object

    Responses

    • Code
      200
      Type
      object
      Schema
      Description
      200 Response

    Examples

    200 Response

    application/json
    {
      "STATUS": "OK"
    }