本文档给「代理商 + 代理商的 AI 助手」看。代理商本人用充值端/vr/,卡密端/card/<32位随机串>(管理台复制)是发给你下线学员的。
如果你的 AI 要自动调用接口,请让它完整读过本文再动手。
最后更新:2026-10-22
### ⚠ 你是哪一种?先认一下
- 我是代理商(自己有充值端账号、给下线发卡密)→ 全文都适用,尤其是第 1 节入口对比、第 2.1 节卡密发放、第 7 节废止做法。
- 我是代理商的下线学员(手上只有一张卡密)→ 你只需要看这几节:第 2.1 节「卡密充值」、第 3 节「提交生成任务」、第 4 节「参考图」、第 5 节「查任务与取成片」、第 6 节「错误对照表」。本文档其余部分(代理成本、优惠对比、定价策略)与你无关,请忽略;计费与售后一切以卖卡密给你的代理商为准。
下面每一条都对应真实踩过的坑。不要凭常识推断,按本文写死的值执行。
| 编号 | 约束 | 说明 |
|---|---|---|
| A1 | 不要猜价格,不要报价格 | 本站只记「次数」。1 次 = 生成 1 条视频。人民币定价由代理商自己决定,系统里没有价格字段,任何「多少钱一次」的说法都不是本文档给的。 |
| A2 | 不要假设有免费额度 | 新账号次数为 0。必须先充值(卡密或代理充值),否则提交会被拒:次数不够。 |
| A3 | 参考图必须是公网可直接访问的 URL,或先上传拿我们的 URL | 这是历史上失败最多的一类。见第 4 节。内网地址、需登录、需防盗链、临时签名链接都可能失败。 |
| A4 | 失败不用你管,系统会自动重试;次数只在「真生成失败」时退回 | 平台入口拒掉(内容审核、参考图下载失败等)不算生成失败:系统会先在同一任务上原地重试 1 次,仍不行就退回候车跟下一车再试,第二车还被拒才退单退次。所以看到任务「回候车」不是出错,是在自动重试。但内容审核类连续两车都过不去,基本就是素材问题,建议同时改措辞/换图,别只等重试。 |
| A5 | 一条任务 = 1 次,不分分辨率、不分档位 | 没有「头等舱 / 经济舱」这种差别计价,历史字段 cabin 已废弃,传了也不影响价格。 |
| A6 | 任务不是提交就出片 | 提交后进「候车」,攒够一车才真正发给生成平台。不要用几分钟没结果来判断失败。 |
| A7 | 不要改 prompt 里的台词 | 台词文本会原样送进模型。改字 = 改需求,要客户确认。 |
| A8 | 平台「智能扩写」默认是关的,提示词按原文生成 | 参数 promptExtend 不传或传 false = 完全按你写的原文生成,平台不会改写。只有显式传 true 才会让平台在生成前「智能改写」一遍——好处是它自己补细节,代价是多等 20–60 秒、而且可能改掉你特意强调的东西(构图、服装、台词、参考图对应关系)。提示词已经写得很细(带参考图 / 带台词 / 有严格构图要求)→ 务必保持默认 false;只给一句大白话、想让平台自己发挥 → 才考虑开 true。 |
| 入口 | 地址 | 谁用 | 充值方式 | 有无活动 |
|---|---|---|---|---|
| 充值端(主站) | https://yuanmengstudio.com/vr/ | 代理商本人,以及能自己直充的学员 | 支付宝直充,金额自选 | 有(首充与每日登录都有活动,具体以页面显示为准) |
| 卡密端(代理站) | https://yuanmengstudio.com/card/<32位随机串>(地址从管理台「充值卡密」卡片里复制,每批代理发一次) | 代理商发给自己下线的学员 | 只能输卡密,页面无充值界面 | 无(不参与平台活动) |
| 接口文档页 | https://yuanmengstudio.com/vr/api.html | 用 API 的学员 / 自动化程序 | —— | —— |
| 接入规范 | https://yuanmengstudio.com/vr/guide.html | 就是本文档的网页版 | —— | —— |
两端的分工:
/vr/:支付宝直充,有首充和每日登录活动,你的拿货成本在这一端最低(具体金额与比例以页面实时显示为准,本文档不写死)。/card/<32位随机串>(地址从管理台复制):页面里不出现价格、不出现社群入口、不出现联系方式,定价和销售完全归你。你从平台拿卡密,按你定的价卖给下线。/card/<32位随机串>)代理商本人不需要卡密——你直接用充值端 /vr/ 支付宝充。本节是给你下线学员看的。
卡密长这样:VR-XXXX-XXXX-XXXX(字母数字,一张只能用一次)
在页面上:下线打开卡密端 → 点顶部次数徽章 → 输入卡密 → 立即充值。
用接口:
POST https://yuanmengstudio.com/vr/api/redeem
Content-Type: application/json
X-Token: <学员 Token>
{ "code": "VR-XXXX-XXXX-XXXX" }
成功返回:
{ "ok": true, "credits": 130, "added": 30 }
added = 本次到账次数credits = 充值后的总次数失败返回:
{ "ok": false, "msg": "这张卡密已经被使用了(2026-10-22),每张只能用一次" }
卡密从哪来:
POST https://yuanmengstudio.com/vr/api/student/login
Content-Type: application/json
{ "name": "<学员名>", "pass": "<口令>" }
★ 注意路径是/api/student/login(带student)。早期文档写成/api/login,那个地址返回 404,别用。
注册同理是 /api/student/register。
返回里 credits 就是剩余次数。X-Token 用返回的 token。
| 你用的是哪个端 | 出了问题找谁 |
|---|---|
充值端 /vr/(支付宝直充,代理商本人用这个) | 联系平台客服微信:h1068888n(加时备注你的学员名) |
卡密端 /card/<32位随机串>(卡密充值,下线学员用这个) | 联系卖给你卡密的代理商。平台不掌握卡密的销售与发放,无法直接处理 |
常见充值异常:
| 现象 | 原因 | 处理 |
|---|---|---|
| 支付宝付了钱,次数没涨 | 支付回调延迟 | 等 1~2 分钟刷新本页;超过 10 分钟没到,联系客服微信 h1068888n 并提供订单号 |
| 打不开支付页 | 浏览器拦截弹窗 | 允许弹窗后重试;或直接联系客服 |
| 卡密提示「已经被使用了」 | 卡密一次性,别人先用了 | 联系卖卡密给你的代理商换一张 |
| 卡密提示「无效」 | 卡密输错或不是本站卡密 | 核对格式 VR-XXXX-XXXX-XXXX(注意 I/O/0/1 不会出现);仍不行联系代理商 |
POST https://yuanmengstudio.com/vr/api/tasks
Content-Type: application/json
X-Token: <学员 Token>
{
"prompt": "……(≥5 字,≤20000 字)",
"duration": 5,
"ratio": "9:16",
"resolution": "1080P",
"audio": true,
"refs": ["https://…….png", "https://…….jpg"]
}
| 字段 | 必填 | 取值 | 说明 |
|---|---|---|---|
prompt | 是 | 5~20000 字 | 提示词。台词写进中文引号里,模型会念出来 |
duration | 否 | 2~30 的整数,或 -1 | 秒。-1 = 智能时长。默认 5 |
ratio | 否 | 16:9 / 9:16 / 1:1 / 4:3 / 3:4 / 21:9 | 画幅 |
resolution | 否 | 480P / 720P / 1080P | 不影响价格,都是 1 次 |
audio | 否 | true / false | 是否出声音,默认 true |
promptExtend | 否 | true / false | 提示词智能扩写开关,默认 false。· false(默认,推荐)= 完全按你写的原文生成,你写什么就是什么· true = 平台在生成前先「智能改写」一遍你的提示词,他会自己补充细节,但也会改掉你想强调的东西,并且多等 20–60 秒· 提示词你自己已经写得很细(尤其带参考图、带台词、有严格构图要求)→ 保持 false;只想给一句大白话、让平台自己发挥 → 可以开 true |
refs | 否 | 数组,≤10 张 | 参考图。每张 ≤20MB。见第 4 节 |
firstFrame | 否 | data URI | 首帧图(mode=first_frame 或 first_last 时用) |
lastFrame | 否 | data URI | 尾帧图(mode=first_last 时用) |
mode | 否 | reference / first_frame / first_last | 默认 reference(全模态参考) |
cabin | 否 | —— | 已废弃,不传即可(传了也不参与计费) |
提交这一刻系统就会去下载 refs 里的每一张图:
被拒的样子:
{
"ok": false,
"msg": "参考图取不到:https://xxx.png — fetch failed。请确认这张图能在公网直接打开(手机 4G 无痕窗口粘链接能看到图),或先用 /api/upload 传上来换成我们的链接"
}
所以:看到这个报错不要去"重试提交",要去换图。
任务照常提交成功,但如果提示词里踩了平台审核的雷,响应会多一个 warnings 数组。它不拦截、不扣次数,只是告诉你会不会白跑一趟。
{
"ok": true,
"task": { "id": "T1234", "status": "pending" },
"warnings": [
{
"code": "shutup",
"msg": "提示词里有「闭嘴」,平台内容审核拒的概率高(实测 28.6%,基线 1.5%)",
"fix": "改成「其余人物不开口、不做说话动作」"
}
]
}
五类会被提示的写法(实测被拒率):
| code | 触发写法 | 实测被拒率 | 建议改成 |
|---|---|---|---|
shutup | 「闭嘴」 | 28.6%(余人闭嘴)/ 19.2%(其他人闭嘴) | 「其余人物不开口、不做说话动作」 |
ziqing | 「字清」 | 15.6% | 「普通话发音清晰」 |
med | 治疗/疗效/治病/缓解疼痛/降血压/抗癌/根治/药效/保健功效/医用级 | 按医疗广告拦 | 只描述外观、材质、使用场景,不写功效 |
ip | 最终幻想/塞尔达/英雄联盟/原神/魔兽世界/王者荣耀/迪士尼/漫威/火影/海贼王/进击的巨人/哈利波特/星球大战/宝可梦 | 判 IP 侵权,直接挂 | 改成风格描述(「西式高幻想 RPG 质感」),不点作品名 |
forced | 扒…衣服/脱光/脱掉衣服/撕开衣服/凌辱/羞辱 | 判暴力或低俗 | 删掉或改成中性动作 |
明确不必担心的写法(实测被拒率 0%,别再冤枉它们):
数据来源:全站 934 条已结算任务(done + failed)的实测统计,基线被拒率 1.5%。
POST https://yuanmengstudio.com/vr/api/upload
X-Token: <学员 Token>
Content-Type: multipart/form-data
file=@本地图片.png ← 字段名必须是 file
返回:
{
"ok": true,
"url": "https://yuanmengstudio.com/vr/api/pub/c066fcdc62b2.png",
"fileId": "c066fcdc62b2.png",
"size": 238
}
把 url 放进 refs。
用平台图床的优势(实测数据):
| 图床 | 提交后出片成功率 | 下载失败次数 |
|---|---|---|
平台图床 yuanmengstudio.com | 失败全部是内容审核 | 0 |
| 某客户自有服务器图床 | 28% | 大量超时 |
阿里云 OSS、七牛、腾讯云 COS、公开图床都行。只有一个要求:链接本身直接就能看到图。
192.168.、10.、localhost)手机切到 4G,开无痕/隐私窗口,把图片链接粘进地址栏。
能看到图 → 能用。要求登录 / 403 / 一直转圈 → 不能用。
mode 用 first_frame 或 first_last 时,首尾帧要传 data URI(不是 URL):
data:image/png;base64,<base64>
而且不能和 refs / 音频 / 视频混用(平台硬规则)。
GET https://yuanmengstudio.com/vr/api/tasks?limit=20
X-Token: <学员 Token>
单条查询:
GET https://yuanmengstudio.com/vr/api/tasks/<任务id>
X-Token: <学员 Token>
任务状态流转:
pending → 候车中(还没发车)
submitted → 已发给生成平台,排队生成
running → 生成中
done → 完成,videoUrl 可用
failed → 失败,次数已自动退回
cancelled → 已取消
取成片:done 状态返回的 videoUrl 可直接下载(平台直链,带签名,约 24 小时有效)。
链接过期时用下面这个转发地址重新取:
GET https://yuanmengstudio.com/vr/api/video/<任务id>
X-Token: <学员 Token>
| 报错里的关键字 | 真实含义 | 正确处理 |
|---|---|---|
参考图取不到 | 我们下不到你给的图(链接要登录、防盗链、或已失效) | 换图(见第 4 节)。系统会先原地重试 1 次,但图本身打不开时重试也没用,请按第 4 节自测一下链接 |
次数不够 | 余额为 0 或不足 | 去充值(卡密) |
Green net check rejected text (input) | 台词/文案触发平台输入侧内容审核(没进生成) | 系统自动原地重试 1 次 + 续 1 车;连续两车都拒就退次,这时请改文案。实测同一份提示词有概率换个时间就过,但反复被拒就是措辞问题 |
Green net check rejected image (input) | 参考图被判敏感(没进生成) | 系统自动原地重试 1 次 + 续 1 车;连续两车都拒就退次,这时请换图 |
The input content is suspected to include real human faces | 平台检测到��实人脸 | 换成 AI 生成的人像,不要用真人照片 |
Error validating image resolution | 图片尺寸不合法 | 换一张常规尺寸的图(建议长边 1280~1920) |
input_video_duration + duration exceeds 30s | 参考视频 + 生成长度超 30 秒 | 缩短时长或去掉参考视频 |
这张卡密已经被使用了 | 卡密一次性 | 换一张新卡密 |
所有 failed 状态的任务,次数都已经自动退回,不用单独申请。
| 旧做法 | 现在应该怎么做 |
|---|---|
传cabin: 头等舱/经济舱 分档计价 | 不传。一条任务恒为 1 次 |
| 按「积分」理解余额 | 现在语义是次数,字段名仍叫 credits(历史兼容) |
| 参考图直接丢自己服务器 URL | 先传 /api/upload,或用公网图床 |
| 提交后失败就自己反复重试 | 不用你重试——系统已经自动原地重试 1 次 + 续 1 车,第 2 车还失败才退次。你要做的是看第 6 节对照表改素材 |
| 以为要自己卡时间、攒够多少条才发 | 不用管,正常提交就行,系统自己凑批发车 |
候车 = 在排队,不是失败。
任务提交后会先进「候车」队列,等系统凑够一批,再统一发给生成平台。 所以从提交到出片之间会有一段等待,这是正常的。
看到「候车」就继续做别的事,出片后任务会自动变成「已完成」,直接在线预览和下载。 不要因为几分钟没结果就重复提交,重复提交会多扣次数。
如果等了很久一直没动静,把任务编号发给管理员帮你查,不用自己反复试。
代理商自己充值走/vr/(支付宝直充有优惠),下线学员走卡密端/card/<32位随机串>(只能卡密);图先传/api/upload拿平台 URL;提交用/api/tasks,X-Token带学员 Token;一条任务 1 次;失败不用自己重试(系统自动原地重试 + 续车,第 2 车还失败才退次);报「参考图取不到」就换图,连续被审核拒就改文案;排队等待是正常的;价格不要问平台,找代理商。