什么是袋袋 App
开发流程
1
创建 App
在袋袋 Studio 中创建一个新的 App。你会获得:
- App UUID(即
client_id) - App Secret(即
client_secret,仅展示一次) - OAuth 配置入口
- 注册一个或多个 Redirect URI(回调地址)
- 设置 App 的名称、描述、图标
2
实现 OAuth 流程
3
配置计费 Meter
如果你的 App 需要按次计费(PER_USE),需要配置 Meter:
- 在 App 设置中添加 Meter
- 定义事件名称(如
image_generation) - 设置每次事件的积分价格
- 保存配置
GET /v1/meters 端点查询。4
集成 API
使用 OAuth Token 调用袋袋 API:调用 AI 模型(METERED 计费):上报自定义事件(PER_USE 计费):
5
提交审核
App 开发完成后,提交审核以发布到袋袋 App 市场:
- 在 Studio 中完善 App 信息(名称、描述、图标、截图)
- 点击「发布」按钮提交审核
- 审核团队会检查 App 的功能完整性和安全性
- 审核通过后 App 上线市场
6
发布到市场
审核通过后,你的 App 将出现在袋袋 App 市场中。用户可以发现、授权和使用你的 App。你的 App 通过使用获得的积分收入,会按照创作者激励体系进行分成。
计费模型
App 支持两种计费模型,可组合使用:METERED(按 token 计费)
适用于 AI 模型调用场景。用户使用 Chat Completions API 时,按实际 token 消耗从用户积分扣除。PER_USE(按次计费)
适用于自定义功能场景。通过 Events API 上报事件,按 Meter 配置的固定积分价格扣除。App 审核流程
App 发布采用审核双行机制(与专家审核一致):
审核重点:
- App 功能是否完整可用
- OAuth 流程是否符合安全规范
- 用户体验是否合理
- 计费是否透明
OAuth 与 App 状态
OAuth 授权流程在 App 创建后即可使用,不受application.status 限制。status 仅控制 App 在市场中的可发现性:
这意味着你可以在 App 上线前就完成 OAuth 集成和测试。
完整集成示例
以下是一个使用 Express + 袋袋 SDK 构建的完整 App 后端示例:最佳实践
安全存储 Token
安全存储 Token
OAuth Token 应加密存储在服务端数据库中,不要暴露在前端。使用 httpOnly cookie 或 session 传递用户身份。
实现 Token 自动刷新
实现 Token 自动刷新
Access Token 仅有 1 小时有效期。在 API 调用返回 401 时,自动使用 Refresh Token 获取新 Token,对用户透明。
使用幂等键防止重复扣费
使用幂等键防止重复扣费
Events API 的幂等键应与业务操作唯一绑定(如
{userId}_{taskId}),确保网络重试不会导致重复扣费。向用户展示积分价格
向用户展示积分价格
使用 Meters API 获取功能价格,在用户使用付费功能前展示将要扣除的积分数,提升信任感。
处理积分不足
处理积分不足
当 Events API 返回扣费失败时,向用户展示充值引导,而不是静默失败。
下一步
OAuth 集成
完整的 OAuth 2.0 集成流程
Events API
自定义计费事件上报

