关于通过Jira ServiceDesk API代客户提交评论的技术问询
Jira ServiceDesk API代客户提交评论解决方案
1. 利用工单关联的客户身份提交评论
你不需要客户的API密钥,只要客户是当前工单的请求人或者已被添加为请求参与者,就能在提交评论时指定客户的accountId,让评论显示为客户身份。调用添加评论的API时,请求体示例如下:
{ "body": "客户要发的评论内容", "public": true, "author": { "accountId": "客户的Jira账户ID" } }
客户的accountId可以通过两种途径获取:一是创建工单时,API返回的响应里会包含请求人的accountId;二是调用Jira的用户搜索API,用客户邮箱查询对应的accountId。
2. 开启Cloud版的客户代理功能
如果用的是Jira ServiceDesk Cloud版本,直接在项目设置里开启"客户代表"权限:
- 进入项目设置 → 客户权限 → 勾选"允许代理代表客户提交请求和评论"
- 之后用团队API密钥提交评论时,在请求体里添加
requestParticipant字段指定客户accountId,评论会显示成「[客户名] 通过[你的团队成员名]提交」,既符合Jira的权限规则,又能明确是客户的反馈。
3. 用模拟用户权限提交(Server/Data Center版)
如果你的团队账号有Jira全局的"模拟用户"权限,直接调用Jira核心REST API,加上asUser参数指定客户accountId即可:
POST /rest/api/3/issue/{工单ID或Key}/comment Headers: Authorization: Basic [你的团队API密钥Base64编码] Content-Type: application/json Body: { "body": "客户的评论内容", "visibility": { "type": "role", "value": "Customers" } } Query Param: asUser=客户的accountId
注意这个功能仅适用于Server/Data Center版,Cloud版已移除该参数,且需要管理员给你的团队账号开通模拟用户的全局权限。
4. 批量场景:引导客户生成API令牌(可选)
如果是固定合作的客户,可以让他们自己在Jira账户里生成API令牌,你将令牌加密存储在仪表盘系统中。虽然需要客户动手操作,但这是最彻底的方式,提交的评论会完全显示为客户本人身份。
内容的提问来源于stack exchange,提问作者vishvaraj
相关产品推荐
相关产品推荐

