1. 创建分享包
创建分享包,创建一个share实例。
请求方式:POST
请求地址:/bosdocumentservice/{appKey}/shares
1.1. 请求参数:
Headers:
参数名 | 类型 | 示例 | 是否必填 | 参数含义 |
---|---|---|---|---|
Authorization | string | c4570cb9ca324bc8ba7dd9d1967710ea | 是 | access_token |
PathParas:
参数名 | 类型 | 示例 | 是否必填 | 参数含义 |
---|---|---|---|---|
appKey | string | xb05cd3a35614caa85c0f8f86c58fcc1 | 是 | 应用Key |
SearchParas:
参数名 | 类型 | 示例 | 是否必填 | 参数含义 |
---|---|---|---|---|
NULL | NULL | NULL | NULL | NULL |
Body:
application/json:
{
"bosclass": "shares",
"code": "sha-001", //分享包编码
"name": "分享包1", //分享包名称
"description": "", //分享包描述
"objects": [
"bosclass/key1"
], //分享包包含的对象key
"gsource":"documents", // 来源 documents models
"gdownload":true, //是否允许下载 true/false
"type": "1", //分享类型
"validTime": "", //有效时间 可为空(为空永久有效)
"receivers": [
"users/userkey3"
] //接收分享包的用户key
// 创建者默认拥有rwdc权限 gacl参数
}
1.2. 参数说明:
参数名 | 类型 | 示例 | 是否必填 | 参数含义 |
---|---|---|---|---|
code | string | NULL | 否 | 分享包编码 |
name | string | NULL | 否 | 分享包名称 |
description | string | NULL | 否 | 分享包描述 |
objects | string | NULL | 否 | 分享包包含的对象key |
type | string | NULL | 否 | 分享类型 |
validTime | string | NULL | 否 | 有效时间 可为空(为空永久有效) |
receivers | string | NULL | 否 | 接收分享包的用户key |
gsource | string | NULL | 否 | 来源 documents models |
1.3. 正确返回:
Http Status Code:200
{
"code": "SUCCESS",
"message": "请求处理成功",
"data": "http://xxx.xxx.xxx/ shares/sha-001"
}
1.4. 状态码:
状态码 | code | message | data | 原因 |
---|---|---|---|---|
200 | OBJECT_REQUIREDFIELD_EMPTY | {type}属性必填 | NULL | 当type不存在时 |
200 | SHARE_NAME_EXIST | 系统中已存在名称为{name}的分享包 | NULL | 当name重复时 |
200 | SHARE_OBJECTS_REQUIRED | 分享包包含对象必填 | NULL | 当objects为空或未提供时 |
200 | SHARE_RECEIVERS_REQUIRED | 分享包接收用户必填 | NULL | 当分享类型type=1,reveivers为空或未提供时 |
200 | ENTITY_NOTFOUND | Key为{key}的{bosclass}实体对象不存在 | NULL | 当object中对象不存在时 |
200 | ENTITY_NOTFOUND | Key为{key}的{bosclass}实体对象不存在 | NULL | 当receivers中对象不存在时 |
200 | ENTITY_READPERMISSION_REQUIRED | 缺少实体对象{bosclass/key}的读权限 | NULL | 当object中对象无读权限时 |
200 | ENTITY_READPERMISSION_REQUIRED | 缺少实体对象{bosclass/key}的读权限 | NULL | 当receivers中对象无读权限时 |
200 | ENTITY_NAME_INVALID | 实体对象name属性值无效 | NULL | 当name包含※时 |
200 | ENTITY_CONTROLPERMISSION_REQUIRED | 缺少实体对象{bosclass/key}的控制权限 | NULL | 当object中对象无控制权限时 |
1.5. 注意事项:
1、 code未传递或为空时由系统随机生成。
2、 分享类型不能为空,值分别为:
(1)私有分享,仅限APP内的特定用户,需要选择用户。
(2)内部分享,BOS应用里边的所有用户。
(3)公开分享,应用用户+游客 。
3、 objects不能为空,同时进行是否存在检查。
4、 分享类型type=1时,receivers必填,不能为空。
5、 receivers不为空的时候,需要进行是否存在检查。
6、 分别创建share与receiver、object的关系。