如何根据external_id更新用户?

所有账户均通过 SSO 创建,因此每个用户都有一个 external_id。另一个线程中提到了这是可行的:How can I update users via API using the user id (not username)? - #2 by blake

您首先需要查询用户的 Discourse user_id,然后使用该 ID 发起更新请求。以下链接可帮助您完成第一步:

3 个赞

谢谢。我原本希望避免发起两次 API 请求来更新用户信息,因为之前一直遇到触发速率限制的问题。幸运的是,我想到了一个解决方案:如果配置 user_event webhook,我就可以在用户通过 SSO 登录 Discourse 时,在本地存储用户的 Discourse ID 和用户名。之后,在进行 Discourse 更新时,我就可以使用存储的 Discourse 用户名。

2 个赞