> ## Documentation Index
> Fetch the complete documentation index at: https://developer.box.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Tasks resources

Tasks allow users to request collaborators on a file to review a file or complete a piece of work. Tasks can be used by developers to create file-centric workflows.

## Task

A task allows for file-centric workflows within Box. Users can create tasks on files and assign them to other users for them to complete the tasks.

<Accordion title="Attributes and example">
  | Property                     | Type                                                                       | Required | Description                                                                                                                                                                                                                                                                                                                                                                            |
  | ---------------------------- | -------------------------------------------------------------------------- | -------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
  | `id`                         | `string`                                                                   | No       | The unique identifier for this task.                                                                                                                                                                                                                                                                                                                                                   |
  | `type`                       | `enum<string>`                                                             | No       | The value will always be `task`. Available options: `task`.                                                                                                                                                                                                                                                                                                                            |
  | `item`                       | [File (Mini)](/reference/files-resources#file-mini)                        | No       | The file associated with the task.                                                                                                                                                                                                                                                                                                                                                     |
  | `due_at`                     | `string`                                                                   | No       | When the task is due.                                                                                                                                                                                                                                                                                                                                                                  |
  | `action`                     | `enum<string>`                                                             | No       | The type of task the task assignee will be prompted to perform. Available options: `review`, `complete`.                                                                                                                                                                                                                                                                               |
  | `message`                    | `string`                                                                   | No       | A message that will be included with the task.                                                                                                                                                                                                                                                                                                                                         |
  | `task_assignment_collection` | [Task assignments](/reference/task-assignments-resources#task-assignments) | No       | A collection of task assignment objects associated with the task.                                                                                                                                                                                                                                                                                                                      |
  | `is_completed`               | `boolean`                                                                  | No       | Whether the task has been completed.                                                                                                                                                                                                                                                                                                                                                   |
  | `created_by`                 | [User (Mini)](/reference/users-resources#user-mini)                        | No       | The user who created the task.                                                                                                                                                                                                                                                                                                                                                         |
  | `created_at`                 | `string`                                                                   | No       | When the task object was created.                                                                                                                                                                                                                                                                                                                                                      |
  | `completion_rule`            | `enum<string>`                                                             | No       | Defines which assignees need to complete this task before the task is considered completed. - `all_assignees` requires all assignees to review or approve the task in order for it to be considered completed. - `any_assignee` accepts any one assignee to review or approve the task in order for it to be considered completed. Available options: `all_assignees`, `any_assignee`. |

  ```json Example theme={null}
  {
    "id": "11446498",
    "type": "task",
    "item": {
      "id": "12345",
      "etag": "1",
      "type": "file",
      "sequence_id": "3",
      "name": "Contract.pdf",
      "sha1": "85136C79CBF9FE36BB9D05D0639C70C265C18D37",
      "file_version": {
        "id": "12345",
        "type": "file_version",
        "sha1": "134b65991ed521fcfe4724b7d814ab8ded5185dc"
      }
    },
    "due_at": "2012-12-12T10:53:43-08:00",
    "action": "review",
    "message": "Legal review",
    "task_assignment_collection": {
      "total_count": 100,
      "entries": [
        {
          "id": "11446498",
          "type": "task_assignment",
          "item": {
            "id": "12345",
            "etag": "1",
            "type": "file",
            "sequence_id": "3",
            "name": "Contract.pdf",
            "sha1": "85136C79CBF9FE36BB9D05D0639C70C265C18D37",
            "file_version": {
              "id": "12345",
              "type": "file_version",
              "sha1": "134b65991ed521fcfe4724b7d814ab8ded5185dc"
            }
          },
          "assigned_to": {
            "id": "11446498",
            "type": "user",
            "name": "Aaron Levie",
            "login": "ceo@example.com"
          },
          "message": "Please review",
          "completed_at": "2012-12-12T10:53:43-08:00",
          "assigned_at": "2012-12-12T10:53:43-08:00",
          "reminded_at": "2012-12-12T10:53:43-08:00",
          "resolution_state": "incomplete",
          "assigned_by": {
            "id": "11446498",
            "type": "user",
            "name": "Aaron Levie",
            "login": "ceo@example.com"
          }
        }
      ]
    },
    "is_completed": true,
    "created_by": {
      "id": "11446498",
      "type": "user",
      "name": "Aaron Levie",
      "login": "ceo@example.com"
    },
    "created_at": "2012-12-12T10:53:43-08:00",
    "completion_rule": "all_assignees"
  }
  ```
</Accordion>

## Tasks

A list of tasks.

<Accordion title="Attributes and example">
  | Property      | Type                   | Required | Description                                                                                                                                           |
  | ------------- | ---------------------- | -------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- |
  | `total_count` | `integer`              | No       | One greater than the offset of the last entry in the entire collection. The total number of entries in the collection may be less than `total_count`. |
  | `entries`     | array of [Task](#task) | No       | A list of tasks.                                                                                                                                      |

  ```json Example theme={null}
  {
    "total_count": 5000,
    "entries": [
      {
        "id": "11446498",
        "type": "task",
        "item": {
          "id": "12345",
          "etag": "1",
          "type": "file",
          "sequence_id": "3",
          "name": "Contract.pdf",
          "sha1": "85136C79CBF9FE36BB9D05D0639C70C265C18D37",
          "file_version": {
            "id": "12345",
            "type": "file_version",
            "sha1": "134b65991ed521fcfe4724b7d814ab8ded5185dc"
          }
        },
        "due_at": "2012-12-12T10:53:43-08:00",
        "action": "review",
        "message": "Legal review",
        "task_assignment_collection": {
          "total_count": 100,
          "entries": [
            {
              "id": "11446498",
              "type": "task_assignment",
              "item": {
                "id": "12345",
                "etag": "1",
                "type": "file",
                "sequence_id": "3",
                "name": "Contract.pdf",
                "sha1": "85136C79CBF9FE36BB9D05D0639C70C265C18D37",
                "file_version": {
                  "id": "12345",
                  "type": "file_version",
                  "sha1": "134b65991ed521fcfe4724b7d814ab8ded5185dc"
                }
              },
              "assigned_to": {
                "id": "11446498",
                "type": "user",
                "name": "Aaron Levie",
                "login": "ceo@example.com"
              },
              "message": "Please review",
              "completed_at": "2012-12-12T10:53:43-08:00",
              "assigned_at": "2012-12-12T10:53:43-08:00",
              "reminded_at": "2012-12-12T10:53:43-08:00",
              "resolution_state": "incomplete",
              "assigned_by": {
                "id": "11446498",
                "type": "user",
                "name": "Aaron Levie",
                "login": "ceo@example.com"
              }
            }
          ]
        },
        "is_completed": true,
        "created_by": {
          "id": "11446498",
          "type": "user",
          "name": "Aaron Levie",
          "login": "ceo@example.com"
        },
        "created_at": "2012-12-12T10:53:43-08:00",
        "completion_rule": "all_assignees"
      }
    ]
  }
  ```
</Accordion>
