Kiteworks favorites API
The favorites API from Kiteworks — 3 operation(s) for favorites.
The favorites API from Kiteworks — 3 operation(s) for favorites.
openapi: 3.0.2
info:
version: '28'
title: Kiteworks API Documentation activities favorites API
tags:
- name: favorites
paths:
/rest/favorites:
post:
tags:
- favorites
summary: Add a favorite
description: Marks the specified folder as a favorite for the current user.
responses:
'200':
description: Favorite created successfully.
content:
application/json:
schema:
$ref: '#/components/schemas/Favorite'
examples:
FavoriteCreated:
summary: A newly created favorite
value:
id: 42
objectId: f0e1d2c3-b4a5-6789-0fed-cba987654321
userId: u1a2b3c4-d5e6-7890-abcd-ef1234567890
'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
'422':
description: 'Unprocessable Content<br /><br /><i>Possible error codes: </i>ERR_INPUT_REQUIRED'
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
'490':
description: Request blocked by WAF
deprecated: false
parameters:
- 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/Favorite.Post'
get:
summary: List favorites
description: "### Description:\n Returns the list of favorites for the current user.\n### Precondition:\n User must be authenticated.\n### Response:\n The list of favorited files and folders is returned.\n"
tags:
- favorites
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: parentId
required: false
description: Filter favorites by parent folder ID.
schema:
type: string
- in: query
name: parentId:in
required: false
explode: true
style: form
description: Filter favorites by parent folder ID. Search for results that contain any of the specified values.
schema:
type: array
items:
type: string
- in: query
name: excludeEc
required: false
description: If set to `true`, excludes Repositories Gateway folders from the results.
schema:
type: boolean
- in: query
name: orderBy
required: false
description: 'Sort order for the results. Default is `objects.created:asc`.<br>Allowed values: `objects.name:asc`, `objects.name:desc`, `objects.created:asc`, `objects.created:desc`, `objects.modified:asc`, `objects.modified:desc`.'
schema:
type: string
enum:
- objects.name:asc
- objects.name:desc
- objects.created:asc
- objects.created:desc
- objects.modified:asc
- objects.modified:desc
- in: query
name: limit
required: false
description: Range limit.
schema:
type: integer
minimum: 1
- in: query
name: offset
required: false
description: Range offset.
schema:
type: integer
minimum: 0
responses:
'200':
description: The list of favorites has been successfully returned.
content:
application/json:
schema:
$ref: '#/components/schemas/FavoriteListOpenAPI2'
'401':
description: 'Unauthorized<br /><br /><i>Possible error codes: </i>ERR_ACCESS_USER, ERR_AUTH_INVALID_CSRF, ERR_AUTH_UNAUTHORIZED'
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_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_DENIED'
content:
application/json:
schema:
$ref: '#/components/schemas/Errors'
examples:
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
'490':
description: Request blocked by WAF
/rest/favorites/{id}:
delete:
tags:
- favorites
summary: Remove a favorite
description: Removes the specified favorite from the current user's favorites list.
responses:
'204':
description: Favorite 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: path
name: id
description: ID of the favorite to be removed
required: true
schema:
type: integer
/rest/folders/actions/favorite:
post:
tags:
- favorites
summary: Set multiple folders as favorite
description: Marks multiple folders as favorites for the current user in a single request. Supports partial success, meaning valid items are processed even if some fail.
responses:
'200':
description: Favorites created successfully.
content:
application/json:
schema:
type: object
properties:
data:
type: array
items:
$ref: '#/components/schemas/Favorite'
metadata:
$ref: '#/components/schemas/MetaData'
examples:
BulkFavoriteCreated:
summary: Newly created favorites for multiple folders
value:
data:
- id: 42
objectId: f0e1d2c3-b4a5-6789-0fed-cba987654321
userId: u1a2b3c4-d5e6-7890-abcd-ef1234567890
- id: 43
objectId: a1b2c3d4-e5f6-7890-abcd-ef1234567890
userId: u1a2b3c4-d5e6-7890-abcd-ef1234567890
'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:
- favorites
summary: Removes specified folders from favorites
description: Removes multiple folders from the current user's favorites list in a single request. Supports partial success, meaning valid items are processed even if some fail.
responses:
'204':
description: Favorites 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
components:
schemas:
UserBasicInfo:
required:
- email
- id
- name
properties:
id:
description: The unique identifier of the user
type: string
name:
description: The name of the user
type: string
email:
description: The user's email
type: string
profileIcon:
description: URL to the user's profile icon image
type: string
Errors:
type: object
properties:
error:
type: array
items:
$ref: '#/components/schemas/Error'
Member:
type: object
properties:
objectId:
type: string
description: Unique identifier (UUID) of the associated object (file or folder).
roleId:
type: integer
description: Role assigned to the member.
userId:
type: string
description: Unique identifier (UUID) of the user.
groupId:
type: integer
description: Unique identifier of the LDAP group.
user:
description: User details of the member.
allOf:
- $ref: '#/components/schemas/UserBasic'
role:
description: Role details assigned to the member.
allOf:
- $ref: '#/components/schemas/Role'
group:
description: Group details if the member belongs to a group.
allOf:
- $ref: '#/components/schemas/Group'
sharedBy:
description: Details of the user who shared the file or folder.
allOf:
- $ref: '#/components/schemas/UserBasic'
created:
type: string
format: date
description: Date when the file or folder was shared.
inheritRoleId:
type: integer
description: Inherited role ID from the parent folder, if applicable.
allowedFolderRoleId:
type: array
description: List of allowed folder role IDs.
items:
type: integer
email:
type: string
description: Email associated with the member.
rank:
type: integer
description: Rank of the member role.
originFolder:
readOnly: true
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.
FavoriteListOpenAPI2:
type: object
properties:
data:
description: List of favorite entries.
type: array
items:
$ref: '#/components/schemas/FavoriteOpenAPI2'
metadata:
description: Pagination metadata for the result set.
allOf:
- $ref: '#/components/schemas/MetaData'
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
Favorite:
description: Class Favorite
required:
- id
- objectId
- userId
properties:
id:
description: Unique identifier of Favorite
type: integer
objectId:
description: Unique identifier of the favorited folder or file
type: string
userId:
description: Unique identifier of the user who created this favorite
type: string
creator:
description: User who created this favorite (Explicit field. May be retrieved only if mentioned in "with" parameter)
$ref: '#/components/schemas/UserBasicInfo'
object:
description: Favorited folder object (Explicit field. May be retrieved only if mentioned in "with" parameter)
$ref: '#/components/schemas/Folder'
links:
description: HATEOAS links associated with the entity
type: array
items:
type: string
Favorite.Post:
description: Class Favorite
required:
- objectId
properties:
objectId:
description: Unique identifier of the favorited folder or file
type: integer
addLinks:
description: Indicates whether HATEOAS links should be included in the response
type: boolean
Error:
type: object
properties:
code:
type: string
description: Error code
message:
type: string
description: Error message
Role:
type: object
properties:
id:
type: integer
description: Role ID
name:
type: string
description: Role name
rank:
type: integer
description: Role rank
type:
type: string
description: Role type
Folder1:
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.
parent:
description: The parent folder of the current folder.
allOf:
- $ref: '#/components/schemas/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
Group:
type: object
properties:
id:
type: integer
description: LDAP Group ID
name:
type: string
description: LDAP Group name
dn:
type: string
description: LDAP Group domain name
email:
type: string
description: LDAP Group email
description:
type: string
description: LDAP Group description
FavoriteOpenAPI2:
type: object
properties:
id:
type: integer
description: Unique identifier of the favorite entry.
userId:
type: string
objectId:
type: string
format: uuid
description: Unique identifier (UUID) of the favorited object.
object:
description: Details of the favorited object (folder or external content folder).
allOf:
- $ref: '#/components/schemas/Folder1'
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).
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.