Kiteworks files API
The files API from Kiteworks — 61 operation(s) for files.
The files API from Kiteworks — 61 operation(s) for files.
openapi: 3.0.2
info:
version: '28'
title: Kiteworks API Documentation activities files API
tags:
- name: files
paths:
/rest/files:
delete:
tags:
- files
summary: Delete files
description: "Deletes the specified files. Depending on the system retention policy, the files may be\n recoverable until permanently deleted by the system.\\n\\n**Requires `file_delete` permission\n on the parent folder for each file.**"
responses:
'204':
description: Files successfully deleted.
'403':
description: 'Forbidden<br /><br /><i>Possible error codes: </i>ERR_ENTITY_LOCKED'
content:
application/json:
schema:
$ref: '#/components/schemas/Errors'
examples:
ERR_ENTITY_LOCKED:
summary: File is locked
description: File is locked
value:
errors:
code: ERR_ENTITY_LOCKED
message: File is locked
'490':
description: Request blocked by WAF
deprecated: false
parameters:
- in: query
name: id:in
description: A comma-separated list of unique identifiers for the entities to be processed.. A comma-separated list of unique identifiers for the entities to be processed.
required: true
schema:
type: string
- in: query
name: partialSuccess
description: If set to `true`, the operation will continue for the valid items even if some items result in failure.
schema:
type: boolean
- in: query
name: mode
description: Determines the detail level of the response body.
schema:
type: string
enum:
- full_with_links
- full
/rest/files/actions/copy:
post:
summary: Copy files
description: "### Description:\n Copies the specified files to a folder.\n### Precondition:\n Must be assigned the `file_copy` permission for the files being copied and `file_add` permission for the destination folder.\n### Response:\n Copies the files to the folder. If duplicate files exist, appends a number to copied file names.\n"
tags:
- files
parameters:
- in: query
name: returnEntity
required: false
description: If true, includes the entity in the response body.
schema:
type: boolean
- in: query
name: with
required: false
description: Specifies additional fields to include in the response.
schema:
type: string
- in: query
name: mode
required: false
description: Determines the detail level of the response body.
schema:
type: string
enum:
- compact
- full_no_links
- full_with_links
- full
- in: query
name: id:in
required: false
explode: true
style: form
description: Comma-separated list of file UUIDs to copy. Cannot be used together with `ids` in the request body.
schema:
type: array
items:
type: string
- in: query
name: partialSuccess
required: false
description: If true, successfully copied files are committed even if some files fail to copy.
schema:
type: boolean
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/FileCopyPostBodyRequest'
responses:
'201':
description: Files have been copied successfully.
content:
application/json:
schema:
$ref: '#/components/schemas/File'
'400':
description: 'Bad Request<br /><br /><i>Possible error codes: </i>ERR_REQUEST_INVALID_FILTER'
content:
application/json:
schema:
$ref: '#/components/schemas/Errors'
examples:
ERR_REQUEST_INVALID_FILTER:
summary: Filter validation failed
description: Filter validation failed
value:
errors:
- code: ERR_REQUEST_INVALID_FILTER
message: Filter validation failed
'401':
description: 'Unauthorized<br /><br /><i>Possible error codes: </i>ERR_AUTH_INVALID_CSRF, ERR_AUTH_UNAUTHORIZED'
content:
application/json:
schema:
$ref: '#/components/schemas/Errors'
examples:
ERR_AUTH_INVALID_CSRF:
summary: Invalid CSRF Authentication
description: Invalid CSRF Authentication
value:
errors:
- code: ERR_AUTH_INVALID_CSRF
message: Invalid CSRF Authentication
ERR_AUTH_UNAUTHORIZED:
summary: Unauthorized
description: Unauthorized
value:
errors:
- code: ERR_AUTH_UNAUTHORIZED
message: Unauthorized
'403':
description: 'Forbidden<br /><br /><i>Possible error codes: </i>ERR_ACCESS_USER, ERR_ACCESS_DENIED, ERR_ENTITY_DELETED, ERR_ENTITY_COPIED_FROM_EC, ERR_ENTITY_EC_TO_EC, ERR_ENTITY_NOT_SCANNED, ERR_ENTITY_VIRUS_FOUND, ERR_ENTITY_RESTRICTED_EXTENSION, ERR_ENTITY_RESTRICTED_TYPE, ERR_ENTITY_IS_BASE_DIR, ERR_ENTITY_IS_MY_DIR'
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
ERR_ACCESS_DENIED:
summary: Your access is denied.
description: Your access is denied.
value:
errors:
- code: ERR_ACCESS_DENIED
message: Your access is denied.
redirectUrl: /login?code=3317
ERR_ENTITY_DELETED:
summary: Entity is deleted
description: Entity is deleted
value:
errors:
- code: ERR_ENTITY_DELETED
message: Entity is deleted
ERR_ENTITY_COPIED_FROM_EC:
summary: Can not perform action on file copied from Repositories Gateway source
description: Can not perform action on file copied from Repositories Gateway source
value:
errors:
- code: ERR_ENTITY_COPIED_FROM_EC
message: Can not perform action on file copied from Repositories Gateway source
ERR_ENTITY_EC_TO_EC:
summary: Unable to copy/move Repositories Gateway file to Repositories Gateway
description: Unable to copy/move Repositories Gateway file to Repositories Gateway
value:
errors:
- code: ERR_ENTITY_EC_TO_EC
message: Unable to copy/move Repositories Gateway file to Repositories Gateway
ERR_ENTITY_NOT_SCANNED:
summary: One or more files are undergoing security and privacy scans. Please try again later.
description: One or more files are undergoing security and privacy scans. Please try again later.
value:
errors:
- code: ERR_ENTITY_NOT_SCANNED
message: One or more files are undergoing security and privacy scans. Please try again later.
ERR_ENTITY_VIRUS_FOUND:
summary: File is infected
description: File is infected
value:
errors:
- code: ERR_ENTITY_VIRUS_FOUND
message: File is infected
ERR_ENTITY_RESTRICTED_EXTENSION:
summary: File extension is in exclusion extensions list
description: File extension is in exclusion extensions list
value:
errors:
- code: ERR_ENTITY_RESTRICTED_EXTENSION
message: File extension is in exclusion extensions list
ERR_ENTITY_RESTRICTED_TYPE:
summary: The specified entity mime type is not allowed.
description: The specified entity mime type is not allowed.
value:
errors:
- code: ERR_ENTITY_RESTRICTED_TYPE
message: The specified entity mime type is not allowed.
ERR_ENTITY_IS_BASE_DIR:
summary: Operation not permitted on Base Folder
description: Operation not permitted on Base Folder
value:
errors:
- code: ERR_ENTITY_IS_BASE_DIR
message: Operation not permitted on Base Folder
ERR_ENTITY_IS_MY_DIR:
summary: Operation not permitted on Tray Folder
description: Operation not permitted on Tray Folder
value:
errors:
- code: ERR_ENTITY_IS_MY_DIR
message: Operation not permitted on Tray Folder
'413':
description: 'Content Too Large<br /><br /><i>Possible error codes: </i>ERR_SYSTEM_NO_STORAGE_AVAILABLE'
content:
application/json:
schema:
$ref: '#/components/schemas/Errors'
examples:
ERR_SYSTEM_NO_STORAGE_AVAILABLE:
summary: Folder owner's remaining storage quota does not permit for a file upload of this size.
description: Folder owner's remaining storage quota does not permit for a file upload of this size.
value:
errors:
- code: ERR_SYSTEM_NO_STORAGE_AVAILABLE
message: Folder owner's remaining storage quota does not permit for a file upload of this size.
'490':
description: Request blocked by WAF
/rest/files/actions/lock:
patch:
summary: Lock files
description: "### Description:\n Locks the specified files, preventing others from performing actions such as editing, moving, and deleting the files.\n### Precondition:\n Must be assigned the `lock` permission for the files.\n### Response:\n Locks the files.\n"
tags:
- files
parameters:
- in: query
name: id:in
required: false
explode: true
style: form
description: A comma-separated list of unique identifier (UUID) of the objects to be processed.
schema:
type: array
items:
type: string
- in: query
name: returnEntity
required: false
description: If true, includes the entity in the response body.
schema:
type: boolean
- in: query
name: with
required: false
description: Specifies additional fields to include in the response.
schema:
type: string
- in: query
name: mode
required: false
description: Determines the detail level of the response body.
schema:
type: string
enum:
- compact
- full_no_links
- full_with_links
- full
- in: query
name: partialSuccess
required: false
description: If set to `true`, the operation will continue for the valid items even if some items result in failure.
schema:
type: boolean
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/FileLockPostRequest'
responses:
'200':
description: The files have been successfully locked.
content:
application/json:
schema:
$ref: '#/components/schemas/BulkOperationLockFile'
'401':
description: 'Unauthorized<br /><br /><i>Possible error codes: </i>ERR_AUTH_INVALID_CSRF, ERR_AUTH_UNAUTHORIZED'
content:
application/json:
schema:
$ref: '#/components/schemas/Errors'
examples:
ERR_AUTH_INVALID_CSRF:
summary: Invalid CSRF Authentication
description: Invalid CSRF Authentication
value:
errors:
- code: ERR_AUTH_INVALID_CSRF
message: Invalid CSRF Authentication
ERR_AUTH_UNAUTHORIZED:
summary: Unauthorized
description: Unauthorized
value:
errors:
- code: ERR_AUTH_UNAUTHORIZED
message: Unauthorized
'403':
description: 'Forbidden<br /><br /><i>Possible error codes: </i>ERR_ACCESS_USER, ERR_ENTITY_DELETED, ERR_ENTITY_DLP_LOCKED, ERR_ENTITY_IS_ATTACHMENT, ERR_ENTITY_NOT_SCANNED, ERR_ENTITY_VIRUS_FOUND'
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
ERR_ENTITY_DELETED:
summary: Entity is deleted
description: Entity is deleted
value:
errors:
- code: ERR_ENTITY_DELETED
message: Entity is deleted
ERR_ENTITY_DLP_LOCKED:
summary: One or more files have been quarantined and are not available to download. Please contact your administrator for assistance.
description: One or more files have been quarantined and are not available to download. Please contact your administrator for assistance.
value:
errors:
- code: ERR_ENTITY_DLP_LOCKED
message: One or more files have been quarantined and are not available to download. Please contact your administrator for assistance.
ERR_ENTITY_IS_ATTACHMENT:
summary: Operation not permitted on attachment
description: Operation not permitted on attachment
value:
errors:
- code: ERR_ENTITY_IS_ATTACHMENT
message: Operation not permitted on attachment
ERR_ENTITY_NOT_SCANNED:
summary: One or more files are undergoing security and privacy scans. Please try again later.
description: One or more files are undergoing security and privacy scans. Please try again later.
value:
errors:
- code: ERR_ENTITY_NOT_SCANNED
message: One or more files are undergoing security and privacy scans. Please try again later.
ERR_ENTITY_VIRUS_FOUND:
summary: File is infected
description: File is infected
value:
errors:
- code: ERR_ENTITY_VIRUS_FOUND
message: File is infected
'422':
description: 'Unprocessable Content<br /><br /><i>Possible error codes: </i>ERR_INVALID_PARAMETER'
content:
application/json:
schema:
$ref: '#/components/schemas/Errors'
examples:
ERR_INVALID_PARAMETER:
summary: Invalid Parameter Exception
description: Invalid Parameter Exception
value:
errors:
- code: ERR_INVALID_PARAMETER
message: Invalid Parameter Exception
'490':
description: Request blocked by WAF
/rest/files/actions/mobileSyncItems:
post:
tags:
- files
summary: Add multiple files to mobile sync list
description: "Adds multiple files to the current user's mobile sync list in a single request. Supports partial success, meaning valid items are processed even if some fail. This operation will not return location headers for each entity created, if the inserted records are\n required, returnEntity should be set to true."
responses:
'200':
description: Mobile sync items created successfully.
content:
application/json:
schema:
type: object
properties:
data:
type: array
items:
$ref: '#/components/schemas/MobileSync'
metadata:
$ref: '#/components/schemas/MetaData'
examples:
BulkMobileSyncCreated:
summary: Newly created mobile sync items
value:
data:
- id: 10
fileId: a1b2c3d4-e5f6-7890-abcd-ef1234567890
userId: u1a2b3c4-d5e6-7890-abcd-ef1234567890
created: '2024-04-01T09:00:00Z'
- id: 11
fileId: b2c3d4e5-f6a7-8901-bcde-f12345678901
userId: u1a2b3c4-d5e6-7890-abcd-ef1234567890
created: '2024-04-01T09:00:00Z'
metadata:
total: 2
limit: 50
offset: 0
'409':
description: 'Conflict<br /><br /><i>Possible error codes: </i>ERR_ENTITY_EXISTS'
content:
application/json:
schema:
$ref: '#/components/schemas/Errors'
examples:
ERR_ENTITY_EXISTS:
summary: Entity exists
description: Entity exists
value:
errors:
code: ERR_ENTITY_EXISTS
message: Entity exists
'490':
description: Request blocked by WAF
deprecated: false
parameters:
- in: query
name: id:in
description: A comma-separated list of unique identifiers for the entities to be processed.. A comma-separated list of unique identifiers for the entities to be processed.
required: true
schema:
type: string
- in: query
name: partialSuccess
description: If set to `true`, the operation will continue for the valid items even if some items result in failure.
schema:
type: boolean
- 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
delete:
tags:
- files
summary: Delete multiple files from user mobile sync list
description: Removes multiple files from the current user's mobile sync list in a single request. Supports partial success, meaning valid items are processed even if some fail.
responses:
'204':
description: Mobile sync items removed successfully.
'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
'490':
description: Request blocked by WAF
deprecated: false
parameters:
- in: query
name: id:in
description: A comma-separated list of unique identifiers for the entities to be processed.. A comma-separated list of unique identifiers for the entities to be processed.
required: true
schema:
type: string
- in: query
name: partialSuccess
description: If set to `true`, the operation will continue for the valid items even if some items result in failure.
schema:
type: boolean
- in: query
name: mode
description: Determines the detail level of the response body.
schema:
type: string
enum:
- full_with_links
- full
/rest/files/actions/move:
post:
summary: Move files
description: "### Description:\n Moves the specified files to a folder.\n### Precondition:\n Must be assigned the `file_move` permission for the files being moved and the `file_add` permission for the destination folder.\n### Response:\n Moves the files to the folder.\n"
tags:
- files
parameters:
- in: query
name: returnEntity
required: false
description: If true, includes the entity in the response body.
schema:
type: boolean
- in: query
name: with
required: false
description: Specifies additional fields to include in the response.
schema:
type: string
- in: query
name: mode
required: false
description: Determines the detail level of the response body.
schema:
type: string
enum:
- compact
- full_no_links
- full_with_links
- full
- in: query
name: id:in
required: false
explode: true
style: form
description: Comma-separated list of file UUIDs to move. Cannot be used together with `ids` in the request body.
schema:
type: array
items:
type: string
- in: query
name: partialSuccess
required: false
description: If true, successfully moved files are committed even if some files fail to move.
schema:
type: boolean
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/FileMovePostBodyRequest'
responses:
'201':
description: Files have been moved successfully.
content:
application/json:
schema:
$ref: '#/components/schemas/File'
'400':
description: 'Bad Request<br /><br /><i>Possible error codes: </i>ERR_REQUEST_INVALID_FILTER'
content:
application/json:
schema:
$ref: '#/components/schemas/Errors'
examples:
ERR_REQUEST_INVALID_FILTER:
summary: Filter validation failed
description: Filter validation failed
value:
errors:
- code: ERR_REQUEST_INVALID_FILTER
message: Filter validation failed
'401':
description: 'Unauthorized<br /><br /><i>Possible error codes: </i>ERR_AUTH_INVALID_CSRF, ERR_AUTH_UNAUTHORIZED'
content:
application/json:
schema:
$ref: '#/components/schemas/Errors'
examples:
ERR_AUTH_INVALID_CSRF:
summary: Invalid CSRF Authentication
description: Invalid CSRF Authentication
value:
errors:
- code: ERR_AUTH_INVALID_CSRF
message: Invalid CSRF Authentication
ERR_AUTH_UNAUTHORIZED:
summary: Unauthorized
description: Unauthorized
value:
errors:
- code: ERR_AUTH_UNAUTHORIZED
message: Unauthorized
'403':
description: 'Forbidden<br /><br /><i>Possible error codes: </i>ERR_ACCESS_USER, ERR_ACCESS_DENIED, ERR_ENTITY_DELETED, ERR_ENTITY_COPIED_FROM_EC, ERR_ENTITY_EC_TO_EC, ERR_ENTITY_NOT_SCANNED, ERR_ENTITY_VIRUS_FOUND, ERR_ENTITY_RESTRICTED_EXTENSION, ERR_ENTITY_RESTRICTED_TYPE, ERR_ENTITY_IS_BASE_DIR, ERR_ENTITY_IS_MY_DIR'
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
ERR_ACCESS_DENIED:
summary: Your access is denied.
description: Your access is denied.
value:
errors:
- code: ERR_ACCESS_DENIED
message: Your access is denied.
redirectUrl: /login?code=3317
ERR_ENTITY_DELETED:
summary: Entity is deleted
description: Entity is deleted
value:
errors:
- code: ERR_ENTITY_DELETED
message: Entity is deleted
ERR_ENTITY_COPIED_FROM_EC:
summary: Can not perform action on file copied from Repositories Gateway source
description: Can not perform action on file copied from Repositories Gateway source
value:
errors:
- code: ERR_ENTITY_COPIED_FROM_EC
message: Can not perform action on file copied from Repositories Gateway source
ERR_ENTITY_EC_TO_EC:
summary: Unable to copy/move Repositories Gateway file to Repositories Gateway
description: Unable to copy/move Repositories Gateway file to Repositories Gateway
value:
errors:
- code: ERR_ENTITY_EC_TO_EC
message: Unable to copy/move Repositories Gateway file to Repositories Gateway
ERR_ENTITY_NOT_SCANNED:
summary: One or more files are undergoing security and privacy scans. Please try again later.
description: One or more files are undergoing security and privacy scans. Please try again later.
value:
errors:
- code: ERR_ENTITY_NOT_SCANNED
message: One or more files are undergoing security and privacy scans. Please try again later.
ERR_ENTITY_VIRUS_FOUND:
summary: File is infected
description: File is infected
value:
errors:
- code: ERR_ENTITY_VIRUS_FOUND
message: File is infected
ERR_ENTITY_RESTRICTED_EXTENSION:
summary: File extension is in exclusion extensions list
description: File extension is in exclusion extensions list
value:
errors:
- code: ERR_ENTITY_RESTRICTED_EXTENSION
message: File extension is in exclusion extensions list
ERR_ENTITY_RESTRICTED_TYPE:
summary: The specified entity mime type is not allowed.
description: The specified entity mime type is not allowed.
value:
errors:
- code: ERR_ENTITY_RESTRICTED_TYPE
message: The specified entity mime type is not allowed.
ERR_ENTITY_IS_BASE_DIR:
summary: Operation not permitted on Base Folder
description: Operation not permitted on Base Folder
value:
errors:
- code: ERR_ENTITY_IS_BASE_DIR
message: Operation not permitted on Base Folder
ERR_ENTITY_IS_MY_DIR:
summary: Operation not permitted on Tray Folder
description: Operation not permitted on Tray Folder
value:
errors:
- code: ERR_ENTITY_IS_MY_DIR
message: Operation not permitted on Tray Folder
'413':
description: 'Content Too Large<br /><br /><i>Possible error codes: </i>ERR_SYSTEM_NO_STORAGE_AVAILABLE'
content:
application/json:
schema:
$ref: '#/components/schemas/Errors'
examples:
ERR_SYSTEM_NO_STORAGE_AVAILABLE:
summary: Folder owner's remaining storage quota does not permit for a file upload of this size.
description: Folder owner's remaining storage quota does not permit for a file upload of this size.
value:
errors:
- code: ERR_SYSTEM_NO_STORAGE_AVAILABLE
message: Folder owner's remaining storage quota does not permit for a file upload of this size.
'490':
description: Request blocked by WAF
/rest/files/actions/permanent:
delete:
tags:
- files
summary: Delete files permanently
description: "Permanently deletes the specified files. Files cannot be recovered after this operation.\\n\\n\n **Requires `permanent delete` permission on the parent folder for each file.** Each file must\n already be in the deleted state and must not be locked."
responses:
'204':
description: All specified files permanently deleted.
'403':
description: 'Forbidden<br /><br /><i>Possible error codes: </i>ERR_ENTITY_LOCKED'
content:
application/json:
schema:
$ref: '#/components/schemas/Errors'
examples:
ERR_ENTITY_LOCKED:
summary: File is locked
description: File is locked
value:
errors:
code: ERR_ENTITY_LOCKED
message: File is locked
'490':
description: Request blocked by WAF
deprecated: false
parameters:
- in: query
name: id:in
description: A comma-separated list of unique identifiers for the entities to be processed.. A comma-separated list of unique identifiers for the entities to be processed.
required: true
schema:
type: string
- in: query
name: partialSuccess
description: If set to `true`, the operation will continue for the valid items even if some items result in failure.
schema:
type: boolean
- in: query
name: mode
description: Determines the detail level of the response body.
schema:
type: string
enum:
- full_with_links
- full
/rest/files/actions/push:
post:
tags:
- files
summary: Push files list to mobile sync list
description: "Adds multiple files to the mobile sync list for all members of the files' parent folder. Requires mobile sync to be enabled. Supports partial success, meaning valid items are processed even if some fail. This operation will not return location
# --- truncated at 32 KB (331 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/kiteworks/refs/heads/main/openapi/kiteworks-files-api-openapi.yml