你的 AI 生成网站, 我们让它保持在线。
面向 AI 建站工具的发布基础设施。三次调用,一个实时链接,无需自建 TLS。
三次调用,一个实时链接。
# 1. Register the end-user once, idempotent on your own externalIdcurl -X POST https://upload.tf/api/platform/v1/subjects \ -H "x-api-key: $UPLOADTF_KEY" \ -H "Content-Type: application/json" \ -d '{"externalId":"user_42"}' # 2. Host what their AI just generatedcurl -X POST https://upload.tf/api/platform/v1/subjects/ext:user_42/sites \ -H "x-api-key: $UPLOADTF_KEY" \ -H "Content-Type: application/json" \ -d '{"name":"acme-preview","files":[{"path":"index.html","contentBase64":"PGgxPkhlbGxvPC9oMT4="}]}' # 3. Mint a token their own browser can use to keep editingcurl -X POST https://upload.tf/api/platform/v1/subjects/ext:user_42/tokens \ -H "x-api-key: $UPLOADTF_KEY" \ -H "Content-Type: application/json" \ -d '{"cap":["site:write"]}'仅限 Corporate 套餐
这是独立的权限,与 API 访问权限分开授予。Business 套餐拥有完整的 v1 REST API,但依然无法创建主体。
Corporate
按年计费,每年 $732
或按月计费,每月 $79
包含
- 平台 API:主体、站点、单文件补丁、限定范围的令牌、用量、webhook
- 客户管理面板:统计数据、文件检查器、编辑历史、滥用举报
- 一个仅限查看你客户数据、不涉及其他内容的审核员席位
- 托管你客户的网站
- 客户面板与报告
- 客户经理与 SLA
- SSO 与审计日志
额度
- 终端用户
- 100,000
- 计量前的在线站点数
- 10,000
- 每月发布次数
- 500,000
- 每月 API 调用次数
- 10,000,000
- 共享存储空间
- 2 TB
- 每月页面浏览量
- 10,000,000
- 单个文件大小上限
- 5 GB
- 自定义域名
- 1,000
- 平台 API 密钥
- 100
- 团队席位
- 20
不必再自己搭建的功能
- TLS 与子域名
- 每个站点创建时都会获得专属的 https://name.upload.tf 地址。无需证书,无需通配符 DNS。
- 编辑,而非重新部署
- 按路径修补两个文件即可。链接、分析数据以及绑定的域名都不受影响。
- 按客户设置上限
- 为每个终端用户设置存储上限,按主体读取用量数据,按你自己的方式向客户计费。
- 签名 webhook
- 发布、更新、过期与审核事件。失败会按退避策略重试,并可从日志中重放。
工作原理
注册终端用户
POST /subjects,基于你自己的 externalId 实现幂等。
托管输出内容
POST /sites 接收一个 ZIP 或 JSON 文件映射,并返回一个实时链接。
移交一个限定范围的令牌
POST /tokens 生成一个绑定到该主体、短期有效的令牌。
滥用与内容审核
陌生人发布内容,后果总要有人承担。
每次上传在提供服务前都会被解包并审核,你也保留自己的暂停与删除权限。
- 422
- 命中 Safe Browsing 后拒绝发布
- 451
- 依据 RFC 7725,以法律理由暂扣
- 0.5 / 2 / 5%
- 警示、观察期、暂停
详细说明
提供服务前先经过审核
压缩包在发布前会被解包;路径穿越攻击与解压炸弹会被拒绝。页面 URL 及其 HTML 与 SVG 中的每个链接都会与 Google Safe Browsing 进行比对,命中即以 422 拒绝发布。位图图片与采样的视频帧由 OpenAI 分类识别露骨内容。该分类器仅作参考:它会标记待审核,但从不阻止发布。
检测到 CSAM 后立即暂停
Cloudflare 的 CSAM Scanning Tool 只会对进入边缘缓存的图片计算哈希,而动态 Worker 响应会绕过这一步,因此我们特意将可提供服务的图片字节写入 Cache API。一旦确认检测结果,会立即暂停该终端用户并触发 platform.subject.csam_suspended。该页面会以 451 状态暂扣。
结清账单也无法解除限制
有三种信号会暂扣页面,按固定顺序生效:我们的审核状态、你对某个终端用户设置的管理员锁定,以及因未付款产生的套餐锁定。被暂扣的页面会返回 404。补缴付款只会解除套餐锁定,因此永远无法恢复因滥用而被暂扣的内容。
你自己的审核台
一次 PATCH 请求,或在你的管理面板中点一下,就能阻止某个客户发布或编辑内容。已经上线的站点会继续正常提供服务:写入冻结并不等同于下架。如需彻底撤下内容,需按 id 删除该站点。你的客户视图中包含客户名单、统计数据、文件检查器、编辑历史和滥用举报。如有需要,也可以让外包人员来负责:该席位只能看到客户信息,不涉及其他任何内容,也无法撤销我们采取的滥用处置措施。
在越界之前,你就能看到那条界线
我们会根据每个平台在过去 90 天内、被确认采取不利处置的活跃终端用户占比进行评分:低于 0.5% 为正常,0.5% 为警示,2% 为观察期,5% 为暂停。三次确认的 CSAM 检测本身就会直接触发观察期。当活跃主体数低于 20 时,仅凭比例永远不会超过警示级别。每次变更都会触发 platform.abuse.tier_changed。
我们无需先征得你的同意即可采取行动
在安全与滥用处置方面,我们是独立的数据控制方,而非你的数据处理方。正因如此,我们无需等待你的指示,即可对违法内容采取行动。
我们不会声称的事: 没有 SOC 2 认证,没有 ISO 认证,没有全天候审核台,也不提供检测率数据。审核机制在设计上遵循"失败开放"(fail open)原则:扫描服务中断,绝不能导致所有发布都无法进行。
平台常问的问题
我需要哪个套餐?
Corporate。平台租户功能与 API 访问权限是分开的:Business 套餐拥有完整的 v1 REST API,但在平台相关接口上依然会收到 403。
我的终端用户会拥有自己的账户吗?
不会。每个终端用户都是你账户下的一个主体。计费、配额与套餐都由你这边统一管理。
我的终端用户可以使用自定义域名吗?
目前无法通过 API 实现。域名结算与 DNS 验证需要会话认证,没有对应的 API 密钥方式。平台站点会以各自的 upload.tf 名称提供服务。
账单会开给谁,是我还是我的终端用户?
会开给你,统一在一个套餐下计费。用量接口会按主体拆分消耗数据,方便你再向客户计费。
为什么不自己搭建?
证书管理、压缩包校验、Safe Browsing 与 CSAM 审核、按客户配额、即使付款失败也能生效的分级暂扣机制、签名 webhook 重试,以及一整套审核台。

