Wrokplus3.0接口说明

1 用户接口

1.1 获取用户信息

/user?access_token={access_token}
GET

1.2 查询用户

查询与access_token相同域的用户
/users?access_token={access_token}&query={query}
GET

批量查询与access_token相同域的用户
注:query=userId1,userId2,userId3
/users?access_token={access_token}&query={query}&matching=true
GET

查询指定域的用户
/users?access_token={access_token}&query={query}&domain_id={domain_id}
GET

批量查询指定域的用户
注:query=userId1,userId2,userId3
/users?access_token={access_token}&query={query}&domain_id={domain_id}&matching=true
GET

1.3 获取指定用户

/users/{query}?access_token={access_token}
GET
query = user_id@domain_id 查询指定域的指定用户
query = user_id 查询当前域的用户

1.4 修改用户信息

/users/{userId}/profile?access_token={access_token}
POST
{
    "nickname":"",
    "phone":"",
    "email":""
}

1.5 修改密码

/users/{userId}/credentials?access_token={access_token}
POST
{
    "password":"",
    "new_password":""
}

1.6 修改用户头像

/users/{userId}/avatar?access_token={access_token}
POST
{
    "avatar":""
}

1.7 修改用户名字

/users/{userId}/name?access_token={access_token}
POST
{
    "name":""
}

2 好友接口

2.1 好友列表

/users/{userId}/relationships?access_token={access_token}
GET

2.2 好友列表

/users/{userId}/relationships/ordered?access_token={access_token}
GET
按首字母排序的好友列表

2.3 好友申请列表

/users/{userId}/applications?access_token={access_token}
GET
按首字母排序的好友列表

2.4 好友操作

/users/{userId}/applications?access_token={access_token}
POST
申请
{
    "ops":"APPLYING"
    "addresser":{
        "name":"",
        "phone":""
    },
    "recipients":{
        "domain_id":"",
        "user_id":"",
        "name":"",
        "phone":""
    },
    "intro":""
}
通过/不通过
{
    "ops":"APPROVE/REJECT"
    "addresser":{
        "name":"",
        "phone":""
    },
    "recipients":{
        "domain_id":"",
        "user_id":"",
        "name":"",
        "phone":""
    },
    "reason":""
}

2.5 解除好友关系

/users/{userId}/relationships?access_token={access_token}&
friend_domain_id={friend_domain_id}&friend_user_id={friend_user_id}
DELETE

3 星标联系人接口

3.1 列表

/users/{userId}/contacts?access_token={access_token}
GET

3.2 添加星标联系人

/users/{userId}/contacts?access_token={access_token}
POST
{
    "domain_id":"",
    "user_id":"",
    "name":"",
    "phone":""
}

3.3 删除星标联系人

/users/{userId}/contacts?access_token={access_token}
POST
{
    "domain_id":"",
    "user_id":"",
    "ops":"remove"
}

4 设备接口

4.1 获取用户当前设备

返回用户设备信息
users/{userId}/device?access_token={access_token}
GET

4.2 修改设备角标信息

/users/{userId}/devices/badge?access_token={access_token}
POST
{
  "badge": 
}

4.3 修改设备设置信息

/users/{userId}/devices/settings
POST
{
  push_sound:"",  //通知声音
  push_details:"",  //是否显示通知详细
  push_enabled:""   //是否接收通知
}

4.4 删除设备

/users/{userId}/devices DELETE

5 组织架构接口

5.1 用户组织架构列表

查询当前用户的组织信息
/organizations?access_token={access_token}
GET

查询指定用户的组织信息
/organizations?access_token={access_token}&user_id={user_id}
GET

5.2 组织架构视图

/organizations/{code}/view?access_token={access_token}&org_id={orgId}
GET

5.3 查询用户所组织申请列表

指定机构
/organizations/{code}/applications?access_token={access_token}&status={status}
GET

所有机构
/organizations/applications?access_token={access_token}&status={status}
GET

说明:
status=APPLYING,APPROVED,REJECTED,IGNORED
默认status=APPLYING

5.4 机构申请

/organizations/{code}/applications?access_token={access_token}
POST
{
  "name": "李四",
  "phone" : "13610118906",
  "intro" : "你好,我是李四"
}

