Private Message Send API

你是在设置原型吗?今后如果你能包含你发送的请求,将更便于我们提供帮助。

以下示例在我这里可以正常工作:

curl https://$DISCOURSE_HOSTNAME/posts \
  -H "api-key: $DISCOURSE_API_KEY" \
  --data 'title=Testing PM creation&archetype=private_message&target_recipients=user1,user2' \
  --data-urlencode 'raw=PM body, long enough to meet site rules & may be complex ♥'

:information_source: 如果你使用的是 all_users 类型的 API 密钥,还需要指定 api-username

3 个赞

谢谢,问题已解决!不,由于 API 文档中并未将 archetype 列为必填项(甚至不像 target_usernames 那样注明“仅限私信必填”),也没有说明其用途,所以我并未对其进行任何操作。

无论如何,现在这已经可以正常工作了。供遇到相同问题的人参考(尤其是使用 POST 方法时),我成功请求中 JSON 编码的正文元素如下:

key value
raw 原始消息文本
title 消息/线程标题
target_usernames 逗号分隔的用户名列表
archetype 字面字符串 private_message

该内容作为 POST 请求的正文发送至 /posts.json,并包含以下自定义请求头字段:

key value
Content-Type application/json; charset=UTF-8
Api-Key 密钥数据
Api-Username 用户名
2 个赞