bimserver-sfs服务


服务概述

文档存储服务(SFS Service) 文档存储服务基于文档为客户提供海量、安全、高可靠、低成本的数据存储能力。 您可以使用本文档提供的API对文档存储服务的资源进行相关操作,例如文档的上 传、下载、锁定、解锁、拷贝、删除以及版本管理等,再如文档存储位置的查询、 创建、移动、删除等,此外,还可以实现大文件的分片上传以及文件元数据的管理。 支持的全部操作请参见以下API描述。

基础服务

1.None

/bimserver/sfs/v3/swagger.json

获取服务api文档

授权

请求头 内容
Authorization Bearer token

HTTP请求示例

请求路径
http://192.168.0.105:18020/bimserver/sfs/v3/swagger.json

文件管理

2.克隆文件数据

/bimserver/sfs/v3/clone

根据参数克隆SFS模板文件夹/文件数据

授权

请求头 内容
Authorization Bearer token

响应消息

HTTP状态码 原因 类型 引用模型
200 请求成功 / FileEntryModelListDataWrapper
201 Created /
401 未授权,请检查Authorization的Header的Access Token是否设置正确 / ExceptionModel
403 无权访问请求的资源 / ExceptionModel
404 Not Found /
409 请求的资源不存在 / ExceptionModel
500 服务内部错误,请查看详细的错误原因 / ExceptionModel

HTTP请求示例

请求路径
http://192.168.0.105:18020/bimserver/sfs/v3/clone
请求体

用于克隆模板实体时的参数集合

类型: application/json

引用模型:CloneMetadata

请求体示例

{
    "clientId": "string",
    "projectIds": [
        {
            "originProjectId": "string",
            "projectId": "string"
        }
    ],
    "username": "string"
}

字段说明
名称 类型 必填 描述
clientId string 客户端ID
projectIds array 模板实体的参数集合
username string 用户标识

HTTP响应示例

响应200

{
    "data": {
        "file_count": 0,
        "files": [
            {
                "active": "unknown type - boolean",
                "client_id": "string",
                "create_at": {
                    "date": 0,
                    "day": 0,
                    "hours": 0,
                    "minutes": 0,
                    "month": 0,
                    "nanos": 0,
                    "seconds": 0,
                    "time": 0,
                    "timezoneOffset": 0,
                    "year": 0
                },
                "current_version": 0,
                "current_version_size": 0,
                "ext_attr": {},
                "external_id": "string",
                "id": "string",
                "locked": "unknown type - boolean",
                "lockedAt": {
                    "date": 0,
                    "day": 0,
                    "hours": 0,
                    "minutes": 0,
                    "month": 0,
                    "nanos": 0,
                    "seconds": 0,
                    "time": 0,
                    "timezoneOffset": 0,
                    "year": 0
                },
                "lockedBy": "string",
                "name": "string",
                "owner": "string",
                "parent_id": "string",
                "path": "string",
                "project_id": "string",
                "update_at": {
                    "date": 0,
                    "day": 0,
                    "hours": 0,
                    "minutes": 0,
                    "month": 0,
                    "nanos": 0,
                    "seconds": 0,
                    "time": 0,
                    "timezoneOffset": 0,
                    "year": 0
                },
                "user_data": "string",
                "versions": [
                    {
                        "active": "unknown type - boolean",
                        "comments": "string",
                        "create_at": {
                            "date": 0,
                            "day": 0,
                            "hours": 0,
                            "minutes": 0,
                            "month": 0,
                            "nanos": 0,
                            "seconds": 0,
                            "time": 0,
                            "timezoneOffset": 0,
                            "year": 0
                        },
                        "entry_id": "string",
                        "ext_attr": {},
                        "ext_attr_value_models": [
                            {
                                "entryId": "string",
                                "id": "string",
                                "namespaceId": "string",
                                "resourceId": "string",
                                "value": "string"
                            }
                        ],
                        "external_id": "string",
                        "id": 0,
                        "md5": "string",
                        "owner": "string",
                        "size": 0,
                        "update_at": {
                            "date": 0,
                            "day": 0,
                            "hours": 0,
                            "minutes": 0,
                            "month": 0,
                            "nanos": 0,
                            "seconds": 0,
                            "time": 0,
                            "timezoneOffset": 0,
                            "year": 0
                        },
                        "user_data": "string",
                        "version": 0
                    }
                ]
            }
        ],
        "folder_count": 0,
        "folders": [
            {
                "active": "unknown type - boolean",
                "client_id": "string",
                "create_at": {
                    "date": 0,
                    "day": 0,
                    "hours": 0,
                    "minutes": 0,
                    "month": 0,
                    "nanos": 0,
                    "seconds": 0,
                    "time": 0,
                    "timezoneOffset": 0,
                    "year": 0
                },
                "external_id": "string",
                "id": "string",
                "locked": "unknown type - boolean",
                "lockedAt": {
                    "date": 0,
                    "day": 0,
                    "hours": 0,
                    "minutes": 0,
                    "month": 0,
                    "nanos": 0,
                    "seconds": 0,
                    "time": 0,
                    "timezoneOffset": 0,
                    "year": 0
                },
                "lockedBy": "string",
                "name": "string",
                "owner": "string",
                "parent_id": "string",
                "path": "string",
                "update_at": {
                    "date": 0,
                    "day": 0,
                    "hours": 0,
                    "minutes": 0,
                    "month": 0,
                    "nanos": 0,
                    "seconds": 0,
                    "time": 0,
                    "timezoneOffset": 0,
                    "year": 0
                },
                "user_data": "string"
            }
        ]
    },
    "x_ref": {
        "users": [
            {
                "address": "string",
                "avatarLink": "string",
                "birthDate": "string",
                "cardSetting": "string",
                "city": "string",
                "company": "string",
                "country": "string",
                "createAt": "string",
                "department": "string",
                "displayName": "string",
                "district": "string",
                "education": "string",
                "email": "string",
                "employeeNumber": "string",
                "enabled": "unknown type - boolean",
                "gender": 0,
                "notifySettings": [
                    "string"
                ],
                "phoneNumber": "string",
                "phoneNumberValidated": "unknown type - boolean",
                "postcode": "string",
                "professionCertificate": "string",
                "province": "string",
                "qqNumber": "string",
                "realName": "string",
                "remark": "string",
                "resumes": [
                    {
                        "id": "string",
                        "previousPosition": "string",
                        "workYears": 0
                    }
                ],
                "title": "string",
                "titleCertificate": "string",
                "updateAt": "string",
                "userid": "string",
                "username": "string",
                "workTime": {
                    "date": 0,
                    "day": 0,
                    "hours": 0,
                    "minutes": 0,
                    "month": 0,
                    "nanos": 0,
                    "seconds": 0,
                    "time": 0,
                    "timezoneOffset": 0,
                    "year": 0
                }
            }
        ]
    }
}

字段说明
名称 类型 必填 描述
data object: FileEntryModelList None
x_ref object: Reference None

3.复制文件到指定文件夹

/bimserver/sfs/v3/projects/{projectId}/parent/{parentId}/file

复制文件到指定文件夹,默认为当前版本号

授权

请求头 内容
Authorization Bearer token

请求参数

名称 位置 类型 是否必填 描述
projectId path string
parentId path string

响应消息

HTTP状态码 原因 类型 引用模型
200 请求成功 / FileModelDataWrapper
201 Created /
401 未授权,请检查Authorization的Header的Access Token是否设置正确 / ExceptionModel
403 无权访问请求的资源 / ExceptionModel
404 Not Found /
409 请求的资源不存在 / ExceptionModel
500 服务内部错误,请查看详细的错误原因 / ExceptionModel

HTTP请求示例

请求路径
http://192.168.0.105:18020/bimserver/sfs/v3/projects/{projectId}/parent/{parentId}/file
请求体

fileCopyParam

类型: application/json

引用模型:FileCopyParameter

请求体示例

{
    "mode": "string",
    "source_id": "string",
    "source_version": 0,
    "target_name": "string"
}

