8.13 回答问题【未授权拦截通过,待登录态联调】

PATCH /tieup/api/v1/artist/questions/{question_id}/answer

路径参数:

参数 类型 必填 说明
question_id integer 提问 ID

鉴权:需要 Authorization: Bearer <access_token>,且当前账号已开通偶像端。

请求体:

{
  "answer_content": "回答内容",
  "answer_attachments": []
}

请求参数:

参数 类型 必填 说明
answer_content string 艺人回答内容
answer_attachments array 艺人回答时附带的附件 URL 列表

响应字段:

字段 类型 说明
id integer 提问 ID
question_no string 提问编号
parent_question_id integer/null 上一条问题 ID;主问题为空,追问指向上一条已回答问题
root_question_id integer 会话链根问题 ID
fan_user_id integer 粉丝用户 ID
artist_id integer 艺人 ID
business_type string 业务类型:question=付费提问,follow_up_question=追问
question_content string 提问内容
attachments array 提问附件 URL/key 列表
price_candy_amount string 本次提问/追问消耗糖果数量
answer_content string 回答内容
answer_attachments array 回答附件 URL/key 列表
status integer 回答后为 2
submitted_at string/null 提交时间
answered_at string/null 回答时间
thread_status integer 会话链最新问题状态
thread_latest_question_id integer 会话链最新问题 ID
thread_items array 完整问答链,按提问、回答、追问、回答顺序排列
follow_ups array 兼容字段,主问题详情返回追问列表
parent_question object/null 兼容字段,追问详情返回上一条问题快照

响应示例:

{
  "code": 200,
  "message": "成功",
  "data": {
    "id": 50001,
    "question_no": "Q202606170001",
    "parent_question_id": null,
    "root_question_id": 50001,
    "fan_user_id": 10001,
    "fan_nickname": "Tieup用户",
    "fan_avatar": "https://cdn.example.com/avatar.png",
    "artist_id": 20001,
    "artist_user_id": 20002,
    "artist_name": "示例艺人",
    "artist_avatar": "https://cdn.example.com/artist.png",
    "business_type": "question",
    "question_content": "可以分享练习建议吗?",
    "attachments": [],
    "price_candy_amount": "20.00",
    "answer_content": "建议先从 20 分钟基础练习开始",
    "answer_attachments": [
      "https://cdn.example.com/answer/1.png"
    ],
    "status": 2,
    "submitted_at": "2026-06-17 10:00:00",
    "answered_at": "2026-06-17 10:10:00",
    "rejected_at": null,
    "refunded_at": null,
    "reject_reason": null,
    "refund_no": null,
    "created_at": "2026-06-17 10:00:00",
    "thread_status": 2,
    "thread_latest_question_id": 50001,
    "thread_items": [
      {
        "id": 50001,
        "question_no": "Q202606170001",
        "parent_question_id": null,
        "root_question_id": 50001,
        "fan_user_id": 10001,
        "fan_nickname": "Tieup用户",
        "fan_avatar": "https://cdn.example.com/avatar.png",
        "artist_id": 20001,
        "artist_user_id": 20002,
        "artist_name": "示例艺人",
        "artist_avatar": "https://cdn.example.com/artist.png",
        "business_type": "question",
        "question_content": "可以分享练习建议吗?",
        "attachments": [],
        "price_candy_amount": "20.00",
        "answer_content": "建议先从 20 分钟基础练习开始",
        "answer_attachments": [
          "https://cdn.example.com/answer/1.png"
        ],
        "status": 2,
        "submitted_at": "2026-06-17 10:00:00",
        "answered_at": "2026-06-17 10:10:00",
        "rejected_at": null,
        "refunded_at": null,
        "reject_reason": null,
        "refund_no": null,
        "created_at": "2026-06-17 10:00:00"
      }
    ],
    "follow_ups": []
  }
}

业务规则:

  • 只有问题所属偶像可回答。
  • 只有 tieup_question.status = 1 的问题可回答;已回答重复请求直接返回当前问题。
  • 回答成功更新为 status = 2,写入回答内容和 answered_at
  • 偶像回答成功后按 tieup_business_config.basic.candy_cash_exchange_rate 把糖果折算为现金收入,默认 100 糖果 = 1 元;收入写入 tieup_income_recordtieup_artist_transaction,个人艺人同步增加可提现余额,经纪公司艺人进入待结算。
  • 云上曲率内容审核配置开启时,回答文本和附件必须先通过机审;机审未明确通过时不保存回答、不更新问题状态、不生成收入。