Create Task
Required scope: tasks-write
Creates a task, either in a chat or for an assignee. chat_id and assignee_user_id are mutually exclusive — send exactly one.
- A chat task starts unassigned; any member of the chat can later claim or complete it. The requesting user must be a member of the chat and have its
assign_taskpermission. - Assigning to another user files the task in your direct message chat with them, which is created automatically if needed.
- Assigning to yourself creates a personal task with no chat.
Possible Errors
See errors for more information.
NO_PERMISSION- The requesting user does not have the chat'sassign_taskpermission.INVALID_CHAT- The chat does not exist, is not available to the requesting user, or does not support tasks.ASSIGNEE_NOT_FOUND- The assignee user does not exist.DM_CREATION_FAILED- A direct message chat could not be created with the assignee.INVALID_ATTACHMENT_FILE_KEY- Anattachment_file_keysentry is invalid or expired.
Body
application/json
- Type: stringFormat: date-timedue
_at requiredDue date. The time portion is ignored — tasks are due on a date.
- Type: stringtitlemax length:1000required
- Type: integerassignee
_user _id User to assign the task to. Mutually exclusive with
chat_id. - Type: array of string …1attachment
_file _keys File keys of previously uploaded files to attach. Currently limited to one attachment per task.
- Type: integerchat
_id Chat to create the task in. Mutually exclusive with
assignee_user_id. - Type: string | nullnotesmax length:5000
- Type: string | nullFormat: date-timereminder
_local _at Reminder time, interpreted in the assignee's local time
Responses
- application/json
- application/json
- application/json
- application/json
Request Example for post/tasks
curl https://api.pronto.io/api/tasks \
--request POST \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer YOUR_SECRET_TOKEN' \
--data '{
"chat_id": 456,
"title": "Restock the supply shelves",
"due_at": "2026-09-01T00:00:00Z"
}'
{
"data": {
"id": 987,
"chat_id": 456,
"user_id": 12,
"title": "Restock the supply shelves",
"notes": null,
"assignee_user_id": null,
"due_at": "2026-09-01T00:00:00+00:00",
"reminder_local_at": null,
"completed_at": null,
"created_at": "2026-08-26T15:04:05+00:00",
"updated_at": "2026-08-26T15:04:05+00:00",
"attachments": []
}
}