面试系统

创建面试

POST /open_api/v1/interviews

请求参数:

参数名 参数名 必填 参数类型 描述
user_id Integer 创建人ID
candidate_name String 候选人名字
expire_in Integer 面试官链接有效期,单位为小时,默认为14天(已废弃,链接永久有效)
written_pad_id Integer 笔试板ID, written_pad_id/written_pad_uid 可只填一个
written_pad_uid String 笔试板UID, written_pad_id/written_pad_uid 可只填一个
type_id Integer 面试类型(1: 技术面试(默认),2: 非技术面试)
interviewers Array[] 面试官信息,最多为5个
uid String 面试官ID
name String 面试官名称
phone String 面试官手机号。手机号和邮箱必须填一个
email String 面试官邮箱。手机号和邮箱必须填一个
resume_link String 简历链接,如需展示第三方iframe简历可传入链接
evaluation_link String 评价链接, 如需展示第三方iframe评价页面可传入链接
redirect_uri String 面试结果后跳转链接, 跳转到第三方平台

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

参数名 参数名 必填 参数类型 描述
uid String 面试UID
interviewer_url String 面试官面试地址
candidate_url String 候选人面试地址
interviewer_urls Array 候选人面试地址
uid String 面试官ID
name String 面试官name
interviewer_url String 面试官专属链接

例:

{
  "errcode": 0,
  "errmsg": "成功",
  "data": {
    "uid": "XABCFK",
    "interviewer_url": "https://www.showmebug.com/xxxxxxxx",
    "candidate_url": "https://www.showmebug.com/xxxxxxxx",
    "interviewer_urls": [
      {
      "uid": "C111",
      "name": "张三",
      "interviewer_url": "https://www.showmebug.com/xxxxxxxx"
      },
      {
      "uid": "C112",
      "name": "李四",
      "interviewer_url": "https://www.showmebug.com/xxxxxxxx"
      }
    ]
  }
}

编辑面试

PATCH /open_api/v1/interviews/UID

请求参数:

参数名 参数名 必填 参数类型 描述
uid Integer 面试UID
type_id Integer 面试类型(1: 技术面试(默认),2: 非技术面试)(该参数已废弃)
interviewers Array[] 面试官信息,最多为5个
uid String 面试官ID
name String 面试官名称
phone String 面试官手机号。手机号和邮箱必须填一个
email String 面试官邮箱。手机号和邮箱必须填一个
resume_link String 简历链接,如需展示第三方iframe简历可传入链接
evaluation_link String 评价链接, 如需展示第三方iframe评价页面可传入链接
redirect_uri String 面试结果后跳转链接, 跳转到第三方平台

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

参数名 参数名 必填 参数类型 描述
uid String 面试UID
interviewer_urls Array 候选人面试地址
uid String 面试官ID
name String 面试官name
interviewer_url String 面试官专属链接

例:

{
  "errcode": 0,
  "errmsg": "成功",
  "data": {
    "uid": "XABCFK",
    "interviewer_urls": [
      {
      "uid": "C111",
      "name": "张三",
      "interviewer_url": "https://www.showmebug.com/xxxxxxxx"
      },
      {
      "uid": "C112",
      "name": "李四",
      "interviewer_url": "https://www.showmebug.com/xxxxxxxx"
      }
    ]
  }
}

获取面试结果

GET /open_api/v1/interviews/:uid/result

请求参数:

参数名 必填 参数类型 描述
uid String 面试UID

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

参数名 必填 参数类型 描述
uid String 面试UID
rate Integer 平均得分(四舍五入)
rate_content String 评分详情
evaluation String 评语
report_url String 报告地址

例:

{
    "errcode":0,
    "errmsg":"请求成功",
    "data":{
        "uid":"AUYDED",
        "rate":3,
        "rate_content":[
            [
                "沟通交流",
                "2"
            ],
            [
                "编码能力",
                "3"
            ],
            [
                "工程素养",
                "4"
            ]
        ],
        "evaluation":"满意,建议录用",
        "report_url":"https://www.showmebug.com/xxxxxxxx"
    }
}

如果面试未结束,则返回

{
    "errcode":422,
    "errmsg":"面试尚未结束"
}

批量创建面试

POST /open_api/v1/batch_interviews

请求参数:(一次最大支持100条数据)

