Kiteworks tasks API
The tasks API from Kiteworks — 3 operation(s) for tasks.
The tasks API from Kiteworks — 3 operation(s) for tasks.
openapi: 3.0.2
info:
version: '28'
title: Kiteworks API Documentation activities tasks API
tags:
- name: tasks
paths:
/rest/files/{id}/tasks:
get:
tags:
- tasks
summary: Get file tasks
description: Gets a list of tasks assigned to the specified file. **Requires `task_view` permission on the file's parent folder.**
responses:
'200':
description: Returns a paginated list of tasks associated with the specified file.
content:
application/json:
schema:
type: object
properties:
data:
type: array
items:
$ref: '#/components/schemas/Task'
metadata:
$ref: '#/components/schemas/MetaData'
examples:
File task list:
summary: A paginated list of tasks for a file
value:
data:
- id: 15
object_id: 7
parent_id: 0
user_id: 3
assignee_id: 5
contents: Review the quarterly report for accuracy.
status: P
due: '2024-04-01T00:00:00+00:00'
created: '2024-03-15T10:00:00+00:00'
modified: '2024-03-16T08:30:00+00:00'
deleted: false
folder_id: 3
total: 1
page: 1
pageSize: 20
'490':
description: Request blocked by WAF
deprecated: false
parameters:
- in: path
name: id
description: The unique identifier (UUID) of the file.
required: true
schema:
type: string
- in: query
name: assigneeId
description: Assigned User unique identifier
schema:
type: string
- in: query
name: assigneeId:in
description: Assigned User unique identifier. Search for results that match any of the specified values for this parameter.
schema:
type: string
- in: query
name: due
description: Task due date
schema:
type: string
format: date
- in: query
name: due:gt
description: Task due date. Search for results where this parameter value is greater than the specified value.
schema:
type: string
format: date
- in: query
name: due:gte
description: Task due date. Search for results where this parameter value is greater than or equal to the specified value.
schema:
type: string
format: date
- in: query
name: due:lt
description: Task due date. Search for results where this parameter value is less than the specified value.
schema:
type: string
format: date
- in: query
name: due:lte
description: Task due date. Search for results where this parameter value is less than or equal to the specified value.
schema:
type: string
format: date
- in: query
name: parentId
description: Parent Comment identifier
schema:
type: integer
- in: query
name: parentId:in
description: Parent Comment identifier. Search for results that match any of the specified values for this parameter.
schema:
type: integer
- in: query
name: userId
description: Identifier of User who created a Task
schema:
type: string
- in: query
name: userId:in
description: Identifier of User who created a Task. Search for results that match any of the specified values for this parameter.
schema:
type: string
- in: query
name: created
description: Task creation date
schema:
type: string
format: date
- in: query
name: created:gt
description: Task creation date. Search for results where this parameter value is greater than the specified value.
schema:
type: string
format: date
- in: query
name: created:gte
description: Task creation date. Search for results where this parameter value is greater than or equal to the specified value.
schema:
type: string
format: date
- in: query
name: created:lt
description: Task creation date. Search for results where this parameter value is less than the specified value.
schema:
type: string
format: date
- in: query
name: created:lte
description: Task creation date. Search for results where this parameter value is less than or equal to the specified value.
schema:
type: string
format: date
- in: query
name: modified
description: Task modification date
schema:
type: string
format: date
- in: query
name: modified:gt
description: Task modification date. Search for results where this parameter value is greater than the specified value.
schema:
type: string
format: date
- in: query
name: modified:gte
description: Task modification date. Search for results where this parameter value is greater than or equal to the specified value.
schema:
type: string
format: date
- in: query
name: modified:lt
description: Task modification date. Search for results where this parameter value is less than the specified value.
schema:
type: string
format: date
- in: query
name: modified:lte
description: Task modification date. Search for results where this parameter value is less than or equal to the specified value.
schema:
type: string
format: date
- in: query
name: contents:contains
description: Task content. Search for results that contain the specified characters in this parameter.
schema:
type: string
- in: query
name: status
description: 'Filter tasks by status. Accepted values: `D`, `P`, `C`.'
schema:
type: array
items:
type: string
enum:
- D
- P
- C
- in: query
name: deleted
description: Whether the task has been deleted
schema:
type: boolean
- in: query
name: orderBy
description: Sorting options
schema:
type: array
items:
type: string
enum:
- id:asc
- id:desc
- due:asc
- due:desc
- created:asc
- created:desc
- modified:asc
- modified:desc
- in: query
name: offset
description: Offset
schema:
type: integer
- in: query
name: limit
description: Limit
schema:
type: integer
- in: query
name: with
description: With parameters
schema:
type: string
- in: query
name: mode
description: Determines the detail level of the response body.
schema:
type: string
enum:
- full_with_links
- full
- compact
post:
tags:
- tasks
summary: Create file task
description: Creates a task for the specified file and assigns it to a user. The assignee must have at least `properties_view` permission on the file's parent folder. **Requires `task_add` permission on the file's parent folder.**
responses:
'200':
description: Returns the newly created task record.
content:
application/json:
schema:
$ref: '#/components/schemas/Task'
examples:
Task created:
summary: A newly created task assigned to a user
value:
id: 15
object_id: 7
parent_id: 0
user_id: 3
assignee_id: 5
contents: Review the quarterly report for accuracy.
status: D
due: '2024-04-01T00:00:00+00:00'
created: '2024-03-15T10:00:00+00:00'
modified: '2024-03-15T10:00:00+00:00'
deleted: false
folder_id: 3
'403':
description: 'Forbidden<br /><br /><i>Possible error codes: </i>ERR_ACCESS_USER'
content:
application/json:
schema:
$ref: '#/components/schemas/Errors'
examples:
ERR_ACCESS_USER:
summary: Insufficient access permissions
description: Insufficient access permissions
value:
errors:
code: ERR_ACCESS_USER
message: Insufficient access permissions
'422':
description: 'Unprocessable Content<br /><br /><i>Possible error codes: </i>ERR_INPUT_REQUIRED, ERR_INPUT_DATE_NOT_AFTER, ERR_INPUT_HTML_TAGS_INVALID'
content:
application/json:
schema:
$ref: '#/components/schemas/Errors'
examples:
ERR_INPUT_REQUIRED:
summary: Field is required
description: Field is required
value:
errors:
code: ERR_INPUT_REQUIRED
message: Field is required
ERR_INPUT_HTML_TAGS_INVALID:
summary: Cannot contain HTML tags other than B, I, or U
description: Cannot contain HTML tags other than B, I, or U
value:
errors:
code: ERR_INPUT_HTML_TAGS_INVALID
message: Cannot contain HTML tags other than B, I, or U
'490':
description: Request blocked by WAF
deprecated: false
parameters:
- in: path
name: id
description: Object ID of the file task is created on
required: true
schema:
type: string
- in: query
name: returnEntity
description: If set to `true`, returns information about the newly created entity.
schema:
type: boolean
- in: query
name: mode
description: Determines the detail level of the response body.
schema:
type: string
enum:
- full_with_links
- full
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/Task.Post'
/rest/folders/{id}/tasks:
get:
tags:
- tasks
summary: Get tasks for a folder
description: Gets a list of tasks associated with all files in the specified folder. **Requires `task_view` permission on the folder.**
responses:
'200':
description: Returns a paginated list of tasks for all files within the specified folder.
content:
application/json:
schema:
type: object
properties:
data:
type: array
items:
$ref: '#/components/schemas/Task'
metadata:
$ref: '#/components/schemas/MetaData'
examples:
Folder task list:
summary: A paginated list of tasks across files in a folder
value:
data:
- id: 15
object_id: 7
parent_id: 0
user_id: 3
assignee_id: 5
contents: Review the quarterly report for accuracy.
status: P
due: '2024-04-01T00:00:00+00:00'
created: '2024-03-15T10:00:00+00:00'
modified: '2024-03-16T08:30:00+00:00'
deleted: false
folder_id: 3
- id: 16
object_id: 8
parent_id: 0
user_id: 3
assignee_id: 3
contents: Update the budget spreadsheet with Q1 actuals.
status: D
due: '2024-04-15T00:00:00+00:00'
created: '2024-03-16T09:00:00+00:00'
modified: '2024-03-16T09:00:00+00:00'
deleted: false
folder_id: 3
total: 2
page: 1
pageSize: 20
'490':
description: Request blocked by WAF
deprecated: false
parameters:
- in: path
name: id
description: The unique identifier (UUID) of the folder.
required: true
schema:
type: string
- in: query
name: assigneeId
description: Assigned User unique identifier
schema:
type: string
- in: query
name: assigneeId:in
description: Assigned User unique identifier. Search for results that match any of the specified values for this parameter.
schema:
type: string
- in: query
name: due
description: Task due date
schema:
type: string
format: date
- in: query
name: due:gt
description: Task due date. Search for results where this parameter value is greater than the specified value.
schema:
type: string
format: date
- in: query
name: due:gte
description: Task due date. Search for results where this parameter value is greater than or equal to the specified value.
schema:
type: string
format: date
- in: query
name: due:lt
description: Task due date. Search for results where this parameter value is less than the specified value.
schema:
type: string
format: date
- in: query
name: due:lte
description: Task due date. Search for results where this parameter value is less than or equal to the specified value.
schema:
type: string
format: date
- in: query
name: parentId
description: Parent Comment identifier
schema:
type: integer
- in: query
name: parentId:in
description: Parent Comment identifier. Search for results that match any of the specified values for this parameter.
schema:
type: integer
- in: query
name: userId
description: Identifier of User who created a Task
schema:
type: string
- in: query
name: userId:in
description: Identifier of User who created a Task. Search for results that match any of the specified values for this parameter.
schema:
type: string
- in: query
name: created
description: Task creation date
schema:
type: string
format: date
- in: query
name: created:gt
description: Task creation date. Search for results where this parameter value is greater than the specified value.
schema:
type: string
format: date
- in: query
name: created:gte
description: Task creation date. Search for results where this parameter value is greater than or equal to the specified value.
schema:
type: string
format: date
- in: query
name: created:lt
description: Task creation date. Search for results where this parameter value is less than the specified value.
schema:
type: string
format: date
- in: query
name: created:lte
description: Task creation date. Search for results where this parameter value is less than or equal to the specified value.
schema:
type: string
format: date
- in: query
name: modified
description: Task modification date
schema:
type: string
format: date
- in: query
name: modified:gt
description: Task modification date. Search for results where this parameter value is greater than the specified value.
schema:
type: string
format: date
- in: query
name: modified:gte
description: Task modification date. Search for results where this parameter value is greater than or equal to the specified value.
schema:
type: string
format: date
- in: query
name: modified:lt
description: Task modification date. Search for results where this parameter value is less than the specified value.
schema:
type: string
format: date
- in: query
name: modified:lte
description: Task modification date. Search for results where this parameter value is less than or equal to the specified value.
schema:
type: string
format: date
- in: query
name: contents:contains
description: Task content. Search for results that contain the specified characters in this parameter.
schema:
type: string
- in: query
name: status
description: 'Filter tasks by status. Accepted values: `D`, `P`, `C`.'
schema:
type: array
items:
type: string
enum:
- D
- P
- C
- in: query
name: deleted
description: Whether the task has been deleted
schema:
type: boolean
- in: query
name: orderBy
description: Sorting options
schema:
type: array
items:
type: string
enum:
- id:asc
- id:desc
- due:asc
- due:desc
- created:asc
- created:desc
- modified:asc
- modified:desc
- in: query
name: offset
description: Offset
schema:
type: integer
- in: query
name: limit
description: Limit
schema:
type: integer
- in: query
name: with
description: With parameters
schema:
type: string
- in: query
name: mode
description: Determines the detail level of the response body.
schema:
type: string
enum:
- full_with_links
- full
- compact
/rest/permissions/task/{task_id}:
get:
tags:
- tasks
summary: Return the list of permissions available on a task
description: Returns the list of actions the current user is allowed to perform on the specified task, such as completing or deleting it.
responses:
'200':
description: Task permissions retrieved successfully.
content:
application/json:
schema:
type: object
properties:
data:
type: array
items:
$ref: '#/components/schemas/Permission'
examples:
TaskPermissions:
summary: Permissions available on a task
value:
data:
- id: TASK_COMPLETE
name: Complete Task
allowed: true
'490':
description: Request blocked by WAF
deprecated: false
parameters:
- in: path
name: task_id
description: ID of the task
required: true
schema:
type: integer
- in: query
name: id
description: Unique action identifier
schema:
type: integer
- in: query
name: id:in
description: Unique action identifier. Search for results that match any of the specified values for this parameter.
schema:
type: integer
- in: query
name: name
description: Action name
schema:
type: string
- in: query
name: name:contains
description: Action name. Search for results that contain the specified characters in this parameter.
schema:
type: string
- in: query
name: allowed
description: Determines if one has permissions to perform action
schema:
type: boolean
- in: query
name: enabled
description: Determines if the given action is available considering the current object state (locked, deleted, etc.).
schema:
type: boolean
- in: query
name: with
description: With parameters
schema:
type: string
- in: query
name: mode
description: Determines the detail level of the response body.
schema:
type: string
enum:
- full_with_links
- full
- compact
components:
schemas:
Errors:
type: object
properties:
error:
type: array
items:
$ref: '#/components/schemas/Error'
PushedObject:
type: object
properties:
objectId:
type: string
description: Unique identifier (UUID) for the pushed object.
userId:
type: string
description: Unique identifier (UUID) for the user who pushed the object.
created:
type: string
format: date
description: The date and time when the object was pushed.
user:
description: Details of the user who pushed the object.
allOf:
- $ref: '#/components/schemas/UserBasic'
Tag:
type: object
properties:
guid:
type: string
format: uuid
description: Unique identifier (UUID) for the tag.
name:
type: string
description: Display name of the tag.
type:
type: string
description: Type category of the tag.
MetaData:
type: object
properties:
total:
type: integer
description: Total number of items available.
limit:
type: integer
description: Maximum number of items returned per page.
offset:
type: integer
description: Number of items skipped before the current page.
UserBasic:
type: object
properties:
id:
type: string
description: Unique identifier (UUID) for the user.
email:
type: string
description: Email address associated with the user.
name:
type: string
description: Full name of the user.
profileIcon:
type: string
description: URL or identifier for the user's profile icon.
UserMetadata:
description: Class UserMetadata
properties:
name:
description: Key name of the custom metadata attribute associated with the user
type: string
value:
description: Value assigned to the custom metadata attribute for the user
type: string
Task:
description: Class Task
required:
- assigneeId
- created
- due
- id
- status
- userId
properties:
id:
description: Task unique identifier
type: integer
assigneeId:
description: Assigned User unique identifier
type: string
assignee:
description: User assigned to complete the task (Explicit field. May be retrieved only if mentioned in "with" parameter)
$ref: '#/components/schemas/User'
due:
description: Date and time by which the task must be completed
type: string
format: date
parentId:
description: Parent Comment identifier
type: integer
objectId:
description: Object identifier Task belongs to
type: string
userId:
description: Identifier of User who created a Task
type: string
user:
description: User who created the task (Explicit field. May be retrieved only if mentioned in "with" parameter)
$ref: '#/components/schemas/User'
created:
description: Date and time the task was created
type: string
format: date
modified:
description: Date and time the task was last modified
type: string
format: date
contents:
description: Body text of the task
type: string
deleted:
description: Indicates whether the task is deleted
type: boolean
folderId:
description: Identifier of Object's parent Folder
type: string
status:
description: 'Task status. Accepted values: `D` (Defined), `P` (In Progress), `C` (Completed)'
type: string
file:
description: File the task is tied to (Explicit field. May be retrieved only if mentioned in "with" parameter)
$ref: '#/components/schemas/File'
permissions:
description: Current user's permissions (Explicit field. May be retrieved only if mentioned in "with" parameter)
type: array
items:
$ref: '#/components/schemas/Permission'
links:
description: HATEOAS links associated with the entity
type: array
items:
type: string
Permission:
type: object
properties:
id:
type: integer
description: Unique identifier for the permission.
name:
type: string
description: Name of the permission.
allowed:
type: boolean
description: Indicates whether the permission is granted (True) or denied (False).
Folder:
type: object
properties:
id:
type: string
format: uuid
description: Unique identifier (UUID) of the folder.
parentId:
type: string
format: uuid
description: Unique identifier (UUID) of the parent object.
name:
type: string
description: Name of the object.
type:
type: string
description: Type of the object.<br>`f` – File.<br>`d` – Folder.
userId:
type: string
format: uuid
description: Unique identifier (UUID) who created the folder.
creator:
description: Details of the user who created the object.
allOf:
- $ref: '#/components/schemas/UserBasic'
created:
type: string
format: date
description: The date and time when the object was created.
modified:
type: string
format: date
description: The date and time when the object was last modified.
expire:
type: string
format: date
description: Expiration timestamp of the object, if applicable.
permissions:
description: List of permissions associated with the object.
type: array
items:
$ref: '#/components/schemas/Permission'
deleted:
type: boolean
description: Indicates whether the object has been deleted.
permDeleted:
type: boolean
description: Indicates whether the object has been permanently deleted.
permalink:
type: string
description: Permanent URL link to access the object.
path:
type: string
description: Path to the folder in the hierarchy.
members:
description: List of members who have access to the object.
type: array
items:
$ref: '#/components/schemas/Member'
vendorDocId:
type: string
description: Vendor document ID associated with the object.
vendorDocName:
type: string
description: Name of the vendor document associated with the object.
secure:
type: boolean
description: Indicates whether the folder or the parent folder containing the file is marked as secure.
source:
type: integer
description: ID representing the source of the object (1 - Salesforce, 2 - Teams).
isShared:
type: boolean
description: Indicates if the folder is shared with other users.
syncable:
type: boolean
description: Indicates if the folder can be synced by Desktop Sync Client.
fileLifetime:
type: integer
description: Time duration (in days) for which the files in this folder are kept after being added to the folder.
description:
type: string
description: The description of the folder.
isFavorite:
type: boolean
description: Indicates if the folder is marked as a favorite by the user.
pushedFilesCount:
type: integer
description: The number of files that have been pushed to mobile apps in this folder.
currentUserRole:
description: The role of the current user in this folder.
allOf:
- $ref: '#/components/schemas/Role'
avStatus:
type: string
description: The Antivirus (AV) status of the folder.
dlpStatus:
type: string
description: The Data Loss Prevention (DLP) status of the folder.
totalMembersCount:
type: integer
description: Total number of members who have access to this folder.
totalFoldersCount:
type: integer
description: Total number of subfolders within this folder.
totalFilesCount:
type: integer
description: Total number of files within this folder.
maxFolderExpiration:
type: string
format: date
description: The maximum expiration date allowed for files in this folder.
maxFileLifetime:
type: integer
description: The maximum duration (in days) that files in this folder can be kept after being added to the folder.
isLdapGroupMember:
type: boolean
description: Indicates if the folder is part of an LDAP group.
isUnderMyFolder:
type: boolean
description: Indicates if this folder is a subfolder of the user's "My Folder".
pathIds:
type: string
description: A list of IDs representing the path of the folder within the folder hierarchy.
isRoot:
type: boolean
description: Indicates if this folder is a root folder.
rootId:
type: string
format: uuid
description: The ID of the root folder if this is a subfolder.
useFolderQuota:
type: boolean
description: Indicates if a folder quota is applied to this folder.
quota:
type: integer
description: The storage quota for the folder (in bytes).
size:
type: integer
description: The total storage size used by the folder (in bytes).
freeSpace:
type: integer
description: The amount of free space available in the folder (in bytes).
inheritanceEnabled:
type: boolean
description: Indicates if a folder inherits permissions from the parent folder
Task.Post:
description: Class Task
required:
- assigneeId
- due
- contents
properties:
assigneeId:
description: Assignee user unique identifier
type: integer
due:
description: Date and time by which the task must be completed
type: string
format: date
parentId:
description: Parent Comment identifier
type: integer
con
# --- truncated at 32 KB (45 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/kiteworks/refs/heads/main/openapi/kiteworks-tasks-api-openapi.yml