Documentation Index
Fetch the complete documentation index at: https://docs.dodopayments.com/llms.txt
Use this file to discover all available pages before exploring further.
GitHub 权限将付费客户添加为私人仓库的协作者。您可以选择权限级别 (
pull, push, triage, maintain, 或者 admin),由 Dodo Payments 处理邀请、接受跟踪和取消时的移除。交付内容
- 客户通过 OAuth 流程被邀请到您的 GitHub 仓库,将其 GitHub 账户链接到购买上。
- 一旦他们接受,GitHub 将根据配置的权限级别授予他们协作者访问权限。
- 取消、退款或手动撤销会移除协作者。
连接 GitHub
Pick GitHub
选择 GitHub Access 作为集成。如果 GitHub 尚未连接,系统会提示您 连接 GitHub。
点击后将在新标签页中打开 GitHub。登录,然后在拥有仓库的组织或用户账户上安装 Dodo Payments GitHub 应用。您可以授予 所有仓库 访问权限或仅限您打算限制访问的仓库。
当 GitHub 重定向返回时,您将看到账户已连接的确认信息。



Pick a repository and permission
回到仪表板,选择应授予权限的 仓库 并选择 权限 级别。仓库选择器仅显示 GitHub 应用有访问权限的仓库。给权限命名并点击 Create Entitlement。

权限级别
GitHub 的标准仓库权限适用:| 权限 | 最适合 |
|---|---|
pull | 只读访问。客户可以克隆、拉取和查看仓库。 |
triage | 读取访问权限加上管理问题和拉取请求的能力。 |
push | 读 + 写访问。客户可以推送分支和打开拉取请求。 |
maintain | 推送访问权限加上对仓库设置的管理(不包括敏感设置)。 |
admin | 对仓库的完全控制。谨慎使用。 |
客户流程
- 客户完成结账。
- Dodo Payments 创建处于
pending状态的授权,并提供oauth_url供客户链接其 GitHub 账户。 - 客户通过电子邮件或客户门户中的链接进行授权。
- Dodo Payments 邀请客户的 GitHub 账户按配置的权限访问仓库。创建邀请后,授权移至
delivered。 - 如果订阅被取消、退款或撤销,客户将被移除为协作者。
所需配置
| 字段 | 必需 | 描述 |
|---|---|---|
target_id | 是 | 邀请客户到的仓库。仪表板的仓库选择器会为您填写这一项。 |
permission | 是 | 其中一个 pull, push, triage, maintain, admin。 |
API 创建
Webhooks
标准的entitlement_grant.* webhook 事件 涵盖了 GitHub 流程:
entitlement_grant.created包含用于 GitHub 授权的oauth_url。entitlement_grant.delivered在协作者邀请创建后触发。entitlement_grant.failed与error_code: "github_permission_denied"(一类)一同触发,如果 GitHub 应用失去了仓库的访问权限。
故障排除
Repository picker is empty
Repository picker is empty
Dodo Payments GitHub 应用必须安装在拥有仓库的组织或用户上。打开 Entitlements → Integrations → GitHub,重新安装应用,确保授予相关仓库的访问权限。
Grant fails with permission_denied
Grant fails with permission_denied
GitHub 应用的安装不再有对仓库的访问权限,或仓库已重命名/转移。重新授予应用访问权限,下次重新授权将成功。
Customer hasn't accepted the invite
Customer hasn't accepted the invite
客户必须从通知页面或点击电子邮件中的链接接受 GitHub 邀请。在他们接受之前,他们保持“已邀请”,但无法克隆仓库。在 Dodo Payments 的视角中,授权仍为
delivered;邀请是我们发出的。