参数名 参数名 参数名 必填 参数类型 描述
user_id Integer 创建人ID
type_id Integer 面试类型(1: 技术面试(默认),2: 非技术面试)
interviews Array[] 面试列表,最多为100个
uid String 候选人uid
name String 候选人名字
interviewers Array[] 面试官信息,最多为5个
uid String 面试官ID, 用于区分不同面试官
name String 面试官名称
phone String 面试官手机号。手机号和邮箱必须填一个
email String 面试官邮箱。手机号和邮箱必须填一个
resume_link String 简历链接,如需展示第三方iframe简历可传入链接
evaluation_link String 评价链接, 如需展示第三方iframe评价页面可传入链接
redirect_uri String 面试结果后跳转链接, 跳转到第三方平台

例:

{
  "user_id": 1001,
  "interviews": [
    {
      "uid": "C001",
      "name": "李四",
      "interviewers": [
        {
          "uid": "C111",
          "name": "王五",
          "phone": "13000000000",
          "resume_link": "https://www.xxx.com",
          "evaluation_link": "https://www.xxx.com",
          "redirect_uri": "https://www.xxx.com",
        }
      ]
    }
  ]
}

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

参数名 参数名 参数名 必填 参数类型 描述
interviews Array 面试数组
uid String 面试UID
interviewer_url String 面试官面试地址
candidate_url String 候选人面试地址
candidate_uid String 候选人uid
candidate_name String 候选人名称
interviewers Array[] 面试官信息,最多为5个
uid String 面试官ID
name String 面试官名称
interviewer_url 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": "李四",
        "interviewers": [
          {
            "uid": "C123",
            "name": "张三",
            "interviewer_url": "https://www.showmebug.com/xxxxx"
          }
        ]
      }
    ]
  }
}

获取面试列表

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": "成功"
}

创建排队面试

POST /open_api/v1/interview_rooms

请求参数:

参数名 参数名 参数名 必填 参数类型 描述
rounds Array 轮次信息
round_number Integer 轮次顺序
candidates Array 候选人信息
name String 候选人名称
email String 候选人邮箱
phone String 候选人手机号
start_time String 预约面试时间, 输入格式:2022/12/01 10:00
job_name String 岗位名称
interviewers Array 面试官信息
name String 面试官名称
email String 面试官邮箱
phone String 面试官手机号

例:

{
 rounds: [
     {
      "round_number": "1",
      "candidates": [{
          "name": "xxx",
          "email": "ss@ss.com",
          "phone": "12100000000",
          "start_time": "xxx",
          "job_name": "xxx"
      }],
      "interviewers": [{
          "name": "xxx",
          "email": "ss@ss.com",
          "phone": "12100000000"
      }]
     },
     {
      "round_number": "2",
      "candidates": [{
          "name": "xxx",
          "email": "ss@ss.com",
          "phone": "12100000000",
          "start_time": "xxx",
          "job_name": "xxx"
      }],
      "interviewers": [{
          "name": "xxx",
          "email": "ss@ss.com",
          "phone": "12100000000"
      }]
     }
 ]
}

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

参数名 参数名 参数名 必填 参数类型 描述
project_id Integer 叫号面试的项目ID
rounds Array 轮次信息
round_number Integer 轮次顺序
candidates Array 候选人信息
name String 候选人名称
phone String 候选人电话
email String 候选人邮箱
appointment_at String 预约时间
created_at String 创建时间
pad_url String 面试链接
expired_at String 面试链接失效时间
errmsg String 创建失败时,展示失败原因
interviewers Array 面试官信息
name String 面试官名称
phone String 面试官电话
email String 面试官邮箱
created_at String 创建时间
pad_url String 面试链接
errmsg String 创建失败时,展示失败原因

例 :

{
  "errcode": 0,
  "errmsg": "成功",
  "rounds": [
     {
      "round_number": "1",
      "candidates": [{
      "name": "sss",
      "email": "aa@aa.com",
      "phone": "19000000000",
      "appointment_at": "2023/08/30 10:00",
      "created_at": "2023/02/27 14:44",
      "pad_url": "https://www.showmebug.com/ninterview_rooms/XXXXX",
      "expired_at": "2023-03-13 18:00"
      }],
    "interviewers": [{
      "name": "aaa",
      "email": "aaa@aa.com",
      "phone": "12100000000",
      "created_at": "2023/02/27 14:44",
      "pad_url": "https://www.showmebug.com/interview_waiting_rooms/XXXXX"
    }]
     }
 ]
}

删除排队面试

DELETE /open_api/v1/interview_rooms/:ID

请求参数:

参数名 必填 参数类型 描述
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

请求参数:(一次最大支持100条数据)

参数名 必填 参数类型 描述
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": "成功"
}

条 "" 的搜索结果

    没有 "" 的搜索结果