面试系统

创建面试

POST /open_api/v1/interviews

请求参数:

参数名 必填 参数类型 描述
user_id Integer 创建人ID
name String 候选人名字
expire_in Integer 面试官链接有效期,单位为小时,默认为14天(已废弃,链接永久有效)
written_pad_id Integer 笔试板ID

返回结果(data中的内容):

参数名 必填 参数类型 描述
uid String 面试UID
interviewer_url String 面试官面试地址
candidate_url String 候选人面试地址

例:

{
  "errcode": 0,
  "errmsg": "成功",
  "data": {
    "uid": "XABCFK",
    "interviewer_url": "https://www.showmebug.com/xxxxxxxx",
    "candidate_url": "https://www.showmebug.com/xxxxxxxx"
  }
}

批量创建面试

POST /open_api/v1/batch_interviews

请求参数:

参数名 参数名 必填 参数类型 描述
user_id Integer 创建人ID
interviews Array[] 面试列表,最多为100个
uid String 候选人uid
name String 候选人名字

例:

{
  "user_id": 1001,
  "interviews": [
    {
      "uid": "C001",
      "name": "李四"
    }
  ]
}

返回结果(data中的内容):

参数名 参数名 必填 参数类型 描述
interviews Array 面试数组
uid String 面试UID
interviewer_url String 面试官面试地址
candidate_url String 候选人面试地址
candidate_uid String 候选人uid
candidate_name String 候选人名称

例:

{
  "errcode": 0,
  "errmsg": "成功",
  "data": {
    "interviews": [
      {
        "uid": "XABCFK",
        "interviewer_url": "https://www.showmebug.com/xxxxxxxx",
        "candidate_url": "https://www.showmebug.com/xxxxxxxx",
        "candidate_uid": "C001",
        "candidate_name": "李四"
      }
    ]
  }
}

获取面试列表

GET /open_api/v1/interviews

请求参数:

参数名 必填 参数类型 描述
search string 搜索关键字,笔试板名称
creator_id Integer 发卷人ID
status Array 笔试状态:interview_opened 未开始,interview_started 正在进行,interview_ended 已完成
created_time_start Datetime 创建时间,时间段开始时间
created_time_end Datetime 创建时间,时间段结束时间
ended_time_start Datetime 面试结束时间,时间段开始时间
ended_time_end Datetime 面试结束时间,时间段结束时间
page Integer 页数
per_page Integer 分页大小,默认25,最大50

返回结果(data中的内容):

参数名 参数类型 描述
count Integer 面试总数
interviews Array 面试数组
id Integer 面试ID
number String 面试唯一编号,uid
name String 面试板名称
status String 面试状态
creator_id Integer 创建人ID
creator_name String 创建人名称
rate Integer 面试评分,1 ~ 5 星
pad_duration_time Integer 面试时长,单位秒
interview_evaluation String 面试官评价
created_at Datetime 创建时间,格式ISO8601
interview_started_at Datetime 开始时间,格式ISO8601
interview_ended_at Datetime 结束时间,格式ISO8601

例:

{
  "errcode": 0,
  "errmsg": "成功",
  "data": {
    "count": 2,
    "interviews": [
      {
        "id": 1,
        "number": "ABCDEF",
        "name": "李某",
        "status": "interview_ended",
        "creator_id": 1,
        "creator_name": "李四",
        "rate": 5,
        "interview_evaluation": "还不错,可以继续",
        "pad_duration_time": 1800,
        "created_at": "2020-10-01T16:00:00+08:00",
        "interview_started_at": "2020-10-01T17:00:00+08:00",
        "interview_ended_at": "2020-10-01T19:00:00+08:00",
      },
      {
        "id": 1,
        "number": "ABCDEF",
        "name": "李某",
        "status": "interview_drafted",
        "creator_id": 1,
        "creator_name": "李四",
        "rate": null,
        "interview_evaluation": null,
        "pad_duration_time": null,
        "created_at": "2020-10-01T16:00:00+08:00",
        "interview_started_at": null,
        "interview_ended_at": null,
      }
    ]
  }
}

删除面试

DELETE /open_api/v1/interviews/:uid

请求参数:

参数名 必填 参数类型 描述
user_id Integer 操作者ID

返回结果:

例:

{
  "errcode": 0,
  "errmsg": "成功"
}

获取面试题目列表

GET /open_api/v1/questions

请求参数:

参数名 必填 参数类型 描述
search string 搜索关键字,题目标题
page Integer 页数
per_page Integer 分页大小,默认25,最大50

