登录和可续订会话
客户选择其 ShareAI 账户,批准您的应用程序并返回到 JamZY。
成功登录、刷新会话并断开连接。
使用 SHAREAI 构建
构建一个预约应用程序,将客户连接到 ShareAI,准备有用的 AI 议程,并让他们掌控 AI 支出。
您将构建的体验
JamZY · 预约选择一个预约。连接 ShareAI。带着计划到达。
您的实施
三个具体交付成果:连接客户,准备他们的预约,并使集成准备好进行验证。
客户选择其 ShareAI 账户,批准您的应用程序并返回到 JamZY。
成功登录、刷新会话并断开连接。
通过有计划的 AI 请求,将预约目标转化为议程和问题。
生成草案;保存预约不会调用 AI。
解释可选的 AI 费用,并收集您的审核提交所需的平台检查。
每个包含的平台和请求的范围都记录了检查。
将其带入您的编辑器
复制完整指南,包括实施目标、所需输入和验收检查。保持代码示例、表格和文档链接在一起。
为您的项目准备好,以您需要的格式提供。
更新
您将建立一个客户可以理解的连接:他们的 ShareAI 账户、一个可选的 AI 准备草稿,以及一个清晰的路径返回到他们的预约。
您的工作地点 您完成的示例
将您的应用程序连接到 ShareAI Builder,从注册到经过测试的集成并准备审核。本教程使用 JamZY,一个小型 Node.js 预约应用程序,展示每个步骤:注册应用程序、配置其 Web 平台、连接客户的 ShareAI 账户并发送授权的 AI 请求。将相同的步骤应用到您自己的产品。
| 功能 | 客户同意的内容 | JamZY 展示的内容 |
|---|---|---|
| 使用 ShareAI 登录 | 一个账户连接以及您的应用程序请求的身份信息。 | 从经过身份验证的用户信息中获取的私人客户身份。 |
| 使用 ShareAI 支付 · AI 使用 | 使用客户选择的个人或组织账户进行授权推理。 | 由该账户的合格积分资助的预约准备草稿。 |
| Builder 加价 | 在已接受的应用程序合同中额外的 AI 使用费用。 | 可选的使用货币化,在批准和合同发布后。 |
| 产品付款 | 在单独的 ShareAI 结账中展示的特定购买。 | 在扩展中解释 付款教程。预约演示不实施结账。 |
拥有一个 ShareAI 账户、使用将拥有应用程序的个人或组织账户的权限、一个公共 HTTPS 回调、一个徽标以及有效的隐私、条款和账户删除页面。要运行示例,请使用 Node.js 22 或更新版本以及您的应用程序的 HTTPS 地址。
截图使用示例应用程序详细信息。ShareAI 在本指南中的地址是生产地址。生成准备会发起真实的AI请求并可能消耗积分;选择或保存演示预约不会。验证检查由您自己的成功集成测试完成。
您可以区分账户登录、AI消耗、可选附加费和确认的产品购买。阅读本指南不需要付费请求。
您将创建拥有您的应用程序及其客户关系的Builder身份。
您的工作地点 控制台 → Builder Program
Builder Program 为预期所有者打开并提供“新应用”。注册决策、应用审核、公共信息审核和 Monetization Gateway 批准是独立的步骤。
您将为 JamZY 提供其自己的应用程序记录,以便其身份、访问权限和商业条款保持一致。
您的工作地点 Builder Program → 产品 → 新应用
使用可访问的公共网站作为应用程序简介。即使您的开发回调已正确注册,私人或仅限本地的网站可能会导致验证失败。新应用程序以草稿形式开始。您可以继续编辑而无需将其公开。其应用程序标识符不同于 OAuth 客户端 ID 或订阅 ID。
JamZY 出现在产品下,供预期所有者使用。不要为每个设备平台创建额外的应用程序。
您将获得适合您的应用运行位置以及谁控制其凭据的 OAuth 选项。
您的工作地点 新应用 → 应用程序设置
对于您自行操作的 JamZY 部署,请选择与您的产品提供相匹配的定价模型,例如 SaaS、供应商托管的云应用程序、客户自行支付其使用费用,以及用于 AI 请求的 ShareAI。这些是示例答案,并非每个产品的要求。
| 应用程序运行位置 | OAuth 选项 | 凭据存储位置 |
|---|---|---|
| 您托管的后端 | Web 服务器客户端可以使用客户端密钥。PKCE 仍然适用。 | 密钥和令牌保留在您的服务器上。 |
| 浏览器应用程序 / SPA | 使用 PKCE 的公共 Web 客户端。 | 无嵌入式客户端密钥。使用适当的浏览器或后端会话设计。 |
| 自托管或混合分发 | 根据入门策略,使用 PKCE 的公共客户端。 | 不要将共享的供应商密钥分发到客户安装中。 |
| Windows、macOS、Linux、Android 或 iOS | 每个启用的平台都有一个公共客户端。 | PKCE 和适合平台的安全存储;无捆绑密钥。 |
可下载的 JamZY 示例故意使用带有 PKCE 的公共 Web 客户端,即使它有一个小型后端。服务器将令牌保存在浏览器存储之外。供应商托管的答案允许服务器客户端;它不会强制您选择一个。
您可以在“应用程序信息 → 应用程序设置”下重新访问已保存的答案。部署更改可能会移除不兼容的客户端密钥,并需要重复验证。在保存之前,请检查其影响。
已保存的部署描述了您的实际架构。客户端密钥选项遵循该答案;禁用的选项是对策略的解释,而不是缺少凭据。
您将向客户提供他们在决定连接之前所需的产品详细信息和政策。
您的工作地点 应用程序信息
在仪表板之后打开应用程序信息。按照专用部分逐步操作:详细信息、应用程序设置、展示、品牌、画廊和审核。为产品提供有用的描述、准确的网站以及清晰的客户工作流程截图。
使用您自己的应用程序标识。ShareAI 品牌应出现在集成按钮和说明材料上;它不应替代您的产品徽标。确保隐私、条款和删除链接在无需登录的情况下可访问。
当浮动保存操作出现时保存更改。公共信息提案有其自己的审核;编辑已批准的提案不会静默替换实时公共展示。
访问者可以了解 JamZY 的功能、运营者以及如何请求删除。公共详细信息和回调配置指向同一产品。
您将请求您的预约体验实际使用的访问权限,并明确其计费用途。
您的工作地点 应用程序 → 用例
在用例中,启用 ShareAI 登录以进行账户连接,并启用 Pay with ShareAI 以支持您计划支持的客户资助流程。仅在您的产品将在 AI 使用上赚取额外费用时请求 Monetization Gateway 访问。请遵循 Console 中显示的审批状态。
| 范围 | 您请求它的原因 |
|---|---|
openid | 使用其客户端范围的身份连接账户。 |
profile / email | 仅当您的产品需要时,请求个人资料或电子邮件声明。 |
inference | 在应用程序配置允许的情况下调用支持的 AI 推理端点。 |
monetization_gateway | 使用客户接受的 AI 计费协议进行附加费推理。 |
payments | 创建并检查客户付款请求。每次购买仍需确认。 |
JamZY 请求 openid profile inference monetization_gateway它不请求 payments 并且不会通过结账销售产品。在 Console 中启用某项功能并不会将其授予现有的访问令牌:客户必须授权范围和条款。
功能、配置的范围和授权请求一致。避免请求您的应用程序从未使用或无法验证的可选访问权限。
您将为基于浏览器的 JamZY 体验创建一个 Web 客户端,并使用正确的身份验证方法。
您的工作地点 OAuth 设置 → Web
不同的平台具有不同的凭据和回调规则。它们不是单独的产品:订阅和客户管理在应用程序中是聚合的。应用程序测试人员在平台之间共享,最多包括五个位置(包括待处理的邀请);所有者不会占用测试人员位置。
仅存在一个 Web 平台。您尚未配置的本地平台不会阻止您的启动。
在授权后,您将客户返回到您的应用程序,使用您拥有的精确回调地址。
您的工作地点 Web → 配置
在 Web → 配置中,注册您的应用程序处理的精确 HTTPS 回调地址。本指南使用 https://jamzy.example/oauth/callback 作为示例。将 jamzy.example 替换为您部署 JamZY 副本的 HTTPS 域名,并在您的应用程序配置中使用相同的回调地址。
提供同意屏幕名称、条款、隐私和删除信息。仅启用您需要的范围,然后保存。方案、主机、路径和适用的查询详细信息必须与授权请求和代码交换匹配。不要使用通配符或 URL 片段。
| 平台 | 实现的回调 |
|---|---|
| Web | 您应用程序上的确切 HTTPS 地址。 |
| Android | 与应用程序 ID 匹配的反向域名应用程序方案,或带有包名和 SHA-256 签名指纹的已验证 HTTPS 应用链接。 |
| iOS | 匹配的应用程序方案,或带有包 ID 和 Apple App ID 前缀的已验证 HTTPS 通用链接。 |
| Windows / macOS / Linux | 允许的确切 HTTPS 回调、匹配的反向域名应用程序方案,或支持的 127.0.0.1 / [::1] 上的环回重定向。环回端口可能会有所不同。 |
已安装的应用程序在系统浏览器中授权并通过注册的回调返回。对于声明的 HTTPS 应用链接,请发布所需的关联文件并在控制台中运行关联验证。表单中看似合理的回调并不能证明您的已安装应用程序接收了它。
通过授权流程打开回调会返回到您的应用程序。随机代码或状态不匹配将被拒绝。
您将拥有预约界面及其 ShareAI 连接,与您自己的应用程序标识符一起运行。
您的工作地点 您的应用程序 → 环境配置
JamZY 是一个带有可选 AI 准备助手的预约应用程序。其调度程序仅为浏览器演示:没有日历提供商、电子邮件发送或预约付款。ShareAI 授权和 AI API 集成使用真实配置的上游。
下载 JamZY 参考源代码。它包含 Node 服务器、浏览器 UI、测试和设置 README;没有证书、密钥、依赖项或会话。在运行之前请审查文件。将 Node 进程置于保留公共源的 HTTPS 反向代理之后。
# .env — replace both identifiers with YOUR registered application.
JAMZY_PUBLIC_ORIGIN=https://jamzy.example
SHAREAI_CLIENT_ID=YOUR_WEB_CLIENT_ID
SHAREAI_APP_ID=YOUR_APPLICATION_UUID
SHAREAI_AUTH_ORIGIN=https://auth.shareai.now
SHAREAI_API_BASE_URL=https://api.shareai.now/api/v1
SHAREAI_SCOPES="openid profile inference monetization_gateway"
PORT=3443
BIND_HOST=127.0.0.1# Node 22+, behind your HTTPS reverse proxy
node --env-file=.env server.mjs
# Mocked upstream tests; these do not spend credits
node --test test/server.test.mjs在以下位置创建您的应用程序 控制台.shareai.now。使用其生产客户端 ID 与 https://auth.shareai.now 和 https://api.shareai.now/api/v1。该 jamzy.example 地址是您应用程序的占位符,而不是托管演示。通过 HTTPS 提供您自己的应用程序,以便其安全会话 cookie 能正常工作。
JamZY 还提供了一个 API 密钥连接以供比较。本教程使用钱包/OAuth 按钮。API 密钥不会建立客户的 JamZY OAuth 协议,并不能替代客户授权流程。
应用程序通过 HTTPS 加载。其公共源、注册回调和客户端 ID 与您的注册匹配。页面源或 localStorage 中不会出现令牌或密钥。
您将允许客户选择其 ShareAI 帐户并批准您的应用程序所需的访问权限。
您的工作地点 JamZY → 使用您的 ShareAI 钱包支付
从 JamZY 中选择使用您的 ShareAI 钱包支付。应用程序会打开 ShareAI 授权页面。客户登录,选择个人或组织帐户,检查应用程序和请求的访问权限,并接受适用的订阅条款。
const verifier = randomBytes(32).toString('base64url');
const state = randomBytes(32).toString('base64url');
const challenge = createHash('sha256').update(verifier).digest('base64url');
const authorize = new URL('https://auth.shareai.now/oauth/authorize');
authorize.search = new URLSearchParams({
client_id: clientId, response_type: 'code', redirect_uri: callback,
scope: 'openid profile inference monetization_gateway', state,
code_challenge: challenge, code_challenge_method: 'S256',
}).toString();
// Save state + verifier in the server session BEFORE redirecting.
// The downloadable server implements state expiry and one-time consumption.根据经过认证的、客户端范围的客户记录进行键控 sub 以及其发行者/客户端上下文。个人和组织授权可以选择不同的支付账户。客户ID不是全局用户ID、电子邮件地址或内部组织数据库ID。不要通过匹配显示名称跨平台合并身份。
取消、不匹配的状态、重放代码和过期授权会安全失败。正常流程返回一个已认证账户而不暴露其令牌。
您将保持授权请求在令牌过期时正常工作,同时为客户提供可靠的断开方式。
您的工作地点 您的应用程序 → 会话和令牌处理
| 凭证 | 目的 | 如何处理 |
|---|---|---|
| 授权代码 | 从授权页面的一次性交接。 | 使用匹配的验证器和回调交换一次。它不是API令牌。 |
| 访问令牌 | 在接受的授权和范围内授权API调用。 | 发送为 Authorization: Bearer …。尊重过期时间和端点授权错误。 |
| 刷新令牌 | 在授权仍然有效的情况下,无需再次登录即可获取替换的访问令牌。 | 安全存储。序列化刷新操作并以原子方式替换旋转的凭证。 |
| ID令牌 | 客户端的OpenID Connect身份声明。 | 如果使用它,请验证签名、发行者、受众、过期时间和随机数等适用项。不要将其用作推断的Bearer令牌。 |
| 客户端密钥 | 验证允许的机密服务器客户端。 | 存储在服务器上。它不同于所有令牌,且绝不会捆绑在公共客户端中。 |
# Public client refresh; run on a trusted terminal with scoped test credentials.
curl --fail-with-body 'https://auth.shareai.now/oauth/token' \
-H 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode 'grant_type=refresh_token' \
--data-urlencode "client_id=$SHAREAI_CLIENT_ID" \
--data-urlencode "refresh_token=$SHAREAI_REFRESH_TOKEN"使用返回的 expires_in 而不是自行设定生命周期。如果刷新返回替换的刷新令牌,请将其与新的访问令牌作为一次更新持久化。允许每个会话进行一次刷新,以便并发请求不会重复使用旋转的令牌。无效或撤销的刷新授权需要重新连接;不要无限循环。
刷新不能添加范围或静默接受新的 Monetization Gateway 合同。对于新的权限或条款,请再次通过授权流程引导客户。JamZY 仅在服务器内存中存储凭据,最长为一小时的演示会话,验证用户信息而不是信任未经验证的 ID 令牌,并使用安全的 HttpOnly SameSite Cookie。生产服务需要其自身持久且受保护的会话设计。
在断开连接时,撤销刷新/访问凭据(如适用)并清除应用程序会话。仅清除浏览器cookie并不会撤销ShareAI授权或取消付费订阅。避免记录代码、令牌、密钥或个人提示内容。
到期触发一次受控刷新;新令牌替换旧令牌。断开连接清除应用程序会话并报告任何撤销失败。
您将把预约目标转化为议程和有用的问题,并明确提出客户资助的 AI 请求。
您的工作地点 可用模型 → JamZY → 做好准备
在应用程序中打开可用模型。选择您的产品将提供的模型和提供商,并保存配置。如果目录无法加载,请在继续之前解决上游可用性错误;反复更改 OAuth 客户端无法修复此问题。
JamZY 仅在连接后加载其目录。选择一个允许的文本模型,输入一个简短的预约目标,并有意选择生成准备。所选账户需要符合条件的积分以及任何必要的已接受 AI 计费条款。选择日期、查看预约并保存不会发送推理请求。
curl --fail-with-body 'https://api.shareai.now/api/v1/chat/completions' \
-H "Authorization: Bearer $SHAREAI_ACCESS_TOKEN" \
-H 'Content-Type: application/json' \
--data '{"model":"YOUR_ENABLED_MODEL_SLUG","messages":[{"role":"user","content":"Create a short agenda and three questions for a 15-minute appointment about planning a booking app."}],"stream":false,"max_tokens":192}'一个真正的日程安排产品需要服务器端的预订存储、可用性检查、时区处理、取消政策以及日历或通知集成。这些与 ShareAI 授权是分开的。将 AI 输出作为建议;通过您自己的应用程序规则验证任何未来的预订操作。
使用由许可目录返回的模型标识符。处理实际的响应契约:JamZY 支持 ShareAI 的原生 message.content 信封和 OpenAI 风格 choices[0].message.content。HTTP 200 带有不完整或嵌套的错误响应并不是成功的回复。
在支出限制或信用不足的响应中,显示有用的解释和提供的客户账单链接。保留所选账户。不要绕过其限制、静默切换付款方或在循环中重试已收费的操作。
生成的准备返回一个可用的议程和问题。请求归因于授权的客户和应用程序,包含所选模型和已接受的条款。AI 草稿无法预订或更改预约。
您将在订阅报价中解释额外的 AI 费用,并发布客户可以接受的条款。
您的工作地点 应用程序 → 订阅
如果尚未获得适用的管理政策批准,请通过应用的用例请求 Monetization Gateway 访问。完成问卷并关注其状态。批准后可进行配置;客户权限和账单同意仍然是独立的。
仅作示例:对 €1.00 的符合条件的网络费用加收 20% 的 Builder 加价,会产生 €0.20 的加价收入。按 Standard 定价,ShareAI 的 5% 费用仅从这 €0.20 的加价中收取,另计任何应付的 Event Ingestion 费用。实际金额应以实时估算器和客户已接受的合同为准。此流程中的订阅方案是一份 AI 计费协议;仅连接账户不会扣除固定的周期性费用。
surcharge。ShareAI 同意屏幕是接受条款的权威来源。JamZY 的公共客户端无法从用户信息推断出已接受的计费计划,因此其连接面板不会声称有活动订阅或为预约虚构价格。
该报价解释了费用;客户可以接受合同。您了解哪些客户仍然使用旧条款以及原因。
您将收集提交应用程序审核所需的真实端点和范围检查。
您的工作地点 OAuth 设置 → 测试人员和验证
打开 OAuth 设置 → 测试人员并邀请最多五名应用程序范围的测试人员。待处理的邀请会占用一个名额,但不会授予访问权限;接收者必须接受邀请。所有者访问权限和受邀测试人员访问权限与公共生产访问权限不同。
对于您打算发布的每个平台,打开验证。为所需端点和每个配置的范围完成真实成功调用。检查发现和签名密钥;测试授权/回调、代码交换、刷新、已认证的用户信息和撤销。机密客户端还必须测试适用的内省。需要关联验证的本地声明 HTTPS 链接。
配置文件/电子邮件范围需要其实际返回的声明;使用需要电子邮件的个人测试账户。inference 和 monetization_gateway 范围需要完成授权的 AI 请求。支付需要成功的范围支付 API 调用。通用的成功 HTTP 响应、浏览器截图或手动检查表不能替代 Console 的记录检查。
对于未完成的平台,您有三个选择:完成并验证它,将其排除在发布之外以便仅限所有者/测试人员使用,或将其移除。不要包含未执行回调或范围的平台。配置更改可能会使检查无效,因此在最终更改后刷新记录状态。
每个包含的平台显示所需的配置、端点和范围检查为完成状态。指南的个人检查表仅作为阅读辅助。
您将了解哪些内容已准备好进行审核,发布的工作原理以及之后在哪里跟踪客户访问。
您的工作地点 应用程序 → 仪表板
在上线后与一个符合条件的客户再次尝试整个流程:连接、检查账户和同意、生成简短的预约准备草稿、安全刷新、处理账单失败,然后断开连接。验证实际用户体验,而不是假设成功保存就证明其有效。
回调不匹配: 精确比较注册的 URL 和两个请求值。 未授权的测试者: 确认邀请接受和所选账户。 缺少范围或合同: 仅请求启用的访问权限并重新连接以接受。 无模型: 检查可用模型和提供商限制。 刷新失败: 清除失败的本地会话并重新连接。 审查被阻止: 检查平台验证,而不是创建另一个OAuth客户端。
应用程序适用于目标客户,记录的验证支持其发布状态,客户可以控制或撤销授权。
在申请之前,选择将拥有项目注册的个人或组织账户。组织可以在验证之前提交申请,但仅有员工批准并不能激活访问权限。通过控制台中的入职清单完成组织邮箱和公司验证。已批准的组织在两项检查完成之前仍处于“待验证”状态。Builder、Provider 和 Creator 项目遵循此规则。
查看 Monetization Gateway 定价 · 探索 ShareAI for Startups · 范围和权限
您的公共条款和条件、隐私政策和删除说明必须与应用匹配,并且无需登录即可访问。ShareAI 计划接受、Monetization Gateway 批准、客户的 OAuth 权限和已接受的账单合同是独立的决策。刷新不能添加权限或接受新的商业条款。
旧版 surcharge 范围仍被现有集成接受。新示例使用 monetization_gateway。保持现有的线字段,例如 surcharge_bps 和 surcharge_percentage 不变。
查看 Monetization Gateway 定价 · 探索 ShareAI for Startups · 范围和权限
标准收费 5% 的 Builder 加价。对于 €2.00 的 AI 网络成本和 10% 加价,客户支付 €2.20。ShareAI 接收 €0.01 的 €0.20 加价;Builder 在事件摄取前有 €0.19。
每个日历月(UTC),前 1,000 个已结算的生产 Monetization Gateway 请求是免费的,适用于整个 Builder 账户。额外的请求费用为每 1,000 €0.04,在适用折扣之前。一个已结算的请求会创建一个事件。
单独的 Pay with ShareAI,仅限 inference 访问,普通账户 API 密钥以及用于 Staging 或测试流量的请求不产生 Monetization Gateway 事件摄取费用。
ShareAI for Startups为批准的应用程序提供实际ShareAI费用的共享月度津贴。当前的Launch、Growth和Momentum层级分别列出€1,000、€5,000和€10,000每月。同一预算涵盖ShareAI在Builder加价上的百分比费用以及可计费的事件摄取。这不是总加价津贴、单独的免费事件配额或免费的AIinference。账户的前1,000个免费事件不会消耗它。
剩余的事件摄取费用从请求的新Builder收益中支付,然后是可用的Builder AI收益和无限制的AI积分。客户AI费用和产品payments保持独立。
ShareAI可以批准特定应用程序的费用或费用支持,期限固定或直到更改。请在控制台中查看应用程序的当前定价和特殊计划,以了解其批准条款、有效性和已消耗的津贴。层级更改或定价覆盖不会重置应用程序的月度使用量。
Launch保留“使用ShareAI登录”为可选项。Growth和Momentum要求使用;Momentum还要求在应用程序页脚中显示官方ShareAI for Startups徽章。ShareAI每周检查徽章。确认试图绕过要求的行为可能导致降级、从Startup Program中移除或根据接受的计划条款退出Marketplace。
企业费率由 ShareAI 团队为 Builder 账户配置,需在达成个性化报价后生效。分配的百分比和事件费率适用于未来的请求。
查看 Monetization Gateway 定价 · 探索 ShareAI for Startups · 范围和权限