邮箱管理
查询邮箱账号
描述
根据邮箱名查询企业邮箱内的邮箱信息
支持的模式
- client_credentials
请求方法
GET
请求地址
https://api.ecnu.edu.cn/api/v1/mail/account
请求参数
字段 | 是否必须 | 说明 |
---|---|---|
account_name | 是 | 邮箱名称 |
返回参数
字段 | 说明 |
---|---|
account_name | 邮箱帐号名 |
account_openid | 帐号id |
addr_right | 是否有查看企业通讯录权限,0-没有,1-有 |
addr_visible | 是否在企业通讯录中显示,0-不显示,1-显示 |
authcode_status | 是否开启客户端授权码,0-关闭,1-开启 |
bigattach_right | 是否有超大附件的权限,0-没有,1-有 |
bigattach_status | 是否已激活超大附件,0-没有,1-有 |
create_time | 帐号创建时间 |
dashi | 是否开启邮箱大师私有协议,0-没有开启,1-开启 |
domain | 域名 |
domain_openid | 域名id |
exp_time | 过期时间 |
flashmail | 是否有闪电邮登录权限,0-没有,1-有 |
fwd | 是否有自动转发权限,0-没有,1-有 |
fwdauth | 自动转发是否需要手机验证,0-否,1-是 |
gender | 性别,0-男,1-女,2-保密 |
imap | 是否有imap登录权限,0-没有,1-有 |
job_no | 工号 |
main_account_login_forbidden | 是否禁止主账号登录,0-允许,1-禁止 |
mobile | 用户资料手机号码信息 |
nickname | 姓名 |
org_openid | 企业id |
pass_general | 是否允许自助重置密码,0-禁止,1允许 |
pass_mobile | 是否允许通过手机验证码重置密码,0-禁止,1允许 |
passchange_req | 帐号首次登录是否需要修改密码,0-不需要,1需要 |
passchange_time | 最后一次密码修改时间 |
pop | 是否有pop登录权限,0-没有,1-有 |
remark | 备注 |
secondary_logon | 是否强制开启二次验证,0 -不强制,1-强制,-1不更改 |
smtp | 是否有smtp登录权限,0-没有,1-有 |
status | 邮箱帐号状态,0-正常,1-禁用,2-删除 |
type | 邮箱帐号类型,2-普通帐号,0-邮件列表 |
unit_id | 部门id |
unit_list | 所属部门列表 |
web | 是否有网页端登录权限,0-没有,1-有 |
yixin | 是否有马上办登录权限,0-没有,1-有 |
请求示例
curl -H "Authorization: Bearer a4169ff1c5503d6eb94f84d13b6776e0" "https://api.ecnu.edu.cn/api/v1/mail/account?account_name=qfeng@admin.ecnu.edu.cn"
返回示例
json
{
"errCode": 0,
"errMsg": "success",
"requestId": "140e35a2-b2ac-413b-b4a5-b64d839727f5",
"data": {
"account_name": "********",
"account_openid": "723b54bfa48b99cbb5e2c1e473b56077",
"add_right": 0,
"add_visible": 0,
"AliasList": null,
"authcode_status": 1,
"bigattach_right": 1,
"bigattach_status": 1,
"create_time": 1560249041000,
"dashi": 1,
"domain": "admin.ecnu.edu.cn",
"domain_openid": "6271796697cf7bde",
"flashmail": 1,
"fwd": 1,
"fwdauth": 1,
"gender": "2",
"imap": 1,
"job_no": "",
"main_account_login_forbidden": 0,
"mobile": "",
"nickname": "**骐",
"org_openid": "7e4ddc6e6bafdf14",
"pass_general": 1,
"pass_mobile": 1,
"passchange_req": 0,
"passchange_time": 1561100256000,
"pop": 1,
"remark": "",
"secondary_login": 0,
"smtp": 1,
"status": 0,
"type": 2,
"unit_id": "1308133",
"unit_list": ["1308133"],
"web": 1,
"yixin": 1
}
}
创建邮箱账号
描述
创建邮箱账号
支持的模式
- client_credentials
请求方法
GET
请求地址
https://api.ecnu.edu.cn/api/v1/mail/account
请求参数
字段 | 是否必须 | 说明 |
---|---|---|
account_name | 是 | 邮箱账号 |
nickname | 是 | 邮箱名称 |
remark | 否 | 备注 |
exp_time | 否 | 有效期,格式 YYYY-MM-DD,例如 2020-11-06 表示有效期至 2020-11-06 零点。空值表示无有效期控制 |
passchange_req | 否 | 0-不需要,1-web登录需要,客户端不需要,2-web登录需要且未改密码前客户端不能登录。建议统一给 2 |
返回参数
字段 | 类型 | 说明 |
---|---|---|
password | string | 初始密码 |
请求示例
curl -X POST -H "Authorization: Bearer a4169ff1c5503d6eb94f84d13b6776e0" -H "content-type: application/json" -d "{\"account_name\":\"qqqqqfffffeeeeng@admin.ecnu.edu.cn\",\"nickname\":\"小冯冯\",\"remark\":\"这是一条备注\",\"exp_time\":\"2021-7-7\",\"passchange_req\":\"2\"}" https://api.ecnu.edu.cn/api/v1/mail/account
返回示例
json
{"errCode":0,"errMsg":"success","requestId":"4da6030c-7bc6-43ad-a6f4-9b1f366d547c","data":{"password":"1gY4nJ5f"}}
更新邮箱账号
描述
更新邮箱账号
支持的模式
- client_credentials
请求方法
GET
请求地址
https://api.ecnu.edu.cn/api/v1/mail/account
请求参数
字段 | 是否必须 | 说明 |
---|---|---|
account_name | 是 | 邮箱账号 |
nickname | 是 | 邮箱名称 |
remark | 否 | 备注 |
exp_time | 否 | 有效期,格式 YYYY-MM-DD,例如 2020-11-06 表示有效期至 2020-11-06 零点。空值表示无有效期控制 |
返回参数
无
请求示例
curl -X PUT -H "Authorization: Bearer a4169ff1c5503d6eb94f84d13b6776e0" -H "content-type: application/json" -d "{\"account_name\":\"qqqqqfffffeeeeng@admin.ecnu.edu.cn\",\"nickname\":\"冯冯\",\"remark\":\"这备注\",\"exp_time\":\"\"}" https://api.ecnu.edu.cn/api/v1/mail/account
返回示例
json
{"errCode":0,"errMsg":"success","requestId":"77dd28bf-9c84-4609-bdfb-dfbe350e6732","data":null}
获取教职工绑定邮箱
描述
获取教职工IDC中单点登录绑定的邮箱
每个工号只可能绑定一个单点登录的邮箱
支持的模式
- authorization_code
- client_credentials
- password
请求方法
GET
请求地址
https://api.ecnu.edu.cn/api/v1/mail/sso/bind
请求参数
字段 | 是否必须 | 说明 |
---|---|---|
userId | 是 | 工号 |
返回参数
字段 | 说明 |
---|---|
邮箱帐号 | |
name | 姓名 |
bindType | 绑定模式,固定为sso |
userId | 工号 |
请求示例
bash
curl -H "Authorization: Bearer a4169ff1c5503d6eb94f84d13b6776e0" "https://api.ecnu.edu.cn/api/v1/mail/sso/bind?userId=20****73"
返回示例
json
{
"data": [{
"mail": "****@admin.ecnu.edu.cn",
"name": "冯*",
"bindType": "sso",
"userId": "20****73"
}],
"errCode": 0,
"requestId": "a9fef69716733448542377110e",
"errMsg": "success",
"apiLog": null
}
新增教职工绑定邮箱
描述
新增教职工IDC中单点登录绑定的邮箱
支持的模式
- authorization_code
- client_credentials
- password
请求方法
POST
请求地址
https://api.ecnu.edu.cn/api/v1/mail/sso/bind
请求参数
字段 | 是否必须 | 说明 |
---|---|---|
userId | 是 | 工号, 以 url query 方式传递 |
是 | request body 内传递,json 或 x-www-form-urlencoded 皆可 |
返回参数
无
请求示例
bash
curl -H -X POST "Authorization: Bearer a4169ff1c5503d6eb94f84d13b6776e0" -d "mail=***@admin.ecnu.edu.cn" "https://api.ecnu.edu.cn/api/v1/mail/sso/bind?userId=20****73"
or
bash
curl -H -X POST "Authorization: Bearer a4169ff1c5503d6eb94f84d13b6776e0" -H "content-type: application/json" -d "{\"mail\":\"****@admin.ecnu.edu.cn\"}" "https://api.ecnu.edu.cn/api/v1/mail/sso/bind?userId=20****73"
返回示例
json
{"errCode":0,"errMsg":"success","requestId":"77dd28bf-9c84-4609-bdfb-dfbe350e6732","data":null}
修改教职工绑定邮箱
描述
修改教职工IDC中单点登录绑定的邮箱
支持的模式
- authorization_code
- client_credentials
- password
请求方法
PUT
请求地址
https://api.ecnu.edu.cn/api/v1/mail/sso/bind
请求参数
字段 | 是否必须 | 说明 |
---|---|---|
userId | 是 | 工号, 以 url query 方式传递 |
是 | request body 内传递,json 或 x-www-form-urlencoded 皆可 |
返回参数
无
请求示例
bash
curl -H -X PUT "Authorization: Bearer a4169ff1c5503d6eb94f84d13b6776e0" -d "mail=***@admin.ecnu.edu.cn" "https://api.ecnu.edu.cn/api/v1/mail/sso/bind?userId=20****73"
or
bash
curl -H -X PUT "Authorization: Bearer a4169ff1c5503d6eb94f84d13b6776e0" -H "content-type: application/json" -d "{\"mail\":\"****@admin.ecnu.edu.cn\"}" "https://api.ecnu.edu.cn/api/v1/mail/sso/bind?userId=20****73"
返回示例
json
{"errCode":0,"errMsg":"success","requestId":"77dd28bf-9c84-4609-bdfb-dfbe350e6732","data":null}
删除教职工绑定邮箱
描述
删除教职工IDC中单点登录绑定的邮箱
支持的模式
- authorization_code
- client_credentials
- password
请求方法
DELETE
请求地址
https://api.ecnu.edu.cn/api/v1/mail/sso/bind
请求参数
字段 | 是否必须 | 说明 |
---|---|---|
userId | 是 | 工号, 以 url query 方式传递 |
返回参数
无
请求示例
bash
curl -H -X DELETE "Authorization: Bearer a4169ff1c5503d6eb94f84d13b6776e0" "https://api.ecnu.edu.cn/api/v1/mail/sso/bind?userId=20****73"
返回示例
json
{"errCode":0,"errMsg":"success","requestId":"77dd28bf-9c84-4609-bdfb-dfbe350e6732","data":null}
通过工号查询关联的绑定邮箱
描述
通过工号查询关联的绑定邮箱,包括:
- idc.ecnu.edu.cn 内绑定的单点登录邮箱(bindType=sso) ,每个工号只可能对应一个 sso 绑定的邮箱
- mail.ecnu.edu.cn 上可以使用公共数据库密码登录的邮箱(bindType=password),每个工号可能对应多个 password 绑定的邮箱(当用户有多个邮箱同时使用时)
支持的模式
- authorization_code
- client_credentials
- password
请求方法
GET
请求地址
https://api.ecnu.edu.cn/api/v1/mail/bindbyuserid
请求参数
字段 | 是否必须 | 说明 |
---|---|---|
userId | 是 | 工号 |
返回参数
字段 | 说明 |
---|---|
邮箱帐号 | |
name | 姓名 |
bindType | 绑定模式,固定为sso |
userId | 工号 |
请求示例
bash
curl -H "Authorization: Bearer a4169ff1c5503d6eb94f84d13b6776e0" "https://api.ecnu.edu.cn/api/v1/mail/sso/bind?userId=20****73"
返回示例
json
{
"data": [{
"mail": "q***@admin.ecnu.edu.cn",
"name": "冯*",
"bindType": "sso",
"userId": "20****73"
}, {
"mail": "q***@admin.ecnu.edu.cn",
"name": "冯*",
"bindType": "password",
"userId": "20***73"
}],
"errCode": 0,
"requestId": "a9fef00816733514085234145e",
"errMsg": "success",
"apiLog": null
}
通过邮箱查询关联的绑定工号
描述
通过邮箱查询关联的绑定工号,包括:
- idc.ecnu.edu.cn 内绑定的单点登录关系(bindType=sso) ,每个邮箱可能对应多个工号(当用户同时拥有多个工号是,例如博后+教职工等)
- mail.ecnu.edu.cn 上可以使用公共数据库密码登录的绑定关系(bindType=password),每个邮箱只可能对应一个工号
支持的模式
- client_credentials
请求方法
GET
请求地址
https://api.ecnu.edu.cn/api/v1/mail/bindbymail
请求参数
字段 | 是否必须 | 说明 |
---|---|---|
mail是 | 邮箱 |
返回参数
字段 | 说明 |
---|---|
邮箱帐号 | |
name | 姓名 |
bindType | 绑定模式,固定为sso |
userId | 工号 |
请求示例
bash
curl -H "Authorization: Bearer a4169ff1c5503d6eb94f84d13b6776e0" "https://api.ecnu.edu.cn/api/v1/mail/bindbymail?mail=***@admin.ecnu.edu.cn
返回示例
json
{
"data": [{
"mail": "q***@admin.ecnu.edu.cn",
"name": "冯*",
"bindType": "sso",
"userId": "20****73"
}, {
"mail": "q***@admin.ecnu.edu.cn",
"name": "冯*",
"bindType": "password",
"userId": "20***73"
}],
"errCode": 0,
"requestId": "a9fef00816733514085234145e",
"errMsg": "success",
"apiLog": null
}