5.5 管理员查看组织申请列表

/admin/organizations/applications?access_token={access_token}
GET
/admin/organizations/{code}/applications?access_token={access_token}
GET

5.6 申请操作

/admin/organizations/{code}/applications?access_token={access_token}
POST
{
  "applications": {"code":id},
  "ops" : "APPROVE",
  "reason" : "同意"
}
{
  "applications": {"code":id},
  "ops" : "REJECT",
  "reason" : "不同意"
}
{
  "applications": {"code":id},
  "ops" : "IGNORE",
  "reason" : "不同意"
}

5.7 组织架构更新列表

/organizations/upgrade-list?access_token={access_token}
POST
参数:
[
    "orgs":[
    {
        "org_code":""
        "refresh_time":123456
    }
    ]
]

返回数据:
{
    "domain_id":"",
    "refresh":[
        {
            机构信息......
        }
    ]
    "remove":["orgCode1","orgCode2"],
    "admins":["orgCode1","orgCode2"]
}

5.8 退出机构

/organizations/{code}/leave?access_token={access_token}
DELETE

5.9 邀请码加入机构

/organizations/invitations
POST
{
    "domain_id":"",
    "client_id":"",
    "pin_code":"",
    "captcha":"",
    "addresser":"",
    "invitee":{
        "phone":"",
        "name":"",
        "intro":""
    },

}

5.10 获取组织信息

/organizations/{code}?access_token={access_token}
GET

5.11 获取用户的所有雇员信息

/users/{userId}/employees?access_token={access_token}

GET
说明:userId:代表你要查询的用户

5.12 获取用户的所有组织信息

/users/{userId}/organizations?access_token={access_token}

GET

5.13 查询机构

/organizations?access_token={access_token}&query={query}
GET
说明:
query=手机号时,查询query对应的用户创建的机构
其它情况查询名字等于query的机构信息

5.14 设置组织主题

/admin/organizations/{code}/settings?access_token={access_token}
POST
参数
  {    
    "type": "SYSTEM/CUSTOM",    //类型,系统/自定义
    "theme": "skyblue"    //主题
  }

6 雇员接口

6.1 查看雇员信息

/organizations/{code}/employees/{employee}?access_token={access_token}
GET
employee代表雇员标识

/organizations/{code}/employees/{employee}?access_token={access_token}&type=user
GET
employee代表用户标识

6.2 查询机构雇员

查询org_id下面的所有人员(包括子部门)
/organizations/{code}/employees?access_token={access_token}&org_id={orgId}&recursion=true
GET

查询org_id下面的人员(不包括子部门)
/organizations/{code}/employees?access_token={access_token}&org_id={orgId}
GET

6.3 查询雇员

/organizations/{code}/employees?access_token={access_token}&query={query}
GET

6.4 查询多机构雇员

/organizations/employees?access_token={access_token}
POST
参数:
{
    "org_codes":["orgCode1","orgCode2"]
    "query":"query"
}

7 群接口

7.1 群基本信息

/discussions/{discussionId}?access_token={access_token}
GET

7.2 群详细信息

/discussions/{discussionId}/detail?access_token={access_token}
GET

7.3 创建群

/discussions?access_token={access_token}
POST
{
    "name":"",
    "intro":"",
    "notice":"",
    "members"[
        {
            "domain_id":"",
            "user_id":""
        }
    ]
}

7.4 修改群

/discussions/{discussionId}/profile?access_token={access_token}
POST
{
    "name":"",
    "intro":"",
    "notice":"",
    "avatar:""
}

7.5 群操作

/discussions/{discussionId}?access_token={access_token}
POST
加群成员
{
    "ops":"JOIN",
    "members" : [
    {
      "domain_id":"",
      "user_id":""
    }
  ]
}
删除群成员
{
    "ops":"KICK",
    "members" : [
    {
      "domain_id":"",
      "user_id":""
    }
  ]
}
邀请
{
    "ops":"INVITE",
    "inviter" : 
    {
      "domain_id":"",
      "user_id":""
    }
}

7.6 获取用户群基本信息

/users/{userId}/discussions?access_token={access_token}
GET

7.7 获取用户群详细信息

/users/{userId}/discussions/detail?access_token={access_token}
GET

