# Profile APIs

本组API用于处理用户信息。

# 查询我的用户信息

# 功能介绍

该接口用于查询我的用户信息

# 请求参数

除了access_token无其他参数

# 响应参数

所有API的响应参数都具有相同的通用结构,本文档只描述通用结构中entities数组中返回的数据对象。

  • Profile用户信息 Structure

括号内的scope表示该字段支持的scope,非此scope将不包含该字段

{
    "id":{guid},                   // 自然人标识(basic,essential,profile,privacy), 集体账号等非个人账号无此项数据。同一自然人的多个账号具有相同id
    "account":{string},            // jaccount, 账号名(basic,essential,profile,privacy)
    "name":{string},               // 真实姓名(basic,essential,profile,privacy)
    "kind":"canvas.profile",       // 类型(basic,essential,profile,privacy)
    "code":{string},               // 默认身份的学/工号(essential,profile,privacy)
    "userType": {string},          // 默认身份的身份类型,身份类型列表见下表 (essential,profile,privacy)
    "organize":{                   // 默认身份所属机构(essential,profile,privacy)
        "id":{string},    
        "name":{string}            // 组织机构名
    },    
    "topOrganize":{                // 默认身份所属机构对应的二级单位,请不要做持久化使用谨防数据更新。(essential,profile,privacy)
         "id":{string},    
         "name":{string}           // 组织机构名
    },
    "classNo":{string},            // 当userType是student时,该值为班号信息(profile,privacy)                      
    "avatars":{                    // 头像(privacy)
        "uriTiny": {uri},          // 小头像
        "uriNormal": {uri},        // 中头像
        "uriLarge": {uri},         // 大头像
    },    
    "birthday": {long},            // 生日(privacy)
    "gender": {string},            // 性别, male or female(profile,privacy)
    "about": {string},             // 个人简介(profile,privacy)
    "email": {string},             // 主要邮箱(profile,privacy)
    "timeZone": {int},             // 用户所在时区,默认+8(basic,essential,profile,privacy)
    "mobile": {string},            // 手机号码 (profile,privacy)
    "identities":[nicman.identity],// 账号绑定身份信息(essential,profile,privacy)
    "cardNo":{string},             // 证件号码(privacy)
    "cardType":{string},           // 证件类型,值含义见下表(privacy)
    "unionId":{string},            // 账号绑定的网络中心微信号id,仅授权应用可访问 (connect_wechat)
    "accountPhotoUrl":{String}     // 账号头像(essential,profile,privacy)
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
  • Identity身份信息 Structure
{
    "kind":"nicman.identity"     // model类型
    "isDefault":{boolean},       // 是否是默认身份
    "defaultOptional":{boolean}, // 是否可以设置为默认身份
    "code":{string},             // 学/工号
    "userType": {string},        // 身份类型,
    "organize":{                 // 组织机构名。学生身份表示学籍所在机构,教职工身份表示人事关系所在机构。
         "id":{string},
         "name":{string}         
     },
     "topOrganize":{             // organize对应的二级组织机构。计算值,在组织机构调整时,organize不变的情况下topOrganize仍可能变化,因此请避免持久化使用。
         "id":{string},
         "name":{string}         
    },
    "mgtOrganize": {             // 学生身份的管理所在组织机构,教职工身份的返聘所在组织机构(如有)
        "id":{string},
        "name":{string}         
     },
    "topMgtOrganize": {          // mgtOrganize对应的二级组织机构。计算值,在组织机构调整时,mgtOrganize不变的情况下topMgtOrganize仍可能变化,因此请避免持久化使用。
        "id":{string},
        "name":{string}         
    },
    "topOrganizes": [{           // 该身份对应的多组织机构信息,二级机构列表,当前仅针对教职工身份返回
      "id":{string},
      "name":{string}
    }],
    "classNo":{string},          // 当userType是student时,该值为班号信息
    "status":{string},           // 身份状态,取值见身份状态表
    "expireDate":{string},       // 身份有效期
    "createDate":{long},         // 身份创建时间
    "updateDate":{long},         // 身份更新时间
    "gjm":{string},              // 国籍码
    "major": { 
        "name":{string},         // 当userType是student时,该值为专业名称(profile,privacy)
         "id":{string}           // 当userType是student时,该值为专业代码(profile,privacy)
    },  
    "admissionDate":{string},    // 当userType是student时,该值为入校时间,格式YYYY-MM-DD(profile,privacy)
    "trainLevel":{string},       // 当userType是student时,该值为培养层次(profile,privacy)
    "graduateDate":{string},     // 当userType是student时,该值为预计毕业时间,格式YYYY-MM-DD(profile,privacy)
    "photoUrl":{string},         // 当userType是student/faculty时, 该值为照片下载地址,含更新时间戳(privacy)
    "facultyType":{              // 当userType是faculty时,该字段标识教职工类型(profile,privacy)
         "id":{String},          // 教职工类别吗
         "name":{String}         // 教职工类别描述
    },
    "type": {                     // 当userType是student/faculty时,该字段标识人员类别(profile,privacy)
         "id":{String},           //人员类别码
         "name":{String}          //人员类别描述
    }
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
  • userType身份类型列表 Data
Value Description
faculty 教职工
student 学生
yxy 医学院教职工
fs 附属单位职工
vip vip
postphd 博士后
external_teacher 外聘教师
summer 暑期生
alumni 校友
green 绿色通道
outside 合作交流
fszxjs 附属中学教师
freshman 新生
team 集体账号 (此项非身份类型,仅可能出现在Profile结构中,表示账号为集体账号)
  • status身份状态列表 Data
UserType Value Description
faculty 正常
faculty 离职 人事系统标记离职
faculty 退休 人事系统标记退休
faculty 退休返聘
faculty 过期
faculty 其他 其他状态
student,freshman 正常 未标记离校(离校标记来自离校系统,学生身份有效性建议参考有效期)
student,freshman 离校 已标记离校
其他类型 正常
其他类型 过期
  • cardType证件类型列表 Data
Value Description
01 身份证
02 户口簿
03 护照
04 军官证
05 士兵证
06 港澳居民来往内地通行证
07 台湾居民来往大陆通行证
08 临时身份证
09 外国人居留证
10 警官证
11 其他证件
12 港澳台居民居住证
13 外籍人士中国永居证
14 外国人工作许可证
15 港澳台身份证

# 请求示例

GET /v1/me/profile HTTP/1.1
Host: api.sjtu.edu.cn
1
2

# 响应示例


示例 成功的响应
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8

{
    "errno":0,
    "error":"success",
    "total":0,
    "entities":[{
        "id":"A0000000-1111-2222-3333-012345678901",
        "account":"testprofile",
        "name":"张三",
        "kind":"canvas.profile",
        "timeZone":0
    }]
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

# 查询指定用户的信息

注意此API不对外开放

# 路径参数

  • 用户可以根据jAccount或者userId(学工号)来查询

# 响应参数

参见查询我的用户信息中的响应参数

# 请求示例

GET /v1/profile/testprofile HTTP/1.1
Host: api.sjtu.edu.cn
1
2

# 响应示例

参见查询我的用户信息中的响应示例