创建编辑会话

会话是一次临时编辑工作区。只在用户点击“编辑简历”时创建,不要提前缓存 editorUrl。同一应用使用相同 externalResumeId 重复调用时,会恢复 24 小时内的原会话并签发新的 editorUrl。

联调可先打开 接入演示,填写 appSecret 后创建会话并嵌入编辑器。正式接入仍应由你的后端调用本接口。
新建简历时,可以先调用 获取简历模板 接口拿到列表,再把选中模板的 templateId 写入 resumeData.setData.tplId。不传会使用默认模板 1013,编辑器内可切换模板。

接口

POST https://www.qmjianli.com/api_open/v1/editor-sessions
Authorization: Bearer {appSecret}
Content-Type: application/json

请求字段

字段必填说明
parentOrigin父页面 Origin,例如 https://hr.example.com,必须匹配应用白名单。
externalResumeId接入方的简历唯一 ID,最长 128 个字符;只需在当前应用内唯一。相同 ID 会恢复仍有效的原会话。
resumeData新会话的初始简历 JSON。新简历传 {},或只传 setData.tplId 指定模板;平台会补齐默认结构。模板以 resumeData.setData.tplId 为准,例如 1013,缺省为 1013。恢复原会话时不会覆盖已保存的简历。
sessionBalanceCents新会话的初始可消费额度,单位为分,默认 0。这里只授予用户消费额度,不会立即扣开发者账户;恢复原会话时保留原余额。
logo编辑器顶部左侧展示的品牌 Logo 图片地址,须为 httphttps URL。不传则左侧保留空位。
features默认值:{"aiOptimize":true, "aiDiagnose":true, "aiEdit":true, "import":true, "idPhoto":true, "templateChange":true, "pdfExport":true}。对应的功能开关:true 表示开放,false 表示关闭。只传部分字段时,其余字段仍为 true

完整请求

{
  "parentOrigin": "https://hr.example.com",
  "externalResumeId": "R10001",
  "sessionBalanceCents": 1000,
  "logo": "https://hr.example.com/logo.png",
  "resumeData": {
    "setData": { "tplId": 1013, "skin": "#1575bf" },
    "basicInfo": {
      "name": "张三",
      "mobile": "13800000000",
      "email": "zhangsan@example.com"
    },
    "moduleData": []
  }
}

响应

{
  "code": 1,
  "data": {
    "sessionId": "S...",
    "code": "C...",
    "editorUrl": "https://www.qmjianli.com/open/edit?code=C...",
    "expiresAt": "2026-08-15T02:00:00.000Z",
    "reused": false,
    "sessionBalance": {
      "initialBalanceCents": 1000,
      "balanceCents": 1000,
      "balance": "10.00"
    },
    "pricing": {
      "ai_optimize": { "amountCents": 100, "amount": "1.00" },
      "id_photo": { "amountCents": 200, "amount": "2.00" }
    }
  }
}
内容有效时间说明
code / editorUrl60 秒一次性,不能在另一个 iframe 中重复使用。
editorToken24 小时iframe 自动兑换、保存和使用,iframe 自身刷新可继续编辑,接入方无需读取。
会话草稿24 小时仅用于编辑期间自动保存,不是永久存储。

父页面刷新或重新打开

不要重复使用旧 editorUrl。使用相同 externalResumeId 重新调用本接口:若原会话仍在 24 小时有效期内,响应中的 reusedtrue,平台保留原简历、原会话额度和到期时间,只重新签发 editorUrl;原会话已过期时则使用本次请求的 resumeData 创建新会话。

会话额度用完后

复用会话时,重新传入 sessionBalanceCents 不会重置原余额。需要继续使用收费功能时,请调用充值会话额度接口。

curl 示例

curl -X POST https://www.qmjianli.com/api_open/v1/editor-sessions \
  -H "Authorization: Bearer 你的appSecret" \
  -H "Content-Type: application/json" \
  -d '{
    "parentOrigin":"https://hr.example.com",
    "externalResumeId":"R10001",
    "sessionBalanceCents":1000,
    "resumeData":{"setData":{"tplId":1013}}
  }'
全民简历开放平台 · 与个人简历账号完全独立