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.
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: 3.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
servers:
- url: /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
parameters:
- name: limit
in: query
description: paging param
required: false
x-exportParamName: Limit
schema:
type: integer
format: int64
- name: offset
in: query
description: paging param
required: false
x-exportParamName: Offset
schema:
type: integer
format: int64
- name: q
in: query
description: query param of search
required: false
x-exportParamName: Q
schema:
type: string
- name: sort
in: query
description: sort param of search
required: false
x-exportParamName: Sort
schema:
type: string
- name: fs_user_id
in: query
description: file storage user id
required: false
x-exportParamName: FsUserId
schema:
type: integer
format: int64
- name: fs_user_group_id
in: query
description: file storage user group id
required: false
x-exportParamName: FsUserGroupId
schema:
type: integer
format: int64
- name: fs_gateway_group_id
in: query
description: file storage gateway group id
required: false
x-exportParamName: FsGatewayGroupId
schema:
type: integer
format: int64
- name: fs_snapshot_id
in: query
description: file storage snapshot id
required: false
x-exportParamName: FsSnapshotId
schema:
type: integer
format: int64
- name: fs_client_id
in: query
description: file storage client id
required: false
x-exportParamName: FsClientId
schema:
type: integer
format: int64
- name: fs_client_group_id
in: query
description: file storage client group id
required: false
x-exportParamName: FsClientGroupId
schema:
type: integer
format: int64
- name: pool_id
in: query
description: pool id
required: false
x-exportParamName: PoolId
schema:
type: integer
format: int64
responses:
200:
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/FSFoldersResp'
500:
description: InternalServerError
security:
- tokenInQuery: []
- tokenInHeader: []
post:
tags:
- fs-folders
description: Create file storage folder
operationId: CreateFolder
responses:
200:
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/FSFolderResp'
202:
description: Accepted
content:
application/json:
schema:
$ref: '#/components/schemas/FSFolderResp'
400:
description: BadRequest
409:
description: Conflict
500:
description: InternalServerError
security:
- tokenInQuery: []
- tokenInHeader: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/FSFolderCreateReq'
description: folder info
required: true
/fs-folders/{fs_folder_id}:
get:
tags:
- fs-folders
description: Get file storage folder
operationId: GetFolder
parameters:
- name: fs_folder_id
in: path
description: folder id
required: true
x-exportParamName: FsFolderId
schema:
type: integer
format: int64
responses:
200:
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/FSFolderResp'
404:
description: NotFound
500:
description: InternalServerError
security:
- tokenInQuery: []
- tokenInHeader: []
delete:
tags:
- fs-folders
description: delete file storage folder
operationId: DeleteFolder
parameters:
- name: force
in: query
description: force delete
required: false
x-exportParamName: Force
schema:
type: boolean
- name: fs_folder_id
in: path
description: folder id
required: true
x-exportParamName: FsFolderId
schema:
type: integer
format: int64
responses:
202:
description: Accepted
content:
application/json:
schema:
$ref: '#/components/schemas/FSFolderResp'
404:
description: NotFound
409:
description: Conflict
500:
description: InternalServerError
security:
- tokenInQuery: []
- tokenInHeader: []
patch:
tags:
- fs-folders
description: Update file storage folder
operationId: UpdateFolder
parameters:
- name: fs_folder_id
in: path
description: folder id
required: true
x-exportParamName: FsFolderId
schema:
type: integer
format: int64
responses:
202:
description: Accepted
content:
application/json:
schema:
$ref: '#/components/schemas/FSFolderResp'
400:
description: BadRequest
404:
description: NotFound
409:
description: Conflict
500:
description: InternalServerError
security:
- tokenInQuery: []
- tokenInHeader: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/FSFolderUpdateReq'
description: folder info
required: true
/fs-folders/{fs_folder_id}/fs-quota-trees:
put:
tags:
- fs-folders
description: add file storage quota trees
operationId: AddFSQuotaTrees
parameters:
- name: fs_folder_id
in: path
description: fs folder id
required: true
x-exportParamName: FsFolderId
schema:
type: integer
format: int64
responses:
202:
description: Accepted
content:
application/json:
schema:
$ref: '#/components/schemas/FSFolderResp'
400:
description: BadRequest
404:
description: NotFound
409:
description: Conflict
500:
description: InternalServerError
security:
- tokenInQuery: []
- tokenInHeader: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/FSFolderAddQuotaTreesReq'
description: quota trees info
required: true
delete:
tags:
- fs-folders
description: delete fs quota trees from fs folder
operationId: RemoveFSQuotaTrees
parameters:
- name: fs_folder_id
in: path
description: fs folder id
required: true
x-exportParamName: FsFolderId
schema:
type: integer
format: int64
responses:
202:
description: Accepted
content:
application/json:
schema:
$ref: '#/components/schemas/FSFolderResp'
400:
description: BadRequest
404:
description: NotFound
409:
description: Conflict
500:
description: InternalServerError
security:
- tokenInQuery: []
- tokenInHeader: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/FSFolderRemoveQuotaTreesReq'
description: quota trees info
required: true
/fs-folders/{fs_folder_id}/samples:
get:
tags:
- fs-folders
description: get a file storage folder's samples
operationId: GetFSFolderSamples
parameters:
- name: fs_folder_id
in: path
description: file storage folder id
required: true
x-exportParamName: FsFolderId
schema:
type: integer
format: int64
- name: duration_begin
in: query
description: duration begin timestamp
required: false
x-exportParamName: DurationBegin
schema:
type: string
- name: duration_end
in: query
description: duration end timestamp
required: false
x-exportParamName: DurationEnd
schema:
type: string
- name: period
in: query
description: samples period
required: false
x-exportParamName: Period
schema:
type: string
responses:
200:
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/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
parameters:
- name: fs_folder_id
in: path
description: folder id
required: true
x-exportParamName: FsFolderId
schema:
type: integer
format: int64
responses:
202:
description: Accepted
content:
application/json:
schema:
$ref: '#/components/schemas/FSFolderResp'
404:
description: NotFound
409:
description: Conflict
500:
description: InternalServerError
security:
- tokenInQuery: []
- tokenInHeader: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/FSFolderRollBackReq'
description: folder info
required: true
/fs-folders/{fs_folder_id}:set-snapshot-protection:
post:
tags:
- fs-folders
description: Set snapshot protection for a fs folder
operationId: SetFSSnapshotProtection
parameters:
- name: fs_folder_id
in: path
description: fs folder id in db
required: true
x-exportParamName: FsFolderId
schema:
type: integer
format: int64
responses:
202:
description: Accepted
content:
application/json:
schema:
$ref: '#/components/schemas/FSFolderResp'
400:
description: BadRequest
404:
description: NotFound
409:
description: Conflict
500:
description: InternalServerError
security:
- tokenInQuery: []
- tokenInHeader: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/FSFolderSnapshotProtectionReq'
description: request info
required: true
/fs-folders/{fs_folder_id}:unset-snapshot-protection:
post:
tags:
- fs-folders
description: Unset snapshot protection for a fs folder
operationId: UnsetFSSnapshotProtection
parameters:
- name: fs_folder_id
in: path
description: fs_folder id in db
required: true
x-exportParamName: FsFolderId
schema:
type: integer
format: int64
- name: force
in: query
description: force unset or not
required: false
x-exportParamName: Force
schema:
type: boolean
responses:
202:
description: Accepted
content:
application/json:
schema:
$ref: '#/components/schemas/FSFolderResp'
400:
description: BadRequest
404:
description: NotFound
409:
description: Conflict
500:
description: InternalServerError
security:
- tokenInQuery: []
- tokenInHeader: []
components:
schemas:
FSFolder:
type: object
properties:
access_path:
$ref: '#/components/schemas/AccessPath_Nestview'
action_status:
type: string
block_volume:
$ref: '#/components/schemas/Volume_Nestview'
block_volume_status:
type: string
create:
type: string
format: date-time
description:
type: string
dp_fs_snapshot_policy:
$ref: '#/components/schemas/DpFSSnapshotPolicy_Nestview'
flattened:
type: boolean
formatted:
type: boolean
fs_gateway_group:
$ref: '#/components/schemas/FSGatewayGroup'
fs_quota_tree_num:
type: integer
format: int64
fs_snapshot:
$ref: '#/components/schemas/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: '#/components/schemas/Pool_Nestview'
progress:
type: number
format: double
qos:
$ref: '#/components/schemas/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
DpFSSnapshotPolicy_Nestview:
type: object
properties:
id:
type: integer
format: int64
name:
type: string
title: DpFSSnapshotPolicy_Nestview
example:
name: name
id: 0
FSFolderRemoveQuotaTreesReq:
type: object
required:
- fs_folder
properties:
fs_folder:
$ref: '#/components/schemas/FSFolderRemoveQuotaTreesReq_Folder'
title: FSFolderRemoveQuotaTreesReq
FSFolderCreateReq:
type: object
required:
- fs_folder
properties:
fs_folder:
$ref: '#/components/schemas/FSFolderCreateReq_Folder'
title: FSFolderCreateReq
FSFolderSamplesResp:
type: object
properties:
fs_folder_samples:
type: array
items:
$ref: '#/components/schemas/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
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
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
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
FSFoldersResp:
type: object
required:
- fs_folders
properties:
fs_folders:
type: array
description: file storage folder records
items:
$ref: '#/components/schemas/FSFolderRecord'
title: FSFoldersResp
example:
fs_folders:
- ''
- ''
Pool_Nestview:
type: object
properties:
id:
type: integer
format: int64
name:
type: string
title: Pool_Nestview
example:
name: name
id: 5
FSFolderRollBackReq:
type: object
required:
- fs_folder
properties:
fs_folder:
$ref: '#/components/schemas/FSFolderRollBackReq_Folder'
title: FSFolderRollBackReq
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: '#/components/schemas/VolumeQosSpec'
qos_enabled:
type: boolean
description: enable or disable the qos
size:
type: integer
format: int64
description: size of folder
title: FSFolderUpdateReq_Folder
FSFolderUpdateReq:
type: object
required:
- fs_folder
properties:
fs_folder:
$ref: '#/components/schemas/FSFolderUpdateReq_Folder'
title: FSFolderUpdateReq
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
AccessPath_Nestview:
type: object
properties:
id:
type: integer
format: int64
name:
type: string
title: AccessPath_Nestview
example:
name: name
id: 0
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
FSFolderRecord:
title: FSFolderRecord
allOf:
- $ref: '#/components/schemas/FSFolder'
- properties:
samples:
type: array
items:
$ref: '#/components/schemas/FSFolderStat'
description: FSFolderRecord combine FSFolder and FSFolderStat as API response
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
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: '#/components/schemas/VolumeQosSpec'
qos_enabled:
type: boolean
description: enable or disable the qos
size:
type: integer
format: int64
description: size of folder
title: FSFolderCreateReq_Folder
FSSnapshot_Nestview:
type: object
properties:
id:
type: integer
format: int64
name:
type: string
title: FSSnapshot_Nestview
example:
name: name
id: 1
FSFolderSnapshotProtectionReq:
type: object
required:
- fs_folder
properties:
fs_folder:
$ref: '#/components/schemas/FSFolderSnapshotProtectionReq_Folder'
title: FSFolderSnapshotProtectionReq
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:
type: object
required:
- fs_folder
properties:
fs_folder:
$ref: '#/components/schemas/FSFolderAddQuotaTreesReq_Folder'
title: FSFolderAddQuotaTreesReq
FSFolderResp:
type: object
required:
- fs_folder
properties:
fs_folder:
description: file storage folder records
$ref: '#/components/schemas/FSFolderRecord'
title: FSFolderResp
example:
fs_folder: ''
FSFolderAddQuotaTreesReq_Folder:
type: object
required:
- fs_quota_trees
properties:
fs_quota_trees:
type: array
items:
$ref: '#/components/schemas/FSFolderAddQuotaTreesReq_Folder_QuotaTrees_Elt'
title: FSFolderAddQuotaTreesReq_Folder
securitySchemes:
tokenInHeader:
description: auth by token
type: apiKey
name: Xms-Auth-Token
in: header
tokenInQuery:
description: auth by token
type: apiKey
name: token
in: query