Create task

post
https://api.box.com/2.0
/tasks

Creates a single task on a file.

Request

application/json

Request Body

stringin bodyrequired
review

Value is always "review"

stringin bodyoptional
all_assignees

When a task is created with completion rule "all_assignees" (default), the task will only be considered completed when all assignees have completed the task. When a task is created with completion rule "any_assignee", the task will be considered completed when one assignee has completed the task.

Value is one of "all_assignees", "any_assignee"

string / date-timein bodyoptional
2012-12-12T10:53:43-08:00

When the task is due

objectin body

The file to attach the task to.

stringin bodyrequired
11446498

The ID of the file

stringin bodyrequired
file

Value is always "file"

stringin bodyoptional
Please review

An optional message to include with the task

Response

application/jsonTask

Returns a new task object

You can now try out some of our APIs live, right here in the documentation.
Log In

Request Example

cURL
curl -X POST https://api.box.com/2.0/tasks \
     -H "Authorization: Bearer <ACCESS_TOKEN>" \
     -H "Content-Type: application/json" \
     -d '{
       "item": {
         "id": "11446498",
         "type": "file"
       },
       "action": "review"
     }'
.NET
var taskParams = new BoxTaskCreateRequest()
{
    Item = new BoxRequestEntity()
    {
        Type = BoxType.file,
        Id = "11111"
    },
    Message = "Please review!"
};
BoxTask task = await client.TasksManager.CreateTaskAsync(taskParams);
Java
BoxFile file = new BoxFile(api, "id");
Date dueAt = new Date();
file.addTask("review", "Please review this file.", dueAt);
Python
message = 'Please review this'
due_at = "2014-04-03T11:09:43-07:00"
task = client.file(file_id='11111').create_task(message, due_at)
print('Task message is {0} and it is due at {1}'.format(task.message, task.due_at))
Node
var options = {
	message: 'Please review for publication!',
	due_at: '2014-04-03T11:09:43-07:00'
};
client.tasks.create('22222', options)
	.then(task => {
		/* task -> {
			type: 'task',
			id: '11111',
			item: 
			{ type: 'file',
				id: '22222',
				sequence_id: '0',
				etag: '0',
				sha1: '0bbd79a105c504f99573e3799756debba4c760cd',
				name: 'box-logo.png' },
			due_at: '2014-04-03T11:09:43-07:00',
			action: 'review',
			message: 'Please review for publication!',
			task_assignment_collection: { total_count: 0, entries: [] },
			is_completed: false,
			created_by: 
			{ type: 'user',
				id: '33333',
				name: 'Example User',
				login: 'user@example.com' },
			created_at: '2013-04-03T11:12:54-07:00' }
		*/
	});

Response Example

{
  "id": 11446498,
  "type": "task",
  "item": {
    "id": 12345,
    "etag": 1,
    "type": "file",
    "sequence_id": 3,
    "name": "Contract.pdf"
  },
  "due_at": "2012-12-12T10:53:43-08:00",
  "action": "review",
  "message": "Legal review",
  "task_assignment_collection": {
    "total_count": 5000,
    "limit": 1000,
    "offset": 2000,
    "order": [
      {
        "by": "type",
        "direction": "ASC"
      }
    ],
    "entries": [
      {
        "id": 11446498,
        "type": "task_assignment",
        "item": {
          "id": 12345,
          "etag": 1,
          "type": "file",
          "sequence_id": 3,
          "name": "Contract.pdf"
        },
        "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"
}