---
title: "Update a task"
method: PUT
path: "/projects/{project_id}:{branch}/tasks/{task_id}"
tags: ["Tasks"]
---

# Update a task

`PUT /projects/{project_id}:{branch}/tasks/{task_id}`

Updates the properties of a task. Requires *Manage tasks* admin right.

Requires <code>write_tasks</code> OAuth access scope.

## Path parameters

- `project_id` string, required
- `branch` string, required
- `task_id` number, required

## Request body

- object
  - `title` string — Task title.
  - `description` string — Brief task description. Used as instructions for AI in <code>automatic_translation</code> and <code>lqa_by_ai</code> task types.
  - `due_date` string — Due date in <code>Y-m-d H:i:s</code> format. Example: "2024-12-24 23:59:59"
  - `languages` object[] — List of languages in the task. This field **must** be omitted for <code>automatic_translation</code> and <code>lqa_by_ai</code> task types.
    - `language_iso` string — Language code.
    - `users` string[] — List of user identifiers, assigned to work on the language.
    - `groups` string[] — List of group identifiers, assigned to work on the language.
    - `close_language` boolean — Whether the language should be closed and notifications sent. Action cannot be undone.
  - `auto_close_languages` boolean — Whether languages should be closed automatically upon completion of the last item. **Must** be <code>true</code> or omit the property for `automatic_translation` and `lqa_by_ai` task types.
  - `auto_close_task` boolean — Whether the task should be automatically closed upon all language completion. **Must** be <code>true</code> or omit the property for `automatic_translation` and `lqa_by_ai` task types.
  - `auto_close_items` boolean — Whether the <code>translation</code> task items should be automatically marked as completed on edit. **Must** be <code>true</code> or omit the property for `automatic_translation` and `lqa_by_ai` task types.
  - `close_task` boolean — Whether the task should be closed and notifications sent. The task cannot be reopened again.
  - `closing_tags` string[] — Tags that will be added to affected keys when task is closed.
  - `do_lock_translations` boolean — If set to true, will lock translations for non-assigned project members.

## Response `200`

OK

- object
  - `project_id` string
  - `task` Tasks
    - `task_id` number — A unique task identifier.
    - `title` string — Task title.
    - `description` string — Short description of the task.
    - `status` string — Status of the task. Allowed values are <code>completed</code>, <code>in_progress</code>, <code>created</code>, <code>queued</code>.
    - `progress` number — Task progress in percents (0% - 100%).
    - `due_date` string — Due date.
    - `due_date_timestamp` number — Unix timestamp of the Due date.
    - `keys_count` number — Total number of keys in the task.
    - `words_count` number — Total number of source words in the task.
    - `created_at` string — Date and time of the task creation.
    - `created_at_timestamp` number — Unix timestamp when the task was created.
    - `created_by` number — Identifier of a user, who has created the task.
    - `created_by_email` string — E-mail of a user, who has created the task.
    - `can_be_parent` boolean — Can task be assigned as a parent task.
    - `task_type` 'translation' | 'automatic_translation' | 'lqa_by_ai' | 'review' — <code>translation</code>, <code>automatic_translation</code>, <code>lqa_by_ai</code> or <code>review</code>.
    - `parent_task_id` number — ID of the parent task.
    - `closing_tags` unknown[] — Tags that will be added to affected keys when task is closed.
      - unknown
    - `do_lock_translations` boolean — If set to true, will lock translations for non-assigned project members.
    - `languages` object[] — List of languages in the task.
      - `language_iso` string — Language code.
      - `language_id` number — A unique language identifier in the system.
      - `language_name` string — Language name.
      - `users` unknown[] — List of users, assigned to work on the language.
        - unknown
      - `groups` object — List of groups, assigned to work on the language.
        - `group` object
          - `id` number — A unique identifier of the user group.
          - `name` string — Name of the group.
      - `keys` unknown[] — List of keys identifiers, included in task for this language.
        - unknown
      - `status` string — Status of the language in the task. Allowed values are <code>completed</code>, <code>in progress</code>, <code>created</code>.
      - `progress` number — Language progress in percents (0% - 100%).
      - `initial_tm_leverage` object — Deprecated. We return data for compatibility, but please, rely on "tm_leverage" instead.
        - `0%+` number — Number of words with TM match from 0% to 60%.
        - `60%+` number — Number of words with TM match from 60% to 75%.
        - `75%+` number — Number of words with TM match from 75% to 95%.
        - `95%+` number — Number of words with TM match from 95% to 100%.
        - `100%` number — Number of words with TM 100% match.
      - `tm_leverage` object — Translation Memory leverage calculated for a task. It indicates how many words translators can fetch from the memory instead of translating everything from scratch. For large tasks it may take time to calculate TM leverage after the task creation. If the "status" is "pending", you will see null value and need to retrieve the data again (with a small delay).
        - `status` 'pending' | 'completed' — Status of the translation memory leverage.
        - `value` object, nullable
          - `0%+` number — Number of words with TM match from 0% to 50%.
          - `50%+` number — Number of words with TM match from 50% to 75%.
          - `75%+` number — Number of words with TM match from 75% to 85%.
          - `85%+` number — Number of words with TM match from 85% to 95%.
          - `95%+` number — Number of words with TM match from 95% to 100%.
          - `100%` number — Number of words with TM 100% match.
      - `keys_count` number — Number of keys for the language.
      - `words_count` number — Number of source words for the language.
      - `done_words_count` number — Number of translated words for the language.
      - `completed_at` string — Date and time of the language completion.
      - `completed_at_timestamp` number — Unix timestamp when the language was completed.
      - `completed_by` number — Identifier of a user, who has completed the language.
      - `completed_by_email` string — E-mail of a user, who has completed the language.
    - `source_language_iso` string — Source language code of the task.
    - `auto_close_languages` boolean — Whether languages should be closed automatically upon completion of the last item.
    - `auto_close_task` boolean — Whether the task should be automatically closed upon all language completion.
    - `auto_close_items` boolean — Whether the <code>translation</code> task items should be automatically marked as completed on edit.
    - `completed_at` string — Date and time of the task completion.
    - `completed_at_timestamp` number — Unix timestamp when the task was completed.
    - `completed_by` number — Identifier of a user, who has completed the task.
    - `completed_by_email` string — E-mail of a user, who has completed the task.
    - `custom_translation_status_ids` unknown[] — IDs of custom translation statuses that will be applied to task items after item is completed.
      - unknown

---

[API](https://skmtc.net/lokalise/apis/default-projects.md) · [All operations](https://skmtc.net/lokalise/apis/default-projects/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/lokalise/default-projects/versions/7bceba421b12/schema)