7.8 退群

/users/{userId}/discussions/{discussionId}?access_token={access_token}
DELETE

8 会话接口

8.1 获取会话信息

/users/{userId}/conversations?access_token={access_token}&domain_id={domain_id}&client_id={client_id}
GET

8.2 设置会话信息

/users/{userId}/conversations?access_token={access_token}
POST
{
    "participant":{
        "domain_id":"",
        "client_id":""
    },
    notify_enabled :"tru/false"
}

9 应用分类接口

9.1 获取分类列表

/categories?access_token={access_token}
GET

9.2 获取指定分类

/categories/{categorieId}?access_token={access_token}
GET

10 应用接口

10.1 应用菜单

/users/{userId}/apps/menus?access_token={access_token}
GET

10.2 应用列表

/users/{userId}/apps?access_token={access_token}
GET

10.3 检查应用更新

/users/{userId}/apps/interest-list?access_token={access_token}
&org_id={org_id}&platforms={platforms}&admin_type={admin_type}&access_type={access_type}
platforms = IOS/ANDROID,GENERAL
admin_type = mobile/PC
access_type = mobile/PC
GET

10.4 检查应用更新

/users/{userId}/apps/upgrade-list?access_token={access_token}
&org_id={org_id}&platforms={platforms}&admin_type={admin_type}&access_type={access_type}
platforms = IOS/ANDROID,GENERAL
admin_type = mobile/PC
access_type = mobile/PC
POST

10.5 关注应用

/users/{userId}/apps/followships?access_token={access_token}&action=add
POST

10.6 取消关注应用

/users/{userId}/apps/followships?access_token={access_token}&action=delete
POST

10.7 获取应用信息

/users/{userId}/apps/{appId}?access_token={access_token}&org_id={org_id}&platforms={platforms}&access_type={access_type}
GET
说明 
platforms = general,ios,android
access_type = mobile,pc

11 媒体接口

11.1 上传媒体(multipart/form-data方式)

POST /medias/?file_digest=文件摘要&file_size=文件大小
Content-Type: multipart/form-data
Accept: application/json

------------boundary
Content-Disposition:form-data; name="file";filename=""
Content-Type: {content-type}

file content...

返回结果:
{
    "status" : 0,
    "message" : "OK",
    "result" : "文件ID"

}

11.2 上传媒体(json方式)

POST /medias/
Content-Type: application/json
Accept: application/json

{
    "file_name" : "文件名称",
    "file_digest" : "文件摘要",
    "file_content" : "文件内容(base64字符串)",
    "file_metadata" : {
        "key1" : "value1"
    }
}

返回结果:
{
    "status" : 0,
    "message" : "OK",
    "result" : "文件ID"

}

11.3 上传图片(multipart/form-data方式)

POST /medias/images?file_digest=文件摘要&file_size=文件大小&width=图片剪裁的宽度&heigh=图片剪裁的高度&rotate=图片旋转角度&quality=图片压缩率(0~1)&format=图片输入格式(默认jpg)
Content-Type: multipart/form-data
Accept: application/json

------------boundary
Content-Disposition:form-data; name="file";filename=""
Content-Type: {content-type}

file content...

返回结果:
{
    "status" : 0,
    "message" : "OK",
    "result" : "文件ID"

}

11.4 上传图片(json方式)

POST /medias/images
Content-Type: application/json
Accept: application/json

{
    "file_name" : "文件名称",
    "file_type" : "图片格式用于读取时响应的Content-Type"
    "file_digest" : "文件摘要",
    "file_content" : "文件内容(base64字符串)",
    "width" : 100,
    "height" : 100,
    "rotate" : 0,
    "quality" : 0.6,
    "format" : "ipg"
}

返回结果:
{
    "status" : 0,
    "message" : "OK",
    "result" : "文件ID"

}

11.5 查询媒体信息(json方式)

GET /medias/{fileId or fileDigest}
Content-Type: application/json
Accept: application/json

返回结果:
{
    "status" : 0,
    "message" : "OK",
    "result" : {
        "id": "文件id",
        "name" : "文件名称",
        "digest" : "文件摘要",
        "size" : 1000 //文件大小,
        "timestamp" : 1234567890123//文件上传时间,
        "metadata" : {
            "key1" : "value1"
        }
    }

}

