Polar OAuth 与 Webhooks 实战:助力开发者快速构建 SaaS 应用

作者:API传播员 · 2025-10-19 · 阅读时间:4分钟

Polar 的使命是帮助开发者通过编程实现收入增长,支持开源和独立开发者从首次捐赠到 IPO 的整个过程。为了进一步实现这一目标,我们推出了 OAuthWebhooks 功能,旨在帮助开发者在文档、网站和服务中构建个性化的社区和客户体验。


使用 Polar 构建 SaaS 的场景

以下是 Polar 支持的一些典型应用场景:

  • 在网站上表彰赞助者、捐赠者和议题支持者。
  • 为在线课程提供访问权限。
  • 为订阅用户解锁优质内容。
  • 为客户启用云服务。

如果您有令人兴奋的开源项目想法,欢迎加入我们的 Discord 社区,与我们交流您的创意!


支持 OpenID Connect 的 OAuth 2.0

Polar 现已成为支持 OpenID Connect 的 OAuth 2.0 提供商,开发者可以通过以下发现端点实现与现有客户端的自动兼容:

https://api.polar.sh/.well-known/openid-configuration

接下来,我们将指导您如何创建第一个 Polar OAuth 应用。

创建 Polar OAuth 应用

  1. 进入用户设置页面。
  2. 滚动至“开发者设置”部分。
  3. 点击“新建 OAuth 应用”按钮。
  4. 填写“应用名称”、“重定向 URI”、“主页 URL”,并选择所需的“权限范围”。
  5. (可选)添加“标识图案”,并链接自定义的“服务条款”和“隐私政策”。
  6. 点击“创建”按钮。
  7. 保存生成的“客户端 ID”和“客户端密钥”,以备后续使用。

完成以上步骤后,您就可以开始集成 Polar OAuth 应用了。


用户认证流程

通过 Polar OAuth,您的文档、网站或服务可以认证用户身份,并获取用户的个人资料、订阅信息、订单记录和其他权益。以下是实现用户认证的基本流程:

  1. 将用户重定向到生成的 OAuth 授权 URL。
  2. 用户授予权限后,将被重定向回您的重定向 URI,并附带授权码。
  3. 使用授权码交换访问令牌(polar_at_XXX),然后即可发起 API 请求

示例代码如下:

curl -X GET https://api.polar.sh/api/v1/oauth2/userinfo 
-H 'Authorization: Bearer polar_at_XXX'

组织认证流程

Polar 还支持类似 GitHub 的组织认证功能。管理员可以为其管理的特定组织授予访问权限,从而实现更高效的权限管理。


Webhooks 功能

为了进一步提升开发者体验,Polar 提供了 Webhooks 功能,支持以下事件(我们将持续增加支持的事件类型)。

添加 Webhook 端点

  1. 进入“开发者设置”页面。
  2. 在 Webhooks 部分点击“添加端点”按钮。
  3. 设置端点 URL、密钥(用于验证)以及订阅的事件类型。

完成配置后,您即可接收订阅事件的 Webhook 通知。


投递日志

Polar 为每个 Webhook 端点 URL 提供了投递日志功能,开发者可以通过该功能调试历史 Webhook 请求及其完整载荷,确保集成的稳定性和准确性。


API 与文档(测试版)

我们正在开发自研文档引擎,以提供更优质的开发者体验。同时,我们也在持续优化 API 端点设计,计划在今年秋季推出更多相关功能。


总结

Polar 提供的 OAuth 和 Webhooks 功能,为开发者构建 SaaS 应用提供了强大的支持。无论是用户认证、组织认证,还是通过 Webhooks 实现的事件通知,这些工具都能帮助您打造更加个性化和高效的服务体验。我们期待看到您利用这些功能创造的成果!

原文链接: https://polar.sh/blog/build-saas-with-polar