创建编辑会话
会话是一次临时编辑工作区。只在用户点击“编辑简历”时创建,不要提前缓存 editorUrl。同一应用使用相同 externalResumeId 重复调用时,会恢复 24 小时内的原会话并签发新的 editorUrl。
联调可先打开 接入演示,填写 appSecret 后创建会话并嵌入编辑器。正式接入仍应由你的后端调用本接口。
接口
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 图片地址,须为 http 或 https 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 / editorUrl | 60 秒 | 一次性,不能在另一个 iframe 中重复使用。 |
| editorToken | 24 小时 | iframe 自动兑换、保存和使用,iframe 自身刷新可继续编辑,接入方无需读取。 |
| 会话草稿 | 24 小时 | 仅用于编辑期间自动保存,不是永久存储。 |
父页面刷新或重新打开
不要重复使用旧 editorUrl。使用相同 externalResumeId 重新调用本接口:若原会话仍在 24 小时有效期内,响应中的 reused 为 true,平台保留原简历、原会话额度和到期时间,只重新签发 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}}
}'