11.6 下载媒体

GET /medias/{fileId or fileDigest}

12 消息接口

12.1 消息漫游

GET /users/{uid}/mboxes?begin=开始时间&limit=条数

12.2 会话消息漫游

GET /users/{uid}/mbox?begin=...&limit=...

查询参数说明:
begin=开始时间
limit=条数
participant_domain=参与者所在域
participant_type=参与者类型
participant_id=参与者id
order=first_in
include_types=包含的消息格式,如text
exclude_types=不包含的消息格式,如text

12.3 会话消息拉取

GET /users/{uid}/mbox?begin=...&limit=...

查询参数说明:
end=结束时间
limit=条数
participant_domain=参与者所在域
participant_type=参与者类型
participant_id=参与者id
order=last_in
include_types=包含的消息格式,如text
exclude_types=不包含的消息格式,如text

13 反馈接口

13.1 反馈

/feedbacks?access_token={access_token}
POST
{
    name:"",
    feedback:"",
    pictures:"",//截图
    device:"",//设置  比如 三星,小米
    system_version:"", //系统版本,比如 IOS9.3  android 6.0
    product_ersion:"" //产中版本,比如  workplus3.0
}

14 客户端接口

14.1 检测更新

/upgrade?access_token={access_token}&pkg_name={pkg_name}
GET

14.2 更新

/upgrade/{pkg_name}?access_token={access_token}
GET

15 TICKET

15.1 生成ticket

/tickets?access_token={access_token}
POST
参数
{
    "org_id":"org_id"
}

15.2 获取ticket信息

/tickets/{ticketId}?access_token={access_token}
GET

16 验证用户密码

16.1 验证用户密码

/auth?access_token={access_token}
POST
{
    "domain_id":"",
    "client_id":"",
    "device_id":"",
    "client_secret":""
}

17 分享

17.1 群分享

/discussions/{discussionId}/share?access_token={access_token}&domain_id={domain_id}&inviter={inviter}&format={format}
GET
说明
inviter:邀请者
format:url/image/octet(默认值)

17.2 个人分享

/users/{userId}/share?access_token={access_token}&format={format}
GET
说明
format:url/image/octet(默认值)

17.3 机构分享

/organizations/{code}/share?access_token={access_token}&format={format}
GET
说明
format:url/image/octet(默认值)

17.4 产品分享

/workplus/share?access_token={access_token}&format={format}
GET
说明
format:url/image/octet(默认值)

18 启动页及广告页

18.1 检测更新

/workplus/boot-settings?domain_id={domain_id}&org_id={org_id}&refresh_time={refresh_time}
GET
说明
有更新则返回更新包的媒体标识
如果没有更新,则返回空

18.2 下载启动页及广告页包

/workplus/boot-settings/{pkg_id}?domain_id={domain_id}&org_id={org_id}
GET

19 设置相关接口

19.1 域设置

/domains/{domainId}/settings?refresh_time={refresh_time}&device_platform={device_platform}&pkg_name={pkg_name}
GET
说明:
当refresh_time 大于 设置的 modify_time时
返回
{}
否则返回 
{
    "domain_settings":{
        "id": "-EVR55vu0VTZFLLlF173al",
        "domain_id": "atwork",
        "workplus_url": "123",  //应用推荐
        "org_settings": {
          "permission": "admin",     //admin-只允许域管理员创建   anonymous-任何人可以创建
          "request_enabled": true     //组织申请  true 开启  false 关闭
        },
        "user_settings": {
          "activated": true,            
          "mobile_contacts_enabled": true,        //是否开启通讯录邀请功能
          "contacts_sync": "unlimit",             //通讯录同步设置    locked 代表不开启   personal 代表可个人同步  unlimit 代表不限制
          "relationships_enabled": true,       //是否开启好友功能
          "name_modification_enabled": true      //是否开启用户名称修改功能
        },
        "email_settings": {
          "enabled": true           //是否开启邮箱功能
        },
        "create_time": 1467699443399,
        "modify_time": 1467704821046
    },
    "app_version":{}
}

19.2 组织设置

