目录
智能表格可设置内容权限以详细配置文档成员对表格内容的操作权限。
内容权限由全员权限以及至多20条成员额外权限组成。
每条权限可以针对不同子表配置字段权限、记录权限、视图权限。
对于全员权限,生效成员即是全部文档成员。
对于成员额外权限,可以配置生效的成员范围。
该接口用于查询智能表格子表权限详情
请求方式:POST(HTTPS)
请求地址: https://qyapi.weixin.qq.com/cgi-bin/wedoc/smartsheet/content_priv/get_sheet_priv?access_token=ACCESS_TOKEN
请求包体
{
"docid": "DOCID",
"type": 2,
"rule_id_list": [
"RULEID1", "RULEID2"
]
}
参数说明
参数 | 类型 | 是否必须 | 说明 |
---|---|---|---|
docid | string | 是 | 智能表ID,通过新建文档接口创建后获得 |
type | uint32 | 是 | 权限规则类型,1-全员权限,2-额外权限 |
rule_id_list | uint32 [] | 否 | 需要查询的规则id列表,查询额外权限时填写 |
权限说明
返回示例
{
"errcode": 0,
"errmsg": "ok",
"rule_list": [{
"rule_id": 1,
"type": 1,
"name": "全员权限",
"priv_list": [{
"sheet_id": "q979lj",
"priv": 2,
"can_insert_record": true,
"can_delete_record": true,
"record_priv": {
"record_range_type": 1
},
"field_priv": {
"field_range_type": 2,
"field_rule_list": [{
"field_id": "fsMGQS",
"field_type": "FIELD_TYPE_TEXT",
"can_edit": false,
"can_insert": true,
"can_view": true
}],
"field_default_rule": {
"can_edit": false,
"can_insert": false,
"can_view": true
}
},
"can_create_modify_delete_view": true
},
{
"sheet_id": "kQ65QQ",
"priv": 1
}
]
}]
}
参数说明
参数 | 类型 | 说明 |
---|---|---|
errcode | int32 | 错误码 |
errmsg | string | 错误码说明 |
rule_list | object[] | 权限列表 |
rule_list.type | uint32 | 权限规则类型,1-全员权限,2-额外权限。每个智能表格有且只有一个全员权限 |
rule_list.rule_id | uint32 | 当type为2时必填 |
rule_list.name | string | 权限名称,仅当type为2时有效 |
rule_list.priv_list | object[] | 针对不同子表设置内容权限 |
rule_list.priv_list.sheet_id | string | 子表ID |
rule_list.priv_list.priv | string | 子表权限: 1-全部权限;2-可编辑;3-仅浏览;4-无权限 |
rule_list.priv_list.can_insert_record | bool | 是否可以新增记录。仅当子表权限为可编辑 时有意义 |
rule_list.priv_list.can_delete_record | bool | 是否可以删除记录。仅当子表权限为可编辑 时有意义 |
rule_list.priv_list.can_create_modify_delete_view | bool | 是否可以增、删、改视图。 |
rule_list.priv_list.field_priv | object | 按字段配置权限 |
rule_list.priv_list.field_priv.field_range_type | uint32 | 子表权限对所有字段生效还是部分字段生效:1-所有字段;2-部分字段。当值为2时可以配置各个字段独立的权限 |
rule_list.priv_list.field_priv.field_rule_list | object[] | 按字段分别配置权限 |
rule_list.priv_list.field_priv.field_rule_list.field_id | string | 字段id |
priv_list.priv_list.field_priv.field_rule_list.field_type | string | 字段类型,见FieldType |
rule_list.priv_list.field_priv.field_rule_list.can_edit | bool | 可编辑 |
rule_list.priv_list.field_priv.field_rule_list.can_insert | bool | 可首次提交 |
rule_list.priv_list.field_priv.field_rule_list.can_view | bool | 可查看 |
rule_list.priv_list.field_priv.field_default_rule | object | field_rule_list里未指定字段和后续新增字段的默认配置,与field_rule_list一样可指定can_edit/can_insert/can_view三个权限 |
rule_list.priv_list.record_priv | object | 按记录配置权限,priv=2或3时必填 |
rule_list.priv_list.record_priv.record_range_type | uint32 | 子表权限对记录生效范围:1-全部记录;2-满足任意条件的记录;3-满足全部条件的记录 |
rule_list.priv_list.record_priv.record_rule_list | object[] | 记录的条件列表,当record_range_type为2或3时生效 |
rule_list.priv_list.record_priv.record_rule_list.field_id | string | 字段id,只有人员、单选、多选三种类型的字段有效。当field_id为CREATED_USER 时表示记录创建者 |
rule_list.priv_list.record_priv.record_rule_list.field_type | string | 是字段类型,见FieldType |
rule_list.priv_list.record_priv.record_rule_list.oper_type | uint32 | 逻辑判断类型:1-包含自己(人员字段);2-包含value;3-不包含value;4-等于value;5-不等于value;6-为空;7-非空; |
rule_list.priv_list.record_priv.record_rule_list.value | string[] | 用于单选、多选字段的option_id |
rule_list.priv_list.record_priv.other_priv | uint32 | 当记录不满足条件的时的权限类型:1-不可编辑 2-不可查看 |
rule_list.priv_list.clear | bool | 清除子表的设置,恢复默认权限 |
该接口用于设置全员权限或者成员额外权限的权限详情
请求方式:POST(HTTPS)
请求地址: https://qyapi.weixin.qq.com/cgi-bin/wedoc/smartsheet/content_priv/update_sheet_priv?access_token=ACCESS_TOKEN
请求包体
{
"docid": "DOCID",
"type": 2,
"rule_id": 2,
"name": "NAME",
"priv_list": [{
"sheet_id": "SHEETID",
"priv": 1,
"can_insert_record": true,
"can_delete_record": true,
"can_create_modify_delete_view": true,
"field_priv": {
"field_range_type": 2,
"field_rule_list": [{
"field_id": "FIELDID1",
"can_edit": true,
"can_insert": true,
"can_view": true
},
{
"field_id": "FIELDID2",
"can_edit": false,
"can_insert": true,
"can_view": true
}
]
},
"record_priv": {
"record_range_type": 2,
"record_rule_list": [{
"field_id": "FIELDI1",
"field_type": "FIELD_TYPE_TEXT",
"oper_type": 1
},
{
"field_id": "CREATED_USER",
"oper_type": 1
},
{
"field_id": "FIELDID2",
"oper_type": 2,
"field_type": "FIELD_TYPE_SELECT",
"value": [
"OPTION1", "OPTION2", "OPTION3"
]
}
]
},
"clear": false
}]
}
参数说明
参数 | 类型 | 是否必须 | 说明 |
---|---|---|---|
docid | string | 是 | 智能表ID,通过新建文档接口创建后获得 |
type | uint32 | 是 | 权限规则类型,1-全员权限,2-额外权限。每个智能表格有且只有一个全员权限 |
rule_id | uint32 | 否 | 当type为2时必填 |
name | string | 否 | 更新权限名称,仅当type为2时有效 |
priv_list | object[] | 否 | 针对不同子表设置内容权限 |
priv_list.sheet_id | string | 是 | 子表ID |
priv_list.priv | string | 是 | 子表权限: 1-全部权限;2-可编辑;3-仅浏览;4-无权限 |
priv_list.can_insert_record | bool | 否 | 是否可以新增记录。仅当子表权限为可编辑 时有意义 |
priv_list.can_delete_record | bool | 否 | 是否可以删除记录。仅当子表权限为可编辑 时有意义 |
priv_list.can_create_modify_delete_view | bool | 否 | 是否可以增、删、改视图。 |
priv_list.field_priv | object | 否 | 按字段配置权限 |
priv_list.field_priv.field_range_type | uint32 | 是 | 子表权限对所有字段生效还是部分字段生效:1-所有字段;2-部分字段。当值为2时可以配置各个字段独立的权限 |
priv_list.field_priv.field_rule_list | object[] | 是 | 按字段分别配置权限 |
priv_list.field_priv.field_rule_list.field_id | string | 是 | 字段id |
priv_list.field_priv.field_rule_list.field_type | string | 是 | 字段类型,见FieldType |
priv_list.field_priv.field_rule_list.can_edit | bool | 是 | 可编辑 |
priv_list.field_priv.field_rule_list.can_insert | bool | 是 | 可首次提交 |
priv_list.field_priv.field_rule_list.can_view | bool | 是 | 可查看 |
priv_list.field_priv.field_default_rule | object | 否 | field_rule_list里未指定字段和后续新增字段的默认配置,与field_rule_list一样可指定can_edit/can_insert/can_view三个权限。type为1时必填,type为2时不可指定field_default_rule |
priv_list.record_priv | object | 否 | 按记录配置权限,priv=2或3时必填 |
priv_list.record_priv.record_range_type | uint32 | 是 | 子表权限对记录生效范围:1-全部记录;2-满足任意条件的记录;3-满足全部条件的记录 |
priv_list.record_priv.record_rule_list | object[] | 否 | 记录的条件列表,当record_range_type为2或3时生效 |
priv_list.record_priv.record_rule_list.field_id | string | 是 | 字段id,只有人员、单选、多选三种类型的字段有效。当field_id为CREATED_USER 时表示记录创建者 |
priv_list.record_priv.record_rule_list.field_type | string | 否 | 字段类型FieldType,当field_id为CREATED_USER 时不填此字段,其他类型必填 |
priv_list.record_priv.record_rule_list.oper_type | uint32 | 是 | 逻辑判断类型:1-包含自己(人员字段);2-包含value;3-不包含value;4-等于value;5-不等于value;6-为空;7-非空; |
priv_list.record_priv.record_rule_list.value | string[] | 是 | 用于单选、多选字段的option_id |
priv_list.record_priv.other_priv | uint32 | 是 | 当记录不满足条件的时的权限类型:1-不可编辑 2-不可查看 |
priv_list.clear | bool | 否 | 清除子表的设置,恢复默认权限 |
权限说明
返回示例
{
"errcode": 0,
"errmsg": "ok"
}
参数说明
参数 | 类型 | 说明 |
---|---|---|
errcode | int32 | 错误码 |
errmsg | string | 错误码说明 |
该接口用于新增智能表格指定成员额外权限
请求方式:POST(HTTPS)
请求地址: https://qyapi.weixin.qq.com/cgi-bin/wedoc/smartsheet/content_priv/create_rule?access_token=ACCESS_TOKEN
请求包体
{
"docid": "DOCID",
"name": "NAME"
}
参数说明
参数 | 类型 | 是否必须 | 说明 |
---|---|---|---|
docid | string | 是 | 智能表ID,通过新建文档接口创建后获得 |
name | string | 是 | 权限规则名称,不可重复 |
权限说明
返回示例
{
"errcode": 0,
"errmsg": "ok",
"rule_id": 1
}
参数说明
参数 | 类型 | 说明 |
---|---|---|
errcode | int32 | 错误码 |
errmsg | string | 错误码说明 |
rule_id | uint32 | 成员权限规则id |
该接口用于更新智能表格指定成员额外权限
请求方式:POST(HTTPS)
请求地址: https://qyapi.weixin.qq.com/cgi-bin/wedoc/smartsheet/content_priv/mod_rule_member?access_token=ACCESS_TOKEN
请求包体
{
"docid": "DOCID",
"rule_id": 3,
"add_member_range": {
"userid_list": [
"userid1"
]
},
"del_member_range": {
"userid_list": [
"userid2"
]
}
}
参数说明
参数 | 类型 | 是否必须 | 说明 |
---|---|---|---|
docid | string | 是 | 智能表ID,通过新建文档接口创建后获得 |
rule_id | uint32 | 是 | 需要更新的id |
add_member_range | object | 否 | 新增成员 |
add_member_range.userid_list | string [] | 否 | 新增成员的userid |
del_member_range | object | 否 | 删除成员 |
del_member_range.userid_list | string [] | 否 | 删除成员的userid |
权限说明
返回示例
{
"errcode": 0,
"errmsg": "ok"
}
参数说明
参数 | 类型 | 说明 |
---|---|---|
errcode | int32 | 错误码 |
errmsg | string | 错误码说明 |
该接口用于删除智能表格指定成员额外权限
请求方式:POST(HTTPS)
请求地址: https://qyapi.weixin.qq.com/cgi-bin/wedoc/smartsheet/content_priv/delete_rule?access_token=ACCESS_TOKEN
请求包体
{
"docid": "DOCID",
"rule_id_list": [
2
]
}
参数说明
参数 | 类型 | 是否必须 | 说明 |
---|---|---|---|
docid | string | 是 | 智能表ID,通过新建文档接口创建后获得 |
rule_id_list | uint32 [] | 是 | 需要删除的规则id列表 |
权限说明
返回示例
{
"errcode": 0,
"errmsg": "ok"
}
参数说明
参数 | 类型 | 说明 |
---|---|---|
errcode | int32 | 错误码 |
errmsg | string | 错误码说明 |