XSKY fs-folders API
FSFolderController provides API for file storage folder
FSFolderController provides API for file storage folder
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
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.curl "https://apis.io/api/v1/apis/xsky-fs-folders-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
swagger: '2.0'
info:
description: XMS is the controller of distributed storage system
version: SDS_4.2.000.0.200302
title: XMS access-paths fs-folders API
contact: {}
license:
name: Commercial
basePath: /v1
tags:
- name: fs-folders
description: 'FSFolderController provides API for file storage folder
'
paths:
/fs-folders/:
get:
tags:
- fs-folders
description: List file storage folders
operationId: ListFolders
consumes:
- application/json
produces:
- application/json
parameters:
- name: limit
in: query
description: paging param
required: false
type: integer
format: int64
x-exportParamName: Limit
- name: offset
in: query
description: paging param
required: false
type: integer
format: int64
x-exportParamName: Offset
- name: q
in: query
description: query param of search
required: false
type: string
x-exportParamName: Q
- name: sort
in: query
description: sort param of search
required: false
type: string
x-exportParamName: Sort
- name: fs_user_id
in: query
description: file storage user id
required: false
type: integer
format: int64
x-exportParamName: FsUserId
- name: fs_user_group_id
in: query
description: file storage user group id
required: false
type: integer
format: int64
x-exportParamName: FsUserGroupId
- name: fs_gateway_group_id
in: query
description: file storage gateway group id
required: false
type: integer
format: int64
x-exportParamName: FsGatewayGroupId
- name: fs_snapshot_id
in: query
description: file storage snapshot id
required: false
type: integer
format: int64
x-exportParamName: FsSnapshotId
- name: fs_client_id
in: query
description: file storage client id
required: false
type: integer
format: int64
x-exportParamName: FsClientId
- name: fs_client_group_id
in: query
description: file storage client group id
required: false
type: integer
format: int64
x-exportParamName: FsClientGroupId
- name: pool_id
in: query
description: pool id
required: false
type: integer
format: int64
x-exportParamName: PoolId
responses:
200:
description: OK
schema:
$ref: '#/definitions/FSFoldersResp'
500:
description: InternalServerError
security:
- tokenInQuery: []
- tokenInHeader: []
post:
tags:
- fs-folders
description: Create file storage folder
operationId: CreateFolder
consumes:
- application/json
produces:
- application/json
parameters:
- in: body
name: body
description: folder info
required: true
schema:
$ref: '#/definitions/FSFolderCreateReq'
x-exportParamName: Body
responses:
200:
description: OK
schema:
$ref: '#/definitions/FSFolderResp'
202:
description: Accepted
schema:
$ref: '#/definitions/FSFolderResp'
400:
description: BadRequest
409:
description: Conflict
500:
description: InternalServerError
security:
- tokenInQuery: []
- tokenInHeader: []
/fs-folders/{fs_folder_id}:
get:
tags:
- fs-folders
description: Get file storage folder
operationId: GetFolder
consumes:
- application/json
produces:
- application/json
parameters:
- name: fs_folder_id
in: path
description: folder id
required: true
type: integer
format: int64
x-exportParamName: FsFolderId
responses:
200:
description: OK
schema:
$ref: '#/definitions/FSFolderResp'
404:
description: NotFound
500:
description: InternalServerError
security:
- tokenInQuery: []
- tokenInHeader: []
delete:
tags:
- fs-folders
description: delete file storage folder
operationId: DeleteFolder
consumes:
- application/json
produces:
- application/json
parameters:
- name: force
in: query
description: force delete
required: false
type: boolean
x-exportParamName: Force
- name: fs_folder_id
in: path
description: folder id
required: true
type: integer
format: int64
x-exportParamName: FsFolderId
responses:
202:
description: Accepted
schema:
$ref: '#/definitions/FSFolderResp'
404:
description: NotFound
409:
description: Conflict
500:
description: InternalServerError
security:
- tokenInQuery: []
- tokenInHeader: []
patch:
tags:
- fs-folders
description: Update file storage folder
operationId: UpdateFolder
consumes:
- application/json
produces:
- application/json
parameters:
- name: fs_folder_id
in: path
description: folder id
required: true
type: integer
format: int64
x-exportParamName: FsFolderId
- in: body
name: body
description: folder info
required: true
schema:
$ref: '#/definitions/FSFolderUpdateReq'
x-exportParamName: Body
responses:
202:
description: Accepted
schema:
$ref: '#/definitions/FSFolderResp'
400:
description: BadRequest
404:
description: NotFound
409:
description: Conflict
500:
description: InternalServerError
security:
- tokenInQuery: []
- tokenInHeader: []
/fs-folders/{fs_folder_id}/fs-quota-trees:
put:
tags:
- fs-folders
description: add file storage quota trees
operationId: AddFSQuotaTrees
consumes:
- application/json
produces:
- application/json
parameters:
- name: fs_folder_id
in: path
description: fs folder id
required: true
type: integer
format: int64
x-exportParamName: FsFolderId
- in: body
name: body
description: quota trees info
required: true
schema:
$ref: '#/definitions/FSFolderAddQuotaTreesReq'
x-exportParamName: Body
responses:
202:
description: Accepted
schema:
$ref: '#/definitions/FSFolderResp'
400:
description: BadRequest
404:
description: NotFound
409:
description: Conflict
500:
description: InternalServerError
security:
- tokenInQuery: []
- tokenInHeader: []
delete:
tags:
- fs-folders
description: delete fs quota trees from fs folder
operationId: RemoveFSQuotaTrees
consumes:
- application/json
produces:
- application/json
parameters:
- name: fs_folder_id
in: path
description: fs folder id
required: true
type: integer
format: int64
x-exportParamName: FsFolderId
- in: body
name: body
description: quota trees info
required: true
schema:
$ref: '#/definitions/FSFolderRemoveQuotaTreesReq'
x-exportParamName: Body
responses:
202:
description: Accepted
schema:
$ref: '#/definitions/FSFolderResp'
400:
description: BadRequest
404:
description: NotFound
409:
description: Conflict
500:
description: InternalServerError
security:
- tokenInQuery: []
- tokenInHeader: []
/fs-folders/{fs_folder_id}/samples:
get:
tags:
- fs-folders
description: get a file storage folder's samples
operationId: GetFSFolderSamples
consumes:
- application/json
produces:
- application/json
parameters:
- name: fs_folder_id
in: path
description: file storage folder id
required: true
type: integer
format: int64
x-exportParamName: FsFolderId
- name: duration_begin
in: query
description: duration begin timestamp
required: false
type: string
x-exportParamName: DurationBegin
- name: duration_end
in: query
description: duration end timestamp
required: false
type: string
x-exportParamName: DurationEnd
- name: period
in: query
description: samples period
required: false
type: string
x-exportParamName: Period
responses:
200:
description: OK
schema:
$ref: '#/definitions/FSFolderSamplesResp'
400:
description: BadRequest
404:
description: NotFound
500:
description: InternalServerError
security:
- tokenInQuery: []
- tokenInHeader: []
/fs-folders/{fs_folder_id}:roll-back:
post:
tags:
- fs-folders
description: roll back file storage folder
operationId: RollBackFolder
consumes:
- application/json
produces:
- application/json
parameters:
- name: fs_folder_id
in: path
description: folder id
required: true
type: integer
format: int64
x-exportParamName: FsFolderId
- in: body
name: body
description: folder info
required: true
schema:
$ref: '#/definitions/FSFolderRollBackReq'
x-exportParamName: Body
responses:
202:
description: Accepted
schema:
$ref: '#/definitions/FSFolderResp'
404:
description: NotFound
409:
description: Conflict
500:
description: InternalServerError
security:
- tokenInQuery: []
- tokenInHeader: []
/fs-folders/{fs_folder_id}:set-snapshot-protection:
post:
tags:
- fs-folders
description: Set snapshot protection for a fs folder
operationId: SetFSSnapshotProtection
consumes:
- application/json
produces:
- application/json
parameters:
- name: fs_folder_id
in: path
description: fs folder id in db
required: true
type: integer
format: int64
x-exportParamName: FsFolderId
- in: body
name: body
description: request info
required: true
schema:
$ref: '#/definitions/FSFolderSnapshotProtectionReq'
x-exportParamName: Body
responses:
202:
description: Accepted
schema:
$ref: '#/definitions/FSFolderResp'
400:
description: BadRequest
404:
description: NotFound
409:
description: Conflict
500:
description: InternalServerError
security:
- tokenInQuery: []
- tokenInHeader: []
/fs-folders/{fs_folder_id}:unset-snapshot-protection:
post:
tags:
- fs-folders
description: Unset snapshot protection for a fs folder
operationId: UnsetFSSnapshotProtection
consumes:
- application/json
produces:
- application/json
parameters:
- name: fs_folder_id
in: path
description: fs_folder id in db
required: true
type: integer
format: int64
x-exportParamName: FsFolderId
- name: force
in: query
description: force unset or not
required: false
type: boolean
x-exportParamName: Force
responses:
202:
description: Accepted
schema:
$ref: '#/definitions/FSFolderResp'
400:
description: BadRequest
404:
description: NotFound
409:
description: Conflict
500:
description: InternalServerError
security:
- tokenInQuery: []
- tokenInHeader: []
definitions:
FSFolderUpdateReq:
type: object
required:
- fs_folder
properties:
fs_folder:
$ref: '#/definitions/FSFolderUpdateReq_Folder'
title: FSFolderUpdateReq
FSFolderCreateReq:
type: object
required:
- fs_folder
properties:
fs_folder:
$ref: '#/definitions/FSFolderCreateReq_Folder'
title: FSFolderCreateReq
FSFolderAddQuotaTreesReq:
type: object
required:
- fs_folder
properties:
fs_folder:
$ref: '#/definitions/FSFolderAddQuotaTreesReq_Folder'
title: FSFolderAddQuotaTreesReq
FSFolder:
type: object
properties:
access_path:
$ref: '#/definitions/AccessPath_Nestview'
action_status:
type: string
block_volume:
$ref: '#/definitions/Volume_Nestview'
block_volume_status:
type: string
create:
type: string
format: date-time
description:
type: string
dp_fs_snapshot_policy:
$ref: '#/definitions/DpFSSnapshotPolicy_Nestview'
flattened:
type: boolean
formatted:
type: boolean
fs_gateway_group:
$ref: '#/definitions/FSGatewayGroup'
fs_quota_tree_num:
type: integer
format: int64
fs_snapshot:
$ref: '#/definitions/FSSnapshot_Nestview'
fs_snapshot_num:
type: integer
format: int64
id:
type: integer
format: int64
latest_snapshot_time:
type: string
format: date-time
name:
type: string
pool:
$ref: '#/definitions/Pool_Nestview'
progress:
type: number
format: double
qos:
$ref: '#/definitions/VolumeQosSpec'
qos_enabled:
type: boolean
quota_tree_share_types:
type: array
items:
type: string
quota_tree_shared:
type: boolean
share_types:
type: array
items:
type: string
shared:
type: boolean
description: 'before version 3.2.14, these fields was calculated by wizard, but there is quota
trees in new verion, calculations is too complicated, so add the fields to
folder struct'
size:
type: integer
format: int64
status:
type: string
update:
type: string
format: date-time
title: FSFolder
description: FSFolder defines model of file storage folder
FSFolderRollBackReq_Folder:
type: object
properties:
fs_snapshot_id:
type: integer
format: int64
description: file storage snapshot id
title: FSFolderRollBackReq_Folder
FSFolderStat:
type: object
properties:
create:
type: string
format: date-time
read_bandwidth_kbyte:
type: number
format: double
read_iops:
type: number
format: double
read_latency_us:
type: number
format: double
total_bandwidth_kbyte:
type: number
format: double
total_iops:
type: number
format: double
used_kbyte:
type: number
format: double
write_bandwidth_kbyte:
type: number
format: double
write_iops:
type: number
format: double
write_latency_us:
type: number
format: double
title: FSFolderStat
description: FSFolderStat records file storage folder stat info
example:
used_kbyte: 2.3021358869347655
read_bandwidth_kbyte: 0.8008281904610115
write_bandwidth_kbyte: 7.061401241503109
create: '2000-01-23T04:56:07.000+00:00'
total_bandwidth_kbyte: 5.962133916683182
write_iops: 9.301444243932576
write_latency_us: 3.616076749251911
total_iops: 5.637376656633329
read_latency_us: 1.4658129805029452
read_iops: 6.027456183070403
FSFolderAddQuotaTreesReq_Folder_QuotaTrees_Elt:
type: object
required:
- name
properties:
name:
type: string
description: name of quota tree
size:
type: integer
format: int64
description: size of quota tree
soft_quota_size:
type: integer
format: int64
description: soft quota size of quota tree
title: FSFolderAddQuotaTreesReq_Folder_QuotaTrees_Elt
FSFolderUpdateReq_Folder:
type: object
properties:
description:
type: string
description: description of folder
name:
type: string
description: name of folder
qos:
description: qos of volume
$ref: '#/definitions/VolumeQosSpec'
qos_enabled:
type: boolean
description: enable or disable the qos
size:
type: integer
format: int64
description: size of folder
title: FSFolderUpdateReq_Folder
AccessPath_Nestview:
type: object
properties:
id:
type: integer
format: int64
name:
type: string
title: AccessPath_Nestview
example:
name: name
id: 0
FSFolderSamplesResp:
type: object
properties:
fs_folder_samples:
type: array
items:
$ref: '#/definitions/FSFolderStat'
title: FSFolderSamplesResp
example:
fs_folder_samples:
- used_kbyte: 2.3021358869347655
read_bandwidth_kbyte: 0.8008281904610115
write_bandwidth_kbyte: 7.061401241503109
create: '2000-01-23T04:56:07.000+00:00'
total_bandwidth_kbyte: 5.962133916683182
write_iops: 9.301444243932576
write_latency_us: 3.616076749251911
total_iops: 5.637376656633329
read_latency_us: 1.4658129805029452
read_iops: 6.027456183070403
- used_kbyte: 2.3021358869347655
read_bandwidth_kbyte: 0.8008281904610115
write_bandwidth_kbyte: 7.061401241503109
create: '2000-01-23T04:56:07.000+00:00'
total_bandwidth_kbyte: 5.962133916683182
write_iops: 9.301444243932576
write_latency_us: 3.616076749251911
total_iops: 5.637376656633329
read_latency_us: 1.4658129805029452
read_iops: 6.027456183070403
FSFolderRemoveQuotaTreesReq_Folder:
type: object
properties:
fs_quota_tree_ids:
type: array
description: id array of quota trees
items:
type: integer
format: int64
title: FSFolderRemoveQuotaTreesReq_Folder
FSSnapshot_Nestview:
type: object
properties:
id:
type: integer
format: int64
name:
type: string
title: FSSnapshot_Nestview
example:
name: name
id: 1
FSFolderCreateReq_Folder:
type: object
required:
- name
properties:
description:
type: string
description: description of folder
flattened:
type: boolean
description: flatten or not flatten
fs_snapshot_id:
type: integer
format: int64
description: file storage snapshot id
name:
type: string
description: name of folder
pool_id:
type: integer
format: int64
description: id of pool
qos:
description: qos of volume
$ref: '#/definitions/VolumeQosSpec'
qos_enabled:
type: boolean
description: enable or disable the qos
size:
type: integer
format: int64
description: size of folder
title: FSFolderCreateReq_Folder
FSFolderRemoveQuotaTreesReq:
type: object
required:
- fs_folder
properties:
fs_folder:
$ref: '#/definitions/FSFolderRemoveQuotaTreesReq_Folder'
title: FSFolderRemoveQuotaTreesReq
FSGatewayGroup:
type: object
properties:
action_status:
type: string
create:
type: string
format: date-time
description:
type: string
encoding:
type: string
folder_num:
type: integer
format: int64
id:
type: integer
format: int64
name:
type: string
nfs_versions:
type: array
description: NFS attributes
items:
type: string
port:
type: integer
format: int64
description: FTP attributes
security:
type: string
description: SMB attributes
smb1_enabled:
type: boolean
smb_ports:
type: array
items:
type: integer
format: int64
status:
type: string
types:
type: array
items:
type: string
update:
type: string
format: date-time
user_group_num:
type: integer
format: int64
vip:
type: string
vip_mask:
type: integer
format: int64
title: FSGatewayGroup
description: FSGatewayGroup defines model of file storage gateway group @grpc-models-proto
example:
smb_ports:
- 5
- 5
types:
- types
- types
smb1_enabled: true
description: description
update: '2000-01-23T04:56:07.000+00:00'
vip_mask: 2
encoding: encoding
security: security
port: 1
name: name
create: '2000-01-23T04:56:07.000+00:00'
nfs_versions:
- nfs_versions
- nfs_versions
user_group_num: 5
id: 6
vip: vip
action_status: action_status
folder_num: 0
status: status
FSFolderAddQuotaTreesReq_Folder:
type: object
required:
- fs_quota_trees
properties:
fs_quota_trees:
type: array
items:
$ref: '#/definitions/FSFolderAddQuotaTreesReq_Folder_QuotaTrees_Elt'
title: FSFolderAddQuotaTreesReq_Folder
FSFolderSnapshotProtectionReq_Folder:
type: object
required:
- dp_fs_snapshot_policy_id
properties:
dp_fs_snapshot_policy_id:
type: integer
format: int64
description: id of dp fs snapshot policy
title: FSFolderSnapshotProtectionReq_Folder
FSFolderRollBackReq:
type: object
required:
- fs_folder
properties:
fs_folder:
$ref: '#/definitions/FSFolderRollBackReq_Folder'
title: FSFolderRollBackReq
FSFolderSnapshotProtectionReq:
type: object
required:
- fs_folder
properties:
fs_folder:
$ref: '#/definitions/FSFolderSnapshotProtectionReq_Folder'
title: FSFolderSnapshotProtectionReq
VolumeQosSpec:
type: object
properties:
burst_total_bw:
type: integer
format: int64
burst_total_iops:
type: integer
format: int64
max_total_bw:
type: integer
format: int64
max_total_iops:
type: integer
format: int64
title: VolumeQosSpec
description: VolumeQosSpec is a collection of all qos field
example:
burst_total_iops: 2
max_total_iops: 9
burst_total_bw: 5
max_total_bw: 7
Pool_Nestview:
type: object
properties:
id:
type: integer
format: int64
name:
type: string
title: Pool_Nestview
example:
name: name
id: 5
FSFoldersResp:
type: object
required:
- fs_folders
properties:
fs_folders:
type: array
description: file storage folder records
items:
$ref: '#/definitions/FSFolderRecord'
title: FSFoldersResp
example:
fs_folders:
- ''
- ''
FSFolderResp:
type: object
required:
- fs_folder
properties:
fs_folder:
description: file storage folder records
$ref: '#/definitions/FSFolderRecord'
title: FSFolderResp
example:
fs_folder: ''
FSFolderRecord:
title: FSFolderRecord
allOf:
- $ref: '#/definitions/FSFolder'
- properties:
samples:
type: array
items:
$ref: '#/definitions/FSFolderStat'
description: FSFolderRecord combine FSFolder and FSFolderStat as API response
Volume_Nestview:
type: object
properties:
id:
type: integer
format: int64
name:
type: string
original_name:
type: string
title: Volume_Nestview
example:
original_name: original_name
name: name
id: 9
DpFSSnapshotPolicy_Nestview:
type: object
properties:
id:
type: integer
format: int64
name:
type: string
title: DpFSSnapshotPolicy_Nestview
example:
name: name
id: 0
securityDefinitions:
tokenInHeader:
description: auth by token
type: apiKey
name: Xms-Auth-Token
in: header
tokenInQuery:
description: auth by token
type: apiKey
name: token
in: query