/organizations/a6e14a06-39e6-4861-b7ad-63f1895b41f5/settings?access_token={access_token}&refresh_time={refresh_time}
GET
说明:
当refresh_time 大于 设置的 modify_time时
返回
{}
否则返回 

{
  "org_code": "a6e14a06-39e6-4861-b7ad-63f1895b41f5",
  "domain_id": "atwork",          
  "view_type": "DIRECT_AND_ALL_SUPERIOR_CORP",   //可以忽略
  "counting": false,  //可以忽略
  "level": 32767,   //可以忽略
  "corp_alias": "公司",   //可以忽略
  "dept_alias": "部门",   //可以忽略
  "shake_url": "http://www.baidu.com",   //摇一摇地址,可能为空
  "node_select": "both",    //employee-只能选人  org-只能选机构   both-都可以选
 "cycle_settings": {    //圈子设置
    "enabled": false,    //是否显示圈子,true显示,false不显示
    "anonymous": false    //是否开启马甲,true开启,false不开启
  },
  "theme_settings": {    //主题设置
    "type": "SYSTEM/CUSTOM",    //类型,系统/自定义
    "theme": "skyblue"    //主题
  },
  "vpn_enabled": true,   //是否开启VPN
"vpn_settings": [
  {
       "type":"sangfor",//vpn类型,如sangfor代表:深信服
       "host":"host", //vpn主机地址
       "port":port,   //vpn端口
       "white_lists":[],    //ip白名单
       "apps":[],    //应用
    "credentials": {
      "type": "global",   //VPN类型       * 1:global(全局统一) * 2:user(使用用户体系的帐号密码) * 3:other(使用其它类型的帐号密码)
      "username": "123",  //当是类型的时候global  才会有用户名密码
      "password": "123"
    }
  }
],
  "email_settings": [    //邮箱设置  
    {
      "suffix": "1",    //后缀   imap和pop3只会出现一个
      "suffix_enabled": true/false,    //服务器身份验证是否需要邮箱后缀
      "imap": {          //imap设置
        "server": "2",
        "port": "3",
        "ssl": true
      },
      "POP3": {        //pop3 设置
        "server": "4",
        "port": "5",
        "ssl": true
      },
      "smtp": {        //smtp 设置
        "server": "4",
        "port": "5",
        "ssl": true
      }
    }
  ],
  "white_lists": []    //白名单
}

19.3 组织设置

返回用户当前的甩有组织设置
/users/{userId}/organization-settings?access_token={access_token}&refresh_time={refresh_time}
说明:
当refresh_time 大于 设置的 modify_time时
返回
{}
否则返回
//说明 下面的xxxxx,yyyyy是机构的org_code,settings参考19.2的组织设置返回的值
{
    "xxxxx":{settings},
    "yyyyy":{settings},
}

20 个人网盘

说明:
source_type;  // USER(个人), DISCUSSION(讨论组), ORG(组织)

20.1 列表

/domains/{domainId}/users/{userId}/pan?access_token={access_token}
GET
示例:
1:查询所有记录
/domains/atwork/users/sourceId/pan?access_token=89f40c338afb4a29a71711718221a961&unlimited=true
1:分页查询
/domains/atwork/users/sourceId/pan?access_token=89f40c338afb4a29a71711718221a961&skip=1&limit=10&kw=xxx&parent=xxx

查询参数说明:
parent;  //父节点标识 如果没有父节点,不传此字段  根节点的parent都为空
kw;   //关键字 
file_type;  //文件类型 TEXT, ARCHIVE, IMAGE, VIDEO, AUDIO, APPLICATION, OTHER
skip = 0;  //分页字段
limit = 20;  //分页字段
sort;   //排序字段 支持 时间(TIME),名字(NAME),大小(SIZE),默认值:时间(TIME)
order;  //排序字段  ASC DESC
unlimited;  //true/false(默认);当为true时,查询字段parent无效,且不分页,即查出所有记录(只是不支持parent,其它查询条件支持)
refresh_time = -1; //上次刷新时间
owner_id;  // 查询该拥有者的记录
owner_domain_id; // 查询该拥有者的记录

20.2 创建文件夹

/domains/{domainId}/users/{userId}/pan?access_token={access_token}&ops=create
POST
说明:
ops:代表操作类型
    create:创建