字段说明
名称 类型 必填 描述
mode string 文件复制模式(copy
source_id string 源文件id
source_version integer 源文件版本
target_name string 目标文件名称

HTTP响应示例

响应200

{
    "data": {
        "active": "unknown type - boolean",
        "client_id": "string",
        "create_at": {
            "date": 0,
            "day": 0,
            "hours": 0,
            "minutes": 0,
            "month": 0,
            "nanos": 0,
            "seconds": 0,
            "time": 0,
            "timezoneOffset": 0,
            "year": 0
        },
        "current_version": 0,
        "current_version_size": 0,
        "ext_attr": {},
        "external_id": "string",
        "id": "string",
        "locked": "unknown type - boolean",
        "lockedAt": {
            "date": 0,
            "day": 0,
            "hours": 0,
            "minutes": 0,
            "month": 0,
            "nanos": 0,
            "seconds": 0,
            "time": 0,
            "timezoneOffset": 0,
            "year": 0
        },
        "lockedBy": "string",
        "name": "string",
        "owner": "string",
        "parent_id": "string",
        "path": "string",
        "project_id": "string",
        "update_at": {
            "date": 0,
            "day": 0,
            "hours": 0,
            "minutes": 0,
            "month": 0,
            "nanos": 0,
            "seconds": 0,
            "time": 0,
            "timezoneOffset": 0,
            "year": 0
        },
        "user_data": "string",
        "versions": [
            {
                "active": "unknown type - boolean",
                "comments": "string",
                "create_at": {
                    "date": 0,
                    "day": 0,
                    "hours": 0,
                    "minutes": 0,
                    "month": 0,
                    "nanos": 0,
                    "seconds": 0,
                    "time": 0,
                    "timezoneOffset": 0,
                    "year": 0
                },
                "entry_id": "string",
                "ext_attr": {},
                "ext_attr_value_models": [
                    {
                        "entryId": "string",
                        "id": "string",
                        "namespaceId": "string",
                        "resourceId": "string",
                        "value": "string"
                    }
                ],
                "external_id": "string",
                "id": 0,
                "md5": "string",
                "owner": "string",
                "size": 0,
                "update_at": {
                    "date": 0,
                    "day": 0,
                    "hours": 0,
                    "minutes": 0,
                    "month": 0,
                    "nanos": 0,
                    "seconds": 0,
                    "time": 0,
                    "timezoneOffset": 0,
                    "year": 0
                },
                "user_data": "string",
                "version": 0
            }
        ]
    },
    "x_ref": {
        "users": [
            {
                "address": "string",
                "avatarLink": "string",
                "birthDate": "string",
                "cardSetting": "string",
                "city": "string",
                "company": "string",
                "country": "string",
                "createAt": "string",
                "department": "string",
                "displayName": "string",
                "district": "string",
                "education": "string",
                "email": "string",
                "employeeNumber": "string",
                "enabled": "unknown type - boolean",
                "gender": 0,
                "notifySettings": [
                    "string"
                ],
                "phoneNumber": "string",
                "phoneNumberValidated": "unknown type - boolean",
                "postcode": "string",
                "professionCertificate": "string",
                "province": "string",
                "qqNumber": "string",
                "realName": "string",
                "remark": "string",
                "resumes": [
                    {
                        "id": "string",
                        "previousPosition": "string",
                        "workYears": 0
                    }
                ],
                "title": "string",
                "titleCertificate": "string",
                "updateAt": "string",
                "userid": "string",
                "username": "string",
                "workTime": {
                    "date": 0,
                    "day": 0,
                    "hours": 0,
                    "minutes": 0,
                    "month": 0,
                    "nanos": 0,
                    "seconds": 0,
                    "time": 0,
                    "timezoneOffset": 0,
                    "year": 0
                }
            }
        ]
    }
}

字段说明
名称 类型 必填 描述
data object: FileModel None
x_ref object: Reference None

4.覆盖文件对应版本的内容

/bimserver/sfs/v3/projects/{projectId}/file/{fileId}/versions/{version}

覆盖某个具体文件的对应版本内容

授权

请求头 内容
Authorization Bearer token

请求参数

名称 位置 类型 是否必填 描述
md5 query None
projectId path string
fileId path string
version path string

响应消息

HTTP状态码 原因 类型 引用模型
200 请求成功 / FileModelDataWrapper
201 Created /
401 未授权,请检查Authorization的Header的Access Token是否设置正确 / ExceptionModel
403 无权访问请求的资源 / ExceptionModel
404 Not Found /
409 请求的资源不存在 / ExceptionModel
500 服务内部错误,请查看详细的错误原因 / ExceptionModel

HTTP请求示例

请求路径
http://192.168.0.105:18020/bimserver/sfs/v3/projects/{projectId}/file/{fileId}/versions/{version}?md5=xxx
请求体

类型: multipart/form-data

HTTP响应示例

响应200

{
    "data": {
        "active": "unknown type - boolean",
        "client_id": "string",
        "create_at": {
            "date": 0,
            "day": 0,
            "hours": 0,
            "minutes": 0,
            "month": 0,
            "nanos": 0,
            "seconds": 0,
            "time": 0,
            "timezoneOffset": 0,
            "year": 0
        },
        "current_version": 0,
        "current_version_size": 0,
        "ext_attr": {},
        "external_id": "string",
        "id": "string",
        "locked": "unknown type - boolean",
        "lockedAt": {
            "date": 0,
            "day": 0,
            "hours": 0,
            "minutes": 0,
            "month": 0,
            "nanos": 0,
            "seconds": 0,
            "time": 0,
            "timezoneOffset": 0,
            "year": 0
        },
        "lockedBy": "string",
        "name": "string",
        "owner": "string",
        "parent_id": "string",
        "path": "string",
        "project_id": "string",
        "update_at": {
            "date": 0,
            "day": 0,
            "hours": 0,
            "minutes": 0,
            "month": 0,
            "nanos": 0,
            "seconds": 0,
            "time": 0,
            "timezoneOffset": 0,
            "year": 0
        },
        "user_data": "string",
        "versions": [
            {
                "active": "unknown type - boolean",
                "comments": "string",
                "create_at": {
                    "date": 0,
                    "day": 0,
                    "hours": 0,
                    "minutes": 0,
                    "month": 0,
                    "nanos": 0,
                    "seconds": 0,
                    "time": 0,
                    "timezoneOffset": 0,
                    "year": 0
                },
                "entry_id": "string",
                "ext_attr": {},
                "ext_attr_value_models": [
                    {
                        "entryId": "string",
                        "id": "string",
                        "namespaceId": "string",
                        "resourceId": "string",
                        "value": "string"
                    }
                ],
                "external_id": "string",
                "id": 0,
                "md5": "string",
                "owner": "string",
                "size": 0,
                "update_at": {
                    "date": 0,
                    "day": 0,
                    "hours": 0,
                    "minutes": 0,
                    "month": 0,
                    "nanos": 0,
                    "seconds": 0,
                    "time": 0,
                    "timezoneOffset": 0,
                    "year": 0
                },
                "user_data": "string",
                "version": 0
            }
        ]
    },
    "x_ref": {
        "users": [
            {
                "address": "string",
                "avatarLink": "string",
                "birthDate": "string",
                "cardSetting": "string",
                "city": "string",
                "company": "string",
                "country": "string",
                "createAt": "string",
                "department": "string",
                "displayName": "string",
                "district": "string",
                "education": "string",
                "email": "string",
                "employeeNumber": "string",
                "enabled": "unknown type - boolean",
                "gender": 0,
                "notifySettings": [
                    "string"
                ],
                "phoneNumber": "string",
                "phoneNumberValidated": "unknown type - boolean",
                "postcode": "string",
                "professionCertificate": "string",
                "province": "string",
                "qqNumber": "string",
                "realName": "string",
                "remark": "string",
                "resumes": [
                    {
                        "id": "string",
                        "previousPosition": "string",
                        "workYears": 0
                    }
                ],
                "title": "string",
                "titleCertificate": "string",
                "updateAt": "string",
                "userid": "string",
                "username": "string",
                "workTime": {
                    "date": 0,
                    "day": 0,
                    "hours": 0,
                    "minutes": 0,
                    "month": 0,
                    "nanos": 0,
                    "seconds": 0,
                    "time": 0,
                    "timezoneOffset": 0,
                    "year": 0
                }
            }
        ]
    }
}

字段说明
名称 类型 必填 描述
data object: FileModel None
x_ref object: Reference None

5.以 application/octet-stream 方式上传AppData文件

/bimserver/sfs/v3/projects/{projectId}/apps/{appId}/folder/{folderId}/file

以 application/octet-stream 方式上传AppData文件

授权

请求头 内容
Authorization Bearer token

请求参数

名称 位置 类型 是否必填 描述
md5 query None
file_name query None
projectId path string
appId path string
folderId path string

响应消息

HTTP状态码 原因 类型 引用模型
200 请求成功 / FileModelDataWrapper
201 Created /
401 未授权,请检查Authorization的Header的Access Token是否设置正确 / ExceptionModel
403 无权访问请求的资源 / ExceptionModel
404 Not Found /
409 请求的资源不存在 / ExceptionModel
500 服务内部错误,请查看详细的错误原因 / ExceptionModel

HTTP请求示例

请求路径
http://192.168.0.105:18020/bimserver/sfs/v3/projects/{projectId}/apps/{appId}/folder/{folderId}/file?md5=xxx&file_name=xxx

HTTP响应示例

响应200

{
    "data": {
        "active": "unknown type - boolean",
        "client_id": "string",
        "create_at": {
            "date": 0,
            "day": 0,
            "hours": 0,
            "minutes": 0,
            "month": 0,
            "nanos": 0,
            "seconds": 0,
            "time": 0,
            "timezoneOffset": 0,
            "year": 0
        },
        "current_version": 0,
        "current_version_size": 0,
        "ext_attr": {},
        "external_id": "string",
        "id": "string",
        "locked": "unknown type - boolean",
        "lockedAt": {
            "date": 0,
            "day": 0,
            "hours": 0,
            "minutes": 0,
            "month": 0,
            "nanos": 0,
            "seconds": 0,
            "time": 0,
            "timezoneOffset": 0,
            "year": 0
        },
        "lockedBy": "string",
        "name": "string",
        "owner": "string",
        "parent_id": "string",
        "path": "string",
        "project_id": "string",
        "update_at": {
            "date": 0,
            "day": 0,
            "hours": 0,
            "minutes": 0,
            "month": 0,
            "nanos": 0,
            "seconds": 0,
            "time": 0,
            "timezoneOffset": 0,
            "year": 0
        },
        "user_data": "string",
        "versions": [
            {
                "active": "unknown type - boolean",
                "comments": "string",
                "create_at": {
                    "date": 0,
                    "day": 0,
                    "hours": 0,
                    "minutes": 0,
                    "month": 0,
                    "nanos": 0,
                    "seconds": 0,
                    "time": 0,
                    "timezoneOffset": 0,
                    "year": 0
                },
                "entry_id": "string",
                "ext_attr": {},
                "ext_attr_value_models": [
                    {
                        "entryId": "string",
                        "id": "string",
                        "namespaceId": "string",
                        "resourceId": "string",
                        "value": "string"
                    }
                ],
                "external_id": "string",
                "id": 0,
                "md5": "string",
                "owner": "string",
                "size": 0,
                "update_at": {
                    "date": 0,
                    "day": 0,
                    "hours": 0,
                    "minutes": 0,
                    "month": 0,
                    "nanos": 0,
                    "seconds": 0,
                    "time": 0,
                    "timezoneOffset": 0,
                    "year": 0
                },
                "user_data": "string",
                "version": 0
            }
        ]
    },
    "x_ref": {
        "users": [
            {
                "address": "string",
                "avatarLink": "string",
                "birthDate": "string",
                "cardSetting": "string",
                "city": "string",
                "company": "string",
                "country": "string",
                "createAt": "string",
                "department": "string",
                "displayName": "string",
                "district": "string",
                "education": "string",
                "email": "string",
                "employeeNumber": "string",
                "enabled": "unknown type - boolean",
                "gender": 0,
                "notifySettings": [
                    "string"
                ],
                "phoneNumber": "string",
                "phoneNumberValidated": "unknown type - boolean",
                "postcode": "string",
                "professionCertificate": "string",
                "province": "string",
                "qqNumber": "string",
                "realName": "string",
                "remark": "string",
                "resumes": [
                    {
                        "id": "string",
                        "previousPosition": "string",
                        "workYears": 0
                    }
                ],
                "title": "string",
                "titleCertificate": "string",
                "updateAt": "string",
                "userid": "string",
                "username": "string",
                "workTime": {
                    "date": 0,
                    "day": 0,
                    "hours": 0,
                    "minutes": 0,
                    "month": 0,
                    "nanos": 0,
                    "seconds": 0,
                    "time": 0,
                    "timezoneOffset": 0,
                    "year": 0
                }
            }
        ]
    }
}

字段说明
名称 类型 必填 描述
data object: FileModel None
x_ref object: Reference None

6.以 multipart/form-data 方式上传AppData文件

/bimserver/sfs/v3/projects/{projectId}/apps/{appId}/folder/{folderId}/file

如果在同一个folder下发现有相同名称的文件,则文件版本号自动加1

授权

请求头 内容
Authorization Bearer token

请求参数

名称 位置 类型 是否必填 描述
md5 query None
file_name query None
file_external_id query None
file_user_data query None
version_external_id query None
version_user_data query None
version_comments query None
extAttr query None
projectId path string
appId path string
folderId path string

响应消息

HTTP状态码 原因 类型 引用模型
200 请求成功 / FileModelDataWrapper
201 Created /
401 未授权,请检查Authorization的Header的Access Token是否设置正确 / ExceptionModel
403 无权访问请求的资源 / ExceptionModel
404 Not Found /
409 请求的资源不存在 / ExceptionModel
500 服务内部错误,请查看详细的错误原因 / ExceptionModel

HTTP请求示例

请求路径
http://192.168.0.105:18020/bimserver/sfs/v3/projects/{projectId}/apps/{appId}/folder/{folderId}/file?md5=xxx&file_name=xxx&file_external_id=xxx&file_user_data=xxx&version_external_id=xxx&version_user_data=xxx&version_comments=xxx&extAttr=xxx
请求体

类型: multipart/form-data

HTTP响应示例

响应200

{
    "data": {
        "active": "unknown type - boolean",
        "client_id": "string",
        "create_at": {
            "date": 0,
            "day": 0,
            "hours": 0,
            "minutes": 0,
            "month": 0,
            "nanos": 0,
            "seconds": 0,
            "time": 0,
            "timezoneOffset": 0,
            "year": 0
        },
        "current_version": 0,
        "current_version_size": 0,
        "ext_attr": {},
        "external_id": "string",
        "id": "string",
        "locked": "unknown type - boolean",
        "lockedAt": {
            "date": 0,
            "day": 0,
            "hours": 0,
            "minutes": 0,
            "month": 0,
            "nanos": 0,
            "seconds": 0,
            "time": 0,
            "timezoneOffset": 0,
            "year": 0
        },
        "lockedBy": "string",
        "name": "string",
        "owner": "string",
        "parent_id": "string",
        "path": "string",
        "project_id": "string",
        "update_at": {
            "date": 0,
            "day": 0,
            "hours": 0,
            "minutes": 0,
            "month": 0,
            "nanos": 0,
            "seconds": 0,
            "time": 0,
            "timezoneOffset": 0,
            "year": 0
        },
        "user_data": "string",
        "versions": [
            {
                "active": "unknown type - boolean",
                "comments": "string",
                "create_at": {
                    "date": 0,
                    "day": 0,
                    "hours": 0,
                    "minutes": 0,
                    "month": 0,
                    "nanos": 0,
                    "seconds": 0,
                    "time": 0,
                    "timezoneOffset": 0,
                    "year": 0
                },
                "entry_id": "string",
                "ext_attr": {},
                "ext_attr_value_models": [
                    {
                        "entryId": "string",
                        "id": "string",
                        "namespaceId": "string",
                        "resourceId": "string",
                        "value": "string"
                    }
                ],
                "external_id": "string",
                "id": 0,
                "md5": "string",
                "owner": "string",
                "size": 0,
                "update_at": {
                    "date": 0,
                    "day": 0,
                    "hours": 0,
                    "minutes": 0,
                    "month": 0,
                    "nanos": 0,
                    "seconds": 0,
                    "time": 0,
                    "timezoneOffset": 0,
                    "year": 0
                },
                "user_data": "string",
                "version": 0
            }
        ]
    },
    "x_ref": {
        "users": [
            {
                "address": "string",
                "avatarLink": "string",
                "birthDate": "string",
                "cardSetting": "string",
                "city": "string",
                "company": "string",
                "country": "string",
                "createAt": "string",
                "department": "string",
                "displayName": "string",
                "district": "string",
                "education": "string",
                "email": "string",
                "employeeNumber": "string",
                "enabled": "unknown type - boolean",
                "gender": 0,
                "notifySettings": [
                    "string"
                ],
                "phoneNumber": "string",
                "phoneNumberValidated": "unknown type - boolean",
                "postcode": "string",
                "professionCertificate": "string",
                "province": "string",
                "qqNumber": "string",
                "realName": "string",
                "remark": "string",
                "resumes": [
                    {
                        "id": "string",
                        "previousPosition": "string",
                        "workYears": 0
                    }
                ],
                "title": "string",
                "titleCertificate": "string",
                "updateAt": "string",
                "userid": "string",
                "username": "string",
                "workTime": {
                    "date": 0,
                    "day": 0,
                    "hours": 0,
                    "minutes": 0,
                    "month": 0,
                    "nanos": 0,
                    "seconds": 0,
                    "time": 0,
                    "timezoneOffset": 0,
                    "year": 0
                }
            }
        ]
    }
}

字段说明
名称 类型 必填 描述
data object: FileModel None
x_ref object: Reference None

7.在项目中创建初始版本的文件

/bimserver/sfs/v3/projects/{projectId}/parent/{parentId}/file

通过 multipart/form-data 的方式上传文件和设置必要的参数(如:user data),如果上传文件夹,则path参数需要填写对应的文件路径

授权

请求头 内容
Authorization Bearer token

请求参数

名称 位置 类型 是否必填 描述
md5 query None
file_name query None
file_external_id query None
file_user_data query None
version_external_id query None
version_user_data query None
version_comments query None
extAttr query None
path query None
projectId path string
parentId path string

响应消息

HTTP状态码 原因 类型 引用模型
200 请求成功 / FileModelDataWrapper
201 Created /
401 未授权,请检查Authorization的Header的Access Token是否设置正确 / ExceptionModel
403 无权访问请求的资源 / ExceptionModel
404 Not Found /
409 请求的资源不存在 / ExceptionModel
500 服务内部错误,请查看详细的错误原因 / ExceptionModel

HTTP请求示例

请求路径
http://192.168.0.105:18020/bimserver/sfs/v3/projects/{projectId}/parent/{parentId}/file?md5=xxx&file_name=xxx&file_external_id=xxx&file_user_data=xxx&version_external_id=xxx&version_user_data=xxx&version_comments=xxx&extAttr=xxx&path=xxx
请求体

类型: multipart/form-data

HTTP响应示例

响应200

{
    "data": {
        "active": "unknown type - boolean",
        "client_id": "string",
        "create_at": {
            "date": 0,
            "day": 0,
            "hours": 0,
            "minutes": 0,
            "month": 0,
            "nanos": 0,
            "seconds": 0,
            "time": 0,
            "timezoneOffset": 0,
            "year": 0
        },
        "current_version": 0,
        "current_version_size": 0,
        "ext_attr": {},
        "external_id": "string",
        "id": "string",
        "locked": "unknown type - boolean",
        "lockedAt": {
            "date": 0,
            "day": 0,
            "hours": 0,
            "minutes": 0,
            "month": 0,
            "nanos": 0,
            "seconds": 0,
            "time": 0,
            "timezoneOffset": 0,
            "year": 0
        },
        "lockedBy": "string",
        "name": "string",
        "owner": "string",
        "parent_id": "string",
        "path": "string",
        "project_id": "string",
        "update_at": {
            "date": 0,
            "day": 0,
            "hours": 0,
            "minutes": 0,
            "month": 0,
            "nanos": 0,
            "seconds": 0,
            "time": 0,
            "timezoneOffset": 0,
            "year": 0
        },
        "user_data": "string",
        "versions": [
            {
                "active": "unknown type - boolean",
                "comments": "string",
                "create_at": {
                    "date": 0,
                    "day": 0,
                    "hours": 0,
                    "minutes": 0,
                    "month": 0,
                    "nanos": 0,
                    "seconds": 0,
                    "time": 0,
                    "timezoneOffset": 0,
                    "year": 0
                },
                "entry_id": "string",
                "ext_attr": {},
                "ext_attr_value_models": [
                    {
                        "entryId": "string",
                        "id": "string",
                        "namespaceId": "string",
                        "resourceId": "string",
                        "value": "string"
                    }
                ],
                "external_id": "string",
                "id": 0,
                "md5": "string",
                "owner": "string",
                "size": 0,
                "update_at": {
                    "date": 0,
                    "day": 0,
                    "hours": 0,
                    "minutes": 0,
                    "month": 0,
                    "nanos": 0,
                    "seconds": 0,
                    "time": 0,
                    "timezoneOffset": 0,
                    "year": 0
                },
                "user_data": "string",
                "version": 0
            }
        ]
    },
    "x_ref": {
        "users": [
            {
                "address": "string",
                "avatarLink": "string",
                "birthDate": "string",
                "cardSetting": "string",
                "city": "string",
                "company": "string",
                "country": "string",
                "createAt": "string",
                "department": "string",
                "displayName": "string",
                "district": "string",
                "education": "string",
                "email": "string",
                "employeeNumber": "string",
                "enabled": "unknown type - boolean",
                "gender": 0,
                "notifySettings": [
                    "string"
                ],
                "phoneNumber": "string",
                "phoneNumberValidated": "unknown type - boolean",
                "postcode": "string",
                "professionCertificate": "string",
                "province": "string",
                "qqNumber": "string",
                "realName": "string",
                "remark": "string",
                "resumes": [
                    {
                        "id": "string",
                        "previousPosition": "string",
                        "workYears": 0
                    }
                ],
                "title": "string",
                "titleCertificate": "string",
                "updateAt": "string",
                "userid": "string",
                "username": "string",
                "workTime": {
                    "date": 0,
                    "day": 0,
                    "hours": 0,
                    "minutes": 0,
                    "month": 0,
                    "nanos": 0,
                    "seconds": 0,
                    "time": 0,
                    "timezoneOffset": 0,
                    "year": 0
                }
            }
        ]
    }
}

字段说明
名称 类型 必填 描述
data object: FileModel None
x_ref object: Reference None

8.为存在的文件下创建新的版本号

/bimserver/sfs/v3/projects/{projectId}/file/{fileId}

一个文件最多支持 200 个版本(version)的记录,version 数量到上限后,会失败。需要删除不必要的 version 来清理。

授权

请求头 内容
Authorization Bearer token

请求参数

名称 位置 类型 是否必填 描述
md5 query None
version_external_id query None
version_user_data query None
version_comments query None
projectId path string
fileId path string

响应消息

HTTP状态码 原因 类型 引用模型
200 请求成功 / FileVersionModelDataWrapper
201 Created /
401 未授权,请检查Authorization的Header的Access Token是否设置正确 / ExceptionModel
403 无权访问请求的资源 / ExceptionModel
404 Not Found /
409 请求的资源不存在 / ExceptionModel
500 服务内部错误,请查看详细的错误原因 / ExceptionModel

HTTP请求示例

请求路径
http://192.168.0.105:18020/bimserver/sfs/v3/projects/{projectId}/file/{fileId}?md5=xxx&version_external_id=xxx&version_user_data=xxx&version_comments=xxx
请求体

类型: multipart/form-data

HTTP响应示例

响应200

{
    "data": {
        "active": "unknown type - boolean",
        "comments": "string",
        "create_at": {
            "date": 0,
            "day": 0,
            "hours": 0,
            "minutes": 0,
            "month": 0,
            "nanos": 0,
            "seconds": 0,
            "time": 0,
            "timezoneOffset": 0,
            "year": 0
        },
        "entry_id": "string",
        "ext_attr": {},
        "ext_attr_value_models": [
            {
                "entryId": "string",
                "id": "string",
                "namespaceId": "string",
                "resourceId": "string",
                "value": "string"
            }
        ],
        "external_id": "string",
        "id": 0,
        "md5": "string",
        "owner": "string",
        "size": 0,
        "update_at": {
            "date": 0,
            "day": 0,
            "hours": 0,
            "minutes": 0,
            "month": 0,
            "nanos": 0,
            "seconds": 0,
            "time": 0,
            "timezoneOffset": 0,
            "year": 0
        },
        "user_data": "string",
        "version": 0
    },
    "x_ref": {
        "users": [
            {
                "address": "string",
                "avatarLink": "string",
                "birthDate": "string",
                "cardSetting": "string",
                "city": "string",
                "company": "string",
                "country": "string",
                "createAt": "string",
                "department": "string",
                "displayName": "string",
                "district": "string",
                "education": "string",
                "email": "string",
                "employeeNumber": "string",
                "enabled": "unknown type - boolean",
                "gender": 0,
                "notifySettings": [
                    "string"
                ],
                "phoneNumber": "string",
                "phoneNumberValidated": "unknown type - boolean",
                "postcode": "string",
                "professionCertificate": "string",
                "province": "string",
                "qqNumber": "string",
                "realName": "string",
                "remark": "string",
                "resumes": [
                    {
                        "id": "string",
                        "previousPosition": "string",
                        "workYears": 0
                    }
                ],
                "title": "string",
                "titleCertificate": "string",
                "updateAt": "string",
                "userid": "string",
                "username": "string",
                "workTime": {
                    "date": 0,
                    "day": 0,
                    "hours": 0,
                    "minutes": 0,
                    "month": 0,
                    "nanos": 0,
                    "seconds": 0,
                    "time": 0,
                    "timezoneOffset": 0,
                    "year": 0
                }
            }
        ]
    }
}

字段说明
名称 类型 必填 描述
data object: FileVersionModel None
x_ref object: Reference None

9.删除AppData文件

/bimserver/sfs/v3/projects/{projectId}/file/{fileId}/appData

version为空表示删除这个文件下所有的版本,有值表示只删除该文件对应的版本

授权

请求头 内容
Authorization Bearer token

请求参数

名称 位置 类型 是否必填 描述
version query None
projectId path string
fileId path string

响应消息

HTTP状态码 原因 类型 引用模型
200 请求成功 / ResponseEntity
204 No Content /
401 未授权,请检查Authorization的Header的Access Token是否设置正确 / ExceptionModel
403 无权访问请求的资源 / ExceptionModel
409 请求的资源不存在 / ExceptionModel
500 服务内部错误,请查看详细的错误原因 / ExceptionModel

HTTP请求示例

请求路径
http://192.168.0.105:18020/bimserver/sfs/v3/projects/{projectId}/file/{fileId}/appData?version=xxx

HTTP响应示例

响应200

{
    "body": {},
    "statusCode": "string",
    "statusCodeValue": 0
}

字段说明
名称 类型 必填 描述
body object None
statusCode string None
statusCodeValue integer None

10.将文件id指向的文件删除

/bimserver/sfs/v3/projects/{projectId}/file/{fileId}

将 fileId 指向的 File 以及关联的 File version 标记为删除

授权

请求头 内容
Authorization Bearer token

请求参数

名称 位置 类型 是否必填 描述
projectId path string
fileId path string

响应消息

HTTP状态码 原因 类型 引用模型
200 请求成功 / FileModelDataWrapper
204 No Content /
401 未授权,请检查Authorization的Header的Access Token是否设置正确 / ExceptionModel
403 无权访问请求的资源 / ExceptionModel
409 请求的资源不存在 / ExceptionModel
500 服务内部错误,请查看详细的错误原因 / ExceptionModel

HTTP请求示例

请求路径
http://192.168.0.105:18020/bimserver/sfs/v3/projects/{projectId}/file/{fileId}

HTTP响应示例

响应200

{
    "data": {
        "active": "unknown type - boolean",
        "client_id": "string",
        "create_at": {
            "date": 0,
            "day": 0,
            "hours": 0,
            "minutes": 0,
            "month": 0,
            "nanos": 0,
            "seconds": 0,
            "time": 0,
            "timezoneOffset": 0,
            "year": 0
        },
        "current_version": 0,
        "current_version_size": 0,
        "ext_attr": {},
        "external_id": "string",
        "id": "string",
        "locked": "unknown type - boolean",
        "lockedAt": {
            "date": 0,
            "day": 0,
            "hours": 0,
            "minutes": 0,
            "month": 0,
            "nanos": 0,
            "seconds": 0,
            "time": 0,
            "timezoneOffset": 0,
            "year": 0
        },
        "lockedBy": "string",
        "name": "string",
        "owner": "string",
        "parent_id": "string",
        "path": "string",
        "project_id": "string",
        "update_at": {
            "date": 0,
            "day": 0,
            "hours": 0,
            "minutes": 0,
            "month": 0,
            "nanos": 0,
            "seconds": 0,
            "time": 0,
            "timezoneOffset": 0,
            "year": 0
        },
        "user_data": "string",
        "versions": [
            {
                "active": "unknown type - boolean",
                "comments": "string",
                "create_at": {
                    "date": 0,
                    "day": 0,
                    "hours": 0,
                    "minutes": 0,
                    "month": 0,
                    "nanos": 0,
                    "seconds": 0,
                    "time": 0,
                    "timezoneOffset": 0,
                    "year": 0
                },
                "entry_id": "string",
                "ext_attr": {},
                "ext_attr_value_models": [
                    {
                        "entryId": "string",
                        "id": "string",
                        "namespaceId": "string",
                        "resourceId": "string",
                        "value": "string"
                    }
                ],
                "external_id": "string",
                "id": 0,
                "md5": "string",
                "owner": "string",
                "size": 0,
                "update_at": {
                    "date": 0,
                    "day": 0,
                    "hours": 0,
                    "minutes": 0,
                    "month": 0,
                    "nanos": 0,
                    "seconds": 0,
                    "time": 0,
                    "timezoneOffset": 0,
                    "year": 0
                },
                "user_data": "string",
                "version": 0
            }
        ]
    },
    "x_ref": {
        "users": [
            {
                "address": "string",
                "avatarLink": "string",
                "birthDate": "string",
                "cardSetting": "string",
                "city": "string",
                "company": "string",
                "country": "string",
                "createAt": "string",
                "department": "string",
                "displayName": "string",
                "district": "string",
                "education": "string",
                "email": "string",
                "employeeNumber": "string",
                "enabled": "unknown type - boolean",
                "gender": 0,
                "notifySettings": [
                    "string"
                ],
                "phoneNumber": "string",
                "phoneNumberValidated": "unknown type - boolean",
                "postcode": "string",
                "professionCertificate": "string",
                "province": "string",
                "qqNumber": "string",
                "realName": "string",
                "remark": "string",
                "resumes": [
                    {
                        "id": "string",
                        "previousPosition": "string",
                        "workYears": 0
                    }
                ],
                "title": "string",
                "titleCertificate": "string",
                "updateAt": "string",
                "userid": "string",
                "username": "string",
                "workTime": {
                    "date": 0,
                    "day": 0,
                    "hours": 0,
                    "minutes": 0,
                    "month": 0,
                    "nanos": 0,
                    "seconds": 0,
                    "time": 0,
                    "timezoneOffset": 0,
                    "year": 0
                }
            }
        ]
    }
}

字段说明
名称 类型 必填 描述
data object: FileModel None
x_ref object: Reference None

11.探查文件是否存在于服务器

/bimserver/sfs/v3/file/detectFileExists

探查文件是否存在于服务器

授权

请求头 内容
Authorization Bearer token

响应消息

HTTP状态码 原因 类型 引用模型
200 OK / ResponseEntity
201 Created /
401 Unauthorized /
403 Forbidden /
404 Not Found /

HTTP请求示例

请求路径
http://192.168.0.105:18020/bimserver/sfs/v3/file/detectFileExists
请求体

检查文件md5值的所需要元数据

类型: application/json

引用模型:file md5 元数据

请求体示例

{
    "md5": "string"
}

字段说明
名称 类型 必填 描述
md5 string 文件md5值

HTTP响应示例

响应200

{
    "body": {},
    "statusCode": "string",
    "statusCodeValue": 0
}

字段说明
名称 类型 必填 描述
body object None
statusCode string None
statusCodeValue integer None

12.通过签名认证的方式下载文件

/bimserver/sfs/v3/projects/{projectId}/file/download/signedUrl

通过签名认证的方式下载文件

授权

请求头 内容
Authorization Bearer token

请求参数

名称 位置 类型 是否必填 描述
signature query None
projectId path string

响应消息

HTTP状态码 原因 类型 引用模型
200 请求成功 / ResponseEntity
401 未授权,请检查Authorization的Header的Access Token是否设置正确 / ExceptionModel
403 无权访问请求的资源 / ExceptionModel
404 Not Found /
409 请求的资源不存在 / ExceptionModel
500 服务内部错误,请查看详细的错误原因 / ExceptionModel

HTTP请求示例

请求路径
http://192.168.0.105:18020/bimserver/sfs/v3/projects/{projectId}/file/download/signedUrl?signature=xxx

HTTP响应示例

响应200

{
    "body": {},
    "statusCode": "string",
    "statusCodeValue": 0
}

字段说明
名称 类型 必填 描述
body object None
statusCode string None
statusCodeValue integer None

13.获取指定文件的指定版本的文件内容

/bimserver/sfs/v3/projects/{projectId}/file/{fileId}/versions/{version}

获取指定 File 的指定 version 的文件内容。

授权

请求头 内容
Authorization Bearer token

请求参数

名称 位置 类型 是否必填 描述
projectId path string
fileId path string
version path string

响应消息

HTTP状态码 原因 类型 引用模型
200 请求成功 application/octet-stream ResponseEntity
401 未授权,请检查Authorization的Header的Access Token是否设置正确 application/octet-stream ExceptionModel
403 无权访问请求的资源 application/octet-stream ExceptionModel
404 Not Found /
409 请求的资源不存在 application/octet-stream ExceptionModel
500 服务内部错误,请查看详细的错误原因 application/octet-stream ExceptionModel

HTTP请求示例

请求路径
http://192.168.0.105:18020/bimserver/sfs/v3/projects/{projectId}/file/{fileId}/versions/{version}

HTTP响应示例

响应200

{
    "body": {},
    "statusCode": "string",
    "statusCodeValue": 0
}

字段说明
名称 类型 必填 描述
body object None
statusCode string None
statusCodeValue integer None

14.下载指定文件的内容

/bimserver/sfs/v3/projects/{projectId}/file/{fileId}

获取指定 File 的文件内容,version 为当前的 version

授权

请求头 内容
Authorization Bearer token

请求参数

名称 位置 类型 是否必填 描述
projectId path string
fileId path string

响应消息

HTTP状态码 原因 类型 引用模型
200 请求成功 application/octet-stream
401 未授权,请检查Authorization的Header的Access Token是否设置正确 application/octet-stream ExceptionModel
403 无权访问请求的资源 application/octet-stream ExceptionModel
404 Not Found /
409 请求的资源不存在 application/octet-stream ExceptionModel
500 服务内部错误,请查看详细的错误原因 application/octet-stream ExceptionModel

HTTP请求示例

请求路径
http://192.168.0.105:18020/bimserver/sfs/v3/projects/{projectId}/file/{fileId}

15.获取一个文件夹的信息

/bimserver/sfs/v3/projects/{projectId}/folder/{folderId}/info

获取一个 Folder 的信息。

授权

请求头 内容
Authorization Bearer token

请求参数

名称 位置 类型 是否必填 描述
projectId path string
folderId path string

响应消息

HTTP状态码 原因 类型 引用模型
200 请求成功 / FolderModelDataWrapper
401 未授权,请检查Authorization的Header的Access Token是否设置正确 / ExceptionModel
403 无权访问请求的资源 / ExceptionModel
404 Not Found /
409 请求的资源不存在 / ExceptionModel
500 服务内部错误,请查看详细的错误原因 / ExceptionModel

HTTP请求示例

请求路径
http://192.168.0.105:18020/bimserver/sfs/v3/projects/{projectId}/folder/{folderId}/info

HTTP响应示例

响应200

{
    "data": {
        "active": "unknown type - boolean",
        "client_id": "string",
        "create_at": {
            "date": 0,
            "day": 0,
            "hours": 0,
            "minutes": 0,
            "month": 0,
            "nanos": 0,
            "seconds": 0,
            "time": 0,
            "timezoneOffset": 0,
            "year": 0
        },
        "external_id": "string",
        "id": "string",
        "locked": "unknown type - boolean",
        "lockedAt": {
            "date": 0,
            "day": 0,
            "hours": 0,
            "minutes": 0,
            "month": 0,
            "nanos": 0,
            "seconds": 0,
            "time": 0,
            "timezoneOffset": 0,
            "year": 0
        },
        "lockedBy": "string",
        "name": "string",
        "owner": "string",
        "parent_id": "string",
        "path": "string",
        "update_at": {
            "date": 0,
            "day": 0,
            "hours": 0,
            "minutes": 0,
            "month": 0,
            "nanos": 0,
            "seconds": 0,
            "time": 0,
            "timezoneOffset": 0,
            "year": 0
        },
        "user_data": "string"
    },
    "x_ref": {
        "users": [
            {
                "address": "string",
                "avatarLink": "string",
                "birthDate": "string",
                "cardSetting": "string",
                "city": "string",
                "company": "string",
                "country": "string",
                "createAt": "string",
                "department": "string",
                "displayName": "string",
                "district": "string",
                "education": "string",
                "email": "string",
                "employeeNumber": "string",
                "enabled": "unknown type - boolean",
                "gender": 0,
                "notifySettings": [
                    "string"
                ],
                "phoneNumber": "string",
                "phoneNumberValidated": "unknown type - boolean",
                "postcode": "string",
                "professionCertificate": "string",
                "province": "string",
                "qqNumber": "string",
                "realName": "string",
                "remark": "string",
                "resumes": [
                    {
                        "id": "string",
                        "previousPosition": "string",
                        "workYears": 0
                    }
                ],
                "title": "string",
                "titleCertificate": "string",
                "updateAt": "string",
                "userid": "string",
                "username": "string",
                "workTime": {
                    "date": 0,
                    "day": 0,
                    "hours": 0,
                    "minutes": 0,
                    "month": 0,
                    "nanos": 0,
                    "seconds": 0,
                    "time": 0,
                    "timezoneOffset": 0,
                    "year": 0
                }
            }
        ]
    }
}

字段说明
名称 类型 必填 描述
data object: FolderModel None
x_ref object: Reference None

16.获取指定项目回收站下面的内容

/bimserver/sfs/v3/projects/{projectId}/recyclebin

获取指定项目回收站下的所有内容(被删除的文件和文件夹均处在同一层级)

授权

请求头 内容
Authorization Bearer token

请求参数

名称 位置 类型 是否必填 描述
pageNumber query None
pageSize query None
projectId path string

响应消息

HTTP状态码 原因 类型 引用模型
200 请求成功 / PageModelForSfs
401 未授权,请检查Authorization的Header的Access Token是否设置正确 / ExceptionModel
403 无权访问请求的资源 / ExceptionModel
404 Not Found /
409 请求的资源不存在 / ExceptionModel
500 服务内部错误,请查看详细的错误原因 / ExceptionModel

HTTP请求示例

请求路径
http://192.168.0.105:18020/bimserver/sfs/v3/projects/{projectId}/recyclebin?pageNumber=xxx&pageSize=xxx

HTTP响应示例

响应200

{
    "data": {
        "file_count": 0,
        "files": [
            {
                "active": "unknown type - boolean",
                "client_id": "string",
                "create_at": {
                    "date": 0,
                    "day": 0,
                    "hours": 0,
                    "minutes": 0,
                    "month": 0,
                    "nanos": 0,
                    "seconds": 0,
                    "time": 0,
                    "timezoneOffset": 0,
                    "year": 0
                },
                "current_version": 0,
                "current_version_size": 0,
                "ext_attr": {},
                "external_id": "string",
                "id": "string",
                "locked": "unknown type - boolean",
                "lockedAt": {
                    "date": 0,
                    "day": 0,
                    "hours": 0,
                    "minutes": 0,
                    "month": 0,
                    "nanos": 0,
                    "seconds": 0,
                    "time": 0,
                    "timezoneOffset": 0,
                    "year": 0
                },
                "lockedBy": "string",
                "name": "string",
                "owner": "string",
                "parent_id": "string",
                "path": "string",
                "project_id": "string",
                "update_at": {
                    "date": 0,
                    "day": 0,
                    "hours": 0,
                    "minutes": 0,
                    "month": 0,
                    "nanos": 0,
                    "seconds": 0,
                    "time": 0,
                    "timezoneOffset": 0,
                    "year": 0
                },
                "user_data": "string",
                "versions": [
                    {
                        "active": "unknown type - boolean",
                        "comments": "string",
                        "create_at": {
                            "date": 0,
                            "day": 0,
                            "hours": 0,
                            "minutes": 0,
                            "month": 0,
                            "nanos": 0,
                            "seconds": 0,
                            "time": 0,
                            "timezoneOffset": 0,
                            "year": 0
                        },
                        "entry_id": "string",
                        "ext_attr": {},
                        "ext_attr_value_models": [
                            {
                                "entryId": "string",
                                "id": "string",
                                "namespaceId": "string",
                                "resourceId": "string",
                                "value": "string"
                            }
                        ],
                        "external_id": "string",
                        "id": 0,
                        "md5": "string",
                        "owner": "string",
                        "size": 0,
                        "update_at": {
                            "date": 0,
                            "day": 0,
                            "hours": 0,
                            "minutes": 0,
                            "month": 0,
                            "nanos": 0,
                            "seconds": 0,
                            "time": 0,
                            "timezoneOffset": 0,
                            "year": 0
                        },
                        "user_data": "string",
                        "version": 0
                    }
                ]
            }
        ],
        "folder_count": 0,
        "folders": [
            {
                "active": "unknown type - boolean",
                "client_id": "string",
                "create_at": {
                    "date": 0,
                    "day": 0,
                    "hours": 0,
                    "minutes": 0,
                    "month": 0,
                    "nanos": 0,
                    "seconds": 0,
                    "time": 0,
                    "timezoneOffset": 0,
                    "year": 0
                },
                "external_id": "string",
                "id": "string",
                "locked": "unknown type - boolean",
                "lockedAt": {
                    "date": 0,
                    "day": 0,
                    "hours": 0,
                    "minutes": 0,
                    "month": 0,
                    "nanos": 0,
                    "seconds": 0,
                    "time": 0,
                    "timezoneOffset": 0,
                    "year": 0
                },
                "lockedBy": "string",
                "name": "string",
                "owner": "string",
                "parent_id": "string",
                "path": "string",
                "update_at": {
                    "date": 0,
                    "day": 0,
                    "hours": 0,
                    "minutes": 0,
                    "month": 0,
                    "nanos": 0,
                    "seconds": 0,
                    "time": 0,
                    "timezoneOffset": 0,
                    "year": 0
                },
                "user_data": "string"
            }
        ]
    },
    "first": "unknown type - boolean",
    "hasNext": "unknown type - boolean",
    "hasPrevious": "unknown type - boolean",
    "last": "unknown type - boolean",
    "pageNumber": 0,
    "pageSize": 0,
    "totalElements": 0,
    "totalPage": 0
}

字段说明
名称 类型 必填 描述
data object: FileEntryModelList None
first boolean None
hasNext boolean 是否有下一页
hasPrevious boolean 是否有上一页
last boolean None
pageNumber integer 当前是第几页
pageSize integer 当前页的最大记录数
totalElements integer 内容总共有多少条
totalPage integer 总共有多少页

17.移动文件到指定文件夹下面

/bimserver/sfs/v3/projects/{projectId}/parent/{parentId}/file/batch

移动文件到指定的文件夹下面。

授权

请求头 内容
Authorization Bearer token

请求参数

名称 位置 类型 是否必填 描述
projectId path string
parentId path string

HTTP请求示例

请求路径
http://192.168.0.105:18020/bimserver/sfs/v3/projects/{projectId}/parent/{parentId}/file/batch

18.None

/bimserver/sfs/v3/projects/{projectId}/recyclebin/{entryId}

恢复被删除的条目(文件或文件夹),如果存在同名条目则恢复失败。

授权

请求头 内容
Authorization Bearer token

HTTP请求示例

请求路径
http://192.168.0.105:18020/bimserver/sfs/v3/projects/{projectId}/recyclebin/{entryId}

19.根据条件搜索文件

/bimserver/sfs/v3/file/search

根据条件搜索文件

授权

请求头 内容
Authorization Bearer token

响应消息

HTTP状态码 原因 类型 引用模型
200 请求成功 application/json FileWithVersionModelDataWrapper
201 Created /
401 未授权,请检查Authorization的Header的Access Token是否设置正确 application/json ExceptionModel
403 无权访问请求的资源 application/json ExceptionModel
404 Not Found /
409 请求的资源不存在 application/json ExceptionModel
500 服务内部错误,请查看详细的错误原因 application/json ExceptionModel

HTTP请求示例

请求路径
http://192.168.0.105:18020/bimserver/sfs/v3/file/search
请求体

搜索参数

类型: application/json

引用模型:SearchMetadata

请求体示例

{
    "conditionalFormula": "string",
    "path": "string",
    "projectId": "string",
    "searchData": [
        {
            "conditionalExpression": {
                "searchAttribute": {
                    "dataType": "string",
                    "extendedAttribute": "unknown type - boolean",
                    "key": "string",
                    "resourceType": "string"
                },
                "searchOperator": {
                    "type": "string"
                },
                "searchValue": {
                    "value": "string"
                }
            },
            "order": 0
        }
    ]
}

字段说明
名称 类型 必填 描述
conditionalFormula string 搜索条件公式
path string 搜索路径,默认为@root。当 projectId 不为空时此属性会对搜索结果进行筛选。
projectId string 项目Id
searchData array 搜索标识和搜索表达式的Model

HTTP响应示例

响应200

{
    "data": {
        "files": [
            {
                "active": "unknown type - boolean",
                "client_id": "string",
                "create_at": {
                    "date": 0,
                    "day": 0,
                    "hours": 0,
                    "minutes": 0,
                    "month": 0,
                    "nanos": 0,
                    "seconds": 0,
                    "time": 0,
                    "timezoneOffset": 0,
                    "year": 0
                },
                "ext_attr_value_models": [
                    {
                        "entryId": "string",
                        "id": "string",
                        "namespaceId": "string",
                        "resourceId": "string",
                        "value": "string"
                    }
                ],
                "external_id": "string",
                "id": "string",
                "name": "string",
                "owner": "string",
                "parent_models": [
                    {
                        "id": "string",
                        "name": "string"
                    }
                ],
                "path": "string",
                "project_id": "string",
                "update_at": {
                    "date": 0,
                    "day": 0,
                    "hours": 0,
                    "minutes": 0,
                    "month": 0,
                    "nanos": 0,
                    "seconds": 0,
                    "time": 0,
                    "timezoneOffset": 0,
                    "year": 0
                },
                "user_data": "string",
                "versions": {
                    "active": "unknown type - boolean",
                    "comments": "string",
                    "create_at": {
                        "date": 0,
                        "day": 0,
                        "hours": 0,
                        "minutes": 0,
                        "month": 0,
                        "nanos": 0,
                        "seconds": 0,
                        "time": 0,
                        "timezoneOffset": 0,
                        "year": 0
                    },
                    "entry_id": "string",
                    "ext_attr": {},
                    "ext_attr_value_models": [
                        {
                            "entryId": "string",
                            "id": "string",
                            "namespaceId": "string",
                            "resourceId": "string",
                            "value": "string"
                        }
                    ],
                    "external_id": "string",
                    "id": 0,
                    "md5": "string",
                    "owner": "string",
                    "size": 0,
                    "update_at": {
                        "date": 0,
                        "day": 0,
                        "hours": 0,
                        "minutes": 0,
                        "month": 0,
                        "nanos": 0,
                        "seconds": 0,
                        "time": 0,
                        "timezoneOffset": 0,
                        "year": 0
                    },
                    "user_data": "string",
                    "version": 0
                }
            }
        ]
    },
    "x_ref": {
        "users": [
            {
                "address": "string",
                "avatarLink": "string",
                "birthDate": "string",
                "cardSetting": "string",
                "city": "string",
                "company": "string",
                "country": "string",
                "createAt": "string",
                "department": "string",
                "displayName": "string",
                "district": "string",
                "education": "string",
                "email": "string",
                "employeeNumber": "string",
                "enabled": "unknown type - boolean",
                "gender": 0,
                "notifySettings": [
                    "string"
                ],
                "phoneNumber": "string",
                "phoneNumberValidated": "unknown type - boolean",
                "postcode": "string",
                "professionCertificate": "string",
                "province": "string",
                "qqNumber": "string",
                "realName": "string",
                "remark": "string",
                "resumes": [
                    {
                        "id": "string",
                        "previousPosition": "string",
                        "workYears": 0
                    }
                ],
                "title": "string",
                "titleCertificate": "string",
                "updateAt": "string",
                "userid": "string",
                "username": "string",
                "workTime": {
                    "date": 0,
                    "day": 0,
                    "hours": 0,
                    "minutes": 0,
                    "month": 0,
                    "nanos": 0,
                    "seconds": 0,
                    "time": 0,
                    "timezoneOffset": 0,
                    "year": 0
                }
            }
        ]
    }
}

字段说明
名称 类型 必填 描述
data object: FileVersionListModel None
x_ref object: Reference None

20.指定项目下的文件锁定状态

/bimserver/sfs/v3/projects/{projectId}/file/{fileId}/locking

对 File 锁定时将锁定其所有版本

授权

请求头 内容
Authorization Bearer token

请求参数

名称 位置 类型 是否必填 描述
projectId path string
fileId path string

响应消息

HTTP状态码 原因 类型 引用模型
200 请求成功 / LockModelDataWrapper
201 Created /
401 未授权,请检查Authorization的Header的Access Token是否设置正确 / ExceptionModel
403 无权访问请求的资源 / ExceptionModel
404 Not Found /
409 请求的资源不存在 / ExceptionModel
500 服务内部错误,请查看详细的错误原因 / ExceptionModel

HTTP请求示例

请求路径
http://192.168.0.105:18020/bimserver/sfs/v3/projects/{projectId}/file/{fileId}/locking
请求体

新增一个'锁'需要的参数

类型: application/json

引用模型:LockMetadata

请求体示例

{
    "entryId": "string",
    "locked": "unknown type - boolean",
    "lockedAt": {
        "date": 0,
        "day": 0,
        "hours": 0,
        "minutes": 0,
        "month": 0,
        "nanos": 0,
        "seconds": 0,
        "time": 0,
        "timezoneOffset": 0,
        "year": 0
    },
    "lockedBy": "string"
}

字段说明
名称 类型 必填 描述
entryId string 被锁定实体的 ID
locked boolean '锁'的状态,表示锁是否生效;默认为:true
lockedAt object: Timestamp None
lockedBy string 锁定者,锁定资源的人,由Client自定一个其本身可识别的值

HTTP响应示例

响应200

{
    "data": {
        "entryId": "string",
        "locked": "unknown type - boolean",
        "lockedAt": {
            "date": 0,
            "day": 0,
            "hours": 0,
            "minutes": 0,
            "month": 0,
            "nanos": 0,
            "seconds": 0,
            "time": 0,
            "timezoneOffset": 0,
            "year": 0
        },
        "lockedBy": "string"
    },
    "x_ref": {
        "users": [
            {
                "address": "string",
                "avatarLink": "string",
                "birthDate": "string",
                "cardSetting": "string",
                "city": "string",
                "company": "string",
                "country": "string",
                "createAt": "string",
                "department": "string",
                "displayName": "string",
                "district": "string",
                "education": "string",
                "email": "string",
                "employeeNumber": "string",
                "enabled": "unknown type - boolean",
                "gender": 0,
                "notifySettings": [
                    "string"
                ],
                "phoneNumber": "string",
                "phoneNumberValidated": "unknown type - boolean",
                "postcode": "string",
                "professionCertificate": "string",
                "province": "string",
                "qqNumber": "string",
                "realName": "string",
                "remark": "string",
                "resumes": [
                    {
                        "id": "string",
                        "previousPosition": "string",
                        "workYears": 0
                    }
                ],
                "title": "string",
                "titleCertificate": "string",
                "updateAt": "string",
                "userid": "string",
                "username": "string",
                "workTime": {
                    "date": 0,
                    "day": 0,
                    "hours": 0,
                    "minutes": 0,
                    "month": 0,
                    "nanos": 0,
                    "seconds": 0,
                    "time": 0,
                    "timezoneOffset": 0,
                    "year": 0
                }
            }
        ]
    }
}

字段说明
名称 类型 必填 描述
data object: LockMetadata None
x_ref object: Reference None

21.指定项目下的文件夹锁定状态

/bimserver/sfs/v3/projects/{projectId}/folder/{folderId}/locking

设定指定的 Project 下的 Folder 锁定状态

授权

请求头 内容
Authorization Bearer token

请求参数

名称 位置 类型 是否必填 描述
projectId path string
folderId path string

响应消息

HTTP状态码 原因 类型 引用模型
200 请求成功 / LockModelDataWrapper
201 Created /
401 未授权,请检查Authorization的Header的Access Token是否设置正确 / ExceptionModel
403 无权访问请求的资源 / ExceptionModel
404 Not Found /
409 请求的资源不存在 / ExceptionModel
500 服务内部错误,请查看详细的错误原因 / ExceptionModel

HTTP请求示例

请求路径
http://192.168.0.105:18020/bimserver/sfs/v3/projects/{projectId}/folder/{folderId}/locking
请求体

新增一个'锁'需要的参数

类型: application/json

引用模型:LockMetadata

请求体示例

{
    "entryId": "string",
    "locked": "unknown type - boolean",
    "lockedAt": {
        "date": 0,
        "day": 0,
        "hours": 0,
        "minutes": 0,
        "month": 0,
        "nanos": 0,
        "seconds": 0,
        "time": 0,
        "timezoneOffset": 0,
        "year": 0
    },
    "lockedBy": "string"
}

字段说明
名称 类型 必填 描述
entryId string 被锁定实体的 ID
locked boolean '锁'的状态,表示锁是否生效;默认为:true
lockedAt object: Timestamp None
lockedBy string 锁定者,锁定资源的人,由Client自定一个其本身可识别的值

HTTP响应示例

响应200

{
    "data": {
        "entryId": "string",
        "locked": "unknown type - boolean",
        "lockedAt": {
            "date": 0,
            "day": 0,
            "hours": 0,
            "minutes": 0,
            "month": 0,
            "nanos": 0,
            "seconds": 0,
            "time": 0,
            "timezoneOffset": 0,
            "year": 0
        },
        "lockedBy": "string"
    },
    "x_ref": {
        "users": [
            {
                "address": "string",
                "avatarLink": "string",
                "birthDate": "string",
                "cardSetting": "string",
                "city": "string",
                "company": "string",
                "country": "string",
                "createAt": "string",
                "department": "string",
                "displayName": "string",
                "district": "string",
                "education": "string",
                "email": "string",
                "employeeNumber": "string",
                "enabled": "unknown type - boolean",
                "gender": 0,
                "notifySettings": [
                    "string"
                ],
                "phoneNumber": "string",
                "phoneNumberValidated": "unknown type - boolean",
                "postcode": "string",
                "professionCertificate": "string",
                "province": "string",
                "qqNumber": "string",
                "realName": "string",
                "remark": "string",
                "resumes": [
                    {
                        "id": "string",
                        "previousPosition": "string",
                        "workYears": 0
                    }
                ],
                "title": "string",
                "titleCertificate": "string",
                "updateAt": "string",
                "userid": "string",
                "username": "string",
                "workTime": {
                    "date": 0,
                    "day": 0,
                    "hours": 0,
                    "minutes": 0,
                    "month": 0,
                    "nanos": 0,
                    "seconds": 0,
                    "time": 0,
                    "timezoneOffset": 0,
                    "year": 0
                }
            }
        ]
    }
}

字段说明
名称 类型 必填 描述
data object: LockMetadata None
x_ref object: Reference None

分片上传

22.完成分片上传文件

/bimserver/sfs/v3/projects/{projectId}/file/multipart/complete

完成分片上传文件

授权

请求头 内容
Authorization Bearer token

请求参数

名称 位置 类型 是否必填 描述
projectId path string

响应消息

HTTP状态码 原因 类型 引用模型
200 OK / RestEntity«CompleteMultipartUploadModel»
201 Created /
401 Unauthorized /
403 Forbidden /
404 Not Found /

HTTP请求示例

请求路径
http://192.168.0.105:18020/bimserver/sfs/v3/projects/{projectId}/file/multipart/complete
请求体

uploadMetadata

类型: application/json

引用模型:CompleteMultipartUploadMetadata

请求体示例

{
    "md5": "string",
    "partETags": [
        {
            "partETag": "string",
            "partNumber": 0
        }
    ],
    "rollingCheckSum": "string",
    "uploadId": "string"
}

字段说明
名称 类型 必填 描述
md5 string 完整文件md5值
partETags array 分片上传的分片实体标识,用于完成分片上传的数据检测
rollingCheckSum string 分片rollingCheckSum
uploadId string 分片上传Id

HTTP响应示例

响应200

{
    "data": {
        "clientId": "string",
        "createBy": "string",
        "md5": "string",
        "projectId": "string",
        "size": 0
    }
}

字段说明
名称 类型 必填 描述
data object: CompleteMultipartUploadModel None

23.初始化分片上传

/bimserver/sfs/v3/projects/{projectId}/file/multipart/init

初始化分片上传

授权

请求头 内容
Authorization Bearer token

请求参数

名称 位置 类型 是否必填 描述
test query None
test3 query None
projectId path string

响应消息

HTTP状态码 原因 类型 引用模型
200 OK / RestEntity«InitMultipartUploadModel»
201 Created /
401 Unauthorized /
403 Forbidden /
404 Not Found /

HTTP请求示例

请求路径
http://192.168.0.105:18020/bimserver/sfs/v3/projects/{projectId}/file/multipart/init?test=xxx&test3=xxx

HTTP响应示例

响应200

{
    "data": {
        "uploadId": "string",
        "uploadParts": null
    }
}

字段说明
名称 类型 必填 描述
data object: InitMultipartUploadModel None

24.列出分片数据

/bimserver/sfs/v3/projects/{projectId}/file/multipart/parts

列出分片数据

授权

请求头 内容
Authorization Bearer token

请求参数

名称 位置 类型 是否必填 描述
uploadId query None
projectId path string

响应消息

HTTP状态码 原因 类型 引用模型
200 OK / RestEntity«ListPartsModel»
401 Unauthorized /
403 Forbidden /
404 Not Found /

HTTP请求示例

请求路径
http://192.168.0.105:18020/bimserver/sfs/v3/projects/{projectId}/file/multipart/parts?uploadId=xxx

HTTP响应示例

响应200

{
    "data": {
        "parts": [
            {
                "createAt": {
                    "date": 0,
                    "day": 0,
                    "hours": 0,
                    "minutes": 0,
                    "month": 0,
                    "nanos": 0,
                    "seconds": 0,
                    "time": 0,
                    "timezoneOffset": 0,
                    "year": 0
                },
                "partETag": "string",
                "partNumber": 0,
                "partSize": 0
            }
        ],
        "uploadId": "string"
    }
}

字段说明
名称 类型 必填 描述
data object: ListPartsModel None

25.逐个上传分片文件

/bimserver/sfs/v3/projects/{projectId}/file/multipart/upload

如果该分片号对应的分片文件之前已上传到服务器,会被覆盖

授权

请求头 内容
Authorization Bearer token

请求参数

名称 位置 类型 是否必填 描述
uploadId query None
partNumber query None
projectId path string

响应消息

HTTP状态码 原因 类型 引用模型
200 OK / RestEntity«UploadPartModel»
201 Created /
401 Unauthorized /
403 Forbidden /
404 Not Found /

HTTP请求示例

请求路径
http://192.168.0.105:18020/bimserver/sfs/v3/projects/{projectId}/file/multipart/upload?uploadId=xxx&partNumber=xxx
请求体

类型: multipart/form-data

HTTP响应示例

响应200

{
    "data": {
        "createAt": {
            "date": 0,
            "day": 0,
            "hours": 0,
            "minutes": 0,
            "month": 0,
            "nanos": 0,
            "seconds": 0,
            "time": 0,
            "timezoneOffset": 0,
            "year": 0
        },
        "partETag": "string",
        "partNumber": 0,
        "partSize": 0
    }
}

字段说明
名称 类型 必填 描述
data object: UploadPartModel None

存储位置

26.获取带有签证信息下的路径

/bimserver/sfs/v3/projects/{projectId}/file/download/signedUrl

获取带有签证信息的下载文件的URL

授权

请求头 内容
Authorization Bearer token

请求参数

名称 位置 类型 是否必填 描述
projectId path string

响应消息

HTTP状态码 原因 类型 引用模型
200 OK / ResponseEntity
201 Created /
401 Unauthorized /
403 Forbidden /
404 Not Found /

HTTP请求示例

请求路径
http://192.168.0.105:18020/bimserver/sfs/v3/projects/{projectId}/file/download/signedUrl
请求体

签名的参数信息

类型: application/json

引用模型:获取访问文件签名的参数 元数据

请求体示例

{
    "expire": 0,
    "urn": "string"
}

字段说明
名称 类型 必填 描述
expire integer 过期时间,单位为秒
urn string SFS File URN

HTTP响应示例

响应200

{
    "body": {},
    "statusCode": "string",
    "statusCodeValue": 0
}

字段说明
名称 类型 必填 描述
body object None
statusCode string None
statusCodeValue integer None

27.获取带有签证信息的下载文件夹的路径

/bimserver/sfs/v3/projects/{projectId}/download/signedUrl

获取带有签证信息的下载文件夹的URL

授权

请求头 内容
Authorization Bearer token

请求参数

名称 位置 类型 是否必填 描述
projectId path string

响应消息

HTTP状态码 原因 类型 引用模型
200 OK / ResponseEntity
201 Created /
401 Unauthorized /
403 Forbidden /
404 Not Found /

HTTP请求示例

请求路径
http://192.168.0.105:18020/bimserver/sfs/v3/projects/{projectId}/download/signedUrl
请求体

签名的参数信息

类型: application/json

引用模型:获取访问文件夹签名的参数 元数据

请求体示例

{
    "expire": 0,
    "urns": [
        "string"
    ]
}

字段说明
名称 类型 必填 描述
expire integer 过期时间,单位为秒
urns array SFS URN 集合

HTTP响应示例

响应200

{
    "body": {},
    "statusCode": "string",
    "statusCodeValue": 0
}

字段说明
名称 类型 必填 描述
body object None
statusCode string None
statusCodeValue integer None

28.根据文件夹树批量创建文件夹

/bimserver/sfs/v3/projects/{projectId}/folder/tree

根据文件夹树批量创建文件夹。

授权

请求头 内容
Authorization Bearer token

请求参数

名称 位置 类型 是否必填 描述
projectId path string

响应消息

HTTP状态码 原因 类型 引用模型
200 OK / RestEntity«List«FolderNodeModel»»
201 Created /
401 Unauthorized /
403 Forbidden /
404 Not Found /

HTTP请求示例

请求路径
http://192.168.0.105:18020/bimserver/sfs/v3/projects/{projectId}/folder/tree
请求体

需要的文件夹树节点元数据

类型: application/json

引用模型:FolderTree

请求体示例

{
    "nodes": [
        {
            "id": "string",
            "name": "string",
            "parentId": "string"
        }
    ]
}

字段说明
名称 类型 必填 描述
nodes array 文件夹树节点

HTTP响应示例

响应200

{
    "data": [
        {
            "id": "string",
            "name": "string",
            "outId": "string",
            "parentId": "string"
        }
    ]
}

字段说明
名称 类型 必填 描述
data array 响应实体数据

29.根据文件或文件夹的Urn获取路径去

/bimserver/sfs/v3/path

包含本身和一个 父节点链,以父节点链上每个节点的兄弟节点

授权

请求头 内容
Authorization Bearer token

请求参数

名称 位置 类型 是否必填 描述
urn query None

响应消息

HTTP状态码 原因 类型 引用模型
200 请求成功 / FilePathEntryModelDataWrapper
401 未授权,请检查Authorization的Header的Access Token是否设置正确 / ExceptionModel
403 无权访问请求的资源 / ExceptionModel
404 Not Found /
409 请求的资源不存在 / ExceptionModel
500 服务内部错误,请查看详细的错误原因 / ExceptionModel

HTTP请求示例

请求路径
http://192.168.0.105:18020/bimserver/sfs/v3/path?urn=xxx

HTTP响应示例

响应200

{
    "data": {
        "brothers": [
            {
                "id": "string",
                "name": "string"
            }
        ],
        "child": {
            "$ref": "#/components/schemas/FilePathEntryModel"
        },
        "id": "string",
        "name": "string"
    },
    "x_ref": {
        "users": [
            {
                "address": "string",
                "avatarLink": "string",
                "birthDate": "string",
                "cardSetting": "string",
                "city": "string",
                "company": "string",
                "country": "string",
                "createAt": "string",
                "department": "string",
                "displayName": "string",
                "district": "string",
                "education": "string",
                "email": "string",
                "employeeNumber": "string",
                "enabled": "unknown type - boolean",
                "gender": 0,
                "notifySettings": [
                    "string"
                ],
                "phoneNumber": "string",
                "phoneNumberValidated": "unknown type - boolean",
                "postcode": "string",
                "professionCertificate": "string",
                "province": "string",
                "qqNumber": "string",
                "realName": "string",
                "remark": "string",
                "resumes": [
                    {
                        "id": "string",
                        "previousPosition": "string",
                        "workYears": 0
                    }
                ],
                "title": "string",
                "titleCertificate": "string",
                "updateAt": "string",
                "userid": "string",
                "username": "string",
                "workTime": {
                    "date": 0,
                    "day": 0,
                    "hours": 0,
                    "minutes": 0,
                    "month": 0,
                    "nanos": 0,
                    "seconds": 0,
                    "time": 0,
                    "timezoneOffset": 0,
                    "year": 0
                }
            }
        ]
    }
}

字段说明
名称 类型 必填 描述
data object: FilePathEntryModel None
x_ref object: Reference None

30.None

/bimserver/sfs/v3/uploadUrl

根据Type获取文件上传需要的url

授权

请求头 内容
Authorization Bearer token

HTTP请求示例

请求路径
http://192.168.0.105:18020/bimserver/sfs/v3/uploadUrl

文件夹管理

31.在指定的文件夹下面创建一个新的文件夹

/bimserver/sfs/v3/projects/{projectId}/parent/{parentId}/folder

顶级(根)Folder 的 Folder ID 为 @root 。

授权

请求头 内容
Authorization Bearer token

请求参数

名称 位置 类型 是否必填 描述
projectId path string
parentId path string

响应消息

HTTP状态码 原因 类型 引用模型
200 请求成功 / FolderModelDataWrapper
201 Created /
401 未授权,请检查Authorization的Header的Access Token是否设置正确 / ExceptionModel
403 无权访问请求的资源 / ExceptionModel
404 Not Found /
409 请求的资源不存在 / ExceptionModel
500 服务内部错误,请查看详细的错误原因 / ExceptionModel

HTTP请求示例

请求路径
http://192.168.0.105:18020/bimserver/sfs/v3/projects/{projectId}/parent/{parentId}/folder
请求体

Folder 元数据,创建一个 Folder 的必要参数,例如文件夹名称和User Data等

类型: application/json

引用模型:FolderMetadata

请求体示例

{
    "external_id": "string",
    "name": "string",
    "owner": "string",
    "user_data": "string"
}

字段说明
名称 类型 必填 描述
external_id string Folder 对应的一个 外部系统的 ID,方便系统间的相互引用。
name string Folder 的名称
owner string Folder创建者的用户名。
user_data string Folder 附属的用户数据 (User Data),用来存放一些自定义的数据。

HTTP响应示例

响应200

{
    "data": {
        "active": "unknown type - boolean",
        "client_id": "string",
        "create_at": {
            "date": 0,
            "day": 0,
            "hours": 0,
            "minutes": 0,
            "month": 0,
            "nanos": 0,
            "seconds": 0,
            "time": 0,
            "timezoneOffset": 0,
            "year": 0
        },
        "external_id": "string",
        "id": "string",
        "locked": "unknown type - boolean",
        "lockedAt": {
            "date": 0,
            "day": 0,
            "hours": 0,
            "minutes": 0,
            "month": 0,
            "nanos": 0,
            "seconds": 0,
            "time": 0,
            "timezoneOffset": 0,
            "year": 0
        },
        "lockedBy": "string",
        "name": "string",
        "owner": "string",
        "parent_id": "string",
        "path": "string",
        "update_at": {
            "date": 0,
            "day": 0,
            "hours": 0,
            "minutes": 0,
            "month": 0,
            "nanos": 0,
            "seconds": 0,
            "time": 0,
            "timezoneOffset": 0,
            "year": 0
        },
        "user_data": "string"
    },
    "x_ref": {
        "users": [
            {
                "address": "string",
                "avatarLink": "string",
                "birthDate": "string",
                "cardSetting": "string",
                "city": "string",
                "company": "string",
                "country": "string",
                "createAt": "string",
                "department": "string",
                "displayName": "string",
                "district": "string",
                "education": "string",
                "email": "string",
                "employeeNumber": "string",
                "enabled": "unknown type - boolean",
                "gender": 0,
                "notifySettings": [
                    "string"
                ],
                "phoneNumber": "string",
                "phoneNumberValidated": "unknown type - boolean",
                "postcode": "string",
                "professionCertificate": "string",
                "province": "string",
                "qqNumber": "string",
                "realName": "string",
                "remark": "string",
                "resumes": [
                    {
                        "id": "string",
                        "previousPosition": "string",
                        "workYears": 0
                    }
                ],
                "title": "string",
                "titleCertificate": "string",
                "updateAt": "string",
                "userid": "string",
                "username": "string",
                "workTime": {
                    "date": 0,
                    "day": 0,
                    "hours": 0,
                    "minutes": 0,
                    "month": 0,
                    "nanos": 0,
                    "seconds": 0,
                    "time": 0,
                    "timezoneOffset": 0,
                    "year": 0
                }
            }
        ]
    }
}

字段说明
名称 类型 必填 描述
data object: FolderModel None
x_ref object: Reference None

32.批量删除文件和文件夹

/bimserver/sfs/v3/projects/{projectId}/entries

批量删除文件和文件夹

授权

请求头 内容
Authorization Bearer token

请求参数

名称 位置 类型 是否必填 描述
projectId path string

响应消息

HTTP状态码 原因 类型 引用模型
200 请求成功 / EntryModelListDataWrapper
204 No Content /
401 未授权,请检查Authorization的Header的Access Token是否设置正确 / ExceptionModel
403 无权访问请求的资源 / ExceptionModel
409 请求的资源不存在 / ExceptionModel
500 服务内部错误,请查看详细的错误原因 / ExceptionModel

HTTP请求示例

请求路径
http://192.168.0.105:18020/bimserver/sfs/v3/projects/{projectId}/entries
请求体

被删除的Entry的相关参数

类型: /

引用模型:EntryMetadataList

请求体示例

{
    "entryMetadataList": [
        {
            "id": "string",
            "type": "string"
        }
    ]
}

字段说明
名称 类型 必填 描述
entryMetadataList array 用于存放 File 或 Folder 的实体的列表

HTTP响应示例

响应200

{
    "data": {
        "entryModels": [
            {
                "id": "string",
                "name": "string",
                "type": "string"
            }
        ]
    },
    "x_ref": {
        "users": [
            {
                "address": "string",
                "avatarLink": "string",
                "birthDate": "string",
                "cardSetting": "string",
                "city": "string",
                "company": "string",
                "country": "string",
                "createAt": "string",
                "department": "string",
                "displayName": "string",
                "district": "string",
                "education": "string",
                "email": "string",
                "employeeNumber": "string",
                "enabled": "unknown type - boolean",
                "gender": 0,
                "notifySettings": [
                    "string"
                ],
                "phoneNumber": "string",
                "phoneNumberValidated": "unknown type - boolean",
                "postcode": "string",
                "professionCertificate": "string",
                "province": "string",
                "qqNumber": "string",
                "realName": "string",
                "remark": "string",
                "resumes": [
                    {
                        "id": "string",
                        "previousPosition": "string",
                        "workYears": 0
                    }
                ],
                "title": "string",
                "titleCertificate": "string",
                "updateAt": "string",
                "userid": "string",
                "username": "string",
                "workTime": {
                    "date": 0,
                    "day": 0,
                    "hours": 0,
                    "minutes": 0,
                    "month": 0,
                    "nanos": 0,
                    "seconds": 0,
                    "time": 0,
                    "timezoneOffset": 0,
                    "year": 0
                }
            }
        ]
    }
}

字段说明
名称 类型 必填 描述
data object: EntryModelList None
x_ref object: Reference None

33.删除一个文件夹

/bimserver/sfs/v3/projects/{projectId}/folder/{folderId}

删除一个Folder

授权

请求头 内容
Authorization Bearer token

请求参数

名称 位置 类型 是否必填 描述
projectId path string
folderId path string

响应消息

HTTP状态码 原因 类型 引用模型
200 请求成功 / ResponseEntity
204 No Content /
401 未授权,请检查Authorization的Header的Access Token是否设置正确 / ExceptionModel
403 无权访问请求的资源 / ExceptionModel
409 请求的资源不存在 / ExceptionModel
500 服务内部错误,请查看详细的错误原因 / ExceptionModel

HTTP请求示例

请求路径
http://192.168.0.105:18020/bimserver/sfs/v3/projects/{projectId}/folder/{folderId}

HTTP响应示例

响应200

{
    "body": {},
    "statusCode": "string",
    "statusCodeValue": 0
}

字段说明
名称 类型 必填 描述
body object None
statusCode string None
statusCodeValue integer None

34.获取一个文件夹下面的文件或者文件夹

/bimserver/sfs/v3/projects/{projectId}/folder/{folderId}

获取一个 Folder 下面的所有的 Folder 和 File

授权

请求头 内容
Authorization Bearer token

请求参数

名称 位置 类型 是否必填 描述
pageNumber query None
pageSize query None
orderBy query None
direction query None
projectId path string
folderId path string

响应消息

HTTP状态码 原因 类型 引用模型
200 请求成功 / PageModelForSfs
401 未授权,请检查Authorization的Header的Access Token是否设置正确 / ExceptionModel
403 无权访问请求的资源 / ExceptionModel
404 Not Found /
409 请求的资源不存在 / ExceptionModel
500 服务内部错误,请查看详细的错误原因 / ExceptionModel

HTTP请求示例

请求路径
http://192.168.0.105:18020/bimserver/sfs/v3/projects/{projectId}/folder/{folderId}?pageNumber=xxx&pageSize=xxx&orderBy=xxx&direction=xxx

HTTP响应示例

响应200

{
    "data": {
        "file_count": 0,
        "files": [
            {
                "active": "unknown type - boolean",
                "client_id": "string",
                "create_at": {
                    "date": 0,
                    "day": 0,
                    "hours": 0,
                    "minutes": 0,
                    "month": 0,
                    "nanos": 0,
                    "seconds": 0,
                    "time": 0,
                    "timezoneOffset": 0,
                    "year": 0
                },
                "current_version": 0,
                "current_version_size": 0,
                "ext_attr": {},
                "external_id": "string",
                "id": "string",
                "locked": "unknown type - boolean",
                "lockedAt": {
                    "date": 0,
                    "day": 0,
                    "hours": 0,
                    "minutes": 0,
                    "month": 0,
                    "nanos": 0,
                    "seconds": 0,
                    "time": 0,
                    "timezoneOffset": 0,
                    "year": 0
                },
                "lockedBy": "string",
                "name": "string",
                "owner": "string",
                "parent_id": "string",
                "path": "string",
                "project_id": "string",
                "update_at": {
                    "date": 0,
                    "day": 0,
                    "hours": 0,
                    "minutes": 0,
                    "month": 0,
                    "nanos": 0,
                    "seconds": 0,
                    "time": 0,
                    "timezoneOffset": 0,
                    "year": 0
                },
                "user_data": "string",
                "versions": [
                    {
                        "active": "unknown type - boolean",
                        "comments": "string",
                        "create_at": {
                            "date": 0,
                            "day": 0,
                            "hours": 0,
                            "minutes": 0,
                            "month": 0,
                            "nanos": 0,
                            "seconds": 0,
                            "time": 0,
                            "timezoneOffset": 0,
                            "year": 0
                        },
                        "entry_id": "string",
                        "ext_attr": {},
                        "ext_attr_value_models": [
                            {
                                "entryId": "string",
                                "id": "string",
                                "namespaceId": "string",
                                "resourceId": "string",
                                "value": "string"
                            }
                        ],
                        "external_id": "string",
                        "id": 0,
                        "md5": "string",
                        "owner": "string",
                        "size": 0,
                        "update_at": {
                            "date": 0,
                            "day": 0,
                            "hours": 0,
                            "minutes": 0,
                            "month": 0,
                            "nanos": 0,
                            "seconds": 0,
                            "time": 0,
                            "timezoneOffset": 0,
                            "year": 0
                        },
                        "user_data": "string",
                        "version": 0
                    }
                ]
            }
        ],
        "folder_count": 0,
        "folders": [
            {
                "active": "unknown type - boolean",
                "client_id": "string",
                "create_at": {
                    "date": 0,
                    "day": 0,
                    "hours": 0,
                    "minutes": 0,
                    "month": 0,
                    "nanos": 0,
                    "seconds": 0,
                    "time": 0,
                    "timezoneOffset": 0,
                    "year": 0
                },
                "external_id": "string",
                "id": "string",
                "locked": "unknown type - boolean",
                "lockedAt": {
                    "date": 0,
                    "day": 0,
                    "hours": 0,
                    "minutes": 0,
                    "month": 0,
                    "nanos": 0,
                    "seconds": 0,
                    "time": 0,
                    "timezoneOffset": 0,
                    "year": 0
                },
                "lockedBy": "string",
                "name": "string",
                "owner": "string",
                "parent_id": "string",
                "path": "string",
                "update_at": {
                    "date": 0,
                    "day": 0,
                    "hours": 0,
                    "minutes": 0,
                    "month": 0,
                    "nanos": 0,
                    "seconds": 0,
                    "time": 0,
                    "timezoneOffset": 0,
                    "year": 0
                },
                "user_data": "string"
            }
        ]
    },
    "first": "unknown type - boolean",
    "hasNext": "unknown type - boolean",
    "hasPrevious": "unknown type - boolean",
    "last": "unknown type - boolean",
    "pageNumber": 0,
    "pageSize": 0,
    "totalElements": 0,
    "totalPage": 0
}

字段说明
名称 类型 必填 描述
data object: FileEntryModelList None
first boolean None
hasNext boolean 是否有下一页
hasPrevious boolean 是否有上一页
last boolean None
pageNumber integer 当前是第几页
pageSize integer 当前页的最大记录数
totalElements integer 内容总共有多少条
totalPage integer 总共有多少页

35.移动文件夹

/bimserver/sfs/v3/projects/{projectId}/parent/{parentId}/folder

移动文件夹:将源文件夹(targetId)移动到当前文件夹(parentId)下

授权

请求头 内容
Authorization Bearer token

请求参数

名称 位置 类型 是否必填 描述
projectId path string
parentId path string

响应消息

HTTP状态码 原因 类型 引用模型
200 请求成功 / FolderModelDataWrapper
201 Created /
401 未授权,请检查Authorization的Header的Access Token是否设置正确 / ExceptionModel
403 无权访问请求的资源 / ExceptionModel
404 Not Found /
409 请求的资源不存在 / ExceptionModel
500 服务内部错误,请查看详细的错误原因 / ExceptionModel

HTTP请求示例

请求路径
http://192.168.0.105:18020/bimserver/sfs/v3/projects/{projectId}/parent/{parentId}/folder
请求体

fileCopyParam

类型: application/json

引用模型:FileCopyParameter

请求体示例

{
    "mode": "string",
    "source_id": "string",
    "source_version": 0,
    "target_name": "string"
}

字段说明
名称 类型 必填 描述
mode string 文件复制模式(copy
source_id string 源文件id
source_version integer 源文件版本
target_name string 目标文件名称

HTTP响应示例

响应200

{
    "data": {
        "active": "unknown type - boolean",
        "client_id": "string",
        "create_at": {
            "date": 0,
            "day": 0,
            "hours": 0,
            "minutes": 0,
            "month": 0,
            "nanos": 0,
            "seconds": 0,
            "time": 0,
            "timezoneOffset": 0,
            "year": 0
        },
        "external_id": "string",
        "id": "string",
        "locked": "unknown type - boolean",
        "lockedAt": {
            "date": 0,
            "day": 0,
            "hours": 0,
            "minutes": 0,
            "month": 0,
            "nanos": 0,
            "seconds": 0,
            "time": 0,
            "timezoneOffset": 0,
            "year": 0
        },
        "lockedBy": "string",
        "name": "string",
        "owner": "string",
        "parent_id": "string",
        "path": "string",
        "update_at": {
            "date": 0,
            "day": 0,
            "hours": 0,
            "minutes": 0,
            "month": 0,
            "nanos": 0,
            "seconds": 0,
            "time": 0,
            "timezoneOffset": 0,
            "year": 0
        },
        "user_data": "string"
    },
    "x_ref": {
        "users": [
            {
                "address": "string",
                "avatarLink": "string",
                "birthDate": "string",
                "cardSetting": "string",
                "city": "string",
                "company": "string",
                "country": "string",
                "createAt": "string",
                "department": "string",
                "displayName": "string",
                "district": "string",
                "education": "string",
                "email": "string",
                "employeeNumber": "string",
                "enabled": "unknown type - boolean",
                "gender": 0,
                "notifySettings": [
                    "string"
                ],
                "phoneNumber": "string",
                "phoneNumberValidated": "unknown type - boolean",
                "postcode": "string",
                "professionCertificate": "string",
                "province": "string",
                "qqNumber": "string",
                "realName": "string",
                "remark": "string",
                "resumes": [
                    {
                        "id": "string",
                        "previousPosition": "string",
                        "workYears": 0
                    }
                ],
                "title": "string",
                "titleCertificate": "string",
                "updateAt": "string",
                "userid": "string",
                "username": "string",
                "workTime": {
                    "date": 0,
                    "day": 0,
                    "hours": 0,
                    "minutes": 0,
                    "month": 0,
                    "nanos": 0,
                    "seconds": 0,
                    "time": 0,
                    "timezoneOffset": 0,
                    "year": 0
                }
            }
        ]
    }
}

字段说明
名称 类型 必填 描述
data object: FolderModel None
x_ref object: Reference None

文件元数据管理

36.获取指定文件的元数据

/bimserver/sfs/v3/projects/{projectId}/file/{fileId}/info

获取指定 File 的元数据

授权

请求头 内容
Authorization Bearer token

请求参数

名称 位置 类型 是否必填 描述
projectId path string
fileId path string

响应消息

HTTP状态码 原因 类型 引用模型
200 请求成功 / FileModelDataWrapper
401 未授权,请检查Authorization的Header的Access Token是否设置正确 / ExceptionModel
403 无权访问请求的资源 / ExceptionModel
404 Not Found /
409 请求的资源不存在 / ExceptionModel
500 服务内部错误,请查看详细的错误原因 / ExceptionModel

HTTP请求示例

请求路径
http://192.168.0.105:18020/bimserver/sfs/v3/projects/{projectId}/file/{fileId}/info

HTTP响应示例

响应200

{
    "data": {
        "active": "unknown type - boolean",
        "client_id": "string",
        "create_at": {
            "date": 0,
            "day": 0,
            "hours": 0,
            "minutes": 0,
            "month": 0,
            "nanos": 0,
            "seconds": 0,
            "time": 0,
            "timezoneOffset": 0,
            "year": 0
        },
        "current_version": 0,
        "current_version_size": 0,
        "ext_attr": {},
        "external_id": "string",
        "id": "string",
        "locked": "unknown type - boolean",
        "lockedAt": {
            "date": 0,
            "day": 0,
            "hours": 0,
            "minutes": 0,
            "month": 0,
            "nanos": 0,
            "seconds": 0,
            "time": 0,
            "timezoneOffset": 0,
            "year": 0
        },
        "lockedBy": "string",
        "name": "string",
        "owner": "string",
        "parent_id": "string",
        "path": "string",
        "project_id": "string",
        "update_at": {
            "date": 0,
            "day": 0,
            "hours": 0,
            "minutes": 0,
            "month": 0,
            "nanos": 0,
            "seconds": 0,
            "time": 0,
            "timezoneOffset": 0,
            "year": 0
        },
        "user_data": "string",
        "versions": [
            {
                "active": "unknown type - boolean",
                "comments": "string",
                "create_at": {
                    "date": 0,
                    "day": 0,
                    "hours": 0,
                    "minutes": 0,
                    "month": 0,
                    "nanos": 0,
                    "seconds": 0,
                    "time": 0,
                    "timezoneOffset": 0,
                    "year": 0
                },
                "entry_id": "string",
                "ext_attr": {},
                "ext_attr_value_models": [
                    {
                        "entryId": "string",
                        "id": "string",
                        "namespaceId": "string",
                        "resourceId": "string",
                        "value": "string"
                    }
                ],
                "external_id": "string",
                "id": 0,
                "md5": "string",
                "owner": "string",
                "size": 0,
                "update_at": {
                    "date": 0,
                    "day": 0,
                    "hours": 0,
                    "minutes": 0,
                    "month": 0,
                    "nanos": 0,
                    "seconds": 0,
                    "time": 0,
                    "timezoneOffset": 0,
                    "year": 0
                },
                "user_data": "string",
                "version": 0
            }
        ]
    },
    "x_ref": {
        "users": [
            {
                "address": "string",
                "avatarLink": "string",
                "birthDate": "string",
                "cardSetting": "string",
                "city": "string",
                "company": "string",
                "country": "string",
                "createAt": "string",
                "department": "string",
                "displayName": "string",
                "district": "string",
                "education": "string",
                "email": "string",
                "employeeNumber": "string",
                "enabled": "unknown type - boolean",
                "gender": 0,
                "notifySettings": [
                    "string"
                ],
                "phoneNumber": "string",
                "phoneNumberValidated": "unknown type - boolean",
                "postcode": "string",
                "professionCertificate": "string",
                "province": "string",
                "qqNumber": "string",
                "realName": "string",
                "remark": "string",
                "resumes": [
                    {
                        "id": "string",
                        "previousPosition": "string",
                        "workYears": 0
                    }
                ],
                "title": "string",
                "titleCertificate": "string",
                "updateAt": "string",
                "userid": "string",
                "username": "string",
                "workTime": {
                    "date": 0,
                    "day": 0,
                    "hours": 0,
                    "minutes": 0,
                    "month": 0,
                    "nanos": 0,
                    "seconds": 0,
                    "time": 0,
                    "timezoneOffset": 0,
                    "year": 0
                }
            }
        ]
    }
}

字段说明
名称 类型 必填 描述
data object: FileModel None
x_ref object: Reference None

37.获取指定文件版本元数据

/bimserver/sfs/v3/projects/{projectId}/file/{fileId}/versions/{version}/info

获取指定 File version 的元数据

授权

请求头 内容
Authorization Bearer token

请求参数

名称 位置 类型 是否必填 描述
projectId path string
fileId path string
version path string

响应消息

HTTP状态码 原因 类型 引用模型
200 请求成功 / FileVersionModelDataWrapper
401 未授权,请检查Authorization的Header的Access Token是否设置正确 / ExceptionModel
403 无权访问请求的资源 / ExceptionModel
404 Not Found /
500 服务内部错误,请查看详细的错误原因 / ExceptionModel

HTTP请求示例

请求路径
http://192.168.0.105:18020/bimserver/sfs/v3/projects/{projectId}/file/{fileId}/versions/{version}/info

HTTP响应示例

响应200

{
    "data": {
        "active": "unknown type - boolean",
        "comments": "string",
        "create_at": {
            "date": 0,
            "day": 0,
            "hours": 0,
            "minutes": 0,
            "month": 0,
            "nanos": 0,
            "seconds": 0,
            "time": 0,
            "timezoneOffset": 0,
            "year": 0
        },
        "entry_id": "string",
        "ext_attr": {},
        "ext_attr_value_models": [
            {
                "entryId": "string",
                "id": "string",
                "namespaceId": "string",
                "resourceId": "string",
                "value": "string"
            }
        ],
        "external_id": "string",
        "id": 0,
        "md5": "string",
        "owner": "string",
        "size": 0,
        "update_at": {
            "date": 0,
            "day": 0,
            "hours": 0,
            "minutes": 0,
            "month": 0,
            "nanos": 0,
            "seconds": 0,
            "time": 0,
            "timezoneOffset": 0,
            "year": 0
        },
        "user_data": "string",
        "version": 0
    },
    "x_ref": {
        "users": [
            {
                "address": "string",
                "avatarLink": "string",
                "birthDate": "string",
                "cardSetting": "string",
                "city": "string",
                "company": "string",
                "country": "string",
                "createAt": "string",
                "department": "string",
                "displayName": "string",
                "district": "string",
                "education": "string",
                "email": "string",
                "employeeNumber": "string",
                "enabled": "unknown type - boolean",
                "gender": 0,
                "notifySettings": [
                    "string"
                ],
                "phoneNumber": "string",
                "phoneNumberValidated": "unknown type - boolean",
                "postcode": "string",
                "professionCertificate": "string",
                "province": "string",
                "qqNumber": "string",
                "realName": "string",
                "remark": "string",
                "resumes": [
                    {
                        "id": "string",
                        "previousPosition": "string",
                        "workYears": 0
                    }
                ],
                "title": "string",
                "titleCertificate": "string",
                "updateAt": "string",
                "userid": "string",
                "username": "string",
                "workTime": {
                    "date": 0,
                    "day": 0,
                    "hours": 0,
                    "minutes": 0,
                    "month": 0,
                    "nanos": 0,
                    "seconds": 0,
                    "time": 0,
                    "timezoneOffset": 0,
                    "year": 0
                }
            }
        ]
    }
}

字段说明
名称 类型 必填 描述
data object: FileVersionModel None
x_ref object: Reference None

38.获取搜索元数据信息

/bimserver/sfs/v3/file/search

获取搜索元数据信息

授权

请求头 内容
Authorization Bearer token

响应消息

HTTP状态码 原因 类型 引用模型
200 请求成功 application/json SearchParameter
401 未授权,请检查Authorization的Header的Access Token是否设置正确 application/json ExceptionModel
403 无权访问请求的资源 application/json ExceptionModel
404 Not Found /
500 服务内部错误,请查看详细的错误原因 application/json ExceptionModel

HTTP请求示例

请求路径
http://192.168.0.105:18020/bimserver/sfs/v3/file/search

HTTP响应示例

响应200

{
    "searchExpressions": [
        {
            "availableValues": [
                {
                    "ordinal": 0,
                    "value": "string"
                }
            ],
            "searchAttribute": {
                "businessType": "string",
                "dataType": "string",
                "extendedAttribute": "unknown type - boolean",
                "key": "string",
                "name": "string",
                "order": 0,
                "resourceType": "string"
            },
            "searchOperators": [
                {
                    "name": "string",
                    "type": "string"
                }
            ]
        }
    ]
}

字段说明
名称 类型 必填 描述
searchExpressions array None

39.通过文件id修改文件的元数据

/bimserver/sfs/v3/projects/{projectId}/file/{fileId}

通过 File ID 修改一个 File 的元数据

授权

请求头 内容
Authorization Bearer token

请求参数

名称 位置 类型 是否必填 描述
projectId path string
fileId path string

响应消息

HTTP状态码 原因 类型 引用模型
200 请求成功 / FileModelDataWrapper
201 Created /
401 未授权,请检查Authorization的Header的Access Token是否设置正确 / ExceptionModel
403 无权访问请求的资源 / ExceptionModel
404 Not Found /
409 请求的资源不存在 / ExceptionModel
500 服务内部错误,请查看详细的错误原因 / ExceptionModel

HTTP请求示例

请求路径
http://192.168.0.105:18020/bimserver/sfs/v3/projects/{projectId}/file/{fileId}
请求体

metadata

类型: application/json

引用模型:FileMetadata

请求体示例

{
    "ext_attr": {},
    "external_id": "string",
    "name": "string",
    "owner": "string",
    "user_data": "string"
}

字段说明
名称 类型 必填 描述
ext_attr object 用户自定义扩展属性值
external_id string External ID
name string File 名称
owner string File owner
user_data string User Data

HTTP响应示例

响应200

{
    "data": {
        "active": "unknown type - boolean",
        "client_id": "string",
        "create_at": {
            "date": 0,
            "day": 0,
            "hours": 0,
            "minutes": 0,
            "month": 0,
            "nanos": 0,
            "seconds": 0,
            "time": 0,
            "timezoneOffset": 0,
            "year": 0
        },
        "current_version": 0,
        "current_version_size": 0,
        "ext_attr": {},
        "external_id": "string",
        "id": "string",
        "locked": "unknown type - boolean",
        "lockedAt": {
            "date": 0,
            "day": 0,
            "hours": 0,
            "minutes": 0,
            "month": 0,
            "nanos": 0,
            "seconds": 0,
            "time": 0,
            "timezoneOffset": 0,
            "year": 0
        },
        "lockedBy": "string",
        "name": "string",
        "owner": "string",
        "parent_id": "string",
        "path": "string",
        "project_id": "string",
        "update_at": {
            "date": 0,
            "day": 0,
            "hours": 0,
            "minutes": 0,
            "month": 0,
            "nanos": 0,
            "seconds": 0,
            "time": 0,
            "timezoneOffset": 0,
            "year": 0
        },
        "user_data": "string",
        "versions": [
            {
                "active": "unknown type - boolean",
                "comments": "string",
                "create_at": {
                    "date": 0,
                    "day": 0,
                    "hours": 0,
                    "minutes": 0,
                    "month": 0,
                    "nanos": 0,
                    "seconds": 0,
                    "time": 0,
                    "timezoneOffset": 0,
                    "year": 0
                },
                "entry_id": "string",
                "ext_attr": {},
                "ext_attr_value_models": [
                    {
                        "entryId": "string",
                        "id": "string",
                        "namespaceId": "string",
                        "resourceId": "string",
                        "value": "string"
                    }
                ],
                "external_id": "string",
                "id": 0,
                "md5": "string",
                "owner": "string",
                "size": 0,
                "update_at": {
                    "date": 0,
                    "day": 0,
                    "hours": 0,
                    "minutes": 0,
                    "month": 0,
                    "nanos": 0,
                    "seconds": 0,
                    "time": 0,
                    "timezoneOffset": 0,
                    "year": 0
                },
                "user_data": "string",
                "version": 0
            }
        ]
    },
    "x_ref": {
        "users": [
            {
                "address": "string",
                "avatarLink": "string",
                "birthDate": "string",
                "cardSetting": "string",
                "city": "string",
                "company": "string",
                "country": "string",
                "createAt": "string",
                "department": "string",
                "displayName": "string",
                "district": "string",
                "education": "string",
                "email": "string",
                "employeeNumber": "string",
                "enabled": "unknown type - boolean",
                "gender": 0,
                "notifySettings": [
                    "string"
                ],
                "phoneNumber": "string",
                "phoneNumberValidated": "unknown type - boolean",
                "postcode": "string",
                "professionCertificate": "string",
                "province": "string",
                "qqNumber": "string",
                "realName": "string",
                "remark": "string",
                "resumes": [
                    {
                        "id": "string",
                        "previousPosition": "string",
                        "workYears": 0
                    }
                ],
                "title": "string",
                "titleCertificate": "string",
                "updateAt": "string",
                "userid": "string",
                "username": "string",
                "workTime": {
                    "date": 0,
                    "day": 0,
                    "hours": 0,
                    "minutes": 0,
                    "month": 0,
                    "nanos": 0,
                    "seconds": 0,
                    "time": 0,
                    "timezoneOffset": 0,
                    "year": 0
                }
            }
        ]
    }
}

字段说明
名称 类型 必填 描述
data object: FileModel None
x_ref object: Reference None

40.通过版本修改一个文件的版本元数据

/bimserver/sfs/v3/projects/{projectId}/file/{fileId}/versions/{versionId}/info

通过 Verison 修改一个 File Version 的元数据

授权

请求头 内容
Authorization Bearer token

请求参数

名称 位置 类型 是否必填 描述
projectId path string
fileId path string
versionId path string

响应消息

HTTP状态码 原因 类型 引用模型
200 请求成功 / FileVersionModelDataWrapper
201 Created /
401 未授权,请检查Authorization的Header的Access Token是否设置正确 / ExceptionModel
403 无权访问请求的资源 / ExceptionModel
404 Not Found /
409 请求的资源不存在 / ExceptionModel
500 服务内部错误,请查看详细的错误原因 / ExceptionModel

HTTP请求示例

请求路径
http://192.168.0.105:18020/bimserver/sfs/v3/projects/{projectId}/file/{fileId}/versions/{versionId}/info
请求体

metadata

类型: application/json

引用模型:FileVersionMetadata

请求体示例

{
    "comments": "string",
    "ext_attr": {},
    "external_id": "string",
    "owner": "string",
    "user_data": "string"
}

字段说明
名称 类型 必填 描述
comments string None
ext_attr object 用户自定义扩展属性值
external_id string None
owner string None
user_data string None

HTTP响应示例

响应200

{
    "data": {
        "active": "unknown type - boolean",
        "comments": "string",
        "create_at": {
            "date": 0,
            "day": 0,
            "hours": 0,
            "minutes": 0,
            "month": 0,
            "nanos": 0,
            "seconds": 0,
            "time": 0,
            "timezoneOffset": 0,
            "year": 0
        },
        "entry_id": "string",
        "ext_attr": {},
        "ext_attr_value_models": [
            {
                "entryId": "string",
                "id": "string",
                "namespaceId": "string",
                "resourceId": "string",
                "value": "string"
            }
        ],
        "external_id": "string",
        "id": 0,
        "md5": "string",
        "owner": "string",
        "size": 0,
        "update_at": {
            "date": 0,
            "day": 0,
            "hours": 0,
            "minutes": 0,
            "month": 0,
            "nanos": 0,
            "seconds": 0,
            "time": 0,
            "timezoneOffset": 0,
            "year": 0
        },
        "user_data": "string",
        "version": 0
    },
    "x_ref": {
        "users": [
            {
                "address": "string",
                "avatarLink": "string",
                "birthDate": "string",
                "cardSetting": "string",
                "city": "string",
                "company": "string",
                "country": "string",
                "createAt": "string",
                "department": "string",
                "displayName": "string",
                "district": "string",
                "education": "string",
                "email": "string",
                "employeeNumber": "string",
                "enabled": "unknown type - boolean",
                "gender": 0,
                "notifySettings": [
                    "string"
                ],
                "phoneNumber": "string",
                "phoneNumberValidated": "unknown type - boolean",
                "postcode": "string",
                "professionCertificate": "string",
                "province": "string",
                "qqNumber": "string",
                "realName": "string",
                "remark": "string",
                "resumes": [
                    {
                        "id": "string",
                        "previousPosition": "string",
                        "workYears": 0
                    }
                ],
                "title": "string",
                "titleCertificate": "string",
                "updateAt": "string",
                "userid": "string",
                "username": "string",
                "workTime": {
                    "date": 0,
                    "day": 0,
                    "hours": 0,
                    "minutes": 0,
                    "month": 0,
                    "nanos": 0,
                    "seconds": 0,
                    "time": 0,
                    "timezoneOffset": 0,
                    "year": 0
                }
            }
        ]
    }
}

字段说明
名称 类型 必填 描述
data object: FileVersionModel None
x_ref object: Reference None

41.更新一个文件夹下的元数据信息

/bimserver/sfs/v3/projects/{projectId}/folder/{folderId}

如果元数据中有些参数是空值或者是未设置,该值将不会被更新

授权

请求头 内容
Authorization Bearer token

请求参数

名称 位置 类型 是否必填 描述
projectId path string
folderId path string

响应消息

HTTP状态码 原因 类型 引用模型
200 请求成功 / FolderModelDataWrapper
201 Created /
401 未授权,请检查Authorization的Header的Access Token是否设置正确 / ExceptionModel
403 无权访问请求的资源 / ExceptionModel
404 Not Found /
409 请求的资源不存在 / ExceptionModel
500 服务内部错误,请查看详细的错误原因 / ExceptionModel

HTTP请求示例

请求路径
http://192.168.0.105:18020/bimserver/sfs/v3/projects/{projectId}/folder/{folderId}
请求体

需要更新的元数据信息

类型: application/json

引用模型:FolderMetadata

请求体示例

{
    "external_id": "string",
    "name": "string",
    "owner": "string",
    "user_data": "string"
}

字段说明
名称 类型 必填 描述
external_id string Folder 对应的一个 外部系统的 ID,方便系统间的相互引用。
name string Folder 的名称
owner string Folder创建者的用户名。
user_data string Folder 附属的用户数据 (User Data),用来存放一些自定义的数据。

HTTP响应示例

响应200

{
    "data": {
        "active": "unknown type - boolean",
        "client_id": "string",
        "create_at": {
            "date": 0,
            "day": 0,
            "hours": 0,
            "minutes": 0,
            "month": 0,
            "nanos": 0,
            "seconds": 0,
            "time": 0,
            "timezoneOffset": 0,
            "year": 0
        },
        "external_id": "string",
        "id": "string",
        "locked": "unknown type - boolean",
        "lockedAt": {
            "date": 0,
            "day": 0,
            "hours": 0,
            "minutes": 0,
            "month": 0,
            "nanos": 0,
            "seconds": 0,
            "time": 0,
            "timezoneOffset": 0,
            "year": 0
        },
        "lockedBy": "string",
        "name": "string",
        "owner": "string",
        "parent_id": "string",
        "path": "string",
        "update_at": {
            "date": 0,
            "day": 0,
            "hours": 0,
            "minutes": 0,
            "month": 0,
            "nanos": 0,
            "seconds": 0,
            "time": 0,
            "timezoneOffset": 0,
            "year": 0
        },
        "user_data": "string"
    },
    "x_ref": {
        "users": [
            {
                "address": "string",
                "avatarLink": "string",
                "birthDate": "string",
                "cardSetting": "string",
                "city": "string",
                "company": "string",
                "country": "string",
                "createAt": "string",
                "department": "string",
                "displayName": "string",
                "district": "string",
                "education": "string",
                "email": "string",
                "employeeNumber": "string",
                "enabled": "unknown type - boolean",
                "gender": 0,
                "notifySettings": [
                    "string"
                ],
                "phoneNumber": "string",
                "phoneNumberValidated": "unknown type - boolean",
                "postcode": "string",
                "professionCertificate": "string",
                "province": "string",
                "qqNumber": "string",
                "realName": "string",
                "remark": "string",
                "resumes": [
                    {
                        "id": "string",
                        "previousPosition": "string",
                        "workYears": 0
                    }
                ],
                "title": "string",
                "titleCertificate": "string",
                "updateAt": "string",
                "userid": "string",
                "username": "string",
                "workTime": {
                    "date": 0,
                    "day": 0,
                    "hours": 0,
                    "minutes": 0,
                    "month": 0,
                    "nanos": 0,
                    "seconds": 0,
                    "time": 0,
                    "timezoneOffset": 0,
                    "year": 0
                }
            }
        ]
    }
}

字段说明
名称 类型 必填 描述
data object: FolderModel None
x_ref object: Reference None