Kiteworks files API

The files API from Kiteworks — 61 operation(s) for files.

Operations 74

DELETE /rest/files Delete files
POST /rest/files/actions/copy Copy files
PATCH /rest/files/actions/lock Lock files
POST /rest/files/actions/mobileSyncItems Add multiple files to mobile sync list
DELETE /rest/files/actions/mobileSyncItems Delete multiple files from user mobile sync list
POST /rest/files/actions/move Move files
DELETE /rest/files/actions/permanent Delete files permanently
POST /rest/files/actions/push Push files list to mobile sync list
DELETE /rest/files/actions/push Un-Push multiple files
PATCH /rest/files/actions/recover Recover deleted files
POST /rest/files/actions/scan Scan files for security
PATCH /rest/files/actions/unlock Unlock files
GET /rest/files/actions/zip Download files and folders in ZIP format
GET /rest/files/actions/zipStatus Get file and folder security status
GET /rest/files/{id} Get file metadata
PUT /rest/files/{id} Update a file
DELETE /rest/files/{id} Delete a file
POST /rest/files/{id} Upload a file version
PATCH /rest/files/{id}/actions/lock Lock a file
DELETE /rest/files/{id}/actions/permanent Permanently delete a file
POST /rest/files/{id}/actions/push Push file to mobile sync list
DELETE /rest/files/{id}/actions/push Un-Push file from mobile sync list
PATCH /rest/files/{id}/actions/recover Recover a file.
PATCH /rest/files/{id}/actions/return Check file into Repositories Gateway source
POST /rest/files/{id}/actions/scan Scan a file for security
PATCH /rest/files/{id}/actions/unlock Unlock a file
GET /rest/files/{id}/comments Get file comments
POST /rest/files/{id}/comments Add file comment
GET /rest/files/{id}/content Download a file
GET /rest/files/{id}/externalEdit Get access token for external file edit.
GET /rest/files/{id}/members Get users with access to a shared file
DELETE /rest/files/{id}/members Remove all access to a shared file
GET /rest/files/{id}/members/ldapGroup List LDAP groups with access to a shared file
GET /rest/files/{id}/members/ldapGroup/{ldap_group_id} Get a specific LDAP group's access to a shared file
GET /rest/files/{id}/members/{member_user_id} Returns the specified user member associated with the file.
PUT /rest/files/{id}/members/{member_user_id} Update file member
DELETE /rest/files/{id}/members/{member_user_id} Remove a user's access to a shared file
GET /rest/files/{id}/path Get file path
GET /rest/files/{id}/preview Get file preview metadata
GET /rest/files/{id}/tasks Get file tasks
POST /rest/files/{id}/tasks Create file task
POST /rest/files/{id}/versions Upload a file version
GET /rest/files/{id}/versions Get file versions
GET /rest/files/{id}/versions/{version_id} Get a file version
DELETE /rest/files/{id}/versions/{version_id} Delete a file version
POST /rest/files/{id}/versions/{version_id}/actions/promote Promote a file version
POST /rest/files/{id}/versions/{version_id}/actions/scan Scan a file version for security
GET /rest/files/{id}/versions/{version_id}/content Download a file version
GET /rest/files/{id}/versions/{version_id}/preview Get file preview metadata for a file version
POST /rest/folders/{id}/actions/file Upload a file using multipart form data
POST /rest/folders/{id}/actions/fileBase64Encoded Upload a base64-encoded file
POST /rest/folders/{parent_id}/actions/fileFromTemplate Create Microsoft Office document from template
POST /rest/folders/{parent}/files Upload a file
GET /rest/permissions/file/{file_id} Get file permissions
GET /rest/permissions/files Get file permissions for a set of files
POST /rest/requestFile/{ref}/actions/file Upload a file requested by user
POST /rest/requestFile/{ref}/comment/{object_id} Add a comment to an uploaded file
GET /rest/requestFile/{ref}/sources/{object_id}/content Download files from folder in request files to folder message
GET /rest/requestFile/{ref}/uploads/{object_id}/content Download files uploaded to request files to folder or inbox message
GET /rest/sources/actions/downloadByTransaction Download a file from Repositories Gateway source by transaction ID
POST /rest/sources/actions/files/{id} Upload a file version to Repositories Gateway source
POST /rest/sources/{id}/actions/file Upload a file to Repositories Gateway source
POST /rest/sources/{id}/actions/initiateDownload Download a file asynchronously from Repositories Gateway source
GET /rest/sources/{id}/content Download a file from repositories gateway source
GET /rest/sources/{id}/preview Get file preview metadata for a file in Repositories Gateway source
GET /rest/files/actions/content/link/{ref} Download a file via a reference link
GET /preview/file/{id} Preview a file
POST /rest/files/members Share files
GET /rest/files/shared Get shared files
DELETE /rest/files/{id}/members/me Remove access to shared file
GET /rest/files/previewSupport Get file preview status
POST /rest/files/actions/downloadLink Get link for downloading files and folders
PUT /rest/admin/files Update files
POST /rest/admin/files/{id}/actions/rescan Scan a file for security

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/kiteworks-files-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

kiteworks-files-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  version: '28'
  title: Kiteworks API Documentation 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 headers fo

# --- 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