参数:
{
  "parent": "", //父节点标识,如果在根节点创建,不传此字段或传空值
  "name" : "文件夹名称",
  "user" : {
    "name":"操作者名字"
   }
}
示例:
{
  "parent": "",
  "name" : "文件夹名称",
  "user" : {
    "name":"操作者名字"
   }
}

20.3 创建文件

/domains/{domainId}/users/{userId}/pan?access_token={access_token}&ops=create&is_dir=0
POST
说明:
ops:代表操作类型
    create:创建
is_dir=0表示是文件 取值为(0,1)  0代表文件,1代表文件夹,默认值:1
如果是图片文件。请上传图片的缩略图标识到thumbnail字段,非图片文件请忽略
参数:
{
  "parent": "文件名称.xml", //父节点标识,如果在根节点创建,不传此字段或传空值
  "name" : "文件夹名称",
  "size":1000, //文件大小
  "digest":"md5码", 
  "mime_type":"text/xml", //文件的content_type,可不传,不传会根据文件名去猜
  "file_id":"文件的媒体标识", 
  "thumbnail":"图片文件的缩略图媒体标识",
  "user" : {
    "name":"操作者名字"
   }
}
示例:
{
  "name" : "文件名称.xml",
  "size":1000,
  "digest":"md5码",
  "file_id":"文件的媒体标识",
  "thumbnail":"图片文件的缩略图媒体标识",
  "user" : {
    "name":"操作者名字"
   }
}

20.4 移动

/domains/{domainId}/users/{userId}/pan?access_token={access_token}&ops=move
POST
说明:
移动只能移动同一层级的文件或文件夹,所以只有一个parent
ops:代表操作类型
    move:移动
参数:
{
  "parent" : "待移动文件(文件夹)的父标识,如无父标识可不传或传空",
  "ids":[待移动文件(文件夹)的标识,数据形式],
  "target_parent" : "文件(文件夹)的移动到的新父标识",
  "user" : {
    "name":"操作者名字"
   }
}
示例:
{
  "parent" : "725b02aaa76a42869f9ec0b9fd1508ae",
  "ids":["0fb90ebf8cef4e8b8bfca5c03ca19a7b"],
  "target_parent":"8cc0072471fb43f79e7e859bf39b4f2a",
  "user" : {
    "name":"操作者名字"
   }
}

20.5 复制

/domains/{domainId}/users/{userId}/pan?access_token={access_token}&ops=copy
POST
说明:
复制只能移动同一层级的文件或文件夹,所以只有一个parent
ops:代表操作类型
    copy:复制
参数:
{
  "parent" : "待移动文件(文件夹)的父标识",如无父标识可不传或传空",
  "ids":[待复制文件(文件夹)的标识,数据形式],
  "target_parent" : "文件(文件夹)的移动到的新父标识",
  "target_source_id":"文件(文件夹)的移动到的新的网盘标识,对应组织的ORG_CODE 或 讨论组的 ID  或  用户的 ID",
  "target_source_type":"文件(文件夹)的移动到的新的网盘类型PERSONAL(个人), DISCUSSION(讨论组), ORG(组织)",
  "user" : {
    "name":"操作者名字"
   }
}
示例:
{
  "parent" : "8a9b198303f64c2ab2dbc00590b9ed01",
  "ids":["1f652b2f9de74ad89e82a3c9c84f14ce"],
  "target_source_id":"sourceId",
  "target_source_type":"user",
  "target_parent":"8a9b198303f64c2ab2dbc00590b9ed01",
  "user" : {
    "name":"操作者名字"
   }
}

20.6 删除

/domains/{domainId}/users/{userId}/pan?access_token={access_token}&ops=remove
POST
说明:
删除只能移动同一层级的文件或文件夹,所以只有一个parent
ops:代表操作类型
    remove:删除
参数:
{
  "parent" : "待移动文件(文件夹)的父标识",如无父标识可不传或传空",
  "ids":[待删除文件(文件夹)的标识,数据形式],
  "user" : {
    "name":"操作者名字"
   }
}

示例:
{
  "parent" : "",
  "ids":["7f12fe9ad37141c68aed907a3ab2b8c3"],
  "user" : {
    "name":"操作者名字"
   }
}

