Advanced File Permissions
Updated: 2017-11-9
- Set Permissions
- Set Permission Inheritance
- Batch Set Permissions
- Delete Permissions
- Get Member Permissions
- Get Group Permissions
- Permission Reference Table
API Domain
Host: app.fileshow.com
Note: The secret used for library file operations API is org_client_secret
obtained after Library Authorization.
Set Permissions
POST /m-open/2/file/set_permission HTTP/1.1
Request Parameters
Name | Required | Description |
---|---|---|
org_client_id | Yes | Library authorization client_id |
fullpath | Yes | Full path of the file |
permissions | Yes | Format as described below |
dateline | Yes | Current UNIX timestamp in seconds |
sign | Yes | Signature |
Permissions format:
{
"group_ids": [
Department ID (int),
...
],
"group_out_ids": [
Department unique ID in external system (string),
...
],
"member_ids": [
Member ID (int),
...
],
"accounts": [
Member login account (string),
...
],
"out_ids": [
Member unique ID in external system (string),
...
],
"permission": {
"role_id": Role ID (int), // Use 0 for custom permissions
"ls": Permission status (int),
...
}
}
Key Explanation
group_ids
: Use department ID when setting department permissions.group_out_ids
: Use unique department ID in the external system when setting department permissions.member_ids
: Use member ID when setting member permissions.accounts
: Use member login account when setting member permissions.out_ids
: Use member unique ID in external system when setting member permissions.permission
: Specify the permissions to set.
Note: Use either group_ids
or group_out_ids
, and either member_ids
, accounts
, or out_ids
.
Permission Status
1
: Grant this permission.-1
: Deny this permission.0
: No specific setting for this permission (optional).
Response
HTTP 200
Set Permission Inheritance
POST /m-open/2/file/set_permission_inherit HTTP/1.1
Request Parameters
Name | Required | Description |
---|---|---|
org_client_id | Yes | Library authorization client_id |
fullpath | Yes | Full path of the file |
inherit | Yes | Enable permission inheritance: 1 for yes, 0 for no |
keep | Yes | Preserve and merge parent permissions: 1 for yes, 0 for no |
dateline | Yes | Current UNIX timestamp in seconds |
sign | Yes | Signature |
Response
HTTP 200
Batch Set Permissions
POST /m-open/2/file/batch_set_permission HTTP/1.1
Request Parameters
Name | Required | Description | |
---|---|---|---|
org_client_id | Yes | Library authorization client_id | |
fullpaths | Yes | Full paths of files, separated by vertical bar ` | ` |
type | Yes | Batch setting mode: 0 for add permissions, 1 to set permissions (clears existing permissions) |
|
inherit | No | Enable permission inheritance: 1 for yes, 0 for no |
|
permissions | Yes | Format as described below | |
dateline | Yes | Current UNIX timestamp in seconds | |
sign | Yes | Signature |
Permissions format:
{
"group_ids": [
Department ID (int),
...
],
"group_out_ids": [
Department unique ID in external system (string),
...
],
"member_ids": [
Member ID (int),
...
],
"accounts": [
Member login account (string),
...
],
"out_ids": [
Member unique ID in external system (string),
...
],
"permission": {
"role_id": Role ID (int), // Use 0 for custom permissions
"ls": Permission status (int),
...
}
}
Response
HTTP 200
Delete Permissions
POST /m-open/2/file/del_permission HTTP/1.1
Request Parameters
Name | Required | Description |
---|---|---|
org_client_id | Yes | Library authorization client_id |
fullpath | Yes | Full path of the file |
ids | Yes | Format as described below |
dateline | Yes | Current UNIX timestamp in seconds |
sign | Yes | Signature |
ids format:
{
"group_ids": [
Department ID (int),
...
],
"group_out_ids": [
Department unique ID in external system (string),
...
],
"member_ids": [
Member ID (int),
...
],
"accounts": [
Member login account (string),
...
],
"out_ids": [
Member unique ID in external system (string),
...
]
}
Response
HTTP 200
Get Member Permissions
POST /m-open/2/file/get_member_permission HTTP/1.1
Request Parameters
Name | Required | Description |
---|---|---|
org_client_id | Yes | Library authorization client_id |
fullpath | Yes | Full path of the file |
member_id | - | Member ID |
out_id | - | Member unique ID in external system |
account | - | Member login account in external system |
dateline | Yes | Current UNIX timestamp in seconds |
sign | Yes | Signature |
Note: Provide one of member_id
, out_id
, or account
in the parameters.
Response
{
"ss": Permission value (int),
...
}
Get Group Permissions
POST /m-open/2/file/get_group_permission HTTP/1.1
Request Parameters
Name | Required | Description |
---|---|---|
org_client_id | Yes | Library authorization client_id |
fullpath | Yes | Full path of the file |
group_id | - | Department ID |
group_out_id | - | Department unique ID in external system |
dateline | Yes | Current UNIX timestamp in seconds |
sign | Yes | Signature |
Note: Provide either group_id
or group_out_id
in the parameters.
Response
{
"ss": Permission value (int),
...
}
Permission Reference Table
Permission | Description |
---|---|
ls | View |
cd | Enter directory |
pv | Preview file |
dl | Download/open file |
w | Write/edit file |
ul | Add new file |
mk | Create new folder |
ren | Rename |
rm | Delete |
ln | Share via external link |
h | View version history |
hr | Restore version |
rmk | View comments / @ mentions |
rmka | Add comments / @ mentions |
t | Add tags |
trm | Delete tags |
p | View shared participants |
ps | Manage shared participants |
ss | Display current item |
sren | Rename current item |
srm | Delete current item |
mls | Modify library settings |
b | View recycle bin files |
br | Restore recycle bin files |
be | Delete/clear recycle bin files |
mln | Manage library file/folder external links |