返回结果(data中的内容):

参数名 必填 参数类型 描述
count Integer 题目总数
questions Array 题目数组
id Integer 题目ID
title String 题目标题备注
language String 编程语言
contents String 题目内容及代码
description String 题目描述备注
creator_id Integer 创建人ID
creator_name String 创建人名称
created_at String 创建时间,ISO8601格式
updated_at String 更新时间,ISO8601格式

例:

{
  "errcode": 0,
  "errmsg": "成功",
  "data": {
    "count": 2,
    "questions": [
      {
        "id": 1,
        "title": "测试编程题 - 五",
        "creator_id": 1001,
        "creator_name": "李四",
        "language": "Java",
        "contents": "// 冒泡排序:从当前元素起,向后依次比较每一对相邻元素,若逆序则交换\n public class ShowMeBug {}",
        "description": "考察冒泡排序",
        "created_at": "2020-10-01T16:00:00+08:00",
        "updated_at": "2020-10-01T16:00:00+08:00"
      },
      {
        "id": 2,
        "title": "测试编程题 - 六",
        "creator_id": 1001,
        "creator_name": "李四",
        "language": "Ruby",
        "contents": "# 冒泡排序:从当前元素起,向后依次比较每一对相邻元素,若逆序则交换\n def custom\n\nend",
        "description": "考察冒泡排序",
        "created_at": "2020-10-01T16:00:00+08:00",
        "updated_at": "2020-10-01T16:00:00+08:00"
      }
    ]
  }
}

创建面试题目

POST /open_api/v1/questions

请求参数:

参数名 必填 参数类型 描述
creator_id Integer 题目创建人、默认为管理员
language string 题目语言,默认富文本
contents string 题目内容及代码
description string 题目描述备注,仅面试官可见
title string 题目标题备注

返回结果(data中的内容):

参数名 参数类型 描述
id Integer 题目ID
title String 题目标题备注
language String 编程语言
contents String 题目内容及代码
description String 题目描述备注
creator_id Integer 创建人ID
creator_name String 创建人名称
created_at String 创建时间,ISO8601格式
updated_at String 更新时间,ISO8601格式

例:

{
  "errcode": 0,
  "errmsg": "成功",
  "data": {
    "id": 1,
    "title": "测试编程题 - 五",
    "creator_id": 1001,
    "creator_name": "李四",
    "language": "Java",
    "contents": "// 冒泡排序:从当前元素起,向后依次比较每一对相邻元素,若逆序则交换\n public class ShowMeBug {}",
    "description": "考察冒泡排序",
    "created_at": "2020-10-01T16:00:00+08:00",
    "updated_at": "2020-10-01T16:00:00+08:00"
  }
}

批量创建面试题目

POST /open_api/v1/batch_questions

请求参数:

参数名 必填 参数类型 描述
creator_id Integer 题目创建人,默认为管理员
questions Array 题目列表,最大长度为100
language string 题目语言,默认富文本
contents string 题目内容及代码
description string 题目描述备注,仅面试官可见
title string 题目标题备注

返回结果(data中的内容):

参数名 参数类型 描述
success_count Boolean 创建成功数量
fail_count String 失败数量
questions Array 题目数组
success Boolean 是否创建成功
message String 失败原因
question Object 题目信息,成功时与创建题目返回一致,失败时为传入题目参数

例:

{
  "errcode": 0,
  "errmsg": "成功",
  "data": {
    "success_count": 1,
    "fail_count": 1,
    "questions": [
      {
        "success": true,
        "message": "",
        "question": {
          "id": 1,
          "title": "测试编程题 - 五",
          "creator_id": 1001,
          "creator_name": "李四",
          "language": "Java",
          "contents": "// 冒泡排序:从当前元素起,向后依次比较每一对相邻元素,若逆序则交换\n public class ShowMeBug {}",
          "description": "考察冒泡排序",
          "created_at": "2020-10-01T16:00:00+08:00",
          "updated_at": "2020-10-01T16:00:00+08:00"
        }
      },
      {
        "success": false,
        "message": "Contents 不能为空",
        "question": {
          "contents": null,
          "title": null,
          "language": "ruby",
          "description": ""
        }
      }
    ]
  }
}

删除面试题目

DELETE /open_api/v1/questions/:id

返回结果:

例:

{
  "errcode": 0,
  "errmsg": "成功"
}

条 "" 的搜索结果

    没有 "" 的搜索结果