20.7 修改名字

/domains/{domainId}/users/{userId}/pan/{id}?access_token={access_token}&ops=rename
POST
说明:
id:当前文件或文件夹的标识
ops:代表操作类型
    rename:修改名字
参数:
{
  "name" : "新文件名称",
  "user" : {
    "name":"操作者名字"
   }
}

20.8 文件夹上传

/domains/{domainId}/users/{userId}/pan?access_token={access_token}&ops=multi_create
POST
说明:
is_dir:1表示文件夹,0表示文件
ops:代表操作类型
    multi-create:上传文件夹
参数:
{
  "parent": "", 
  "user" : {
    "name":"操作者名字"
   },
   "files":[
           {
               "is_dir":1,
               "path":"/父文件夹",
               "name":"父文件夹"
           },
           {
               "is_dir":0,
               "path":"/父文件.jsp",
               "name":"父文件.jsp",
               "size":1000, 
           "digest":"md5码", 
           "mime_type":"text/xml",
           "file_id":"文件的媒体标识", 
           "thumbnail":"图片文件的缩略图媒体标识"
           },
           {
               "is_dir":1,
               "path":"/父文件夹/子文件夹",
               "name":"子文件夹"
           }
   ]
}

20.9 上传文件 (multipart/form-data方式)

/domains/{domainId}/users/{userId}/pan?access_token={access_token}&file_digest=文件摘要&file_size=文件大小
POST
Content-Type: multipart/form-data
Accept: application/json

------------boundary
Content-Disposition:form-data; name="file";filename=""
Content-Type: {content-type}

file content...

返回结果:
{
    "status" : 0,
    "message" : "OK",
    "result" : "文件ID"

}

20.10 断点上传文件 (multipart/form-data方式)

/domains/{domainId}/users/{userId}/pan/{idOrDigest}?access_token={access_token}Content-Type: multipart/form-data
Accept: application/json
POST
说明:参考 23.2 断点上传✍️

20.11 下载文件

/domains/{domainId}/users/{userId}/pan/{id}?access_token={access_token}
GET
说明
id:表示网盘文件的标识,不是指文件对就的媒体标识

21 讨论组网盘

说明:参数参考个人网盘

21.1 列表

/domains/{domainId}/discussions/{discussionId}/pan?access_token={access_token}
GET

21.2 创建文件夹

/domains/{domainId}/discussions/{discussionId}/pan?access_token={access_token}&ops=create
POST

21.3 创建文件

/domains/{domainId}/discussions/{discussionId}/pan?access_token={access_token}&ops=create&is_dir=0
POST

21.4 移动

/domains/{domainId}/discussions/{discussionId}/pan?access_token={access_token}&ops=move
POST

21.5 复制

/domains/{domainId}/discussions/{discussionId}/pan?access_token={access_token}&ops=copy
POST

21.6 删除

/domains/{domainId}/discussions/{discussionId}/pan?access_token={access_token}&ops=remove
POST

21.7 修改名字

/domains/{domainId}/discussions/{discussionId}/pan/{id}?access_token={access_token}&ops=rename
POST

21.8 文件夹上传

/domains/{domainId}/discussions/{discussionId}/pan?access_token={access_token}&ops=multi_create
POST

21.9 上传文件 (multipart/form-data方式)

/domains/{domainId}/discussions/{discussionId}/pan?access_token={access_token}&file_digest=文件摘要&file_size=文件大小
POST

21.10 断点上传文件 (multipart/form-data方式)

/domains/{domainId}/discussions/{discussionId}/pan/{idOrDigest}?access_token={access_token}
POST

21.11 下载文件

/domains/{domainId}/discussions/{discussionId}/pan/{id}?access_token={access_token}
GET

22 组织网盘

说明:参数参考个人网盘

22.1 列表

/domains/{domainId}/orgs/{orgId}/pan?access_token={access_token}
GET

22.2 创建文件夹

/domains/{domainId}/orgs/{orgId}/pan?access_token={access_token}&ops=create
POST

22.3 创建文件

/domains/{domainId}/orgs/{orgId}/pan?access_token={access_token}&ops=create&is_dir=0
POST

22.4 移动

