引言
欢迎使用知人的应用编程接口 API v2.0 通过 API 您可以接入知人提供的大部分服务。
知人 API v2.0 遵循 RESTful 风格,所有 API 的 URL 都是
https://zhiren.com/api/v2/<apiname>
- 请求中的业务数据以 JSON 格式传递,认证数据则以 URL 查询参数的形式传递。
- 响应以 HTTP Status Code 来表示成功(2xx)或失败,如果失败,则会在响应体中以 JSON 格式给出详细的错误信息。
认证
知人第三方服务称为 Product,通过 API 请求知人时,每一个需要验证的请求都要进行签名。
Product 对应每个 Company 都有唯一的 access_key 与 secret_key 。
Parameters
- access_key
- 访问识别码,当您成为知人第三方服务,对应每个开通服务的公司,都会有一对 access_key 和 secret_key, 其中 access_key 必须在每次请求中附上,而 secret_key 请务必放在私有的空间,千万不可在请求中传递。
- signature
- 使用你的 secret_key 进行签名后的字符串,放入 header 的自定义字段 x-zhiren-signature
- tonce
- 请求时间, 必须以 Unix Time 的格式发送, tonce与服务器时间不得超过正负 5 分钟, 否则请求将视为无效。
- payload
- 被签名的数据体部分,JSON 格式的字符串。
signature 的算法
我们用伪代码表示签名的算法如下:
signature = HMAC-SHA256( secret_key, string_to_sign )
首先根据请求的参数,把参数转换为 string_to_sign, 然后用 HMAC-SHA256 算法和你的 secret_key 进行签名。
string_to_sign 的生成方式
上面的公式中的 string_to_sign 由五部分组成:
string_to_sign = http_method + path + access_key + tonce + payload.to_json
signature = OpenSSL::HMAC.hexdigest 'SHA256', secret_key, string_to_sign
var utf8 = require("utf8");
var crypto = require("crypto");
signature = crypto.createHmac('sha256', secret_key).update(utf8.encode(payload_str)).digest('hex');
| 组成部分 | 描述 |
|---|---|
| http_method | 必须为大写, 比如 “POST”, “GET”, “DELETE”, “PATCH” 等 |
| path | 假设你请求的uri为 https://zhiren.com/api/v2/example 那么 path 应该为 /api/v2/example |
| access_key | 访问识别码 |
| tonce | 请求时间 |
| payload | 被签名的数据体部分,JSON 格式的字符串。 |
那么最终用于签名的原字符串,就是把这五个部分链接起来皆可(注意顺序不可颠倒)。
$.get("https://zhiren.com/api/v2/employees", {
"access_key": "YOUR_APP_KEY",
"signature": "YOUR_SIGNATURE",
"tonce": "YOUR_TONCE",
"payload": "YOUR_PAYLOAD"
}, function(data) {
alert(data);
});
curl "https://zhiren.com/api/v2/employees?access_key=YOUR_APP_KEY&\
signature=YOUR_SIGNATURE&\
tonce=YOUR_TONCE&\
payload=YOUR_PAYLOAD"
授权
知人为第三方服务进行标准 Oauth2 协议授权,允许操作用户数据,通过 API 请求用户数据前,需要实现进行授权,并取得授权 token。
对应的每个第三方服务,都有唯一的 app_id ,app_secret与
callback_url。
对应的每个第三方服务的每个用户,都有唯一的response_code, access_token。
| 参数名 | 描述 |
|---|---|
| app_id | 客户端访问识别码,当您成为知人第三方服务,对应每个开通服务的公司,都会有一对 app_id, app_secret 和 callback_url, 用于建立 oauth 请求,并且在用户进行授权请求中附上。 |
| callback_url | 用户授权后的回调 URL,用户授权后将跳转到该地址。 |
| response_code | 用户授权后成功后,返回给第三方一个repsonse_code,用于标明是该用户已授权,此时,第三方将app_id,app_secret,callback_url以及response_code一同发送给知人,将返回唯一授权标识access_token。 |
| access_token | 当用户在第三方请求知人服务时,附上 access_token = access token value 参数,即可调用知人 Oauth API。 |
错误码
正常API返回的 HTTP Status Code 为 2xx 或 3xx。如果遇到错误,HTTP Status Code 为 4xx 或 5xx, 同时返回报文内容会包含具体错误信息,包括错误代码和错误消息。
API 错误代码列表
| 错误代码 | 描述 |
|---|---|
| 0 | 成功 |
| 1xxx | 认证错误 |
| 1001 | 缺少 access_key |
| 1002 | 缺少签名 |
| 1003 | 缺少 tonce |
| 1101 | 签名无效 |
| 1102 | 不存在的记录 |
| 1103 | tonce 无效 |
| 1104 | 没有找到对应的公司 |
| 1105 | access_key 无效 |
| 2xxx | 参数错误 |
| 2001 | 未实现:API参数验证错误 |
| 2002 | 对象验证错误 |
| 2003 | 未实现:无效的身份事项代码 |
| 2004 | JSON 格式错误 |
| 3xxx | 参数错误 |
| 3001 | 没有权限访问该 API |
| 3002 | bind_code 已过期 |
| 9xxx | 其他错误 |
{
"code": 1xxx,
"text": "error message here"
}
更新日志
2016-09-09
创建文档
2016-12-29
新增员工提醒、出勤员工、Moka 候选人 API
2017-01-08
新增获取子公司、子公司部门、子公司员工信息的 API
2017-01-17
新增绑定、解绑 Moka 公司以及查询 bind_code 有效性的 API
2017-03-18
新增出勤打卡 API
2017-06-06
Department 对象去掉 sub_company 字段,移除如下接口:
GET /api/v2/sub_companies/:sub_company_uuid/departments
GET /api/v2/sub_companies/:sub_company_uuid/departments/:uuid
2017-06-20 Employee 对象中新增 job_title 字段
2017-07-07 Employee 对象中新增 leader_uuid, virtual_leader_uuid 字段,Department 对象中新增 charger_uuid 字段,新增根据 uuid 查找员工信息
公司
Company
| 属性 | 类型 | 默认值 | 描述 |
|---|---|---|---|
| uuid | 字符串 | 姓名 | |
| name | 字符串 | 公司简称 | |
| full_name | 字符串 | 公司全称 | |
| logo | 字符串 | logo |
分公司
Sub Company
| 属性 | 类型 | 默认值 | 描述 |
|---|---|---|---|
| uuid | 字符串 | 分公司唯一标识符 | |
| company_uuid | 字符串 | 母公司唯一标识符 | |
| name | 字符串 | 分公司名称 | |
| short_name | 字符串 | 分公司简称 | |
| registered_address | 字符串 | 注册地址 | |
| boss | 字符串 | 法人姓名 |
部门
Department
| 属性 | 类型 | 默认值 | 描述 |
|---|---|---|---|
| name | 字符串 | 部门名称 | |
| uuid | 字符串 | 部门唯一标识符 | |
| superior_uuid | 字符串 | 上级部门唯一标识符 | |
| charger_uuid | 字符串 | 部门负责人唯一标识符 |
员工
Employee
| 属性 | 类型 | 默认值 | 描述 |
|---|---|---|---|
| uuid | 字符串 | ||
| name | 字符串 | 姓名 | |
| sex | 枚举串 | 性别 | |
| 字符串 | 邮箱 | ||
| mobile | 字符串 | 手机号 | |
| empno | 字符串 | 员工编号 | |
| phone_number | 字符串 | 手机号 | |
| id_number | 字符串 | 身份证号 | |
| address | 字符串 | 详细地址 | |
| bank_name | 字符串 | 开户行 | |
| bank_card | 字符串 | 银行卡号 | |
| photo | 字符串 | 头像 | |
| marriage | 字符串 | 婚姻状况 | |
| birthday | 字符串 | 公历生日 | |
| join_date | 日期 | 入职日期 | |
| probation_end_date | 日期 | 试用期转正日期 | |
| avatar | 字符串 | 头像 | |
| leave_date | 日期 | 离职日期 | |
| category | 字符串 | 员工类型,详见下方说明 | |
| status | 字符串 | 员工状态,详见下方说明 | |
| department_uuid | 字符串 | 所在部门唯一标示符 | |
| exmail | 字符串 | 企业邮箱地址 | |
| job_title | 字符串 | 职位 | |
| job_grade | 字符串 | 职级 | |
| nickname | 字符串 | 昵称 | |
| dingtalk_id | 字符串 | 钉钉 ID | |
| wework_id | 字符串 | 企业微信 ID | |
| leader_uuid | 字符串 | 汇报人唯一标识符 | |
| virtual_leader_uuid | 字符串 | 虚线汇报人唯一标识符 | |
| sub_company | 字符串 | 合同公司 |
员工类型说明 (category)
Parameters
- fulltime
- 全职
- part_time
- 兼职
- intern
- 实习生
- contractor
- 劳务派遣
员工状态说明 (status)
Parameters
- waiting
- 待入职
- probation
- 试用期
- regular
- 在职
- dimission
- 离职
- internship
- 实习期
候选人
Candidate
| 属性 | 类型 | 默认值 | 描述 |
|---|---|---|---|
| uuid | 字符串 | ||
| name | 字符串 | 姓名 | |
| 字符串 | 电子邮箱 | ||
| mobile | 字符串 | 手机号 | |
| sex | 枚举串 | 性别 | |
| marriage | 枚举串 | 婚姻状况 | |
| birthday | 字符串 | 生日 | |
| degree | 字符串 | 学历 | |
| status | 枚举串 | 候选人状态 | |
| source_name | 字符串 | 招聘源 | |
| source_id | 字符串 | 招聘源 id |
排班
Arrangement
| 属性 | 类型 | 默认值 | 描述 |
|---|---|---|---|
| attenance_rule_name | 字符串 | 出勤规则名称 | |
| workshift_name | 字符串 | 班次 | |
| empno | 枚举串 | 员工工号 | |
| date | 字符串 | 排班日期 | |
| time_range | 字符串 | 工作时间段 |
打卡
Attendance Checking
| 属性 | 类型 | 默认值 | 描述 |
|---|---|---|---|
| date | 日期 | 打卡日期 | |
| check_in_time | 时间 | 上班打卡时间 | |
| check_out_time | 时间 | 下班打卡时间 |
Timeline
Timeline
| 属性 | 类型 | 默认值 | 描述 |
|---|---|---|---|
| date | 日期 | 发生日期 | |
| category | 字符串 | leave: 请假; business_trip: 公出 | |
| duration | 数字 | 时间 | |
| duration_unit | 字符串 | days: 天;hours: 小时;minutes: 分钟 | |
| start_time | 时间 | 开始时间 | |
| end_time | 时间 | 结束时间 |
审批对象
Approval
| 属性 | 类型 | 默认值 | 描述 |
|---|---|---|---|
| number_series | 字符串 | 审批单号 | |
| creator | 字符串 | 发起人 | |
| created_at | 时间 | 发起时间 | |
| status | 字符串 | 审批状态 | |
| status_name | 字符串 | 状态名称 | |
| updated_at | 字符串 | 最后审批时间 | |
| category | 字符串 | 审批类型 | |
| workflow_name | 字符串 | 审批流名称 | |
| form_values | 对象 | 审批表单内容,和审批类型有关 |
获取所有分公司
GET /api/v2/sub_companies
HTTP Parameters
| 参数 | 类型 | 默认值 | 必须 | 描述 |
|---|---|---|---|---|
| access_key | 字符串 | 是 | API Key | |
| tonce | 整型 | 是 | 以秒为单位的UNIX timestamp | |
| signature | 字符串 | 是 | 请求签名 |
Response
JSON 格式的 分公司对象 数组
获取单个分公司
GET /api/v2/sub_companies/:sub_company_uuid
Parameters
- sub_company_uuid
- 分公司 uuid
HTTP Parameters
| 参数 | 类型 | 默认值 | 必须 | 描述 |
|---|---|---|---|---|
| access_key | 字符串 | 是 | API Key | |
| tonce | 整型 | 是 | 以秒为单位的UNIX timestamp | |
| signature | 字符串 | 是 | 请求签名 |
Response
JSON 格式的 分公司对象
查询分公司员工
GET /api/v2/sub_companies/:sub_company_uuid/employees
Parameters
- sub_company_uuid
- 分公司 uuid
HTTP Parameters
| 参数 | 类型 | 默认值 | 必须 | 描述 |
|---|---|---|---|---|
| access_key | 字符串 | 是 | API Key | |
| tonce | 整型 | 是 | 以秒为单位的UNIX timestamp | |
| signature | 字符串 | 是 | 请求签名 |
Response
JSON 格式的 员工对象 数组
单个员工查询
GET /api/v2/sub_companies/:sub_company_uuid/employees/:uuid
Parameters
- sub_company_uuid
- 分公司 uuid
- uuid
- 员工 uuid
HTTP Parameters
| 参数 | 类型 | 默认值 | 必须 | 描述 |
|---|---|---|---|---|
| access_key | 字符串 | 是 | API Key | |
| tonce | 整型 | 是 | 以秒为单位的UNIX timestamp | |
| signature | 字符串 | 是 | 请求签名 |
Response
JSON 格式的 员工对象 数组
获取所有部门
GET /api/v2/departments
HTTP Parameters
| 参数 | 类型 | 默认值 | 必须 | 描述 |
|---|---|---|---|---|
| access_key | 字符串 | 是 | API Key | |
| tonce | 整型 | 是 | 以秒为单位的UNIX timestamp | |
| signature | 字符串 | 是 | 请求签名 |
Response
JSON 格式的 部门对象 数组
[
{
"name": "管理组",
"uuid": "7684be70c34c554c8fdc062eba4382be",
"superior_uuid": null,
"charger_uuid": "fbfd8384fb43da1d979fd277473d7984"
},
{
"name": "运营组",
"uuid": "8674be70c34c554c8fdc062eba4382be",
"superior_uuid": null,
"charger_uuid": "fbfd8384fb43da1d979fd277473d7984"
},
{
"name": "系统组",
"uuid": "8689be70c34c554c8fdc062eba4382be",
"superior_uuid": null,
"charger_uuid": "fbfd8384fb43da1d979fd277473d7984"
}
]
获取单个部门
GET /api/v2/departments/:uuid
Parameters
- uuid
- 部门 uuid
HTTP Parameters
| 参数 | 类型 | 默认值 | 必须 | 描述 |
|---|---|---|---|---|
| access_key | 字符串 | 是 | API Key | |
| tonce | 整型 | 是 | 以秒为单位的UNIX timestamp | |
| signature | 字符串 | 是 | 请求签名 |
Response
JSON 格式的 部门对象
{
"name": "管理组",
"uuid": "7684be70c34c554c8fdc062eba4382be",
"superior_uuid": null,
"charger_uuid": "fbfd8384fb43da1d979fd277473d7984"
}
查询部门员工
GET /api/v2/departments/:uuid/employees
HTTP Parameters
| 参数 | 类型 | 默认值 | 必须 | 描述 |
|---|---|---|---|---|
| payload | JSON字符串 | 是 | JSON Payload | |
| access_key | 字符串 | 是 | API Key | |
| tonce | 整型 | 是 | 以秒为单位的UNIX timestamp | |
| signature | 字符串 | 是 | 请求签名 |
Payload Schema
| 属性 | 类型 | 默认值 | 必须 | 描述 |
|---|---|---|---|---|
| pagination | JSON字符串 | 否 | 分页获取员工数据,详见 pagination schema |
Pagination Schema
| 属性 | 类型 | 默认值 | 必须 | 描述 |
|---|---|---|---|---|
| page | 整型 | 是 | 获取第几页员工数据 |
Response
全部获取时
JSON 格式的 员工对象 数组
分页获取时
| 属性 | 类型 | 描述 |
|---|---|---|
| currentPage | 整型 | 当前页码 |
| pageSize | 整型 | 每页数量 |
| totalPages | 整型 | 总页数 |
| totalCount | 整型 | 总数据量 |
| employees | 数组 | JSON 格式的 员工对象 数组 |
[{
"uuid": "1387c26da1091124264793e123744fbb",
"name": "一般职员",
"sex": "male",
"empno": "NORMAL-1",
"email": "76577261@qq.com",
"mobile": "18602836721",
"phone_number": "18602836721",
"id_number": "320581199406301913",
"address": "烨伟路313号",
"bank_card": "",
"photo": "",
"marriage": "divorced",
"birthday": "1983-07-21",
"join_date": "2012-09-29",
"avatar": "",
"leave_date": null,
"status": "waiting",
"department_uuid": "f46594b15bc947891fcf8700f3aaa2ba",
"exmail": "test1@colorway.com",
"job_title": "CTO",
"job_grade": "",
"dingtalk_id": null,
"nickname": "少林扫地僧",
"leader_uuid": null,
"virtual_leader_uuid": "fbfd8324fb43da1d979fd277473d7984"
}]
获取所有员工
GET /api/v2/employees
HTTP Parameters
| 参数 | 类型 | 默认值 | 必须 | 描述 |
|---|---|---|---|---|
| payload | JSON字符串 | 是 | JSON Payload | |
| access_key | 字符串 | 是 | API Key | |
| tonce | 整型 | 是 | 以秒为单位的UNIX timestamp | |
| signature | 字符串 | 是 | 请求签名 |
Payload Schema
| 属性 | 类型 | 默认值 | 必须 | 描述 |
|---|---|---|---|---|
| token | 字符串 | 是 | 区别公司的标识符 | |
| status | 字符串 | all | 否 | 员工状态 |
| join_date_start | 字符串 | 否 | 入职开始日期,格式: ‘2017-10-01’ | |
| join_date_end | 字符串 | 否 | 入职截止日期 | |
| leave_date_start | 字符串 | 否 | 离职开始日期 | |
| leave_date_end | 字符串 | 否 | 离职截止日期 | |
| name | 字符串 | 否 | 员工姓名 | |
| pagination | JSON字符串 | 否 | 分页获取员工数据,详见 pagination schema |
Pagination Schema
| 属性 | 类型 | 默认值 | 必须 | 描述 |
|---|---|---|---|---|
| page | 整型 | 是 | 获取第几页员工数据 |
Response
全部获取时
JSON 格式的 员工对象 数组
分页获取时
| 属性 | 类型 | 描述 |
|---|---|---|
| currentPage | 整型 | 当前页码 |
| pageSize | 整型 | 每页数量 |
| totalPages | 整型 | 总页数 |
| totalCount | 整型 | 总数据量 |
| employees | 数组 | JSON 格式的 员工对象 数组 |
按工号查询员工
GET /api/v2/employees/:empno
Parameters
- empno
- 员工工号
HTTP Parameters
| 参数 | 类型 | 默认值 | 必须 | 描述 |
|---|---|---|---|---|
| payload | JSON字符串 | 是 | JSON Payload | |
| access_key | 字符串 | 是 | API Key | |
| tonce | 整型 | 是 | 以秒为单位的UNIX timestamp | |
| signature | 字符串 | 是 | 请求签名 |
Payload Schema
| 属性 | 类型 | 默认值 | 必须 | 描述 |
|---|---|---|---|---|
| token | 字符串 | 是 | 区别公司的标识符 |
Response
JSON 格式的 员工对象
按手机号查询员工
GET /api/v2/employees/:mobile
Parameters
- mobile
- 手机号码
HTTP Parameters
| 参数 | 类型 | 默认值 | 必须 | 描述 |
|---|---|---|---|---|
| payload | JSON字符串 | 是 | JSON Payload | |
| access_key | 字符串 | 是 | API Key | |
| tonce | 整型 | 是 | 以秒为单位的UNIX timestamp | |
| signature | 字符串 | 是 | 请求签名 |
Payload Schema
| 属性 | 类型 | 默认值 | 必须 | 描述 |
|---|---|---|---|---|
| token | 字符串 | 是 | 区别公司的标识符 |
Response
JSON 格式的 员工对象
按uuid查询员工
GET /api/v2/employees/:uuid
Parameters
- uuid
- 员工 uuid
HTTP Parameters
| 参数 | 类型 | 默认值 | 必须 | 描述 |
|---|---|---|---|---|
| payload | JSON字符串 | 是 | JSON Payload | |
| access_key | 字符串 | 是 | API Key | |
| tonce | 整型 | 是 | 以秒为单位的UNIX timestamp | |
| signature | 字符串 | 是 | 请求签名 |
Payload Schema
| 属性 | 类型 | 默认值 | 必须 | 描述 |
|---|---|---|---|---|
| token | 字符串 | 是 | 区别公司的标识符 |
Response
JSON 格式的 员工对象
检查员工当天是否出勤
GET /api/v2/employees/:uuid/check_attendance
HTTP Parameters
| 参数 | 类型 | 默认值 | 必须 | 描述 |
|---|---|---|---|---|
| payload | JSON字符串 | 是 | JSON Payload | |
| access_key | 字符串 | 是 | API Key | |
| tonce | 整型 | 是 | 以秒为单位的UNIX timestamp | |
| signature | 字符串 | 是 | 请求签名 |
Payload Schema
| 属性 | 类型 | 默认值 | 必须 | 描述 |
|---|---|---|---|---|
| token | 字符串 | 是 | 区别公司的标识符 |
Response
导入员工打卡记录
POST /api/v2/attendance_punches
HTTP Parameters
| 参数 | 类型 | 默认值 | 必须 | 描述 |
|---|---|---|---|---|
| payload | JSON字符串 | 是 | JSON Payload | |
| access_key | 字符串 | 是 | API Key | |
| tonce | 整型 | 是 | 以秒为单位的UNIX timestamp | |
| signature | 字符串 | 是 | 请求签名 |
Payload Schema
| 属性 | 类型 | 默认值 | 必须 | 描述 |
|---|---|---|---|---|
| attendances | 哈希数组 | 是 | 打卡记录 |
attendances: [
{ "empno": "NORMAL-1", "punched_at": "2017-02-03 08:00" },
{ "empno": "1100", "punched_at": "2017-02-03 08:00" },
{ "empno": "1100", "punched_at": "2017-02-03 08:00" }
]
Response
包含传递过来的每一条打卡数据的状态,格式为:
[
{ code: "0k", empno: "007" },
{ code: "error", empno: "008", error_message: "employee not found" }
]
查询员工排班
GET /api/v2/arrangement_employees
HTTP Parameters
| 参数 | 类型 | 默认值 | 必须 | 描述 |
|---|---|---|---|---|
| payload | JSON字符串 | 是 | JSON Payload | |
| access_key | 字符串 | 是 | API Key | |
| tonce | 整型 | 是 | 以秒为单位的UNIX timestamp | |
| signature | 字符串 | 是 | 请求签名 |
Payload Schema
| 属性 | 类型 | 默认值 | 必须 | 描述 |
|---|---|---|---|---|
| empnoes | 列表 | 是 | 员工工号列表,例如:[‘1001’, ‘1002’, ‘1003’] | |
| start_date | 字符串 | 是 | 查询开始日期 | |
| end_date | 字符串 | 是 | 查询结束日期 |
Response
排班对象 数组
查询请假和公出
GET /api/v2/employees/:guid/timelines
HTTP Parameters
| 参数 | 类型 | 默认值 | 必须 | 描述 |
|---|---|---|---|---|
| payload | JSON字符串 | 是 | JSON Payload | |
| access_key | 字符串 | 是 | API Key | |
| tonce | 整型 | 是 | 以秒为单位的UNIX timestamp | |
| signature | 字符串 | 是 | 请求签名 |
Payload Schema
| 属性 | 类型 | 默认值 | 必须 | 描述 |
|---|---|---|---|---|
| start_date | 开始日期 | 是 | ||
| end_date | 结束日期 | 是 | ||
| category | 字符串 | 是 | leave: 请假;business_trip: 公出 |
Response
Timeline 对象 数组
获取员工打卡记录
GET /api/v2/employees/:guid/attendance_checkings
HTTP Parameters
| 参数 | 类型 | 默认值 | 必须 | 描述 |
|---|---|---|---|---|
| payload | JSON字符串 | 是 | JSON Payload | |
| access_key | 字符串 | 是 | API Key | |
| tonce | 整型 | 是 | 以秒为单位的UNIX timestamp | |
| signature | 字符串 | 是 | 请求签名 |
Payload Schema
| 属性 | 类型 | 默认值 | 必须 | 描述 |
|---|---|---|---|---|
| start_date | 字符串 | 是 | 查询开始日期 | |
| end_date | 字符串 | 是 | 查询结束日期 |
Response
JSON 格式的 打卡对象 数组
薪酬科目上传
POST /api/v2/salary/subject_values
HTTP Parameters
| 参数 | 类型 | 默认值 | 必须 | 描述 |
|---|---|---|---|---|
| payload | JSON字符串 | 是 | JSON Payload | |
| access_key | 字符串 | 是 | API Key | |
| tonce | 整型 | 是 | 以秒为单位的UNIX timestamp | |
| signature | 字符串 | 是 | 请求签名 |
{
"empno": "001", # 员工工号
"subject_name": "绩效工资", # 薪酬科目名称
"month": "2017-09", # 计薪月份,格式: "yyyy-mm"
"value": 1024.12 # 金额,精确到小数点后两位
}
同一员工薪酬如果上传多次(相同月份),则以最后一次数据为准
Response
{ "code": "返回码", "text": "error message" } # 0 表示成功
更新公司令牌
PATCH /api/v2/company_tokens/:guid
HTTP Parameters
| 参数 | 类型 | 默认值 | 必须 | 描述 |
|---|---|---|---|---|
| payload | JSON字符串 | 是 | JSON Payload | |
| access_key | 字符串 | 是 | API Key | |
| tonce | 整型 | 是 | 以秒为单位的UNIX timestamp | |
| signature | 字符串 | 是 | 请求签名 |
Payload Schema
| 属性 | 类型 | 默认值 | 必须 | 描述 |
|---|---|---|---|---|
| token | 字符串 | 是 | 区别 | |
| zhiren_visitor_token | 字符串 | 是 | fangke 提供给 zhiren 的令牌 |
提醒员工接见访客
POST /api/v2/employees/:guid/notify
HTTP Parameters
| 参数 | 类型 | 默认值 | 必须 | 描述 |
|---|---|---|---|---|
| payload | JSON字符串 | 是 | JSON Payload | |
| access_key | 字符串 | 是 | API Key | |
| tonce | 整型 | 是 | 以秒为单位的UNIX timestamp | |
| signature | 字符串 | 是 | 请求签名 |
Payload Schema
| 属性 | 类型 | 默认值 | 必须 | 描述 |
|---|---|---|---|---|
| token | 字符串 | 是 | 区别公司的标识符 | |
| name | 字符串 | 是 | 访客姓名 | |
| time | 字符串 | 是 | 到访时间 |
Response
获取审批列表
GET /api/v2/approvals
HTTP Parameters
| 参数 | 类型 | 默认值 | 必须 | 描述 |
|---|---|---|---|---|
| payload | JSON字符串 | 是 | JSON Payload | |
| access_key | 字符串 | 是 | API Key | |
| tonce | 整型 | 是 | 以秒为单位的UNIX timestamp | |
| signature | 字符串 | 是 | 请求签名 |
{
"start_date": "2018-02-01", # 发起审批开始日期
"end_date": "2018-03-01", # 发起审批截止日期
"category": "leave" # 审批类型,不传该参数代表获取所有审批类型
"status": "waiting" # 审批状态,不传该参数代表获取所有审批状态
}
审批类型参数列表
| 参数 | 类型 |
|---|---|
| leave | 请假 |
| adjustment | 员工调整 |
| contract | 合同签署 |
| dimission | 员工离职 |
| enrollment | 员工转正 |
| payroll_submit | 工资表审批 |
| recruit | 重新入职 |
| salary_change | 薪资调整 |
| attendance_recheck | 补签 |
| overtime | 加班 |
| business_trip | 公出 |
| sub_company_transfer | 分公司调动 |
| onboarding | 员工入职 |
| business_travel | 出差 |
| intern_regularization | 实习生转全职 |
| breastfeeding_leave | 哺乳假申请 |
| duty | 值班申请 |
| arrangement | 调班申请 |
| custom | 自定义审批 |
审批状态参数列表
| 参数 | 类型 |
|---|---|
| waiting | 审批中 |
| passed | 通过 |
| denied | 拒绝 |
Response
JSON 格式的 审批对象 数组
[
{
"number_series": "20170712355448",
"creator": "辛宪英",
"created_at": "2017-07-12T17:29:30.000+08:00",
"status": "denied",
"status_name": "不通过",
"updated_at": "2017-07-12T17:30:51.000+08:00",
"category": "dimission",
"workflow_name": "员工离职",
"form_values": [
{
"section": "行政审批",
"fields": [
{
"name": "确认办公用品是否归还",
"value": "否"
}
]
},
{
"section": "财务结算",
"fields": [
{
"name": "停薪日期",
"value": "2017-07-12"
}
]
},
{
"section": "款项结算",
"fields": [
{
"name": "确认是否还有未结往来款项",
"value": "否"
}
]
},
{
"section": "服务关闭",
"fields": [
{
"name": "公司邮箱",
"value": "否"
}
]
}
]
},
{
"number_series": "20170721372181",
"creator": "袁绍",
"created_at": "2017-07-21T16:00:06.000+08:00",
"status": "passed",
"status_name": "通过",
"updated_at": "2017-07-21T16:00:09.000+08:00",
"category": "onboarding",
"workflow_name": "员工入职",
"form_values": [
{
"section": "适用规则",
"fields": [
{
"name": "假期发放规则",
"value": {
"假期_11": null,
"假期_1": null
}
}
]
}
]
}
]
按审批单号查询审批
GET /api/v2/approvals/:number_series
Parameters
- number_series
- 审批单号
HTTP Parameters
| 参数 | 类型 | 默认值 | 必须 | 描述 |
|---|---|---|---|---|
| payload | JSON字符串 | 是 | JSON Payload | |
| access_key | 字符串 | 是 | API Key | |
| tonce | 整型 | 是 | 以秒为单位的UNIX timestamp | |
| signature | 字符串 | 是 | 请求签名 |
Response
JSON 格式的 审批对象