/domains/{domainId}/orgs/{orgId}/pan?access_token={access_token}&ops=move
POST

22.5 复制

/domains/{domainId}/orgs/{orgId}/pan?access_token={access_token}&ops=copy
POST

22.6 删除

/domains/{domainId}/orgs/{orgId}/pan?access_token={access_token}&ops=remove
POST

22.7 修改名字

/domains/{domainId}/orgs/{orgId}/pan/{id}?access_token={access_token}&ops=rename
POST

22.8 文件夹上传

/domains/{domainId}/discussions/{discussions}/pan?access_token={access_token}&ops=multi_create
POST

22.9 上传文件 (multipart/form-data方式)

/domains/{domainId}/discussions/{discussionId}/pan?access_token={access_token}&file_digest=文件摘要&file_size=文件大小
POST

22.10 断点上传文件 (multipart/form-data方式)

/domains/{domainId}/discussions/{discussionId}/pan/{idOrDigest}?access_token={access_token}
POST

22.11 下载文件

/domains/{domainId}/discussions/{discussionId}/pan/{id}?access_token={access_token}
GET

22.12 权限操作

/domains/{domainId}/orgs/{userId}/pan?access_token={access_token}&ops=chmod
POST
说明:
参数:
{
  "readonly" : true/false
}

23 断点续传

说明:包括 上传与下载的续传

23.1 下载

GET /medias/{fileId or fileDigest}
提交请求头信息 Range:bytes=start-end
会返回 start-end 的数据;
如果end不写或写*(bytes=start- 或  bytes=start-*),则返回start到文件结尾的数据

返回头信息说明:
返回状态为:206(代表Partial Content)
Content-Range:        bytes 0-2221/23753

请求头示例
Range:bytes=0-2000
Range:bytes=100-
Range:bytes=100-*

23.2 上传

说明:
上传分两步走:
1:用文件的digest先去服务器查询
2:用第一步返回的id上传文件(如果已知文件id,可以忽略第一步)
1:用文件的digest先去服务器查询
/medias/{digest}?type=digest&access_token={access_token}
POST
Content-Type:multipart/form-data

返回结果:
{
"id": "Z3JvdXAxL00wMC8wMC82NS9yQkFCR1ZmWTZueUVPa1BOQUFBQUFBQUFBQUEyNDAudG1w",
"digest": "digest",
"state": 1, //state=1代表文件还在上传中,state=0表示文件以经上传完毕,可以下载
"size": 0,
"timestamp": 0
}
特别说明:
state=1代表文件还在上传中,state=0表示文件以经上传完毕,可以下载
2:用第一步返回的id上传文件
/medias/{id}?access_token={access_token}
POST
Content-Type:multipart/form-data
Range:bytes=start-end/filesize
参数
file(要上传的文件chunk)
请求头说明:
start:文件开始点
end:文件结束点
filesize:文件大小(特别注意:指的是文件的总大小,并不是指每次上传的chunk大小)
返回值示例
{
"id": "Z3JvdXAxL00wMC8wMC82NS9yQkFCR1ZmWTdMdUVYYlE1QUFBQUFBQUFBQUE4NzgudG1w",
"name": "test1.jpg",
"digest": "digest321321",
"state": 0,
"size": 23753,
"timestamp": 1473834524838,
"metadata":{}
}

24 查询用户在线状态

/users/online-list?access_token={access_token}
POST
参数
{
    user_ids:["id1","id2"]  //查询用户标识集合
}

返回参数
{
    offline":[
        "id1"  //离线用户标识集合
    ],
    "online":[
        "id2"  //在线用户标识集合
    ],
    "ANDORID":[
        "id2"  //android在线用户标识集合
    ],
    "IOS":[
        "id2"  //ios在线用户标识集合
    ],
    "MAC":[
        "id2"  //mac在线用户标识集合
    ]
}

25 转换接口

25.1 媒体转换接口

/medias/{mediaId}/translate?access_token={access_token}
&source_type={source_type}&dest_type={dest_type}
GET
说明
    source_type:源类型
    dest_type:目标类型
支持  office转pdf  pdf转图片  office转图片  amr转Mp3  其它不支持
如:pdf转图片
source_type=pdf&dest_type=jpg

results matching ""

    No results matching ""