190 KiB
FunyMeeAI V2 客户端接入指引
生成时间:2026-03-25 17:39
通用信息
| 项目 | 值 |
|---|---|
| 加密方式 | AES-128-ECB, PKCS5Padding, Base64 |
| AES Key | gLYeTRc2uNTcNH8e |
| 预发域名 | pre-ai.funymee.space |
| 生产域名 | ai.funymee.space |
| 代理入口 | POST {baseUrl}/workshop/lounge/hub/playground |
| 包名 | com.funymeeai.app |
加密流程
构造业务参数
|
v
字段名映射
(body + params + headers)
|
v
V2包装
(body only)
|
v
JSON序列化
|
v
AES + Base64
|
v
填入代理请求 b/p 参数
|
v
POST 代理入口
代理请求结构
所有接口统一 POST 到代理入口,请求体结构如下:
{
"humor_level": "FunyMeeAI", // appId 明文
"comedy_style": "<AES(接口路径) → Base64>", // AES(原始 path) → Base64
"avatar_mode": "<AES(HTTP方法) → Base64>", // AES("POST" 或 "GET") → Base64
"filter_type": "<AES(映射后请求头字段JSON)>", // AES(映射后的Header字段名构造JSON) → Base64
"scene_id": "<AES(映射后URL参数字段JSON)>", // AES(映射后的URL参数字段名构造JSON) → Base64
"clip_duration": "<AES(V2请求体JSON)>", // AES(V2包装后的业务数据) → Base64
"sample_rate": "<随机4-8位字母数字,AES加密→Base64>", // 噪音字段
"watermark_id": "<随机4-8位字母数字,AES加密→Base64>", // 噪音字段
"geo_radius": "<随机4-8位字母数字,AES加密→Base64>", // 噪音字段
"accuracy_m": "<随机4-8位字母数字,AES加密→Base64>" // 噪音字段
}
即使原始接口为 GET(无请求体),走代理后也统一使用 POST,b 参数仍需传入 V2 包装后的空业务体。
V2 包装结构
业务数据经字段映射后,按以下结构包装:
{
"shell": 2, // 固定值
"capsule": {
"envelope": {
"container": { /* 映射后的业务字段 */ }
}
},
"shimmer": "<随机4-8位字母数字,AES加密→Base64>",
"glimmer": "<随机4-8位字母数字,AES加密→Base64>",
"flicker": "<随机4-8位字母数字,AES加密→Base64>",
"sparkle": "<随机4-8位字母数字,AES加密→Base64>",
"rustle": "<随机4-8位字母数字,AES加密→Base64>",
"murmur": "<随机4-8位字母数字,AES加密→Base64>",
"whisper": "<随机4-8位字母数字,AES加密→Base64>",
"echo": "<随机4-8位字母数字,AES加密→Base64>"
}
认证 & 账号
无需登录态
设备登录(快速登录)
POST /v1/user/fast_login | 鉴权:需要
请求头
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
stakeholder |
pkg |
应用包名(必填) |
查询参数
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
satire |
ch |
渠道 |
stakeholder |
pkg |
应用包名(必填) |
revenue |
type |
referrer类型(必填, af(AF归因)/fb(FB归因,默认)/gg(google归因)/ios_adjust/android_adjust) |
sticker |
app |
应用类型(必填,iOS: HIOS / Android: HAndroid) |
请求体字段
| 字段(V2名) | 原始字段 | 类型 | 说明 |
|---|---|---|---|
link |
referer |
string | 归因信息,如 |
mandate |
sign |
string | 签名,MD5(deviceId)大写32位(必填) |
stage |
deviceId |
string | 设备ID(必填) |
V2 完整请求体(填入业务值后 AES 加密,填入代理请求 b 参数 字段)
// fast_login — 设备登录(快速登录)
// POST {baseUrl}/workshop/lounge/hub/playground
//
// 代理请求:
// {
// "humor_level": "FunyMeeAI", // appId 明文
// "comedy_style": "vx4tAJaFHyC0sCb6jpr+iKBq/uqi2FaadQnIqopsLYI=", // AES(/v1/user/fast_login)
// "avatar_mode": "Mhb3yNV4SnrfCK8EJAq9VQ==", // AES(POST)
// "filter_type": "<AES({stakeholder: 应用包名(必填)}) → Base64>", // AES(映射后的Header字段名构造JSON) → Base64
// "scene_id": "<AES({satire: 渠道, stakeholder: 应用包名(必填), revenue: referrer类型, sticker: 应用类型}) → Base64>", // AES(映射后的URL参数字段名构造JSON) → Base64
// "clip_duration": "<AES(V2请求体JSON)>", // AES(V2包装后的业务数据) → Base64
// "sample_rate": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "watermark_id": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "geo_radius": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "accuracy_m": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// }
//
// V2 请求体 — 填入业务值后 AES 加密,填入 clip_duration
{
"shell": 2,
"capsule": {
"envelope": {
"container": {
"link": "", // referer (string) 归因信息,如
"mandate": "", // sign (string) 签名,MD5(deviceId)大写32位(必填)
"stage": "" // deviceId (string) 设备ID(必填)
}
}
},
"shimmer": "<随机4-8位字母数字,AES加密→Base64>",
"glimmer": "<随机4-8位字母数字,AES加密→Base64>",
"flicker": "<随机4-8位字母数字,AES加密→Base64>",
"sparkle": "<随机4-8位字母数字,AES加密→Base64>",
"rustle": "<随机4-8位字母数字,AES加密→Base64>",
"murmur": "<随机4-8位字母数字,AES加密→Base64>",
"whisper": "<随机4-8位字母数字,AES加密→Base64>",
"echo": "<随机4-8位字母数字,AES加密→Base64>"
}
响应体(解密后)
{
"sprint": "", // msg (string) 消息
"scene": 0, // code (int) 状态码,0=成功
"costume": { // data
"download": "", // extConfig (string) 客户端界面配置下发
"revenue": "", // type (string) 类型
"stylize": { // appFbConfig (object) 应用FB配置
"glow": "", // fbClientId (string) Facebook应用ID
"blur": "" // fbClientToken (string) Facebook客户端Token
},
"reauthenticate": "", // usign (string) 用户签名
"publish": "", // countryCode (string) 国家代码
"swap": "", // creditsRecordUrl (string) 积分记录URL
"chart": "", // tgId (string) Telegram ID
"export": 0, // credit (int) 积分余额
"spend": "", // tgName (string) Telegram 用户名
"draft": "", // email (string) 邮箱
"profile": {}, // ext (object) 扩展信息
"convert": false, // forcePayCenter (boolean) 是否强制跳转支付中心
"reboot": { // t2IConfig (object) T2I配置
"padding": {}, // credits (object) 积分配置(key为任务类型,value为积分数)
"microscopic": [ // templates (array) 提示词模板列表
{
"circular": "", // img (string) 示例图片URL
"appointment": "" // prompt (string) 提示词内容
}
]
},
"rank": { // h5UrlConfig (object) H5 URL配置
"altitude": "", // url (string) H5页面URL
"coverage": "" // launchImgUrl (string) 启动图URL
},
"schedule": "", // payCenterUrl (string) 支付中心URL
"tag": 0, // freeBlurTimes (int) 免费去模糊次数
"frequency": "", // avatar (string) 头像URL
"supplement": "", // userName (string) 用户名
"enhance": false, // firstRegister (boolean) 是否首次注册
"symposium": "", // userId (string) 用户ID
"restore": false, // isVip (boolean) 是否VIP
"enqueue": [], // tags (array) 用户标签
"label": 0, // freeTimes (int) 免费次数
"disambiguate": "", // userToken (string) 用户登录token
"recognize": 0, // subScribeValidTime (int) 订阅有效时间戳
"wallet": 0 // status (int) 用户状态
}
}
Google登录
POST /v1/user/login/google | 鉴权:需要
请求头
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
stakeholder |
pkg |
应用包名(必填) |
comedy |
User_token |
用户登录token |
查询参数
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
sticker |
app |
应用标识(必填,iOS: HIOS / Android: HAndroid) |
请求体字段
| 字段(V2名) | 原始字段 | 类型 | 说明 |
|---|---|---|---|
sticker |
app |
string | 应用标识(必填) |
link |
referer |
string | 归因信息,如 utm_source=googleplay |
socket |
inviteBy |
string | 邀请人 |
scene |
code |
string | OAuth授权码 |
taskforce |
verifyCode |
string | 验证码 |
satire |
ch |
string | 渠道号 |
frequency |
avatar |
string | 头像URL |
revenue |
type |
string | 类型 |
supplement |
userName |
string | 用户名 |
symposium |
userId |
string | 用户ID |
stage |
deviceId |
string | 设备ID |
sponsor |
phone |
string | 手机号 |
theme |
domain |
string | 域名 |
campus |
keepUserId |
string | 保留用户ID |
parody |
campaignInfo |
string | 活动信息 |
bitrate |
state |
string | OAuth state |
complex |
refererType |
string | 归因类型 |
draft |
email |
string | 邮箱 |
V2 完整请求体(填入业务值后 AES 加密,填入代理请求 b 参数 字段)
// google — Google登录
// POST {baseUrl}/workshop/lounge/hub/playground
//
// 代理请求:
// {
// "humor_level": "FunyMeeAI", // appId 明文
// "comedy_style": "s1CzqpH5wzPJf21sqStamHzcIP0EBYSPFMW5Gcf1C3w=", // AES(/v1/user/login/google)
// "avatar_mode": "Mhb3yNV4SnrfCK8EJAq9VQ==", // AES(POST)
// "filter_type": "<AES({stakeholder: 应用包名(必填), comedy: 用户登录token}) → Base64>", // AES(映射后的Header字段名构造JSON) → Base64
// "scene_id": "<AES({sticker: 应用标识(必填,iOS: HIOS / Android: HAndroid)}) → Base64>", // AES(映射后的URL参数字段名构造JSON) → Base64
// "clip_duration": "<AES(V2请求体JSON)>", // AES(V2包装后的业务数据) → Base64
// "sample_rate": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "watermark_id": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "geo_radius": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "accuracy_m": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// }
//
// V2 请求体 — 填入业务值后 AES 加密,填入 clip_duration
{
"shell": 2,
"capsule": {
"envelope": {
"container": {
"sticker": "", // app (string) 应用标识(必填)
"link": "", // referer (string) 归因信息,如 utm_source=googleplay
"socket": "", // inviteBy (string) 邀请人
"scene": "", // code (string) OAuth授权码
"taskforce": "", // verifyCode (string) 验证码
"satire": "", // ch (string) 渠道号
"frequency": "", // avatar (string) 头像URL
"revenue": "", // type (string) 类型
"supplement": "", // userName (string) 用户名
"symposium": "", // userId (string) 用户ID
"stage": "", // deviceId (string) 设备ID
"sponsor": "", // phone (string) 手机号
"theme": "", // domain (string) 域名
"campus": "", // keepUserId (string) 保留用户ID
"parody": "", // campaignInfo (string) 活动信息
"bitrate": "", // state (string) OAuth state
"complex": "", // refererType (string) 归因类型
"draft": "" // email (string) 邮箱
}
}
},
"shimmer": "<随机4-8位字母数字,AES加密→Base64>",
"glimmer": "<随机4-8位字母数字,AES加密→Base64>",
"flicker": "<随机4-8位字母数字,AES加密→Base64>",
"sparkle": "<随机4-8位字母数字,AES加密→Base64>",
"rustle": "<随机4-8位字母数字,AES加密→Base64>",
"murmur": "<随机4-8位字母数字,AES加密→Base64>",
"whisper": "<随机4-8位字母数字,AES加密→Base64>",
"echo": "<随机4-8位字母数字,AES加密→Base64>"
}
响应体(解密后)
{
"sprint": "", // msg (string) 消息
"scene": 0, // code (int) 状态码,0=成功
"costume": { // data
"download": "", // extConfig (string) 客户端界面配置下发
"revenue": "", // type (string) 类型
"stylize": { // appFbConfig (object) 应用FB配置
"glow": "", // fbClientId (string) Facebook应用ID
"blur": "" // fbClientToken (string) Facebook客户端Token
},
"reauthenticate": "", // usign (string) 用户签名
"publish": "", // countryCode (string) 国家代码
"swap": "", // creditsRecordUrl (string) 积分记录URL
"chart": "", // tgId (string) Telegram ID
"export": 0, // credit (int) 积分余额
"spend": "", // tgName (string) Telegram 用户名
"draft": "", // email (string) 邮箱
"profile": {}, // ext (object) 扩展信息
"convert": false, // forcePayCenter (boolean) 是否强制跳转支付中心
"reboot": { // t2IConfig (object) T2I配置
"padding": {}, // credits (object) 积分配置(key为任务类型,value为积分数)
"microscopic": [ // templates (array) 提示词模板列表
{
"circular": "", // img (string) 示例图片URL
"appointment": "" // prompt (string) 提示词内容
}
]
},
"rank": { // h5UrlConfig (object) H5 URL配置
"altitude": "", // url (string) H5页面URL
"coverage": "" // launchImgUrl (string) 启动图URL
},
"schedule": "", // payCenterUrl (string) 支付中心URL
"tag": 0, // freeBlurTimes (int) 免费去模糊次数
"frequency": "", // avatar (string) 头像URL
"supplement": "", // userName (string) 用户名
"enhance": false, // firstRegister (boolean) 是否首次注册
"symposium": "", // userId (string) 用户ID
"restore": false, // isVip (boolean) 是否VIP
"enqueue": [], // tags (array) 用户标签
"label": 0, // freeTimes (int) 免费次数
"disambiguate": "", // userToken (string) 用户登录token
"recognize": 0, // subScribeValidTime (int) 订阅有效时间戳
"wallet": 0 // status (int) 用户状态
}
}
Apple登录
POST /v1/user/login/apple | 鉴权:需要
请求头
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
stakeholder |
pkg |
应用包名(必填) |
comedy |
User_token |
用户登录token |
查询参数
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
sticker |
app |
应用标识(必填,iOS: HIOS / Android: HAndroid) |
请求体字段
| 字段(V2名) | 原始字段 | 类型 | 说明 |
|---|---|---|---|
sticker |
app |
string | 应用标识(必填) |
link |
referer |
string | 归因信息,如 utm_source=googleplay |
socket |
inviteBy |
string | 邀请人 |
scene |
code |
string | OAuth授权码 |
taskforce |
verifyCode |
string | 验证码 |
satire |
ch |
string | 渠道号 |
frequency |
avatar |
string | 头像URL |
revenue |
type |
string | 类型 |
supplement |
userName |
string | 用户名 |
symposium |
userId |
string | 用户ID |
stage |
deviceId |
string | 设备ID |
sponsor |
phone |
string | 手机号 |
theme |
domain |
string | 域名 |
campus |
keepUserId |
string | 保留用户ID |
parody |
campaignInfo |
string | 活动信息 |
bitrate |
state |
string | OAuth state |
complex |
refererType |
string | 归因类型 |
draft |
email |
string | 邮箱 |
V2 完整请求体(填入业务值后 AES 加密,填入代理请求 b 参数 字段)
// apple — Apple登录
// POST {baseUrl}/workshop/lounge/hub/playground
//
// 代理请求:
// {
// "humor_level": "FunyMeeAI", // appId 明文
// "comedy_style": "jGhmNKJBhLIFhBiEzhPjHiink7QU+MJfG5dQyUrWCKg=", // AES(/v1/user/login/apple)
// "avatar_mode": "Mhb3yNV4SnrfCK8EJAq9VQ==", // AES(POST)
// "filter_type": "<AES({stakeholder: 应用包名(必填), comedy: 用户登录token}) → Base64>", // AES(映射后的Header字段名构造JSON) → Base64
// "scene_id": "<AES({sticker: 应用标识(必填,iOS: HIOS / Android: HAndroid)}) → Base64>", // AES(映射后的URL参数字段名构造JSON) → Base64
// "clip_duration": "<AES(V2请求体JSON)>", // AES(V2包装后的业务数据) → Base64
// "sample_rate": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "watermark_id": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "geo_radius": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "accuracy_m": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// }
//
// V2 请求体 — 填入业务值后 AES 加密,填入 clip_duration
{
"shell": 2,
"capsule": {
"envelope": {
"container": {
"sticker": "", // app (string) 应用标识(必填)
"link": "", // referer (string) 归因信息,如 utm_source=googleplay
"socket": "", // inviteBy (string) 邀请人
"scene": "", // code (string) OAuth授权码
"taskforce": "", // verifyCode (string) 验证码
"satire": "", // ch (string) 渠道号
"frequency": "", // avatar (string) 头像URL
"revenue": "", // type (string) 类型
"supplement": "", // userName (string) 用户名
"symposium": "", // userId (string) 用户ID
"stage": "", // deviceId (string) 设备ID
"sponsor": "", // phone (string) 手机号
"theme": "", // domain (string) 域名
"campus": "", // keepUserId (string) 保留用户ID
"parody": "", // campaignInfo (string) 活动信息
"bitrate": "", // state (string) OAuth state
"complex": "", // refererType (string) 归因类型
"draft": "" // email (string) 邮箱
}
}
},
"shimmer": "<随机4-8位字母数字,AES加密→Base64>",
"glimmer": "<随机4-8位字母数字,AES加密→Base64>",
"flicker": "<随机4-8位字母数字,AES加密→Base64>",
"sparkle": "<随机4-8位字母数字,AES加密→Base64>",
"rustle": "<随机4-8位字母数字,AES加密→Base64>",
"murmur": "<随机4-8位字母数字,AES加密→Base64>",
"whisper": "<随机4-8位字母数字,AES加密→Base64>",
"echo": "<随机4-8位字母数字,AES加密→Base64>"
}
响应体(解密后)
{
"sprint": "", // msg (string) 消息
"scene": 0, // code (int) 状态码,0=成功
"costume": { // data
"download": "", // extConfig (string) 客户端界面配置下发
"revenue": "", // type (string) 类型
"stylize": { // appFbConfig (object) 应用FB配置
"glow": "", // fbClientId (string) Facebook应用ID
"blur": "" // fbClientToken (string) Facebook客户端Token
},
"reauthenticate": "", // usign (string) 用户签名
"publish": "", // countryCode (string) 国家代码
"swap": "", // creditsRecordUrl (string) 积分记录URL
"chart": "", // tgId (string) Telegram ID
"export": 0, // credit (int) 积分余额
"spend": "", // tgName (string) Telegram 用户名
"draft": "", // email (string) 邮箱
"profile": {}, // ext (object) 扩展信息
"convert": false, // forcePayCenter (boolean) 是否强制跳转支付中心
"reboot": { // t2IConfig (object) T2I配置
"padding": {}, // credits (object) 积分配置(key为任务类型,value为积分数)
"microscopic": [ // templates (array) 提示词模板列表
{
"circular": "", // img (string) 示例图片URL
"appointment": "" // prompt (string) 提示词内容
}
]
},
"rank": { // h5UrlConfig (object) H5 URL配置
"altitude": "", // url (string) H5页面URL
"coverage": "" // launchImgUrl (string) 启动图URL
},
"schedule": "", // payCenterUrl (string) 支付中心URL
"tag": 0, // freeBlurTimes (int) 免费去模糊次数
"frequency": "", // avatar (string) 头像URL
"supplement": "", // userName (string) 用户名
"enhance": false, // firstRegister (boolean) 是否首次注册
"symposium": "", // userId (string) 用户ID
"restore": false, // isVip (boolean) 是否VIP
"enqueue": [], // tags (array) 用户标签
"label": 0, // freeTimes (int) 免费次数
"disambiguate": "", // userToken (string) 用户登录token
"recognize": 0, // subScribeValidTime (int) 订阅有效时间戳
"wallet": 0 // status (int) 用户状态
}
}
归因上报
POST /v1/user/referrer | 鉴权:需要
请求头
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
stakeholder |
pkg |
应用包名(必填) |
comedy |
User_token |
用户登录token |
查询参数
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
sticker |
app |
应用标识(必填,iOS: HIOS / Android: HAndroid) |
symposium |
userId |
用户ID |
revenue |
type |
类型(必填, af(AF归因)/fb(FB归因,默认)/gg(google归因)/ios_adjust/android_adjust) |
stakeholder |
pkg |
应用包名(必填) |
请求体字段
| 字段(V2名) | 原始字段 | 类型 | 说明 |
|---|---|---|---|
link |
referer |
string | 归因信息,如 utm_source=googleplay |
stage |
deviceId |
string | 设备ID |
V2 完整请求体(填入业务值后 AES 加密,填入代理请求 b 参数 字段)
// referrer — 归因上报
// POST {baseUrl}/workshop/lounge/hub/playground
//
// 代理请求:
// {
// "humor_level": "FunyMeeAI", // appId 明文
// "comedy_style": "Ex8V5pMk8AAx0dZ2bCk95x3hgLH8TW7xc3MeiufRNxQ=", // AES(/v1/user/referrer)
// "avatar_mode": "Mhb3yNV4SnrfCK8EJAq9VQ==", // AES(POST)
// "filter_type": "<AES({stakeholder: 应用包名(必填), comedy: 用户登录token}) → Base64>", // AES(映射后的Header字段名构造JSON) → Base64
// "scene_id": "<AES({sticker: 应用标识(必填,iOS: HIOS / Android: HAndroid), symposium: 用户ID, revenue: 类型(必填, af(AF归因)/fb(FB归因,默认)/gg(google归因)/ios_adjust/android_adjust), stakeholder: 应用包名(必填)}) → Base64>", // AES(映射后的URL参数字段名构造JSON) → Base64
// "clip_duration": "<AES(V2请求体JSON)>", // AES(V2包装后的业务数据) → Base64
// "sample_rate": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "watermark_id": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "geo_radius": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "accuracy_m": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// }
//
// V2 请求体 — 填入业务值后 AES 加密,填入 clip_duration
{
"shell": 2,
"capsule": {
"envelope": {
"container": {
"link": "", // referer (string) 归因信息,如 utm_source=googleplay
"stage": "" // deviceId (string) 设备ID
}
}
},
"shimmer": "<随机4-8位字母数字,AES加密→Base64>",
"glimmer": "<随机4-8位字母数字,AES加密→Base64>",
"flicker": "<随机4-8位字母数字,AES加密→Base64>",
"sparkle": "<随机4-8位字母数字,AES加密→Base64>",
"rustle": "<随机4-8位字母数字,AES加密→Base64>",
"murmur": "<随机4-8位字母数字,AES加密→Base64>",
"whisper": "<随机4-8位字母数字,AES加密→Base64>",
"echo": "<随机4-8位字母数字,AES加密→Base64>"
}
响应体(解密后)
{
"sprint": "", // msg (string) 消息
"scene": 0, // code (int) 状态码,0=成功
"costume": { // data
"vote": "", // hint (string)
"revenue": "" // type (string)
}
}
获取App语言配置
GET /v1/config/app-language | 鉴权:需要
请求头
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
stakeholder |
pkg |
应用包名(必填) |
comedy |
User_token |
用户登录token |
查询参数
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
stakeholder |
pkg |
应用包名(必填) |
venture |
lang |
语言代码 |
V2 完整请求体(填入业务值后 AES 加密,填入代理请求 空 b 参数 字段)
// app_language — 获取App语言配置
// POST {baseUrl}/workshop/lounge/hub/playground
//
// 代理请求:
// {
// "humor_level": "FunyMeeAI", // appId 明文
// "comedy_style": "llvWqZObXf9L4Ni7w+J6Hi88SoHxIgt0aNCtC6OSIGk=", // AES(/v1/config/app-language)
// "avatar_mode": "7J8V5jVfCHKnEigVbbS08w==", // AES(GET)
// "filter_type": "<AES({stakeholder: 应用包名(必填), comedy: 用户登录token}) → Base64>", // AES(映射后的Header字段名构造JSON) → Base64
// "scene_id": "<AES({stakeholder: 应用包名(必填), venture: 语言代码}) → Base64>", // AES(映射后的URL参数字段名构造JSON) → Base64
// "clip_duration": "<AES(V2请求体JSON)>", // AES(V2包装后的业务数据) → Base64
// "sample_rate": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "watermark_id": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "geo_radius": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "accuracy_m": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// }
//
// 注意: 原始接口为 GET,走代理后统一 POST,仍需传 V2 请求体(业务字段为空)
// V2 请求体 — 填入业务值后 AES 加密,填入 clip_duration
{
"shell": 2,
"capsule": {
"envelope": {
"container": {
}
}
},
"shimmer": "<随机4-8位字母数字,AES加密→Base64>",
"glimmer": "<随机4-8位字母数字,AES加密→Base64>",
"flicker": "<随机4-8位字母数字,AES加密→Base64>",
"sparkle": "<随机4-8位字母数字,AES加密→Base64>",
"rustle": "<随机4-8位字母数字,AES加密→Base64>",
"murmur": "<随机4-8位字母数字,AES加密→Base64>",
"whisper": "<随机4-8位字母数字,AES加密→Base64>",
"echo": "<随机4-8位字母数字,AES加密→Base64>"
}
响应体(解密后)
{
"sprint": "", // msg (string) 消息
"scene": 0, // code (int) 状态码,0=成功
"costume": { // data
"edit": "" // config (string) 语言配置JSON
}
}
用户信息
需要登录态
获取用户账户信息
GET /v1/user/account | 鉴权:需要
请求头
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
stakeholder |
pkg |
应用包名(必填) |
comedy |
User_token |
用户登录token |
查询参数
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
sticker |
app |
应用标识(必填,iOS: HIOS / Android: HAndroid) |
symposium |
userId |
用户ID |
V2 完整请求体(填入业务值后 AES 加密,填入代理请求 空 b 参数 字段)
// account — 获取用户账户信息
// POST {baseUrl}/workshop/lounge/hub/playground
//
// 代理请求:
// {
// "humor_level": "FunyMeeAI", // appId 明文
// "comedy_style": "sMpVMOBtMbKmw+ovfLYAYHpN28WVH83mwh40owgUCrU=", // AES(/v1/user/account)
// "avatar_mode": "7J8V5jVfCHKnEigVbbS08w==", // AES(GET)
// "filter_type": "<AES({stakeholder: 应用包名(必填), comedy: 用户登录token}) → Base64>", // AES(映射后的Header字段名构造JSON) → Base64
// "scene_id": "<AES({sticker: 应用标识(必填,iOS: HIOS / Android: HAndroid), symposium: 用户ID}) → Base64>", // AES(映射后的URL参数字段名构造JSON) → Base64
// "clip_duration": "<AES(V2请求体JSON)>", // AES(V2包装后的业务数据) → Base64
// "sample_rate": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "watermark_id": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "geo_radius": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "accuracy_m": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// }
//
// 注意: 原始接口为 GET,走代理后统一 POST,仍需传 V2 请求体(业务字段为空)
// V2 请求体 — 填入业务值后 AES 加密,填入 clip_duration
{
"shell": 2,
"capsule": {
"envelope": {
"container": {
}
}
},
"shimmer": "<随机4-8位字母数字,AES加密→Base64>",
"glimmer": "<随机4-8位字母数字,AES加密→Base64>",
"flicker": "<随机4-8位字母数字,AES加密→Base64>",
"sparkle": "<随机4-8位字母数字,AES加密→Base64>",
"rustle": "<随机4-8位字母数字,AES加密→Base64>",
"murmur": "<随机4-8位字母数字,AES加密→Base64>",
"whisper": "<随机4-8位字母数字,AES加密→Base64>",
"echo": "<随机4-8位字母数字,AES加密→Base64>"
}
响应体(解密后)
{
"sprint": "", // msg (string) 消息
"scene": 0, // code (int) 状态码,0=成功
"costume": { // data
"download": "", // extConfig (string) 客户端界面配置下发
"revenue": "", // type (string) 类型
"stylize": { // appFbConfig (object) 应用FB配置
"glow": "", // fbClientId (string) Facebook应用ID
"blur": "" // fbClientToken (string) Facebook客户端Token
},
"reauthenticate": "", // usign (string) 用户签名
"publish": "", // countryCode (string) 国家代码
"swap": "", // creditsRecordUrl (string) 积分记录URL
"chart": "", // tgId (string) Telegram ID
"export": 0, // credit (int) 积分余额
"spend": "", // tgName (string) Telegram 用户名
"draft": "", // email (string) 邮箱
"profile": {}, // ext (object) 扩展信息
"convert": false, // forcePayCenter (boolean) 是否强制跳转支付中心
"reboot": { // t2IConfig (object) T2I配置
"padding": {}, // credits (object) 积分配置(key为任务类型,value为积分数)
"microscopic": [ // templates (array) 提示词模板列表
{
"circular": "", // img (string) 示例图片URL
"appointment": "" // prompt (string) 提示词内容
}
]
},
"rank": { // h5UrlConfig (object) H5 URL配置
"altitude": "", // url (string) H5页面URL
"coverage": "" // launchImgUrl (string) 启动图URL
},
"schedule": "", // payCenterUrl (string) 支付中心URL
"tag": 0, // freeBlurTimes (int) 免费去模糊次数
"frequency": "", // avatar (string) 头像URL
"supplement": "", // userName (string) 用户名
"enhance": false, // firstRegister (boolean) 是否首次注册
"symposium": "", // userId (string) 用户ID
"restore": false, // isVip (boolean) 是否VIP
"enqueue": [], // tags (array) 用户标签
"label": 0, // freeTimes (int) 免费次数
"disambiguate": "", // userToken (string) 用户登录token
"recognize": 0, // subScribeValidTime (int) 订阅有效时间戳
"wallet": 0 // status (int) 用户状态
}
}
获取用户通用信息
GET /v1/user/common_info | 鉴权:需要
请求头
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
stakeholder |
pkg |
应用包名(必填) |
comedy |
User_token |
用户登录token |
查询参数
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
sticker |
app |
应用标识(必填,iOS: HIOS / Android: HAndroid) |
filter |
client |
客户端标识 |
symposium |
userId |
用户ID |
satire |
ch |
渠道号 |
socket |
inviteBy |
邀请人 |
stage |
deviceId |
设备ID |
template |
clientId |
客户端ID |
stakeholder |
pkg |
应用包名(必填) |
V2 完整请求体(填入业务值后 AES 加密,填入代理请求 空 b 参数 字段)
// common_info — 获取用户通用信息
// POST {baseUrl}/workshop/lounge/hub/playground
//
// 代理请求:
// {
// "humor_level": "FunyMeeAI", // appId 明文
// "comedy_style": "9PTlQdZS4YcQpCMav68kBkwwLZRZHABr3W3WHw7bb54=", // AES(/v1/user/common_info)
// "avatar_mode": "7J8V5jVfCHKnEigVbbS08w==", // AES(GET)
// "filter_type": "<AES({stakeholder: 应用包名(必填), comedy: 用户登录token}) → Base64>", // AES(映射后的Header字段名构造JSON) → Base64
// "scene_id": "<AES({sticker: 应用标识(必填,iOS: HIOS / Android: HAndroid), filter: 客户端标识, symposium: 用户ID, satire: 渠道号, socket: 邀请人, stage: 设备ID, template: 客户端ID, stakeholder: 应用包名(必填)}) → Base64>", // AES(映射后的URL参数字段名构造JSON) → Base64
// "clip_duration": "<AES(V2请求体JSON)>", // AES(V2包装后的业务数据) → Base64
// "sample_rate": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "watermark_id": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "geo_radius": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "accuracy_m": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// }
//
// 注意: 原始接口为 GET,走代理后统一 POST,仍需传 V2 请求体(业务字段为空)
// V2 请求体 — 填入业务值后 AES 加密,填入 clip_duration
{
"shell": 2,
"capsule": {
"envelope": {
"container": {
}
}
},
"shimmer": "<随机4-8位字母数字,AES加密→Base64>",
"glimmer": "<随机4-8位字母数字,AES加密→Base64>",
"flicker": "<随机4-8位字母数字,AES加密→Base64>",
"sparkle": "<随机4-8位字母数字,AES加密→Base64>",
"rustle": "<随机4-8位字母数字,AES加密→Base64>",
"murmur": "<随机4-8位字母数字,AES加密→Base64>",
"whisper": "<随机4-8位字母数字,AES加密→Base64>",
"echo": "<随机4-8位字母数字,AES加密→Base64>"
}
响应体(解密后)
{
"sprint": "", // msg (string) 消息
"scene": 0, // code (int) 状态码,0=成功
"costume": { // data
"download": "", // extConfig (string) 客户端界面配置下发
"revenue": "", // type (string) 类型
"stylize": { // appFbConfig (object) 应用FB配置
"glow": "", // fbClientId (string) Facebook应用ID
"blur": "" // fbClientToken (string) Facebook客户端Token
},
"reauthenticate": "", // usign (string) 用户签名
"publish": "", // countryCode (string) 国家代码
"swap": "", // creditsRecordUrl (string) 积分记录URL
"chart": "", // tgId (string) Telegram ID
"export": 0, // credit (int) 积分余额
"spend": "", // tgName (string) Telegram 用户名
"draft": "", // email (string) 邮箱
"profile": {}, // ext (object) 扩展信息
"convert": false, // forcePayCenter (boolean) 是否强制跳转支付中心
"reboot": { // t2IConfig (object) T2I配置
"padding": {}, // credits (object) 积分配置(key为任务类型,value为积分数)
"microscopic": [ // templates (array) 提示词模板列表
{
"circular": "", // img (string) 示例图片URL
"appointment": "" // prompt (string) 提示词内容
}
]
},
"rank": { // h5UrlConfig (object) H5 URL配置
"altitude": "", // url (string) H5页面URL
"coverage": "" // launchImgUrl (string) 启动图URL
},
"schedule": "", // payCenterUrl (string) 支付中心URL
"tag": 0, // freeBlurTimes (int) 免费去模糊次数
"frequency": "", // avatar (string) 头像URL
"supplement": "", // userName (string) 用户名
"enhance": false, // firstRegister (boolean) 是否首次注册
"symposium": "", // userId (string) 用户ID
"restore": false, // isVip (boolean) 是否VIP
"enqueue": [], // tags (array) 用户标签
"label": 0, // freeTimes (int) 免费次数
"disambiguate": "", // userToken (string) 用户登录token
"recognize": 0, // subScribeValidTime (int) 订阅有效时间戳
"wallet": 0 // status (int) 用户状态
}
}
获取积分页面信息
GET /v1/user/credits-page | 鉴权:需要
请求头
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
stakeholder |
pkg |
应用包名(必填) |
comedy |
User_token |
用户登录token |
查询参数
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
session |
page |
页码 (默认值: "1") |
seminar |
size |
每页条数 (默认值: "10") |
revenue |
type |
积分类型 (默认值: "1") |
V2 完整请求体(填入业务值后 AES 加密,填入代理请求 空 b 参数 字段)
// credits_page — 获取积分页面信息
// POST {baseUrl}/workshop/lounge/hub/playground
//
// 代理请求:
// {
// "humor_level": "FunyMeeAI", // appId 明文
// "comedy_style": "549Xw0yFnJjZHKSBVllqWCG6fcbWmpoxxu/64gX4aO0=", // AES(/v1/user/credits-page)
// "avatar_mode": "7J8V5jVfCHKnEigVbbS08w==", // AES(GET)
// "filter_type": "<AES({stakeholder: 应用包名(必填), comedy: 用户登录token}) → Base64>", // AES(映射后的Header字段名构造JSON) → Base64
// "scene_id": "<AES({session: 1, seminar: 10, revenue: 1}) → Base64>", // AES(映射后的URL参数字段名构造JSON) → Base64
// "clip_duration": "<AES(V2请求体JSON)>", // AES(V2包装后的业务数据) → Base64
// "sample_rate": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "watermark_id": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "geo_radius": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "accuracy_m": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// }
//
// 注意: 原始接口为 GET,走代理后统一 POST,仍需传 V2 请求体(业务字段为空)
// V2 请求体 — 填入业务值后 AES 加密,填入 clip_duration
{
"shell": 2,
"capsule": {
"envelope": {
"container": {
}
}
},
"shimmer": "<随机4-8位字母数字,AES加密→Base64>",
"glimmer": "<随机4-8位字母数字,AES加密→Base64>",
"flicker": "<随机4-8位字母数字,AES加密→Base64>",
"sparkle": "<随机4-8位字母数字,AES加密→Base64>",
"rustle": "<随机4-8位字母数字,AES加密→Base64>",
"murmur": "<随机4-8位字母数字,AES加密→Base64>",
"whisper": "<随机4-8位字母数字,AES加密→Base64>",
"echo": "<随机4-8位字母数字,AES加密→Base64>"
}
响应体(解密后)
{
"sprint": "", // msg (string) 消息
"scene": 0, // code (int) 状态码,0=成功
"costume": { // data
"insert": 0, // total (int) 总条数
"blend": 0, // current (int) 当前页
"loop": 0, // pages (int) 总页数
"seminar": 0, // size (int) 每页大小
"create": [ // records (array) 积分记录列表
{
"keepalive": "", // subBusinessType (string) 子业务类型
"padding": 0, // credits (int) 积分数
"typography": 0, // createTime (long) 创建时间
"angle": "", // businessId (string) 业务ID
"revenue": 0, // type (int) 类型,1=增加,2=扣除
"offset": "" // businessType (string) 业务类型
}
]
}
}
获取用户支付记录
GET /v1/user/payments | 鉴权:需要
请求头
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
stakeholder |
pkg |
应用包名(必填) |
comedy |
User_token |
用户登录token |
查询参数
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
sticker |
app |
应用标识(必填,iOS: HIOS / Android: HAndroid) |
symposium |
userId |
用户ID |
V2 完整请求体(填入业务值后 AES 加密,填入代理请求 空 b 参数 字段)
// payments — 获取用户支付记录
// POST {baseUrl}/workshop/lounge/hub/playground
//
// 代理请求:
// {
// "humor_level": "FunyMeeAI", // appId 明文
// "comedy_style": "MOxwcmOt+UPU+kiKngEkzzWKd2Q1pq8VD215J8A3r0I=", // AES(/v1/user/payments)
// "avatar_mode": "7J8V5jVfCHKnEigVbbS08w==", // AES(GET)
// "filter_type": "<AES({stakeholder: 应用包名(必填), comedy: 用户登录token}) → Base64>", // AES(映射后的Header字段名构造JSON) → Base64
// "scene_id": "<AES({sticker: 应用标识(必填,iOS: HIOS / Android: HAndroid), symposium: 用户ID}) → Base64>", // AES(映射后的URL参数字段名构造JSON) → Base64
// "clip_duration": "<AES(V2请求体JSON)>", // AES(V2包装后的业务数据) → Base64
// "sample_rate": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "watermark_id": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "geo_radius": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "accuracy_m": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// }
//
// 注意: 原始接口为 GET,走代理后统一 POST,仍需传 V2 请求体(业务字段为空)
// V2 请求体 — 填入业务值后 AES 加密,填入 clip_duration
{
"shell": 2,
"capsule": {
"envelope": {
"container": {
}
}
},
"shimmer": "<随机4-8位字母数字,AES加密→Base64>",
"glimmer": "<随机4-8位字母数字,AES加密→Base64>",
"flicker": "<随机4-8位字母数字,AES加密→Base64>",
"sparkle": "<随机4-8位字母数字,AES加密→Base64>",
"rustle": "<随机4-8位字母数字,AES加密→Base64>",
"murmur": "<随机4-8位字母数字,AES加密→Base64>",
"whisper": "<随机4-8位字母数字,AES加密→Base64>",
"echo": "<随机4-8位字母数字,AES加密→Base64>"
}
响应体(解密后)
{
"sprint": "", // msg (string) 消息
"scene": 0, // code (int) 状态码,0=成功
"costume": [ // data (array) 支付记录列表
{
"cartoon": 0, // amount (int) 支付金额
"channel": 0, // payTime (int) 支付时间戳
"layer": "", // payMethod (string) 支付方式
"mascot": "", // currency (string) 货币类型
"depth": "" // payId (string) 支付ID
}
]
}
获取未读消息数
GET /v1/user/unread-message-count | 鉴权:需要
请求头
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
stakeholder |
pkg |
应用包名(必填) |
comedy |
User_token |
用户登录token |
查询参数
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
standard |
types |
消息类型列表 |
V2 完整请求体(填入业务值后 AES 加密,填入代理请求 空 b 参数 字段)
// unread_message_count — 获取未读消息数
// POST {baseUrl}/workshop/lounge/hub/playground
//
// 代理请求:
// {
// "humor_level": "FunyMeeAI", // appId 明文
// "comedy_style": "Yyna+fms1qjL2Q38uMiT4E73X9T2Dkg+r7Nm4wt1RtU=", // AES(/v1/user/unread-message-count)
// "avatar_mode": "7J8V5jVfCHKnEigVbbS08w==", // AES(GET)
// "filter_type": "<AES({stakeholder: 应用包名(必填), comedy: 用户登录token}) → Base64>", // AES(映射后的Header字段名构造JSON) → Base64
// "scene_id": "<AES({standard: 消息类型列表}) → Base64>", // AES(映射后的URL参数字段名构造JSON) → Base64
// "clip_duration": "<AES(V2请求体JSON)>", // AES(V2包装后的业务数据) → Base64
// "sample_rate": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "watermark_id": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "geo_radius": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "accuracy_m": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// }
//
// 注意: 原始接口为 GET,走代理后统一 POST,仍需传 V2 请求体(业务字段为空)
// V2 请求体 — 填入业务值后 AES 加密,填入 clip_duration
{
"shell": 2,
"capsule": {
"envelope": {
"container": {
}
}
},
"shimmer": "<随机4-8位字母数字,AES加密→Base64>",
"glimmer": "<随机4-8位字母数字,AES加密→Base64>",
"flicker": "<随机4-8位字母数字,AES加密→Base64>",
"sparkle": "<随机4-8位字母数字,AES加密→Base64>",
"rustle": "<随机4-8位字母数字,AES加密→Base64>",
"murmur": "<随机4-8位字母数字,AES加密→Base64>",
"whisper": "<随机4-8位字母数字,AES加密→Base64>",
"echo": "<随机4-8位字母数字,AES加密→Base64>"
}
响应体(解密后)
{
"sprint": "", // msg (string) 消息
"scene": 0, // code (int) 状态码,0=成功
"costume": { // data
"weigh": [ // unreadCountList (array) 各类型未读数列表
{
"bubble": 0, // count (int) 未读数
"revenue": "" // type (string) 消息类型
}
],
"promote": 0, // totalUnreadCount (int) 总未读消息数
"follow": 0 // lastUpdateTime (int) 最后更新时间戳
}
}
注销账户
GET /v1/user/delete | 鉴权:需要
请求头
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
stakeholder |
pkg |
应用包名(必填) |
comedy |
User_token |
用户登录token |
查询参数
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
sticker |
app |
应用标识(必填,iOS: HIOS / Android: HAndroid) |
symposium |
userId |
用户ID |
V2 完整请求体(填入业务值后 AES 加密,填入代理请求 空 b 参数 字段)
// delete — 注销账户
// POST {baseUrl}/workshop/lounge/hub/playground
//
// 代理请求:
// {
// "humor_level": "FunyMeeAI", // appId 明文
// "comedy_style": "B6taFaTaR9c0isGbC2L3/g==", // AES(/v1/user/delete)
// "avatar_mode": "7J8V5jVfCHKnEigVbbS08w==", // AES(GET)
// "filter_type": "<AES({stakeholder: 应用包名(必填), comedy: 用户登录token}) → Base64>", // AES(映射后的Header字段名构造JSON) → Base64
// "scene_id": "<AES({sticker: 应用标识(必填,iOS: HIOS / Android: HAndroid), symposium: 用户ID}) → Base64>", // AES(映射后的URL参数字段名构造JSON) → Base64
// "clip_duration": "<AES(V2请求体JSON)>", // AES(V2包装后的业务数据) → Base64
// "sample_rate": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "watermark_id": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "geo_radius": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "accuracy_m": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// }
//
// 注意: 原始接口为 GET,走代理后统一 POST,仍需传 V2 请求体(业务字段为空)
// V2 请求体 — 填入业务值后 AES 加密,填入 clip_duration
{
"shell": 2,
"capsule": {
"envelope": {
"container": {
}
}
},
"shimmer": "<随机4-8位字母数字,AES加密→Base64>",
"glimmer": "<随机4-8位字母数字,AES加密→Base64>",
"flicker": "<随机4-8位字母数字,AES加密→Base64>",
"sparkle": "<随机4-8位字母数字,AES加密→Base64>",
"rustle": "<随机4-8位字母数字,AES加密→Base64>",
"murmur": "<随机4-8位字母数字,AES加密→Base64>",
"whisper": "<随机4-8位字母数字,AES加密→Base64>",
"echo": "<随机4-8位字母数字,AES加密→Base64>"
}
响应体(解密后)
{
"sprint": "", // msg (string) 消息
"scene": 0, // code (int) 状态码,0=成功
"costume": { // data
"vote": "", // hint (string)
"revenue": "" // type (string)
}
}
图片 & 视频任务
核心 AI 功能,需要登录态
创建生图任务
POST /v1/image/create-task | 鉴权:需要
请求头
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
stakeholder |
pkg |
应用包名(必填) |
comedy |
User_token |
用户登录token |
查询参数
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
symposium |
userId |
用户ID |
请求体字段
| 字段(V2名) | 原始字段 | 类型 | 说明 |
|---|---|---|---|
profile |
ext |
string | 扩展参数 |
vibe |
enable_music |
bool | 是否使用系统指定的背景声音,false是无声音。默认是true有声音 |
liaison |
taskType |
string | 任务类型 |
seminar |
size |
string | 输出尺寸,如 480p |
itinerary |
templateName |
string | 模板名称,BananaTask任务不传templateName |
lease |
srcImg2 |
string | 源图片2的文件路径 |
consulate |
srcImg1Url |
string | 源图片1的URL |
team |
needopt |
boolean | 是否优化,通过配置控制 (固定值: false) |
crew |
srcImg1 |
string | base64图片1上传,兼容旧app,新app使用srcImg1Url |
glossary |
srcImg2Url |
string | 源图片2的URL |
appointment |
prompt |
string | 文本提示词 |
V2 完整请求体(填入业务值后 AES 加密,填入代理请求 b 参数 字段)
// create_task — 创建生图任务
// POST {baseUrl}/workshop/lounge/hub/playground
//
// 代理请求:
// {
// "humor_level": "FunyMeeAI", // appId 明文
// "comedy_style": "SDyVz00ZABKCNQYjrh887/V1kPmVJ5gvIddXMpU2j6Y=", // AES(/v1/image/create-task)
// "avatar_mode": "Mhb3yNV4SnrfCK8EJAq9VQ==", // AES(POST)
// "filter_type": "<AES({stakeholder: 应用包名(必填), comedy: 用户登录token}) → Base64>", // AES(映射后的Header字段名构造JSON) → Base64
// "scene_id": "<AES({symposium: 用户ID}) → Base64>", // AES(映射后的URL参数字段名构造JSON) → Base64
// "clip_duration": "<AES(V2请求体JSON)>", // AES(V2包装后的业务数据) → Base64
// "sample_rate": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "watermark_id": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "geo_radius": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "accuracy_m": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// }
//
// V2 请求体 — 填入业务值后 AES 加密,填入 clip_duration
{
"shell": 2,
"capsule": {
"envelope": {
"container": {
"profile": "", // ext (string) 扩展参数
"vibe": "", // enable_music (bool) 是否使用系统指定的背景声音,false是无声音。默认是true有声音
"liaison": "", // taskType (string) 任务类型
"seminar": "", // size (string) 输出尺寸,如 480p
"itinerary": "", // templateName (string) 模板名称,BananaTask任务不传templateName
"lease": "", // srcImg2 (string) 源图片2的文件路径
"consulate": "", // srcImg1Url (string) 源图片1的URL
"team": false, // 固定传参
"crew": "", // srcImg1 (string) base64图片1上传,兼容旧app,新app使用srcImg1Url
"glossary": "", // srcImg2Url (string) 源图片2的URL
"appointment": "" // prompt (string) 文本提示词
}
}
},
"shimmer": "<随机4-8位字母数字,AES加密→Base64>",
"glimmer": "<随机4-8位字母数字,AES加密→Base64>",
"flicker": "<随机4-8位字母数字,AES加密→Base64>",
"sparkle": "<随机4-8位字母数字,AES加密→Base64>",
"rustle": "<随机4-8位字母数字,AES加密→Base64>",
"murmur": "<随机4-8位字母数字,AES加密→Base64>",
"whisper": "<随机4-8位字母数字,AES加密→Base64>",
"echo": "<随机4-8位字母数字,AES加密→Base64>"
}
响应体(解密后)
{
"sprint": "", // msg (string) 消息
"scene": 0, // code (int) 状态码,0=成功
"costume": { // data
"bitrate": 0, // state (int) 任务状态:1=队列中 | 2=处理中 | 3=完成 | 4=超时 | 5=错误 | 6=中止
"exponential": 0 // taskId (int) 任务ID
}
}
查询图片生成进度
GET /v1/image/progress | 鉴权:需要
请求头
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
stakeholder |
pkg |
应用包名(必填) |
comedy |
User_token |
用户登录token |
查询参数
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
sticker |
app |
应用标识(必填,iOS: HIOS / Android: HAndroid) |
symposium |
userId |
用户ID |
exponential |
taskId |
任务ID |
V2 完整请求体(填入业务值后 AES 加密,填入代理请求 空 b 参数 字段)
// progress — 查询图片生成进度
// POST {baseUrl}/workshop/lounge/hub/playground
//
// 代理请求:
// {
// "humor_level": "FunyMeeAI", // appId 明文
// "comedy_style": "ZRQZUzSKdcG3PhD400/WE/Wv9d6SINzvPKuntB5cIdQ=", // AES(/v1/image/progress)
// "avatar_mode": "7J8V5jVfCHKnEigVbbS08w==", // AES(GET)
// "filter_type": "<AES({stakeholder: 应用包名(必填), comedy: 用户登录token}) → Base64>", // AES(映射后的Header字段名构造JSON) → Base64
// "scene_id": "<AES({sticker: 应用标识(必填,iOS: HIOS / Android: HAndroid), symposium: 用户ID, exponential: 任务ID}) → Base64>", // AES(映射后的URL参数字段名构造JSON) → Base64
// "clip_duration": "<AES(V2请求体JSON)>", // AES(V2包装后的业务数据) → Base64
// "sample_rate": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "watermark_id": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "geo_radius": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "accuracy_m": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// }
//
// 注意: 原始接口为 GET,走代理后统一 POST,仍需传 V2 请求体(业务字段为空)
// V2 请求体 — 填入业务值后 AES 加密,填入 clip_duration
{
"shell": 2,
"capsule": {
"envelope": {
"container": {
}
}
},
"shimmer": "<随机4-8位字母数字,AES加密→Base64>",
"glimmer": "<随机4-8位字母数字,AES加密→Base64>",
"flicker": "<随机4-8位字母数字,AES加密→Base64>",
"sparkle": "<随机4-8位字母数字,AES加密→Base64>",
"rustle": "<随机4-8位字母数字,AES加密→Base64>",
"murmur": "<随机4-8位字母数字,AES加密→Base64>",
"whisper": "<随机4-8位字母数字,AES加密→Base64>",
"echo": "<随机4-8位字母数字,AES加密→Base64>"
}
响应体(解密后)
{
"sprint": "", // msg (string) 消息
"scene": 0, // code (int) 状态码,0=成功
"costume": { // data
"elastic": [ // imageInfos (array) 图片信息列表
{
"boost": "", // imgUrl (string) 图片URL
"archive": false, // isBlur (boolean) 是否模糊
"registration": 0, // imageId (long) 图片ID
"consortium": "", // resolution (string) 分辨率
"compressive": 0 // imgType (int) 图片类型,1=图片,2=视频
}
],
"origin": 0, // progress (int) 进度
"bitrate": 0, // state (int) 任务状态:1=队列中 | 2=处理中 | 3=完成 | 4=超时 | 5=错误 | 6=中止
"revenue": 0, // type (int) 任务类型
"acuity": 0, // waitTime (int) 等待时间
"exponential": 0, // taskId (int) 任务ID
"endpoint": 0 // queueCnt (int) 队列数量
}
}
获取我的任务列表
GET /v1/image/my-tasks | 鉴权:需要
请求头
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
stakeholder |
pkg |
应用包名(必填) |
comedy |
User_token |
用户登录token |
查询参数
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
sticker |
app |
应用标识(必填,iOS: HIOS / Android: HAndroid) |
session |
page |
页码 |
seminar |
size |
每页数量 |
synopsis |
taskTypes |
任务类型列表 (默认值: "1,3,4") |
V2 完整请求体(填入业务值后 AES 加密,填入代理请求 空 b 参数 字段)
// my_tasks — 获取我的任务列表
// POST {baseUrl}/workshop/lounge/hub/playground
//
// 代理请求:
// {
// "humor_level": "FunyMeeAI", // appId 明文
// "comedy_style": "ZILAhMARxTi+4sbdBFCU+ISDUXbVyViWT+QZZk58iIQ=", // AES(/v1/image/my-tasks)
// "avatar_mode": "7J8V5jVfCHKnEigVbbS08w==", // AES(GET)
// "filter_type": "<AES({stakeholder: 应用包名(必填), comedy: 用户登录token}) → Base64>", // AES(映射后的Header字段名构造JSON) → Base64
// "scene_id": "<AES({sticker: 应用标识(必填,iOS: HIOS / Android: HAndroid), session: 页码, seminar: 每页数量, synopsis: 1,3,4}) → Base64>", // AES(映射后的URL参数字段名构造JSON) → Base64
// "clip_duration": "<AES(V2请求体JSON)>", // AES(V2包装后的业务数据) → Base64
// "sample_rate": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "watermark_id": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "geo_radius": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "accuracy_m": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// }
//
// 注意: 原始接口为 GET,走代理后统一 POST,仍需传 V2 请求体(业务字段为空)
// V2 请求体 — 填入业务值后 AES 加密,填入 clip_duration
{
"shell": 2,
"capsule": {
"envelope": {
"container": {
}
}
},
"shimmer": "<随机4-8位字母数字,AES加密→Base64>",
"glimmer": "<随机4-8位字母数字,AES加密→Base64>",
"flicker": "<随机4-8位字母数字,AES加密→Base64>",
"sparkle": "<随机4-8位字母数字,AES加密→Base64>",
"rustle": "<随机4-8位字母数字,AES加密→Base64>",
"murmur": "<随机4-8位字母数字,AES加密→Base64>",
"whisper": "<随机4-8位字母数字,AES加密→Base64>",
"echo": "<随机4-8位字母数字,AES加密→Base64>"
}
响应体(解密后)
{
"sprint": "", // msg (string) 消息
"scene": 0, // code (int) 状态码,0=成功
"costume": { // data
"insert": 0, // total (int) 总数
"blend": 0, // current (int) 当前页
"seminar": 0, // size (int) 每页大小
"create": [ // records (array) 记录列表
{
"liaison": 0, // taskType (int) 任务类型
"typography": 0, // createTime (long) 创建时间
"bitrate": 0, // state (int) 任务状态:1=队列中 | 2=处理中 | 3=完成 | 4=超时 | 5=错误 | 6=中止
"exponential": 0, // taskId (long) 任务ID
"easing": [ // imgList (array) 图片列表
{
"boost": "", // imgUrl (string) 图片URL
"consortium": "", // resolution (string) 分辨率
"compressive": 0 // imgType (int) 图片类型,1=图片,2=视频
}
]
}
],
"rate": false // hasNext (boolean) 是否有下一页
}
}
删除任务
POST /v1/image/delete-task | 鉴权:需要
请求头
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
stakeholder |
pkg |
应用包名(必填) |
comedy |
User_token |
用户登录token |
请求体字段
| 字段(V2名) | 原始字段 | 类型 | 说明 |
|---|---|---|---|
exponential |
taskId |
int | 任务ID |
V2 完整请求体(填入业务值后 AES 加密,填入代理请求 b 参数 字段)
// delete_task — 删除任务
// POST {baseUrl}/workshop/lounge/hub/playground
//
// 代理请求:
// {
// "humor_level": "FunyMeeAI", // appId 明文
// "comedy_style": "D+BRCorCBCTJCXvZvxxfaPV1kPmVJ5gvIddXMpU2j6Y=", // AES(/v1/image/delete-task)
// "avatar_mode": "Mhb3yNV4SnrfCK8EJAq9VQ==", // AES(POST)
// "filter_type": "<AES({stakeholder: 应用包名(必填), comedy: 用户登录token}) → Base64>", // AES(映射后的Header字段名构造JSON) → Base64
// "scene_id": "<AES(无) → Base64>", // AES(映射后的URL参数字段名构造JSON) → Base64
// "clip_duration": "<AES(V2请求体JSON)>", // AES(V2包装后的业务数据) → Base64
// "sample_rate": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "watermark_id": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "geo_radius": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "accuracy_m": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// }
//
// V2 请求体 — 填入业务值后 AES 加密,填入 clip_duration
{
"shell": 2,
"capsule": {
"envelope": {
"container": {
"exponential": 0 // taskId (int) 任务ID
}
}
},
"shimmer": "<随机4-8位字母数字,AES加密→Base64>",
"glimmer": "<随机4-8位字母数字,AES加密→Base64>",
"flicker": "<随机4-8位字母数字,AES加密→Base64>",
"sparkle": "<随机4-8位字母数字,AES加密→Base64>",
"rustle": "<随机4-8位字母数字,AES加密→Base64>",
"murmur": "<随机4-8位字母数字,AES加密→Base64>",
"whisper": "<随机4-8位字母数字,AES加密→Base64>",
"echo": "<随机4-8位字母数字,AES加密→Base64>"
}
响应体(解密后)
{
"sprint": "", // msg (string) 消息
"scene": 0, // code (int) 状态码,0=成功
"costume": { // data
"vote": "", // hint (string)
"revenue": "" // type (string)
}
}
获取我的作品
GET /v1/image/mycreation | 鉴权:需要
请求头
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
stakeholder |
pkg |
应用包名(必填) |
comedy |
User_token |
用户登录token |
查询参数
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
sticker |
app |
应用标识(必填,iOS: HIOS / Android: HAndroid) |
symposium |
userId |
用户ID |
session |
page |
页码 |
seminar |
size |
每页数量 |
liaison |
taskType |
任务类型 |
V2 完整请求体(填入业务值后 AES 加密,填入代理请求 空 b 参数 字段)
// mycreation — 获取我的作品
// POST {baseUrl}/workshop/lounge/hub/playground
//
// 代理请求:
// {
// "humor_level": "FunyMeeAI", // appId 明文
// "comedy_style": "E40btz3+WcbtRdUj9vNDWF4BsfnAmInCBnR9Rsj1L0A=", // AES(/v1/image/mycreation)
// "avatar_mode": "7J8V5jVfCHKnEigVbbS08w==", // AES(GET)
// "filter_type": "<AES({stakeholder: 应用包名(必填), comedy: 用户登录token}) → Base64>", // AES(映射后的Header字段名构造JSON) → Base64
// "scene_id": "<AES({sticker: 应用标识(必填,iOS: HIOS / Android: HAndroid), symposium: 用户ID, session: 页码, seminar: 每页数量, liaison: 任务类型}) → Base64>", // AES(映射后的URL参数字段名构造JSON) → Base64
// "clip_duration": "<AES(V2请求体JSON)>", // AES(V2包装后的业务数据) → Base64
// "sample_rate": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "watermark_id": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "geo_radius": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "accuracy_m": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// }
//
// 注意: 原始接口为 GET,走代理后统一 POST,仍需传 V2 请求体(业务字段为空)
// V2 请求体 — 填入业务值后 AES 加密,填入 clip_duration
{
"shell": 2,
"capsule": {
"envelope": {
"container": {
}
}
},
"shimmer": "<随机4-8位字母数字,AES加密→Base64>",
"glimmer": "<随机4-8位字母数字,AES加密→Base64>",
"flicker": "<随机4-8位字母数字,AES加密→Base64>",
"sparkle": "<随机4-8位字母数字,AES加密→Base64>",
"rustle": "<随机4-8位字母数字,AES加密→Base64>",
"murmur": "<随机4-8位字母数字,AES加密→Base64>",
"whisper": "<随机4-8位字母数字,AES加密→Base64>",
"echo": "<随机4-8位字母数字,AES加密→Base64>"
}
响应体(解密后)
{
"sprint": "", // msg (string) 消息
"scene": 0, // code (int) 状态码,0=成功
"costume": { // data
"insert": 0, // total (int) 总数
"blend": 0, // current (int) 当前页
"seminar": 0, // size (int) 每页大小
"reface": false, // optimizeCountSql (boolean) 是否优化count SQL
"create": [ // records (array) 记录列表
{
"boost": "", // imgUrl (string) 图片URL
"archive": false, // isBlur (boolean) 是否模糊
"liaison": 0, // taskType (int) 任务类型
"registration": 0, // imageId (long) 图片ID
"render": "", // appraise (string) 评价
"consortium": "", // resolution (string) 分辨率
"appointment": "", // prompt (string) 提示词
"compressive": 0 // imgType (int) 图片类型
}
],
"like": 0, // maxLimit (int) 最大限制
"transmit": false, // searchCount (boolean) 是否搜索count
"voice": false, // optimizeJoinOfCountSql (boolean) 是否优化join count SQL
"sync": [], // orders (array) 排序
"share": "" // countId (string) count ID
}
}
获取预签名上传URL
POST /v1/image/upload-presigned-url | 鉴权:需要
请求头
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
stakeholder |
pkg |
应用包名(必填) |
comedy |
User_token |
用户登录token |
请求体字段
| 字段(V2名) | 原始字段 | 类型 | 说明 |
|---|---|---|---|
trending |
fileName1 |
string | 文件名1 |
spotlight |
fileName2 |
string | 文件名2 |
comic |
contentType |
string | 文件MIME类型 |
pose |
expectedSize |
int | 预期文件大小 |
V2 完整请求体(填入业务值后 AES 加密,填入代理请求 b 参数 字段)
// upload_presigned_url — 获取预签名上传URL
// POST {baseUrl}/workshop/lounge/hub/playground
//
// 代理请求:
// {
// "humor_level": "FunyMeeAI", // appId 明文
// "comedy_style": "nCZSliCSoOFfs20fuGXBXKqWFuCyb4Tu0M4E3+Eisno=", // AES(/v1/image/upload-presigned-url)
// "avatar_mode": "Mhb3yNV4SnrfCK8EJAq9VQ==", // AES(POST)
// "filter_type": "<AES({stakeholder: 应用包名(必填), comedy: 用户登录token}) → Base64>", // AES(映射后的Header字段名构造JSON) → Base64
// "scene_id": "<AES(无) → Base64>", // AES(映射后的URL参数字段名构造JSON) → Base64
// "clip_duration": "<AES(V2请求体JSON)>", // AES(V2包装后的业务数据) → Base64
// "sample_rate": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "watermark_id": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "geo_radius": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "accuracy_m": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// }
//
// V2 请求体 — 填入业务值后 AES 加密,填入 clip_duration
{
"shell": 2,
"capsule": {
"envelope": {
"container": {
"trending": "", // fileName1 (string) 文件名1
"spotlight": "", // fileName2 (string) 文件名2
"comic": "", // contentType (string) 文件MIME类型
"pose": 0 // expectedSize (int) 预期文件大小
}
}
},
"shimmer": "<随机4-8位字母数字,AES加密→Base64>",
"glimmer": "<随机4-8位字母数字,AES加密→Base64>",
"flicker": "<随机4-8位字母数字,AES加密→Base64>",
"sparkle": "<随机4-8位字母数字,AES加密→Base64>",
"rustle": "<随机4-8位字母数字,AES加密→Base64>",
"murmur": "<随机4-8位字母数字,AES加密→Base64>",
"whisper": "<随机4-8位字母数字,AES加密→Base64>",
"echo": "<随机4-8位字母数字,AES加密→Base64>"
}
响应体(解密后)
{
"sprint": "", // msg (string) 消息
"scene": 0, // code (int) 状态码,0=成功
"costume": { // data
"harden": "", // uploadUrl1 (string) 上传URL 1
"upload": 0, // expiresIn (int) 过期时间(秒)
"tokenize": {}, // requiredHeaders (object) 上传所需请求头
"complete": "", // uploadUrl2 (string) 上传URL 2
"transform": "", // filePath2 (string) 文件路径 2
"generate": "" // filePath1 (string) 文件路径 1
}
}
创建文生图任务
POST /v1/image/txt2img_create | 鉴权:需要
请求头
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
stakeholder |
pkg |
应用包名(必填) |
comedy |
User_token |
用户登录token |
查询参数
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
sticker |
app |
应用标识(必填,iOS: HIOS / Android: HAndroid) |
satire |
ch |
渠道号 |
symposium |
userId |
用户ID |
请求体字段
| 字段(V2名) | 原始字段 | 类型 | 说明 |
|---|---|---|---|
indicator |
imgCount |
int | 生成图片数量 (固定值: 1) |
caption |
aspectRatio |
string | 宽高比 |
appointment |
prompt |
string | 文本提示词 |
V2 完整请求体(填入业务值后 AES 加密,填入代理请求 b 参数 字段)
// txt2img_create — 创建文生图任务
// POST {baseUrl}/workshop/lounge/hub/playground
//
// 代理请求:
// {
// "humor_level": "FunyMeeAI", // appId 明文
// "comedy_style": "s9Av0hxfkwckWglmtkBH6kzL/GfTpCyOh8IIK1sP+kM=", // AES(/v1/image/txt2img_create)
// "avatar_mode": "Mhb3yNV4SnrfCK8EJAq9VQ==", // AES(POST)
// "filter_type": "<AES({stakeholder: 应用包名(必填), comedy: 用户登录token}) → Base64>", // AES(映射后的Header字段名构造JSON) → Base64
// "scene_id": "<AES({sticker: 应用标识(必填,iOS: HIOS / Android: HAndroid), satire: 渠道号, symposium: 用户ID}) → Base64>", // AES(映射后的URL参数字段名构造JSON) → Base64
// "clip_duration": "<AES(V2请求体JSON)>", // AES(V2包装后的业务数据) → Base64
// "sample_rate": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "watermark_id": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "geo_radius": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "accuracy_m": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// }
//
// V2 请求体 — 填入业务值后 AES 加密,填入 clip_duration
{
"shell": 2,
"capsule": {
"envelope": {
"container": {
"indicator": 1, // 固定传参
"caption": "", // aspectRatio (string) 宽高比
"appointment": "" // prompt (string) 文本提示词
}
}
},
"shimmer": "<随机4-8位字母数字,AES加密→Base64>",
"glimmer": "<随机4-8位字母数字,AES加密→Base64>",
"flicker": "<随机4-8位字母数字,AES加密→Base64>",
"sparkle": "<随机4-8位字母数字,AES加密→Base64>",
"rustle": "<随机4-8位字母数字,AES加密→Base64>",
"murmur": "<随机4-8位字母数字,AES加密→Base64>",
"whisper": "<随机4-8位字母数字,AES加密→Base64>",
"echo": "<随机4-8位字母数字,AES加密→Base64>"
}
响应体(解密后)
{
"sprint": "", // msg (string) 消息
"scene": 0, // code (int) 状态码,0=成功
"costume": { // data
"bitrate": 0, // state (int) 任务状态:1=队列中 | 2=处理中 | 3=完成 | 4=超时 | 5=错误 | 6=中止
"exponential": 0 // taskId (int) 任务ID
}
}
获取文生图标签
GET /v1/image/txt2img_tags | 鉴权:需要
请求头
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
stakeholder |
pkg |
应用包名(必填) |
comedy |
User_token |
用户登录token |
查询参数
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
sticker |
app |
应用标识(必填,iOS: HIOS / Android: HAndroid) |
stakeholder |
pkg |
应用包名(必填) |
symposium |
userId |
用户ID |
V2 完整请求体(填入业务值后 AES 加密,填入代理请求 空 b 参数 字段)
// txt2img_tags — 获取文生图标签
// POST {baseUrl}/workshop/lounge/hub/playground
//
// 代理请求:
// {
// "humor_level": "FunyMeeAI", // appId 明文
// "comedy_style": "s9Av0hxfkwckWglmtkBH6sRuXg7Jsrsui60Mr5e17Ug=", // AES(/v1/image/txt2img_tags)
// "avatar_mode": "7J8V5jVfCHKnEigVbbS08w==", // AES(GET)
// "filter_type": "<AES({stakeholder: 应用包名(必填), comedy: 用户登录token}) → Base64>", // AES(映射后的Header字段名构造JSON) → Base64
// "scene_id": "<AES({sticker: 应用标识(必填,iOS: HIOS / Android: HAndroid), stakeholder: 应用包名(必填), symposium: 用户ID}) → Base64>", // AES(映射后的URL参数字段名构造JSON) → Base64
// "clip_duration": "<AES(V2请求体JSON)>", // AES(V2包装后的业务数据) → Base64
// "sample_rate": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "watermark_id": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "geo_radius": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "accuracy_m": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// }
//
// 注意: 原始接口为 GET,走代理后统一 POST,仍需传 V2 请求体(业务字段为空)
// V2 请求体 — 填入业务值后 AES 加密,填入 clip_duration
{
"shell": 2,
"capsule": {
"envelope": {
"container": {
}
}
},
"shimmer": "<随机4-8位字母数字,AES加密→Base64>",
"glimmer": "<随机4-8位字母数字,AES加密→Base64>",
"flicker": "<随机4-8位字母数字,AES加密→Base64>",
"sparkle": "<随机4-8位字母数字,AES加密→Base64>",
"rustle": "<随机4-8位字母数字,AES加密→Base64>",
"murmur": "<随机4-8位字母数字,AES加密→Base64>",
"whisper": "<随机4-8位字母数字,AES加密→Base64>",
"echo": "<随机4-8位字母数字,AES加密→Base64>"
}
响应体(解密后)
{
"sprint": "", // msg (string) 消息
"scene": 0, // code (int) 状态码,0=成功
"costume": [ // data (array) 标签列表
{
"capacity": "", // theme (string) 主题
"enqueue": [ // tags (array) 标签
{
"remainder": "", // tag (string) 标签名
"kurtosis": "" // desc (string) 描述
}
]
}
]
}
获取文生图提示词模板
POST /v1/image/txt2img_prompts | 鉴权:需要
请求头
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
stakeholder |
pkg |
应用包名(必填) |
comedy |
User_token |
用户登录token |
请求体字段
| 字段(V2名) | 原始字段 | 类型 | 说明 |
|---|---|---|---|
costume |
data |
array | 标签数据列表 |
V2 完整请求体(填入业务值后 AES 加密,填入代理请求 b 参数 字段)
// txt2img_prompts — 获取文生图提示词模板
// POST {baseUrl}/workshop/lounge/hub/playground
//
// 代理请求:
// {
// "humor_level": "FunyMeeAI", // appId 明文
// "comedy_style": "s9Av0hxfkwckWglmtkBH6ncw1DLwVYIfyFaY3CmgwKE=", // AES(/v1/image/txt2img_prompts)
// "avatar_mode": "Mhb3yNV4SnrfCK8EJAq9VQ==", // AES(POST)
// "filter_type": "<AES({stakeholder: 应用包名(必填), comedy: 用户登录token}) → Base64>", // AES(映射后的Header字段名构造JSON) → Base64
// "scene_id": "<AES(无) → Base64>", // AES(映射后的URL参数字段名构造JSON) → Base64
// "clip_duration": "<AES(V2请求体JSON)>", // AES(V2包装后的业务数据) → Base64
// "sample_rate": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "watermark_id": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "geo_radius": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "accuracy_m": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// }
//
// V2 请求体 — 填入业务值后 AES 加密,填入 clip_duration
{
"shell": 2,
"capsule": {
"envelope": {
"container": {
"costume": [{"custom":"","capacity":"","enqueue":[]}]
}
}
},
"shimmer": "<随机4-8位字母数字,AES加密→Base64>",
"glimmer": "<随机4-8位字母数字,AES加密→Base64>",
"flicker": "<随机4-8位字母数字,AES加密→Base64>",
"sparkle": "<随机4-8位字母数字,AES加密→Base64>",
"rustle": "<随机4-8位字母数字,AES加密→Base64>",
"murmur": "<随机4-8位字母数字,AES加密→Base64>",
"whisper": "<随机4-8位字母数字,AES加密→Base64>",
"echo": "<随机4-8位字母数字,AES加密→Base64>"
}
响应体(解密后)
{
"sprint": "", // msg (string) 消息
"scene": 0, // code (int) 状态码,0=成功
"costume": { // data
"appointment": "", // prompt (string) 文本提示词
"enqueue": "" // tags (string) 标签
}
}
创建换衣任务
POST /v1/image/clothes_swap_ex | 鉴权:需要
请求头
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
stakeholder |
pkg |
应用包名(必填) |
comedy |
User_token |
用户登录token |
查询参数
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
sticker |
app |
应用标识(必填,iOS: HIOS / Android: HAndroid) |
symposium |
userId |
用户ID |
itinerary |
templateName |
模板名称 |
revenue |
type |
类型 (默认值: "1") |
请求体字段
| 字段(V2名) | 原始字段 | 类型 | 说明 |
|---|---|---|---|
dynasty |
srcImgBase64 |
string | 源图片Base64数据 |
logbook |
srcImgUrl |
string | 源图片URL |
V2 完整请求体(填入业务值后 AES 加密,填入代理请求 b 参数 字段)
// clothes_swap_ex — 创建换衣任务
// POST {baseUrl}/workshop/lounge/hub/playground
//
// 代理请求:
// {
// "humor_level": "FunyMeeAI", // appId 明文
// "comedy_style": "lYVJpsqrLK/C9kfDM8JOUf9dnddtGByEgfOOEiL1qds=", // AES(/v1/image/clothes_swap_ex)
// "avatar_mode": "Mhb3yNV4SnrfCK8EJAq9VQ==", // AES(POST)
// "filter_type": "<AES({stakeholder: 应用包名(必填), comedy: 用户登录token}) → Base64>", // AES(映射后的Header字段名构造JSON) → Base64
// "scene_id": "<AES({sticker: 应用标识(必填,iOS: HIOS / Android: HAndroid), symposium: 用户ID, itinerary: 模板名称, revenue: 1}) → Base64>", // AES(映射后的URL参数字段名构造JSON) → Base64
// "clip_duration": "<AES(V2请求体JSON)>", // AES(V2包装后的业务数据) → Base64
// "sample_rate": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "watermark_id": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "geo_radius": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "accuracy_m": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// }
//
// V2 请求体 — 填入业务值后 AES 加密,填入 clip_duration
{
"shell": 2,
"capsule": {
"envelope": {
"container": {
"dynasty": "", // srcImgBase64 (string) 源图片Base64数据
"logbook": "" // srcImgUrl (string) 源图片URL
}
}
},
"shimmer": "<随机4-8位字母数字,AES加密→Base64>",
"glimmer": "<随机4-8位字母数字,AES加密→Base64>",
"flicker": "<随机4-8位字母数字,AES加密→Base64>",
"sparkle": "<随机4-8位字母数字,AES加密→Base64>",
"rustle": "<随机4-8位字母数字,AES加密→Base64>",
"murmur": "<随机4-8位字母数字,AES加密→Base64>",
"whisper": "<随机4-8位字母数字,AES加密→Base64>",
"echo": "<随机4-8位字母数字,AES加密→Base64>"
}
响应体(解密后)
{
"sprint": "", // msg (string) 消息
"scene": 0, // code (int) 状态码,0=成功
"costume": { // data
"bitrate": 0, // state (int) 任务状态:1=队列中 | 2=处理中 | 3=完成 | 4=超时 | 5=错误 | 6=中止
"exponential": 0 // taskId (int) 任务ID
}
}
创建自定义换衣任务
POST /v1/image/custom_clothes_swap | 鉴权:需要
请求头
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
stakeholder |
pkg |
应用包名(必填) |
comedy |
User_token |
用户登录token |
查询参数
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
symposium |
userId |
用户ID |
reaction |
appType |
应用类型 (默认值: "3") |
请求体字段
| 字段(V2名) | 原始字段 | 类型 | 说明 |
|---|---|---|---|
lease |
srcImg2 |
string | 源图片2的文件路径 |
crew |
srcImg1 |
string | 源图片1的文件路径 |
V2 完整请求体(填入业务值后 AES 加密,填入代理请求 b 参数 字段)
// custom_clothes_swap — 创建自定义换衣任务
// POST {baseUrl}/workshop/lounge/hub/playground
//
// 代理请求:
// {
// "humor_level": "FunyMeeAI", // appId 明文
// "comedy_style": "azfqGJW/Ai/FSsDaiuUXCLRNVjSKV/CQ8GaukiC2Rj8=", // AES(/v1/image/custom_clothes_swap)
// "avatar_mode": "Mhb3yNV4SnrfCK8EJAq9VQ==", // AES(POST)
// "filter_type": "<AES({stakeholder: 应用包名(必填), comedy: 用户登录token}) → Base64>", // AES(映射后的Header字段名构造JSON) → Base64
// "scene_id": "<AES({symposium: 用户ID, reaction: 3}) → Base64>", // AES(映射后的URL参数字段名构造JSON) → Base64
// "clip_duration": "<AES(V2请求体JSON)>", // AES(V2包装后的业务数据) → Base64
// "sample_rate": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "watermark_id": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "geo_radius": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "accuracy_m": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// }
//
// V2 请求体 — 填入业务值后 AES 加密,填入 clip_duration
{
"shell": 2,
"capsule": {
"envelope": {
"container": {
"lease": "", // srcImg2 (string) 源图片2的文件路径
"crew": "" // srcImg1 (string) 源图片1的文件路径
}
}
},
"shimmer": "<随机4-8位字母数字,AES加密→Base64>",
"glimmer": "<随机4-8位字母数字,AES加密→Base64>",
"flicker": "<随机4-8位字母数字,AES加密→Base64>",
"sparkle": "<随机4-8位字母数字,AES加密→Base64>",
"rustle": "<随机4-8位字母数字,AES加密→Base64>",
"murmur": "<随机4-8位字母数字,AES加密→Base64>",
"whisper": "<随机4-8位字母数字,AES加密→Base64>",
"echo": "<随机4-8位字母数字,AES加密→Base64>"
}
响应体(解密后)
{
"sprint": "", // msg (string) 消息
"scene": 0, // code (int) 状态码,0=成功
"costume": { // data
"bitrate": 0, // state (int) 任务状态:1=队列中 | 2=处理中 | 3=完成 | 4=超时 | 5=错误 | 6=中止
"exponential": 0 // taskId (int) 任务ID
}
}
创建换脸任务
POST /v1/image/faceswap_task | 鉴权:需要
请求头
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
stakeholder |
pkg |
应用包名(必填) |
comedy |
User_token |
用户登录token |
查询参数
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
sticker |
app |
应用标识(必填,iOS: HIOS / Android: HAndroid) |
请求体字段
| 字段(V2名) | 原始字段 | 类型 | 说明 |
|---|---|---|---|
circular |
img |
string | 图片 |
repository |
headPos |
string | 头像位置 |
delegate |
headType |
int | 头像类型 (固定值: 0) |
terminal |
headImg |
string | 头像图片 |
consortium |
resolution |
string | 分辨率 |
entry |
headFaceIndex |
int | 头像人脸索引 (固定值: 2) |
circuit |
srcFaceIndex |
int | 源图人脸索引 (固定值: 1) |
V2 完整请求体(填入业务值后 AES 加密,填入代理请求 b 参数 字段)
// faceswap_task — 创建换脸任务
// POST {baseUrl}/workshop/lounge/hub/playground
//
// 代理请求:
// {
// "humor_level": "FunyMeeAI", // appId 明文
// "comedy_style": "BviCoJhpWNssLcLWCeCEAMhE8H95H4+jK0rI8UNbvjo=", // AES(/v1/image/faceswap_task)
// "avatar_mode": "Mhb3yNV4SnrfCK8EJAq9VQ==", // AES(POST)
// "filter_type": "<AES({stakeholder: 应用包名(必填), comedy: 用户登录token}) → Base64>", // AES(映射后的Header字段名构造JSON) → Base64
// "scene_id": "<AES({sticker: 应用标识(必填,iOS: HIOS / Android: HAndroid)}) → Base64>", // AES(映射后的URL参数字段名构造JSON) → Base64
// "clip_duration": "<AES(V2请求体JSON)>", // AES(V2包装后的业务数据) → Base64
// "sample_rate": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "watermark_id": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "geo_radius": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "accuracy_m": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// }
//
// V2 请求体 — 填入业务值后 AES 加密,填入 clip_duration
{
"shell": 2,
"capsule": {
"envelope": {
"container": {
"circular": "", // img (string) 图片
"repository": "", // headPos (string) 头像位置
"delegate": 0, // 固定传参
"terminal": "", // headImg (string) 头像图片
"consortium": "", // resolution (string) 分辨率
"entry": 2, // 固定传参
"circuit": 1 // 固定传参
}
}
},
"shimmer": "<随机4-8位字母数字,AES加密→Base64>",
"glimmer": "<随机4-8位字母数字,AES加密→Base64>",
"flicker": "<随机4-8位字母数字,AES加密→Base64>",
"sparkle": "<随机4-8位字母数字,AES加密→Base64>",
"rustle": "<随机4-8位字母数字,AES加密→Base64>",
"murmur": "<随机4-8位字母数字,AES加密→Base64>",
"whisper": "<随机4-8位字母数字,AES加密→Base64>",
"echo": "<随机4-8位字母数字,AES加密→Base64>"
}
响应体(解密后)
{
"sprint": "", // msg (string) 消息
"scene": 0, // code (int) 状态码,0=成功
"costume": { // data
"bitrate": 0, // state (int) 任务状态:1=队列中 | 2=处理中 | 3=完成 | 4=超时 | 5=错误 | 6=中止
"exponential": 0 // taskId (int) 任务ID
}
}
创建增强换脸任务
POST /v1/image/faceswap_ex_task | 鉴权:需要
请求头
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
stakeholder |
pkg |
应用包名(必填) |
comedy |
User_token |
用户登录token |
查询参数
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
sticker |
app |
应用标识(必填,iOS: HIOS / Android: HAndroid) |
symposium |
userId |
用户ID |
请求体字段
| 字段(V2名) | 原始字段 | 类型 | 说明 |
|---|---|---|---|
lease |
srcImg2 |
string | 源图片2的文件路径 |
crew |
srcImg1 |
string | 源图片1的文件路径 |
V2 完整请求体(填入业务值后 AES 加密,填入代理请求 b 参数 字段)
// faceswap_ex_task — 创建增强换脸任务
// POST {baseUrl}/workshop/lounge/hub/playground
//
// 代理请求:
// {
// "humor_level": "FunyMeeAI", // appId 明文
// "comedy_style": "BviCoJhpWNssLcLWCeCEAMaW+L60OrCOzGmif07JUM4=", // AES(/v1/image/faceswap_ex_task)
// "avatar_mode": "Mhb3yNV4SnrfCK8EJAq9VQ==", // AES(POST)
// "filter_type": "<AES({stakeholder: 应用包名(必填), comedy: 用户登录token}) → Base64>", // AES(映射后的Header字段名构造JSON) → Base64
// "scene_id": "<AES({sticker: 应用标识(必填,iOS: HIOS / Android: HAndroid), symposium: 用户ID}) → Base64>", // AES(映射后的URL参数字段名构造JSON) → Base64
// "clip_duration": "<AES(V2请求体JSON)>", // AES(V2包装后的业务数据) → Base64
// "sample_rate": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "watermark_id": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "geo_radius": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "accuracy_m": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// }
//
// V2 请求体 — 填入业务值后 AES 加密,填入 clip_duration
{
"shell": 2,
"capsule": {
"envelope": {
"container": {
"lease": "", // srcImg2 (string) 源图片2的文件路径
"crew": "" // srcImg1 (string) 源图片1的文件路径
}
}
},
"shimmer": "<随机4-8位字母数字,AES加密→Base64>",
"glimmer": "<随机4-8位字母数字,AES加密→Base64>",
"flicker": "<随机4-8位字母数字,AES加密→Base64>",
"sparkle": "<随机4-8位字母数字,AES加密→Base64>",
"rustle": "<随机4-8位字母数字,AES加密→Base64>",
"murmur": "<随机4-8位字母数字,AES加密→Base64>",
"whisper": "<随机4-8位字母数字,AES加密→Base64>",
"echo": "<随机4-8位字母数字,AES加密→Base64>"
}
响应体(解密后)
{
"sprint": "", // msg (string) 消息
"scene": 0, // code (int) 状态码,0=成功
"costume": { // data
"bitrate": 0, // state (int) 任务状态:1=队列中 | 2=处理中 | 3=完成 | 4=超时 | 5=错误 | 6=中止
"exponential": 0 // taskId (int) 任务ID
}
}
检测图片人脸
POST /v1/image/get_image_faces | 鉴权:需要
请求头
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
stakeholder |
pkg |
应用包名(必填) |
comedy |
User_token |
用户登录token |
查询参数
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
sticker |
app |
应用标识(必填,iOS: HIOS / Android: HAndroid) |
satire |
ch |
渠道号 |
symposium |
userId |
用户ID |
请求体字段
| 字段(V2名) | 原始字段 | 类型 | 说明 |
|---|---|---|---|
dynasty |
srcImgBase64 |
string | 源图片Base64数据 |
logbook |
srcImgUrl |
string | 源图片URL |
V2 完整请求体(填入业务值后 AES 加密,填入代理请求 b 参数 字段)
// get_image_faces — 检测图片人脸
// POST {baseUrl}/workshop/lounge/hub/playground
//
// 代理请求:
// {
// "humor_level": "FunyMeeAI", // appId 明文
// "comedy_style": "PHjL2S4W3A5fFtZANKbxUWqrI+hZ+Q/3+rv14h5Rw04=", // AES(/v1/image/get_image_faces)
// "avatar_mode": "Mhb3yNV4SnrfCK8EJAq9VQ==", // AES(POST)
// "filter_type": "<AES({stakeholder: 应用包名(必填), comedy: 用户登录token}) → Base64>", // AES(映射后的Header字段名构造JSON) → Base64
// "scene_id": "<AES({sticker: 应用标识(必填,iOS: HIOS / Android: HAndroid), satire: 渠道号, symposium: 用户ID}) → Base64>", // AES(映射后的URL参数字段名构造JSON) → Base64
// "clip_duration": "<AES(V2请求体JSON)>", // AES(V2包装后的业务数据) → Base64
// "sample_rate": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "watermark_id": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "geo_radius": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "accuracy_m": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// }
//
// V2 请求体 — 填入业务值后 AES 加密,填入 clip_duration
{
"shell": 2,
"capsule": {
"envelope": {
"container": {
"dynasty": "", // srcImgBase64 (string) 源图片Base64数据
"logbook": "" // srcImgUrl (string) 源图片URL
}
}
},
"shimmer": "<随机4-8位字母数字,AES加密→Base64>",
"glimmer": "<随机4-8位字母数字,AES加密→Base64>",
"flicker": "<随机4-8位字母数字,AES加密→Base64>",
"sparkle": "<随机4-8位字母数字,AES加密→Base64>",
"rustle": "<随机4-8位字母数字,AES加密→Base64>",
"murmur": "<随机4-8位字母数字,AES加密→Base64>",
"whisper": "<随机4-8位字母数字,AES加密→Base64>",
"echo": "<随机4-8位字母数字,AES加密→Base64>"
}
响应体(解密后)
{
"sprint": "", // msg (string) 消息
"scene": 0, // code (int) 状态码,0=成功
"costume": { // data
"preview": 0, // duration (int) 时长
"postprocess": "", // videoUrl (string) 视频URL
"discover": [ // faceInfos (array) 人脸信息列表
{
"border": "", // face (string) 人脸图片
"shadow": 0, // face_index (int) 人脸索引
"speed": "", // gender (string) 性别
"binormal": 0, // y1 (int) 左上角Y坐标
"angular": 0, // x1 (int) 左上角X坐标
"manifold": 0, // y2 (int) 右下角Y坐标
"weight": 0, // index (int) 索引
"enthalpy": 0, // x2 (int) 右下角X坐标
"intensity": 0, // age (int) 年龄
"motion": 0 // frame_index (int) 帧索引
}
],
"colorize": 0 // needCredits (int) 所需积分
}
}
检测视频人脸
POST /v1/image/get_video_faces | 鉴权:需要
请求头
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
stakeholder |
pkg |
应用包名(必填) |
comedy |
User_token |
用户登录token |
查询参数
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
sticker |
app |
应用标识(必填,iOS: HIOS / Android: HAndroid) |
satire |
ch |
渠道号 |
symposium |
userId |
用户ID |
preview |
duration |
时长 |
commendation |
srcVideo |
源视频 |
V2 完整请求体(填入业务值后 AES 加密,填入代理请求 b 参数 字段)
// get_video_faces — 检测视频人脸
// POST {baseUrl}/workshop/lounge/hub/playground
//
// 代理请求:
// {
// "humor_level": "FunyMeeAI", // appId 明文
// "comedy_style": "GMq795fqAjR8vj/Z3EiSJJy1LdYw6669KnyXp4Gtz2I=", // AES(/v1/image/get_video_faces)
// "avatar_mode": "Mhb3yNV4SnrfCK8EJAq9VQ==", // AES(POST)
// "filter_type": "<AES({stakeholder: 应用包名(必填), comedy: 用户登录token}) → Base64>", // AES(映射后的Header字段名构造JSON) → Base64
// "scene_id": "<AES({sticker: 应用标识(必填,iOS: HIOS / Android: HAndroid), satire: 渠道号, symposium: 用户ID, preview: 时长, commendation: 源视频}) → Base64>", // AES(映射后的URL参数字段名构造JSON) → Base64
// "clip_duration": "<AES(V2请求体JSON)>", // AES(V2包装后的业务数据) → Base64
// "sample_rate": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "watermark_id": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "geo_radius": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "accuracy_m": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// }
//
// V2 请求体 — 填入业务值后 AES 加密,填入 clip_duration
{
"shell": 2,
"capsule": {
"envelope": {
"container": {
}
}
},
"shimmer": "<随机4-8位字母数字,AES加密→Base64>",
"glimmer": "<随机4-8位字母数字,AES加密→Base64>",
"flicker": "<随机4-8位字母数字,AES加密→Base64>",
"sparkle": "<随机4-8位字母数字,AES加密→Base64>",
"rustle": "<随机4-8位字母数字,AES加密→Base64>",
"murmur": "<随机4-8位字母数字,AES加密→Base64>",
"whisper": "<随机4-8位字母数字,AES加密→Base64>",
"echo": "<随机4-8位字母数字,AES加密→Base64>"
}
响应体(解密后)
{
"sprint": "", // msg (string) 消息
"scene": 0, // code (int) 状态码,0=成功
"costume": { // data
"preview": 0, // duration (int) 时长
"postprocess": "", // videoUrl (string) 视频URL
"discover": [ // faceInfos (array) 人脸信息列表
{
"border": "", // face (string) 人脸图片
"shadow": 0, // face_index (int) 人脸索引
"speed": "", // gender (string) 性别
"binormal": 0, // y1 (int) 左上角Y坐标
"angular": 0, // x1 (int) 左上角X坐标
"manifold": 0, // y2 (int) 右下角Y坐标
"weight": 0, // index (int) 索引
"enthalpy": 0, // x2 (int) 右下角X坐标
"intensity": 0, // age (int) 年龄
"motion": 0 // frame_index (int) 帧索引
}
],
"colorize": 0 // needCredits (int) 所需积分
}
}
创建黏土风格任务
POST /v1/image/clay_stylization | 鉴权:需要
请求头
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
stakeholder |
pkg |
应用包名(必填) |
comedy |
User_token |
用户登录token |
查询参数
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
sticker |
app |
应用标识(必填,iOS: HIOS / Android: HAndroid) |
symposium |
userId |
用户ID |
team |
needopt |
是否优化,通过配置控制 (默认值: "false") |
satire |
ch |
渠道号 |
请求体字段
| 字段(V2名) | 原始字段 | 类型 | 说明 |
|---|---|---|---|
dynasty |
srcImgBase64 |
string | 源图片Base64数据 |
logbook |
srcImgUrl |
string | 源图片URL |
V2 完整请求体(填入业务值后 AES 加密,填入代理请求 b 参数 字段)
// clay_stylization — 创建黏土风格任务
// POST {baseUrl}/workshop/lounge/hub/playground
//
// 代理请求:
// {
// "humor_level": "FunyMeeAI", // appId 明文
// "comedy_style": "S+6xKs5lzzuc89oqJjfg0b41udJ6b7wIb6LES8S1Y4k=", // AES(/v1/image/clay_stylization)
// "avatar_mode": "Mhb3yNV4SnrfCK8EJAq9VQ==", // AES(POST)
// "filter_type": "<AES({stakeholder: 应用包名(必填), comedy: 用户登录token}) → Base64>", // AES(映射后的Header字段名构造JSON) → Base64
// "scene_id": "<AES({sticker: 应用标识(必填,iOS: HIOS / Android: HAndroid), symposium: 用户ID, team: false, satire: 渠道号}) → Base64>", // AES(映射后的URL参数字段名构造JSON) → Base64
// "clip_duration": "<AES(V2请求体JSON)>", // AES(V2包装后的业务数据) → Base64
// "sample_rate": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "watermark_id": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "geo_radius": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "accuracy_m": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// }
//
// V2 请求体 — 填入业务值后 AES 加密,填入 clip_duration
{
"shell": 2,
"capsule": {
"envelope": {
"container": {
"dynasty": "", // srcImgBase64 (string) 源图片Base64数据
"logbook": "" // srcImgUrl (string) 源图片URL
}
}
},
"shimmer": "<随机4-8位字母数字,AES加密→Base64>",
"glimmer": "<随机4-8位字母数字,AES加密→Base64>",
"flicker": "<随机4-8位字母数字,AES加密→Base64>",
"sparkle": "<随机4-8位字母数字,AES加密→Base64>",
"rustle": "<随机4-8位字母数字,AES加密→Base64>",
"murmur": "<随机4-8位字母数字,AES加密→Base64>",
"whisper": "<随机4-8位字母数字,AES加密→Base64>",
"echo": "<随机4-8位字母数字,AES加密→Base64>"
}
响应体(解密后)
{
"sprint": "", // msg (string) 消息
"scene": 0, // code (int) 状态码,0=成功
"costume": { // data
"bitrate": 0, // state (int) 任务状态:1=队列中 | 2=处理中 | 3=完成 | 4=超时 | 5=错误 | 6=中止
"exponential": 0 // taskId (int) 任务ID
}
}
创建视频换脸任务
POST /v1/image/video_facewap_task | 鉴权:需要
请求头
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
stakeholder |
pkg |
应用包名(必填) |
comedy |
User_token |
用户登录token |
查询参数
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
sticker |
app |
应用标识(必填,iOS: HIOS / Android: HAndroid) |
symposium |
userId |
用户ID |
请求体字段
| 字段(V2名) | 原始字段 | 类型 | 说明 |
|---|---|---|---|
periodical |
videoFrameIndex |
int | 视频帧索引 (固定值: 10) |
repository |
headPos |
string | 头像位置 |
postprocess |
videoUrl |
string | 视频URL |
delegate |
headType |
int | 头像类型 (固定值: 2) |
terminal |
headImg |
string | 头像图片 |
itinerary |
templateName |
string | 模板名称 |
escrow |
videoFaceIndex |
int | 视频人脸索引 (固定值: 1) |
revenue |
type |
int | 类型 (固定值: 0) |
entry |
headFaceIndex |
int | 头像人脸索引 (固定值: 3) |
V2 完整请求体(填入业务值后 AES 加密,填入代理请求 b 参数 字段)
// video_facewap_task — 创建视频换脸任务
// POST {baseUrl}/workshop/lounge/hub/playground
//
// 代理请求:
// {
// "humor_level": "FunyMeeAI", // appId 明文
// "comedy_style": "sJoF2paOhB6BnHJXvc5/fgWx3/JZ4Xk9hHADB/UXTlI=", // AES(/v1/image/video_facewap_task)
// "avatar_mode": "Mhb3yNV4SnrfCK8EJAq9VQ==", // AES(POST)
// "filter_type": "<AES({stakeholder: 应用包名(必填), comedy: 用户登录token}) → Base64>", // AES(映射后的Header字段名构造JSON) → Base64
// "scene_id": "<AES({sticker: 应用标识(必填,iOS: HIOS / Android: HAndroid), symposium: 用户ID}) → Base64>", // AES(映射后的URL参数字段名构造JSON) → Base64
// "clip_duration": "<AES(V2请求体JSON)>", // AES(V2包装后的业务数据) → Base64
// "sample_rate": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "watermark_id": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "geo_radius": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "accuracy_m": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// }
//
// V2 请求体 — 填入业务值后 AES 加密,填入 clip_duration
{
"shell": 2,
"capsule": {
"envelope": {
"container": {
"periodical": 10, // 固定传参
"repository": "", // headPos (string) 头像位置
"postprocess": "", // videoUrl (string) 视频URL
"delegate": 2, // 固定传参
"terminal": "", // headImg (string) 头像图片
"itinerary": "", // templateName (string) 模板名称
"escrow": 1, // 固定传参
"revenue": 0, // 固定传参
"entry": 3 // 固定传参
}
}
},
"shimmer": "<随机4-8位字母数字,AES加密→Base64>",
"glimmer": "<随机4-8位字母数字,AES加密→Base64>",
"flicker": "<随机4-8位字母数字,AES加密→Base64>",
"sparkle": "<随机4-8位字母数字,AES加密→Base64>",
"rustle": "<随机4-8位字母数字,AES加密→Base64>",
"murmur": "<随机4-8位字母数字,AES加密→Base64>",
"whisper": "<随机4-8位字母数字,AES加密→Base64>",
"echo": "<随机4-8位字母数字,AES加密→Base64>"
}
响应体(解密后)
{
"sprint": "", // msg (string) 消息
"scene": 0, // code (int) 状态码,0=成功
"costume": { // data
"bitrate": 0, // state (int) 任务状态:1=队列中 | 2=处理中 | 3=完成 | 4=超时 | 5=错误 | 6=中止
"exponential": 0 // taskId (int) 任务ID
}
}
图片动作风格化gif
POST /v1/image/offtop_video | 鉴权:需要
请求头
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
stakeholder |
pkg |
应用包名(必填) |
comedy |
User_token |
用户登录token |
查询参数
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
sticker |
app |
应用标识(必填,iOS: HIOS / Android: HAndroid) |
symposium |
userId |
用户ID |
team |
needopt |
是否优化,通过配置控制 (默认值: "false") |
请求体字段
| 字段(V2名) | 原始字段 | 类型 | 说明 |
|---|---|---|---|
genealogy |
videoSize |
string | 视频尺寸 (固定值: 480p) |
permission |
srcImg |
string | 源图片 |
V2 完整请求体(填入业务值后 AES 加密,填入代理请求 b 参数 字段)
// offtop_video — 图片动作风格化gif
// POST {baseUrl}/workshop/lounge/hub/playground
//
// 代理请求:
// {
// "humor_level": "FunyMeeAI", // appId 明文
// "comedy_style": "BVsQc9sTlzSoCPtj0i2k03fjIjHQYxyldloNU6YOfBw=", // AES(/v1/image/offtop_video)
// "avatar_mode": "Mhb3yNV4SnrfCK8EJAq9VQ==", // AES(POST)
// "filter_type": "<AES({stakeholder: 应用包名(必填), comedy: 用户登录token}) → Base64>", // AES(映射后的Header字段名构造JSON) → Base64
// "scene_id": "<AES({sticker: 应用标识(必填,iOS: HIOS / Android: HAndroid), symposium: 用户ID, team: false}) → Base64>", // AES(映射后的URL参数字段名构造JSON) → Base64
// "clip_duration": "<AES(V2请求体JSON)>", // AES(V2包装后的业务数据) → Base64
// "sample_rate": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "watermark_id": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "geo_radius": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "accuracy_m": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// }
//
// V2 请求体 — 填入业务值后 AES 加密,填入 clip_duration
{
"shell": 2,
"capsule": {
"envelope": {
"container": {
"genealogy": "480p", // 固定传参
"permission": "" // srcImg (string) 源图片
}
}
},
"shimmer": "<随机4-8位字母数字,AES加密→Base64>",
"glimmer": "<随机4-8位字母数字,AES加密→Base64>",
"flicker": "<随机4-8位字母数字,AES加密→Base64>",
"sparkle": "<随机4-8位字母数字,AES加密→Base64>",
"rustle": "<随机4-8位字母数字,AES加密→Base64>",
"murmur": "<随机4-8位字母数字,AES加密→Base64>",
"whisper": "<随机4-8位字母数字,AES加密→Base64>",
"echo": "<随机4-8位字母数字,AES加密→Base64>"
}
响应体(解密后)
{
"sprint": "", // msg (string) 消息
"scene": 0, // code (int) 状态码,0=成功
"costume": { // data
"bitrate": 0, // state (int) 任务状态:1=队列中 | 2=处理中 | 3=完成 | 4=超时 | 5=错误 | 6=中止
"exponential": 0 // taskId (int) 任务ID
}
}
创建图转视频姿态任务
POST /v1/image/img2video_pose_task | 鉴权:需要
请求头
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
stakeholder |
pkg |
应用包名(必填) |
comedy |
User_token |
用户登录token |
查询参数
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
sticker |
app |
应用标识(必填,iOS: HIOS / Android: HAndroid) |
symposium |
userId |
用户ID |
itinerary |
templateName |
模板名称 |
lineage |
fps |
帧率 (默认值: "25") |
team |
needopt |
是否优化,通过配置控制 (默认值: "false") |
preview |
duration |
时长 (默认值: "12") |
dynasty |
srcImgBase64 |
源图片Base64数据 |
commendation |
srcVideo |
源视频 |
V2 完整请求体(填入业务值后 AES 加密,填入代理请求 b 参数 字段)
// img2video_pose_task — 创建图转视频姿态任务
// POST {baseUrl}/workshop/lounge/hub/playground
//
// 代理请求:
// {
// "humor_level": "FunyMeeAI", // appId 明文
// "comedy_style": "hlyoby7+Q/bDo1oWHbaiQbddj5Bdjy4BY/RYogP5hUU=", // AES(/v1/image/img2video_pose_task)
// "avatar_mode": "Mhb3yNV4SnrfCK8EJAq9VQ==", // AES(POST)
// "filter_type": "<AES({stakeholder: 应用包名(必填), comedy: 用户登录token}) → Base64>", // AES(映射后的Header字段名构造JSON) → Base64
// "scene_id": "<AES({sticker: 应用标识(必填,iOS: HIOS / Android: HAndroid), symposium: 用户ID, itinerary: 模板名称, lineage: 25, team: false, preview: 12, dynasty: 源图片Base64数据, commendation: 源视频}) → Base64>", // AES(映射后的URL参数字段名构造JSON) → Base64
// "clip_duration": "<AES(V2请求体JSON)>", // AES(V2包装后的业务数据) → Base64
// "sample_rate": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "watermark_id": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "geo_radius": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "accuracy_m": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// }
//
// V2 请求体 — 填入业务值后 AES 加密,填入 clip_duration
{
"shell": 2,
"capsule": {
"envelope": {
"container": {
}
}
},
"shimmer": "<随机4-8位字母数字,AES加密→Base64>",
"glimmer": "<随机4-8位字母数字,AES加密→Base64>",
"flicker": "<随机4-8位字母数字,AES加密→Base64>",
"sparkle": "<随机4-8位字母数字,AES加密→Base64>",
"rustle": "<随机4-8位字母数字,AES加密→Base64>",
"murmur": "<随机4-8位字母数字,AES加密→Base64>",
"whisper": "<随机4-8位字母数字,AES加密→Base64>",
"echo": "<随机4-8位字母数字,AES加密→Base64>"
}
响应体(解密后)
{
"sprint": "", // msg (string) 消息
"scene": 0, // code (int) 状态码,0=成功
"costume": { // data
"bitrate": 0, // state (int) 任务状态:1=队列中 | 2=处理中 | 3=完成 | 4=超时 | 5=错误 | 6=中止
"exponential": 0 // taskId (int) 任务ID
}
}
获取图转视频任务列表
GET /v1/image/img2video/tasks | 鉴权:需要
请求头
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
stakeholder |
pkg |
应用包名(必填) |
comedy |
User_token |
用户登录token |
查询参数
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
scale |
categoryId |
分类ID |
V2 完整请求体(填入业务值后 AES 加密,填入代理请求 空 b 参数 字段)
// tasks — 获取图转视频任务列表
// POST {baseUrl}/workshop/lounge/hub/playground
//
// 代理请求:
// {
// "humor_level": "FunyMeeAI", // appId 明文
// "comedy_style": "hlyoby7+Q/bDo1oWHbaiQTDv+HSLSaD0RB91euOsZBc=", // AES(/v1/image/img2video/tasks)
// "avatar_mode": "7J8V5jVfCHKnEigVbbS08w==", // AES(GET)
// "filter_type": "<AES({stakeholder: 应用包名(必填), comedy: 用户登录token}) → Base64>", // AES(映射后的Header字段名构造JSON) → Base64
// "scene_id": "<AES({scale: 分类ID}) → Base64>", // AES(映射后的URL参数字段名构造JSON) → Base64
// "clip_duration": "<AES(V2请求体JSON)>", // AES(V2包装后的业务数据) → Base64
// "sample_rate": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "watermark_id": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "geo_radius": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "accuracy_m": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// }
//
// 注意: 原始接口为 GET,走代理后统一 POST,仍需传 V2 请求体(业务字段为空)
// V2 请求体 — 填入业务值后 AES 加密,填入 clip_duration
{
"shell": 2,
"capsule": {
"envelope": {
"container": {
}
}
},
"shimmer": "<随机4-8位字母数字,AES加密→Base64>",
"glimmer": "<随机4-8位字母数字,AES加密→Base64>",
"flicker": "<随机4-8位字母数字,AES加密→Base64>",
"sparkle": "<随机4-8位字母数字,AES加密→Base64>",
"rustle": "<随机4-8位字母数字,AES加密→Base64>",
"murmur": "<随机4-8位字母数字,AES加密→Base64>",
"whisper": "<随机4-8位字母数字,AES加密→Base64>",
"echo": "<随机4-8位字母数字,AES加密→Base64>"
}
响应体(解密后)
{
"sprint": "", // msg (string) 消息
"scene": 0, // code (int) 状态码,0=成功
"costume": [ // data (array) 任务列表
{
"anchor": { // previewVideo (object) 预览视频
"durability": "", // lowUrl (string) 低分辨率视频URL
"altitude": "", // url (string) 视频URL
"precision": "" // hlsUrl (string) HLS流URL
},
"factor": { // resolution720p (object) 720p分辨率配置
"preview": 0, // duration (int) 时长(秒)
"padding": 0, // credits (int) 所需积分
"delay": "" // icon (string) 图标URL
},
"bounce": 0, // imageCount (int) 图片数量
"profile": "", // ext (string) 扩展参数
"liaison": "", // taskType (string) 任务类型
"span": { // resolution480p (object) 480p分辨率配置
"preview": 0, // duration (int) 时长(秒)
"padding": 0, // credits (int) 所需积分
"delay": "" // icon (string) 图标URL
},
"itinerary": "", // templateName (string) 模板名称
"team": false, // needopt (boolean) 是否优化,通过配置控制
"density": { // label (object) 标签
"delay": "" // icon (string) 标签图标URL
},
"interval": "", // title (string) 标题
"slice": { // previewImage (object) 预览图
"altitude": "" // url (string) 图片URL
}
}
]
}
模板 & 分类
素材与配置查询,部分无需登录态
获取推荐提示词
GET /v1/image/prompt/recomends | 鉴权:需要
请求头
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
stakeholder |
pkg |
应用包名(必填) |
comedy |
User_token |
用户登录token |
查询参数
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
sticker |
app |
应用标识(必填,iOS: HIOS / Android: HAndroid) |
satire |
ch |
渠道号 |
symposium |
userId |
用户ID |
V2 完整请求体(填入业务值后 AES 加密,填入代理请求 空 b 参数 字段)
// recomends — 获取推荐提示词
// POST {baseUrl}/workshop/lounge/hub/playground
//
// 代理请求:
// {
// "humor_level": "FunyMeeAI", // appId 明文
// "comedy_style": "fb/ODSRlLpg+pTA3+sgGriaMVnzyC6Tc1VzRUrqU9oE=", // AES(/v1/image/prompt/recomends)
// "avatar_mode": "7J8V5jVfCHKnEigVbbS08w==", // AES(GET)
// "filter_type": "<AES({stakeholder: 应用包名(必填), comedy: 用户登录token}) → Base64>", // AES(映射后的Header字段名构造JSON) → Base64
// "scene_id": "<AES({sticker: 应用标识(必填,iOS: HIOS / Android: HAndroid), satire: 渠道号, symposium: 用户ID}) → Base64>", // AES(映射后的URL参数字段名构造JSON) → Base64
// "clip_duration": "<AES(V2请求体JSON)>", // AES(V2包装后的业务数据) → Base64
// "sample_rate": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "watermark_id": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "geo_radius": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "accuracy_m": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// }
//
// 注意: 原始接口为 GET,走代理后统一 POST,仍需传 V2 请求体(业务字段为空)
// V2 请求体 — 填入业务值后 AES 加密,填入 clip_duration
{
"shell": 2,
"capsule": {
"envelope": {
"container": {
}
}
},
"shimmer": "<随机4-8位字母数字,AES加密→Base64>",
"glimmer": "<随机4-8位字母数字,AES加密→Base64>",
"flicker": "<随机4-8位字母数字,AES加密→Base64>",
"sparkle": "<随机4-8位字母数字,AES加密→Base64>",
"rustle": "<随机4-8位字母数字,AES加密→Base64>",
"murmur": "<随机4-8位字母数字,AES加密→Base64>",
"whisper": "<随机4-8位字母数字,AES加密→Base64>",
"echo": "<随机4-8位字母数字,AES加密→Base64>"
}
响应体(解密后)
{
"sprint": "", // msg (string) 消息
"scene": 0, // code (int) 状态码,0=成功
"costume": [ // data (array) 推荐提示词列表
{
"remainder": "", // tag (string) 标签
"appointment": "" // prompt (string) 文本提示词
}
]
}
获取分类列表
GET /v1/image/category-list | 鉴权:需要
请求头
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
stakeholder |
pkg |
应用包名(必填) |
comedy |
User_token |
用户登录token |
查询参数
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
stakeholder |
pkg |
应用包名(必填) |
dialogue |
templateTypes |
模板类型列表 |
V2 完整请求体(填入业务值后 AES 加密,填入代理请求 空 b 参数 字段)
// category_list — 获取分类列表
// POST {baseUrl}/workshop/lounge/hub/playground
//
// 代理请求:
// {
// "humor_level": "FunyMeeAI", // appId 明文
// "comedy_style": "W2xHjqbkV0pcl7+9dWSBagfbvQ/VBnwaqyDkVol1Z9M=", // AES(/v1/image/category-list)
// "avatar_mode": "7J8V5jVfCHKnEigVbbS08w==", // AES(GET)
// "filter_type": "<AES({stakeholder: 应用包名(必填), comedy: 用户登录token}) → Base64>", // AES(映射后的Header字段名构造JSON) → Base64
// "scene_id": "<AES({stakeholder: 应用包名(必填), dialogue: 模板类型列表}) → Base64>", // AES(映射后的URL参数字段名构造JSON) → Base64
// "clip_duration": "<AES(V2请求体JSON)>", // AES(V2包装后的业务数据) → Base64
// "sample_rate": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "watermark_id": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "geo_radius": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "accuracy_m": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// }
//
// 注意: 原始接口为 GET,走代理后统一 POST,仍需传 V2 请求体(业务字段为空)
// V2 请求体 — 填入业务值后 AES 加密,填入 clip_duration
{
"shell": 2,
"capsule": {
"envelope": {
"container": {
}
}
},
"shimmer": "<随机4-8位字母数字,AES加密→Base64>",
"glimmer": "<随机4-8位字母数字,AES加密→Base64>",
"flicker": "<随机4-8位字母数字,AES加密→Base64>",
"sparkle": "<随机4-8位字母数字,AES加密→Base64>",
"rustle": "<随机4-8位字母数字,AES加密→Base64>",
"murmur": "<随机4-8位字母数字,AES加密→Base64>",
"whisper": "<随机4-8位字母数字,AES加密→Base64>",
"echo": "<随机4-8位字母数字,AES加密→Base64>"
}
响应体(解密后)
{
"sprint": "", // msg (string) 消息
"scene": 0, // code (int) 状态码,0=成功
"costume": [ // data (array) 分类列表
{
"ringing": "", // templateType (string) 模板类型
"rotation": "", // categoryName (string) 分类名称
"scale": 0 // categoryId (int) 分类ID
}
]
}
获取换衣模板
GET /v1/image/clothes_template | 鉴权:需要
请求头
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
stakeholder |
pkg |
应用包名(必填) |
comedy |
User_token |
用户登录token |
查询参数
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
sticker |
app |
应用标识(必填,iOS: HIOS / Android: HAndroid) |
satire |
ch |
渠道号 |
symposium |
userId |
用户ID |
scale |
categoryId |
分类ID (默认值: "1") |
V2 完整请求体(填入业务值后 AES 加密,填入代理请求 空 b 参数 字段)
// clothes_template — 获取换衣模板
// POST {baseUrl}/workshop/lounge/hub/playground
//
// 代理请求:
// {
// "humor_level": "FunyMeeAI", // appId 明文
// "comedy_style": "lYVJpsqrLK/C9kfDM8JOUZbh89U6hhdQa7ikBPG3MaU=", // AES(/v1/image/clothes_template)
// "avatar_mode": "7J8V5jVfCHKnEigVbbS08w==", // AES(GET)
// "filter_type": "<AES({stakeholder: 应用包名(必填), comedy: 用户登录token}) → Base64>", // AES(映射后的Header字段名构造JSON) → Base64
// "scene_id": "<AES({sticker: 应用标识(必填,iOS: HIOS / Android: HAndroid), satire: 渠道号, symposium: 用户ID, scale: 1}) → Base64>", // AES(映射后的URL参数字段名构造JSON) → Base64
// "clip_duration": "<AES(V2请求体JSON)>", // AES(V2包装后的业务数据) → Base64
// "sample_rate": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "watermark_id": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "geo_radius": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "accuracy_m": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// }
//
// 注意: 原始接口为 GET,走代理后统一 POST,仍需传 V2 请求体(业务字段为空)
// V2 请求体 — 填入业务值后 AES 加密,填入 clip_duration
{
"shell": 2,
"capsule": {
"envelope": {
"container": {
}
}
},
"shimmer": "<随机4-8位字母数字,AES加密→Base64>",
"glimmer": "<随机4-8位字母数字,AES加密→Base64>",
"flicker": "<随机4-8位字母数字,AES加密→Base64>",
"sparkle": "<随机4-8位字母数字,AES加密→Base64>",
"rustle": "<随机4-8位字母数字,AES加密→Base64>",
"murmur": "<随机4-8位字母数字,AES加密→Base64>",
"whisper": "<随机4-8位字母数字,AES加密→Base64>",
"echo": "<随机4-8位字母数字,AES加密→Base64>"
}
响应体(解密后)
{
"sprint": "", // msg (string) 消息
"scene": 0, // code (int) 状态码,0=成功
"costume": [ // data (array) 换衣模板列表
{
"itinerary": "", // templateName (string) 模板名称
"padding": 0, // credits (int) 积分
"frequency": "", // avatar (string) 头像
"revenue": 0, // type (int) 类型
"resistance": "", // user (string) 用户
"refractive": "" // templateUrl (string) 模板URL
}
]
}
获取图片模板
GET /v1/image/image_template | 鉴权:需要
请求头
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
stakeholder |
pkg |
应用包名(必填) |
comedy |
User_token |
用户登录token |
查询参数
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
sticker |
app |
应用标识(必填,iOS: HIOS / Android: HAndroid) |
satire |
ch |
渠道号 |
symposium |
userId |
用户ID |
scale |
categoryId |
分类ID |
V2 完整请求体(填入业务值后 AES 加密,填入代理请求 空 b 参数 字段)
// image_template — 获取图片模板
// POST {baseUrl}/workshop/lounge/hub/playground
//
// 代理请求:
// {
// "humor_level": "FunyMeeAI", // appId 明文
// "comedy_style": "Dx60zWIjtpgVTVqx0xaTScQQxW/GKc+Be40iSza0gZU=", // AES(/v1/image/image_template)
// "avatar_mode": "7J8V5jVfCHKnEigVbbS08w==", // AES(GET)
// "filter_type": "<AES({stakeholder: 应用包名(必填), comedy: 用户登录token}) → Base64>", // AES(映射后的Header字段名构造JSON) → Base64
// "scene_id": "<AES({sticker: 应用标识(必填,iOS: HIOS / Android: HAndroid), satire: 渠道号, symposium: 用户ID, scale: 分类ID}) → Base64>", // AES(映射后的URL参数字段名构造JSON) → Base64
// "clip_duration": "<AES(V2请求体JSON)>", // AES(V2包装后的业务数据) → Base64
// "sample_rate": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "watermark_id": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "geo_radius": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "accuracy_m": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// }
//
// 注意: 原始接口为 GET,走代理后统一 POST,仍需传 V2 请求体(业务字段为空)
// V2 请求体 — 填入业务值后 AES 加密,填入 clip_duration
{
"shell": 2,
"capsule": {
"envelope": {
"container": {
}
}
},
"shimmer": "<随机4-8位字母数字,AES加密→Base64>",
"glimmer": "<随机4-8位字母数字,AES加密→Base64>",
"flicker": "<随机4-8位字母数字,AES加密→Base64>",
"sparkle": "<随机4-8位字母数字,AES加密→Base64>",
"rustle": "<随机4-8位字母数字,AES加密→Base64>",
"murmur": "<随机4-8位字母数字,AES加密→Base64>",
"whisper": "<随机4-8位字母数字,AES加密→Base64>",
"echo": "<随机4-8位字母数字,AES加密→Base64>"
}
响应体(解密后)
{
"sprint": "", // msg (string) 消息
"scene": 0, // code (int) 状态码,0=成功
"costume": [ // data (array) 图片模板列表
{
"repository": "", // headPos (string) 头像位置
"itinerary": "", // templateName (string) 模板名称
"radius": 0, // faceIndex (int) 人脸索引
"padding": 0, // credits (int) 积分
"frequency": "", // avatar (string) 头像
"resistance": "", // user (string) 用户
"correctness": "", // resulotion (string) 分辨率
"refractive": "" // templateUrl (string) 模板URL
}
]
}
获取推荐头像
GET /v1/image/recommendhead | 鉴权:需要
请求头
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
stakeholder |
pkg |
应用包名(必填) |
comedy |
User_token |
用户登录token |
查询参数
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
sticker |
app |
应用标识(必填,iOS: HIOS / Android: HAndroid) |
symposium |
userId |
用户ID |
V2 完整请求体(填入业务值后 AES 加密,填入代理请求 空 b 参数 字段)
// recommendhead — 获取推荐头像
// POST {baseUrl}/workshop/lounge/hub/playground
//
// 代理请求:
// {
// "humor_level": "FunyMeeAI", // appId 明文
// "comedy_style": "M0P94sscEB5AGtUBFtHnNoAUPd+5uTKtyY4azNUs8m4=", // AES(/v1/image/recommendhead)
// "avatar_mode": "7J8V5jVfCHKnEigVbbS08w==", // AES(GET)
// "filter_type": "<AES({stakeholder: 应用包名(必填), comedy: 用户登录token}) → Base64>", // AES(映射后的Header字段名构造JSON) → Base64
// "scene_id": "<AES({sticker: 应用标识(必填,iOS: HIOS / Android: HAndroid), symposium: 用户ID}) → Base64>", // AES(映射后的URL参数字段名构造JSON) → Base64
// "clip_duration": "<AES(V2请求体JSON)>", // AES(V2包装后的业务数据) → Base64
// "sample_rate": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "watermark_id": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "geo_radius": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "accuracy_m": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// }
//
// 注意: 原始接口为 GET,走代理后统一 POST,仍需传 V2 请求体(业务字段为空)
// V2 请求体 — 填入业务值后 AES 加密,填入 clip_duration
{
"shell": 2,
"capsule": {
"envelope": {
"container": {
}
}
},
"shimmer": "<随机4-8位字母数字,AES加密→Base64>",
"glimmer": "<随机4-8位字母数字,AES加密→Base64>",
"flicker": "<随机4-8位字母数字,AES加密→Base64>",
"sparkle": "<随机4-8位字母数字,AES加密→Base64>",
"rustle": "<随机4-8位字母数字,AES加密→Base64>",
"murmur": "<随机4-8位字母数字,AES加密→Base64>",
"whisper": "<随机4-8位字母数字,AES加密→Base64>",
"echo": "<随机4-8位字母数字,AES加密→Base64>"
}
响应体(解密后)
{
"sprint": "", // msg (string) 消息
"scene": 0, // code (int) 状态码,0=成功
"costume": { // data
"load": [ // sys (array) 系统推荐列表
{
"circular": "", // img (string) 图片
"repository": "", // headPos (string) 头部位置
"radius": 0, // faceIndex (int) 人脸索引
"altitude": "" // url (string) URL
}
],
"fabricate": [ // recent (array) 最近使用列表
{
"circular": "", // img (string) 图片
"repository": "", // headPos (string) 头部位置
"radius": 0, // faceIndex (int) 人脸索引
"altitude": "" // url (string) URL
}
]
}
}
获取视频换脸模板
GET /v1/image/faceswap_video_template | 鉴权:需要
请求头
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
stakeholder |
pkg |
应用包名(必填) |
comedy |
User_token |
用户登录token |
查询参数
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
sticker |
app |
应用标识(必填,iOS: HIOS / Android: HAndroid) |
satire |
ch |
渠道号 |
symposium |
userId |
用户ID |
scale |
categoryId |
分类ID |
V2 完整请求体(填入业务值后 AES 加密,填入代理请求 空 b 参数 字段)
// faceswap_video_template — 获取视频换脸模板
// POST {baseUrl}/workshop/lounge/hub/playground
//
// 代理请求:
// {
// "humor_level": "FunyMeeAI", // appId 明文
// "comedy_style": "BviCoJhpWNssLcLWCeCEAO3a3lQCf60++HfsC/vedD9V0kfX2EYyCqybFZnWFqwP", // AES(/v1/image/faceswap_video_template)
// "avatar_mode": "7J8V5jVfCHKnEigVbbS08w==", // AES(GET)
// "filter_type": "<AES({stakeholder: 应用包名(必填), comedy: 用户登录token}) → Base64>", // AES(映射后的Header字段名构造JSON) → Base64
// "scene_id": "<AES({sticker: 应用标识(必填,iOS: HIOS / Android: HAndroid), satire: 渠道号, symposium: 用户ID, scale: 分类ID}) → Base64>", // AES(映射后的URL参数字段名构造JSON) → Base64
// "clip_duration": "<AES(V2请求体JSON)>", // AES(V2包装后的业务数据) → Base64
// "sample_rate": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "watermark_id": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "geo_radius": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "accuracy_m": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// }
//
// 注意: 原始接口为 GET,走代理后统一 POST,仍需传 V2 请求体(业务字段为空)
// V2 请求体 — 填入业务值后 AES 加密,填入 clip_duration
{
"shell": 2,
"capsule": {
"envelope": {
"container": {
}
}
},
"shimmer": "<随机4-8位字母数字,AES加密→Base64>",
"glimmer": "<随机4-8位字母数字,AES加密→Base64>",
"flicker": "<随机4-8位字母数字,AES加密→Base64>",
"sparkle": "<随机4-8位字母数字,AES加密→Base64>",
"rustle": "<随机4-8位字母数字,AES加密→Base64>",
"murmur": "<随机4-8位字母数字,AES加密→Base64>",
"whisper": "<随机4-8位字母数字,AES加密→Base64>",
"echo": "<随机4-8位字母数字,AES加密→Base64>"
}
响应体(解密后)
{
"sprint": "", // msg (string) 消息
"scene": 0, // code (int) 状态码,0=成功
"costume": [ // data (array) 视频换脸模板列表
{
"pattern": 0, // frameIndex (int) 帧索引
"hue": 0, // videoDuration (int) 视频时长
"itinerary": "", // templateName (string) 模板名称
"padding": 0, // credits (int) 积分
"radius": 0, // faceIndex (int) 人脸索引
"quantized": "", // templateFaceUrl (string) 模板人脸URL
"frequency": "", // avatar (string) 头像
"duration": "", // animate (string) 动画
"resistance": "", // user (string) 用户
"refractive": "" // templateUrl (string) 模板URL
}
]
}
获取图转视频姿态模板
GET /v1/image/img2Video_pose_template | 鉴权:需要
请求头
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
stakeholder |
pkg |
应用包名(必填) |
comedy |
User_token |
用户登录token |
查询参数
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
sticker |
app |
应用标识(必填,iOS: HIOS / Android: HAndroid) |
satire |
ch |
渠道号 |
symposium |
userId |
用户ID |
scale |
categoryId |
分类ID (默认值: "1") |
V2 完整请求体(填入业务值后 AES 加密,填入代理请求 空 b 参数 字段)
// img2Video_pose_template — 获取图转视频姿态模板
// POST {baseUrl}/workshop/lounge/hub/playground
//
// 代理请求:
// {
// "humor_level": "FunyMeeAI", // appId 明文
// "comedy_style": "8/gQGltIUvJ5gX2DJkOYRK5F5tzK0SzHi0QfCxLBYvJV0kfX2EYyCqybFZnWFqwP", // AES(/v1/image/img2Video_pose_template)
// "avatar_mode": "7J8V5jVfCHKnEigVbbS08w==", // AES(GET)
// "filter_type": "<AES({stakeholder: 应用包名(必填), comedy: 用户登录token}) → Base64>", // AES(映射后的Header字段名构造JSON) → Base64
// "scene_id": "<AES({sticker: 应用标识(必填,iOS: HIOS / Android: HAndroid), satire: 渠道号, symposium: 用户ID, scale: 1}) → Base64>", // AES(映射后的URL参数字段名构造JSON) → Base64
// "clip_duration": "<AES(V2请求体JSON)>", // AES(V2包装后的业务数据) → Base64
// "sample_rate": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "watermark_id": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "geo_radius": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "accuracy_m": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// }
//
// 注意: 原始接口为 GET,走代理后统一 POST,仍需传 V2 请求体(业务字段为空)
// V2 请求体 — 填入业务值后 AES 加密,填入 clip_duration
{
"shell": 2,
"capsule": {
"envelope": {
"container": {
}
}
},
"shimmer": "<随机4-8位字母数字,AES加密→Base64>",
"glimmer": "<随机4-8位字母数字,AES加密→Base64>",
"flicker": "<随机4-8位字母数字,AES加密→Base64>",
"sparkle": "<随机4-8位字母数字,AES加密→Base64>",
"rustle": "<随机4-8位字母数字,AES加密→Base64>",
"murmur": "<随机4-8位字母数字,AES加密→Base64>",
"whisper": "<随机4-8位字母数字,AES加密→Base64>",
"echo": "<随机4-8位字母数字,AES加密→Base64>"
}
响应体(解密后)
{
"sprint": "", // msg (string) 消息
"scene": 0, // code (int) 状态码,0=成功
"costume": [ // data (array) 图转视频姿态模板列表
{
"preview": 0, // duration (int) 时长
"convergence": "", // templateTfUrl (string) 模板TF URL
"capitalization": 0, // templateTfCredits (int) 模板TF积分
"tension": "", // templateFifUrl (string) 模板FIF URL
"itinerary": "", // templateName (string) 模板名称
"padding": {}, // credits (object) 积分配置
"demodulation": 0, // templateTfDuration (int) 模板TF时长
"usability": 0, // templateFifDuration (int) 模板FIF时长
"duration": "", // animate (string) 动画
"compressed": 0, // templateFifCredits (int) 模板FIF积分
"refractive": "" // templateUrl (string) 模板URL
}
]
}
获取图转视频分类
GET /v1/image/img2video/categories | 鉴权:需要
请求头
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
stakeholder |
pkg |
应用包名(必填) |
comedy |
User_token |
用户登录token |
V2 完整请求体(填入业务值后 AES 加密,填入代理请求 空 b 参数 字段)
// categories — 获取图转视频分类
// POST {baseUrl}/workshop/lounge/hub/playground
//
// 代理请求:
// {
// "humor_level": "FunyMeeAI", // appId 明文
// "comedy_style": "hlyoby7+Q/bDo1oWHbaiQbslnntFuCttp9esQfOj2ak=", // AES(/v1/image/img2video/categories)
// "avatar_mode": "7J8V5jVfCHKnEigVbbS08w==", // AES(GET)
// "filter_type": "<AES({stakeholder: 应用包名(必填), comedy: 用户登录token}) → Base64>", // AES(映射后的Header字段名构造JSON) → Base64
// "scene_id": "<AES(无) → Base64>", // AES(映射后的URL参数字段名构造JSON) → Base64
// "clip_duration": "<AES(V2请求体JSON)>", // AES(V2包装后的业务数据) → Base64
// "sample_rate": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "watermark_id": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "geo_radius": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "accuracy_m": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// }
//
// 注意: 原始接口为 GET,走代理后统一 POST,仍需传 V2 请求体(业务字段为空)
// V2 请求体 — 填入业务值后 AES 加密,填入 clip_duration
{
"shell": 2,
"capsule": {
"envelope": {
"container": {
}
}
},
"shimmer": "<随机4-8位字母数字,AES加密→Base64>",
"glimmer": "<随机4-8位字母数字,AES加密→Base64>",
"flicker": "<随机4-8位字母数字,AES加密→Base64>",
"sparkle": "<随机4-8位字母数字,AES加密→Base64>",
"rustle": "<随机4-8位字母数字,AES加密→Base64>",
"murmur": "<随机4-8位字母数字,AES加密→Base64>",
"whisper": "<随机4-8位字母数字,AES加密→Base64>",
"echo": "<随机4-8位字母数字,AES加密→Base64>"
}
响应体(解密后)
{
"sprint": "", // msg (string) 消息
"scene": 0, // code (int) 状态码,0=成功
"costume": [ // data (array) 分类列表
{
"alignment": "", // name (string) 分类名称
"delay": "", // icon (string) 图标
"timing": 0 // id (int) 分类ID
}
]
}
支付
需要登录态
创建支付订单
POST /v1/payment/createPayment | 鉴权:需要
请求头
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
stakeholder |
pkg |
应用包名(必填) |
comedy |
User_token |
用户登录token |
查询参数
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
sticker |
app |
应用标识(必填,iOS: HIOS / Android: HAndroid) |
symposium |
userId |
用户ID |
请求体字段
| 字段(V2名) | 原始字段 | 类型 | 说明 |
|---|---|---|---|
sticker |
app |
string | 应用标识(必填) |
council |
lastName |
string | 姓 |
overlay |
country |
string | 国家代码 |
outfit |
expireMonth |
string | 过期月 |
avatar |
accountName |
string | 账户名 |
carnival |
userInfoType |
string | 用户信息类型 |
punchline |
automaticRenewal |
boolean | 是否自动续费 |
skit |
channel |
string | 渠道 |
persona |
cvcCode |
string | CVC安全码 |
reel |
channelType |
string | 渠道类型 |
symposium |
userId |
string | 用户ID |
character |
activityId |
string | 活动模板ID |
appendix |
firstName |
string | 名 |
bundle |
subPaymentMethod |
string | 子支付方式 |
sponsor |
phone |
string | 电话 |
microservice |
tgOrderId |
string | Telegram订单ID |
chart |
tgId |
string | Telegram ID |
alignment |
name |
string | 姓名 |
ledger |
paymentMethod |
string | 支付方式,如 GOOGLEPAY/APPLEPAY |
trait |
expireYear |
string | 过期年 |
spoof |
card |
string | 卡号 |
wallet |
status |
string | 状态 |
V2 完整请求体(填入业务值后 AES 加密,填入代理请求 b 参数 字段)
// createPayment — 创建支付订单
// POST {baseUrl}/workshop/lounge/hub/playground
//
// 代理请求:
// {
// "humor_level": "FunyMeeAI", // appId 明文
// "comedy_style": "XcNR8qG7sfb38dR3IEhYLYmALeBOULRvjJQiuVgqSxE=", // AES(/v1/payment/createPayment)
// "avatar_mode": "Mhb3yNV4SnrfCK8EJAq9VQ==", // AES(POST)
// "filter_type": "<AES({stakeholder: 应用包名(必填), comedy: 用户登录token}) → Base64>", // AES(映射后的Header字段名构造JSON) → Base64
// "scene_id": "<AES({sticker: 应用标识(必填,iOS: HIOS / Android: HAndroid), symposium: 用户ID}) → Base64>", // AES(映射后的URL参数字段名构造JSON) → Base64
// "clip_duration": "<AES(V2请求体JSON)>", // AES(V2包装后的业务数据) → Base64
// "sample_rate": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "watermark_id": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "geo_radius": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "accuracy_m": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// }
//
// V2 请求体 — 填入业务值后 AES 加密,填入 clip_duration
{
"shell": 2,
"capsule": {
"envelope": {
"container": {
"sticker": "", // app (string) 应用标识(必填)
"council": "", // lastName (string) 姓
"overlay": "", // country (string) 国家代码
"outfit": "", // expireMonth (string) 过期月
"avatar": "", // accountName (string) 账户名
"carnival": "", // userInfoType (string) 用户信息类型
"punchline": false, // automaticRenewal (boolean) 是否自动续费
"skit": "", // channel (string) 渠道
"persona": "", // cvcCode (string) CVC安全码
"reel": "", // channelType (string) 渠道类型
"symposium": "", // userId (string) 用户ID
"character": "", // activityId (string) 活动模板ID
"appendix": "", // firstName (string) 名
"bundle": "", // subPaymentMethod (string) 子支付方式
"sponsor": "", // phone (string) 电话
"microservice": "", // tgOrderId (string) Telegram订单ID
"chart": "", // tgId (string) Telegram ID
"alignment": "", // name (string) 姓名
"ledger": "", // paymentMethod (string) 支付方式,如 GOOGLEPAY/APPLEPAY
"trait": "", // expireYear (string) 过期年
"spoof": "", // card (string) 卡号
"wallet": "" // status (string) 状态
}
}
},
"shimmer": "<随机4-8位字母数字,AES加密→Base64>",
"glimmer": "<随机4-8位字母数字,AES加密→Base64>",
"flicker": "<随机4-8位字母数字,AES加密→Base64>",
"sparkle": "<随机4-8位字母数字,AES加密→Base64>",
"rustle": "<随机4-8位字母数字,AES加密→Base64>",
"murmur": "<随机4-8位字母数字,AES加密→Base64>",
"whisper": "<随机4-8位字母数字,AES加密→Base64>",
"echo": "<随机4-8位字母数字,AES加密→Base64>"
}
响应体(解密后)
{
"sprint": "", // msg (string) 消息
"scene": 0, // code (int) 状态码,0=成功
"costume": { // data
"explore": {}, // features (object) 功能特性
"introspect": [ // payTypeList (array) 支付类型列表
{
"constant": "", // showName (string) 展示名称
"alignment": "", // name (string) 支付方式
"delay": "", // icon (string) 展示图标
"segment": "", // paylink (string) 支付链接
"timing": 0, // id (long) ID
"overtone": 0 // sort (int) 排序
}
],
"duplicate": "", // issuerUrl (string) 发卡方URL
"merge": "", // cryptoInvoiceUrl (string) 加密发票URL
"objectify": "", // payUrl (string) 支付URL
"timing": "", // id (string) 支付ID/订单ID
"submit": "", // payStatus (string) 支付状态枚举名:INIT | SUCCESS | PROCESSING | FAILED | CANCELED
"morph": 0 // openType (int) URL打开方式,0=内部/1=外部浏览器
}
}
获取Google商品列表
GET /v1/payment/getGooglePayActivities | 鉴权:需要
请求头
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
stakeholder |
pkg |
应用包名(必填) |
comedy |
User_token |
用户登录token |
查询参数
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
sticker |
app |
应用标识(必填,iOS: HIOS / Android: HAndroid) |
filter |
client |
客户端 |
overlay |
country |
国家代码 |
stakeholder |
pkg |
应用包名(必填) |
V2 完整请求体(填入业务值后 AES 加密,填入代理请求 空 b 参数 字段)
// getGooglePayActivities — 获取Google商品列表
// POST {baseUrl}/workshop/lounge/hub/playground
//
// 代理请求:
// {
// "humor_level": "FunyMeeAI", // appId 明文
// "comedy_style": "RuncHT0xkF47+AU0wnXKWH+aw8808UOS9iEomNrpe2LF41+d749qAu2t016y1xBJ", // AES(/v1/payment/getGooglePayActivities)
// "avatar_mode": "7J8V5jVfCHKnEigVbbS08w==", // AES(GET)
// "filter_type": "<AES({stakeholder: 应用包名(必填), comedy: 用户登录token}) → Base64>", // AES(映射后的Header字段名构造JSON) → Base64
// "scene_id": "<AES({sticker: 应用标识(必填,iOS: HIOS / Android: HAndroid), filter: 客户端, overlay: 国家代码, stakeholder: 应用包名(必填)}) → Base64>", // AES(映射后的URL参数字段名构造JSON) → Base64
// "clip_duration": "<AES(V2请求体JSON)>", // AES(V2包装后的业务数据) → Base64
// "sample_rate": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "watermark_id": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "geo_radius": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "accuracy_m": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// }
//
// 注意: 原始接口为 GET,走代理后统一 POST,仍需传 V2 请求体(业务字段为空)
// V2 请求体 — 填入业务值后 AES 加密,填入 clip_duration
{
"shell": 2,
"capsule": {
"envelope": {
"container": {
}
}
},
"shimmer": "<随机4-8位字母数字,AES加密→Base64>",
"glimmer": "<随机4-8位字母数字,AES加密→Base64>",
"flicker": "<随机4-8位字母数字,AES加密→Base64>",
"sparkle": "<随机4-8位字母数字,AES加密→Base64>",
"rustle": "<随机4-8位字母数字,AES加密→Base64>",
"murmur": "<随机4-8位字母数字,AES加密→Base64>",
"whisper": "<随机4-8位字母数字,AES加密→Base64>",
"echo": "<随机4-8位字母数字,AES加密→Base64>"
}
响应体(解密后)
{
"sprint": "", // msg (string) 消息
"scene": 0, // code (int) 状态码,0=成功
"costume": { // data
"cap": [ // subscriptionActivitys (array) 订阅商品列表
{
"spacing": "", // note (string) 备注
"scene": "", // code (string) 产品代码
"contrast": 0, // bonus (int) 赠送积分
"sketch": "", // actualAmount (string) 实际金额
"margin": "", // discountOff (string) 折扣
"interval": "", // title (string) 标题
"brochure": "", // originAmount (string) 原价
"character": "", // activityId (string) 活动ID
"unicast": "", // subscriptionPeriod (string) 订阅周期
"padding": 0, // credits (int) 积分数
"filter": "", // client (string) 客户端
"backdrop": 0, // days (int) 天数
"mascot": "", // currency (string) 货币
"pivot": 0 // productType (int) 产品类型
}
],
"animate": [ // activitys (array) 商品列表
{
"spacing": "", // note (string) 备注
"scene": "", // code (string) 产品代码
"contrast": 0, // bonus (int) 赠送积分
"sketch": "", // actualAmount (string) 实际金额
"margin": "", // discountOff (string) 折扣
"interval": "", // title (string) 标题
"brochure": "", // originAmount (string) 原价
"character": "", // activityId (string) 活动ID
"unicast": "", // subscriptionPeriod (string) 订阅周期
"padding": 0, // credits (int) 积分数
"filter": "", // client (string) 客户端
"backdrop": 0, // days (int) 天数
"mascot": "", // currency (string) 货币
"pivot": 0 // productType (int) 产品类型
}
]
}
}
获取Apple商品列表
GET /v1/payment/getApplePayActivities | 鉴权:需要
请求头
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
stakeholder |
pkg |
应用包名(必填) |
comedy |
User_token |
用户登录token |
查询参数
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
sticker |
app |
应用标识(必填,iOS: HIOS / Android: HAndroid) |
filter |
client |
客户端 |
overlay |
country |
国家代码 |
stakeholder |
pkg |
应用包名(必填) |
V2 完整请求体(填入业务值后 AES 加密,填入代理请求 空 b 参数 字段)
// getApplePayActivities — 获取Apple商品列表
// POST {baseUrl}/workshop/lounge/hub/playground
//
// 代理请求:
// {
// "humor_level": "FunyMeeAI", // appId 明文
// "comedy_style": "U77eVRQKlTGeMSK9VhvSxf6S5/FjnRkN65JWx/dbkP41indkNaavFQ9teSfAN69C", // AES(/v1/payment/getApplePayActivities)
// "avatar_mode": "7J8V5jVfCHKnEigVbbS08w==", // AES(GET)
// "filter_type": "<AES({stakeholder: 应用包名(必填), comedy: 用户登录token}) → Base64>", // AES(映射后的Header字段名构造JSON) → Base64
// "scene_id": "<AES({sticker: 应用标识(必填,iOS: HIOS / Android: HAndroid), filter: 客户端, overlay: 国家代码, stakeholder: 应用包名(必填)}) → Base64>", // AES(映射后的URL参数字段名构造JSON) → Base64
// "clip_duration": "<AES(V2请求体JSON)>", // AES(V2包装后的业务数据) → Base64
// "sample_rate": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "watermark_id": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "geo_radius": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "accuracy_m": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// }
//
// 注意: 原始接口为 GET,走代理后统一 POST,仍需传 V2 请求体(业务字段为空)
// V2 请求体 — 填入业务值后 AES 加密,填入 clip_duration
{
"shell": 2,
"capsule": {
"envelope": {
"container": {
}
}
},
"shimmer": "<随机4-8位字母数字,AES加密→Base64>",
"glimmer": "<随机4-8位字母数字,AES加密→Base64>",
"flicker": "<随机4-8位字母数字,AES加密→Base64>",
"sparkle": "<随机4-8位字母数字,AES加密→Base64>",
"rustle": "<随机4-8位字母数字,AES加密→Base64>",
"murmur": "<随机4-8位字母数字,AES加密→Base64>",
"whisper": "<随机4-8位字母数字,AES加密→Base64>",
"echo": "<随机4-8位字母数字,AES加密→Base64>"
}
响应体(解密后)
{
"sprint": "", // msg (string) 消息
"scene": 0, // code (int) 状态码,0=成功
"costume": { // data
"cap": [ // subscriptionActivitys (array) 订阅商品列表
{
"spacing": "", // note (string) 备注
"scene": "", // code (string) 产品代码
"contrast": 0, // bonus (int) 赠送积分
"sketch": "", // actualAmount (string) 实际金额
"margin": "", // discountOff (string) 折扣
"interval": "", // title (string) 标题
"brochure": "", // originAmount (string) 原价
"character": "", // activityId (string) 活动ID
"unicast": "", // subscriptionPeriod (string) 订阅周期
"padding": 0, // credits (int) 积分数
"filter": "", // client (string) 客户端
"backdrop": 0, // days (int) 天数
"mascot": "", // currency (string) 货币
"pivot": 0 // productType (int) 产品类型
}
],
"animate": [ // activitys (array) 商品列表
{
"spacing": "", // note (string) 备注
"scene": "", // code (string) 产品代码
"contrast": 0, // bonus (int) 赠送积分
"sketch": "", // actualAmount (string) 实际金额
"margin": "", // discountOff (string) 折扣
"interval": "", // title (string) 标题
"brochure": "", // originAmount (string) 原价
"character": "", // activityId (string) 活动ID
"unicast": "", // subscriptionPeriod (string) 订阅周期
"padding": 0, // credits (int) 积分数
"filter": "", // client (string) 客户端
"backdrop": 0, // days (int) 天数
"mascot": "", // currency (string) 货币
"pivot": 0 // productType (int) 产品类型
}
]
}
}
Google支付结果回调
POST /v1/payment/googlepay | 鉴权:需要
请求头
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
stakeholder |
pkg |
应用包名(必填) |
comedy |
User_token |
用户登录token |
查询参数
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
sticker |
app |
应用标识(必填,iOS: HIOS / Android: HAndroid) |
symposium |
userId |
用户ID |
请求体字段
| 字段(V2名) | 原始字段 | 类型 | 说明 |
|---|---|---|---|
selection |
signature |
string | 签名 |
gauge |
purchaseData |
string | Google支付凭据JSON |
timing |
id |
string | 支付ID/订单ID(逻辑名 id;app_client 直连接口常写作 federation) |
symposium |
userId |
string | 用户ID |
V2 完整请求体(填入业务值后 AES 加密,填入代理请求 b 参数 字段)
// googlepay — Google支付结果回调
// POST {baseUrl}/workshop/lounge/hub/playground
//
// 代理请求:
// {
// "humor_level": "FunyMeeAI", // appId 明文
// "comedy_style": "5kbSUwSgEttk3PI1TF7hHO3sz7F7T7MtRIC3ycT/lGs=", // AES(/v1/payment/googlepay)
// "avatar_mode": "Mhb3yNV4SnrfCK8EJAq9VQ==", // AES(POST)
// "filter_type": "<AES({stakeholder: 应用包名(必填), comedy: 用户登录token}) → Base64>", // AES(映射后的Header字段名构造JSON) → Base64
// "scene_id": "<AES({sticker: 应用标识(必填,iOS: HIOS / Android: HAndroid), symposium: 用户ID}) → Base64>", // AES(映射后的URL参数字段名构造JSON) → Base64
// "clip_duration": "<AES(V2请求体JSON)>", // AES(V2包装后的业务数据) → Base64
// "sample_rate": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "watermark_id": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "geo_radius": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "accuracy_m": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// }
//
// V2 请求体 — 填入业务值后 AES 加密,填入 clip_duration
{
"shell": 2,
"capsule": {
"envelope": {
"container": {
"selection": "", // signature (string) 签名
"gauge": "", // purchaseData (string) Google支付凭据JSON
"timing": "", // id (string) 支付ID/订单ID
"symposium": "" // userId (string) 用户ID
}
}
},
"shimmer": "<随机4-8位字母数字,AES加密→Base64>",
"glimmer": "<随机4-8位字母数字,AES加密→Base64>",
"flicker": "<随机4-8位字母数字,AES加密→Base64>",
"sparkle": "<随机4-8位字母数字,AES加密→Base64>",
"rustle": "<随机4-8位字母数字,AES加密→Base64>",
"murmur": "<随机4-8位字母数字,AES加密→Base64>",
"whisper": "<随机4-8位字母数字,AES加密→Base64>",
"echo": "<随机4-8位字母数字,AES加密→Base64>"
}
响应体(解密后)
{
"sprint": "", // msg (string) 消息
"scene": 0, // code (int) 状态码,0=成功
"costume": { // data
"character": "", // activityId (string) 活动模板ID
"reformat": "", // redirectUrl (string) 重定向URL
"remix": false, // addCredits (boolean) 是否添加积分
"bubble": "", // count (string) 数量
"mascot": "", // currency (string) 货币
"timing": "", // id (string) 支付ID/订单ID
"wallet": "" // status (string) 支付状态枚举名:INIT | SUCCESS | PROCESSING | FAILED | CANCELED
}
}
Apple支付结果回调
POST /v1/payment/applepay | 鉴权:需要
请求头
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
stakeholder |
pkg |
应用包名(必填) |
comedy |
User_token |
用户登录token |
查询参数
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
sticker |
app |
应用标识(必填,iOS: HIOS / Android: HAndroid) |
stakeholder |
pkg |
应用包名(必填) |
请求体字段
| 字段(V2名) | 原始字段 | 类型 | 说明 |
|---|---|---|---|
funnel |
receipt |
string | Apple支付凭据 |
timing |
id |
string | 支付ID/订单ID |
symposium |
userId |
string | 用户ID |
installation |
transactionId |
string | 交易ID |
V2 完整请求体(填入业务值后 AES 加密,填入代理请求 b 参数 字段)
// applepay — Apple支付结果回调
// POST {baseUrl}/workshop/lounge/hub/playground
//
// 代理请求:
// {
// "humor_level": "FunyMeeAI", // appId 明文
// "comedy_style": "bFdphJDLl0MeY5lKNDqAg2HZ6ktg9Ki9gw1JEAa3rYE=", // AES(/v1/payment/applepay)
// "avatar_mode": "Mhb3yNV4SnrfCK8EJAq9VQ==", // AES(POST)
// "filter_type": "<AES({stakeholder: 应用包名(必填), comedy: 用户登录token}) → Base64>", // AES(映射后的Header字段名构造JSON) → Base64
// "scene_id": "<AES({sticker: 应用标识(必填,iOS: HIOS / Android: HAndroid), stakeholder: 应用包名(必填)}) → Base64>", // AES(映射后的URL参数字段名构造JSON) → Base64
// "clip_duration": "<AES(V2请求体JSON)>", // AES(V2包装后的业务数据) → Base64
// "sample_rate": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "watermark_id": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "geo_radius": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "accuracy_m": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// }
//
// V2 请求体 — 填入业务值后 AES 加密,填入 clip_duration
{
"shell": 2,
"capsule": {
"envelope": {
"container": {
"funnel": "", // receipt (string) Apple支付凭据
"timing": "", // id (string) 支付ID/订单ID
"symposium": "", // userId (string) 用户ID
"installation": "" // transactionId (string) 交易ID
}
}
},
"shimmer": "<随机4-8位字母数字,AES加密→Base64>",
"glimmer": "<随机4-8位字母数字,AES加密→Base64>",
"flicker": "<随机4-8位字母数字,AES加密→Base64>",
"sparkle": "<随机4-8位字母数字,AES加密→Base64>",
"rustle": "<随机4-8位字母数字,AES加密→Base64>",
"murmur": "<随机4-8位字母数字,AES加密→Base64>",
"whisper": "<随机4-8位字母数字,AES加密→Base64>",
"echo": "<随机4-8位字母数字,AES加密→Base64>"
}
响应体(解密后)
{
"sprint": "", // msg (string) 消息
"scene": 0, // code (int) 状态码,0=成功
"costume": { // data
"character": "", // activityId (string) 活动模板ID
"reformat": "", // redirectUrl (string) 重定向URL
"remix": false, // addCredits (boolean) 是否添加积分
"bubble": "", // count (string) 数量
"mascot": "", // currency (string) 货币
"timing": "", // id (string) 支付ID/订单ID
"wallet": "" // status (string) 支付状态枚举名:INIT | SUCCESS | PROCESSING | FAILED | CANCELED
}
}
获取支付订单列表
GET /v1/payment/getPaymentDetailList | 鉴权:需要
请求头
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
stakeholder |
pkg |
应用包名(必填) |
comedy |
User_token |
用户登录token |
查询参数
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
sticker |
app |
应用标识(必填,iOS: HIOS / Android: HAndroid) |
symposium |
userId |
用户ID |
ledger |
paymentMethod |
支付方式,如 GOOGLEPAY/APPLEPAY |
quest |
filterStatus |
筛选状态 |
V2 完整请求体(填入业务值后 AES 加密,填入代理请求 空 b 参数 字段)
// getPaymentDetailList — 获取支付订单列表
// POST {baseUrl}/workshop/lounge/hub/playground
//
// 代理请求:
// {
// "humor_level": "FunyMeeAI", // appId 明文
// "comedy_style": "6LEB6Zt4O2YlVv23bm7AysudNQ56fkFcCRdVesK8LW96TdvFlR/N5sIeNKMIFAq1", // AES(/v1/payment/getPaymentDetailList)
// "avatar_mode": "7J8V5jVfCHKnEigVbbS08w==", // AES(GET)
// "filter_type": "<AES({stakeholder: 应用包名(必填), comedy: 用户登录token}) → Base64>", // AES(映射后的Header字段名构造JSON) → Base64
// "scene_id": "<AES({sticker: 应用标识(必填,iOS: HIOS / Android: HAndroid), symposium: 用户ID, ledger: 支付方式,如 GOOGLEPAY/APPLEPAY, quest: 筛选状态}) → Base64>", // AES(映射后的URL参数字段名构造JSON) → Base64
// "clip_duration": "<AES(V2请求体JSON)>", // AES(V2包装后的业务数据) → Base64
// "sample_rate": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "watermark_id": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "geo_radius": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "accuracy_m": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// }
//
// 注意: 原始接口为 GET,走代理后统一 POST,仍需传 V2 请求体(业务字段为空)
// V2 请求体 — 填入业务值后 AES 加密,填入 clip_duration
{
"shell": 2,
"capsule": {
"envelope": {
"container": {
}
}
},
"shimmer": "<随机4-8位字母数字,AES加密→Base64>",
"glimmer": "<随机4-8位字母数字,AES加密→Base64>",
"flicker": "<随机4-8位字母数字,AES加密→Base64>",
"sparkle": "<随机4-8位字母数字,AES加密→Base64>",
"rustle": "<随机4-8位字母数字,AES加密→Base64>",
"murmur": "<随机4-8位字母数字,AES加密→Base64>",
"whisper": "<随机4-8位字母数字,AES加密→Base64>",
"echo": "<随机4-8位字母数字,AES加密→Base64>"
}
响应体(解密后)
{
"sprint": "", // msg (string) 消息
"scene": 0, // code (int) 状态码,0=成功
"costume": [] // data (array) 订单列表,每项含id/status/currency/count/activityId/addCredits/redirectUrl
}
获取支付方式列表
POST /v1/payment/get-payment-methods | 鉴权:需要
请求头
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
stakeholder |
pkg |
应用包名(必填) |
comedy |
User_token |
用户登录token |
请求体字段
| 字段(V2名) | 原始字段 | 类型 | 说明 |
|---|---|---|---|
character |
activityId |
int | 活动模板ID |
overlay |
country |
string | 国家代码 |
V2 完整请求体(填入业务值后 AES 加密,填入代理请求 b 参数 字段)
// get_payment_methods — 获取支付方式列表
// POST {baseUrl}/workshop/lounge/hub/playground
//
// 代理请求:
// {
// "humor_level": "FunyMeeAI", // appId 明文
// "comedy_style": "WLtHvajEN6qo5St5SLE7CCAO+YnNjHqWcWZcw9ypwDA=", // AES(/v1/payment/get-payment-methods)
// "avatar_mode": "Mhb3yNV4SnrfCK8EJAq9VQ==", // AES(POST)
// "filter_type": "<AES({stakeholder: 应用包名(必填), comedy: 用户登录token}) → Base64>", // AES(映射后的Header字段名构造JSON) → Base64
// "scene_id": "<AES(无) → Base64>", // AES(映射后的URL参数字段名构造JSON) → Base64
// "clip_duration": "<AES(V2请求体JSON)>", // AES(V2包装后的业务数据) → Base64
// "sample_rate": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "watermark_id": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "geo_radius": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "accuracy_m": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// }
//
// V2 请求体 — 填入业务值后 AES 加密,填入 clip_duration
{
"shell": 2,
"capsule": {
"envelope": {
"container": {
"character": 0, // activityId (int) 活动模板ID
"overlay": "" // country (string) 国家代码
}
}
},
"shimmer": "<随机4-8位字母数字,AES加密→Base64>",
"glimmer": "<随机4-8位字母数字,AES加密→Base64>",
"flicker": "<随机4-8位字母数字,AES加密→Base64>",
"sparkle": "<随机4-8位字母数字,AES加密→Base64>",
"rustle": "<随机4-8位字母数字,AES加密→Base64>",
"murmur": "<随机4-8位字母数字,AES加密→Base64>",
"whisper": "<随机4-8位字母数字,AES加密→Base64>",
"echo": "<随机4-8位字母数字,AES加密→Base64>"
}
响应体(解密后)
{
"sprint": "", // msg (string) 消息
"scene": 0, // code (int) 状态码,0=成功
"costume": { // data
"invoke": [ // paymentMethods (array) 支付方式列表
{
"bundle": "", // subPaymentMethod (string) 子支付方式
"saturation": 0, // bonusCredits (int) 赠送积分
"alignment": "", // name (string) 名称
"delay": "", // icon (string) 图标
"breakpoint": false, // recentlyUsed (boolean) 是否最近使用
"ledger": "", // paymentMethod (string) 支付方式
"threshold": false, // recommend (boolean) 是否推荐
"sharpness": 0.0, // bonusRatio (double) 赠送比例
"adaptive": false // selected (boolean) 是否默认选中
}
]
}
}
获取订单详情
GET /v1/payment/getOrderDetail | 鉴权:需要
请求头
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
stakeholder |
pkg |
应用包名(必填) |
comedy |
User_token |
用户登录token |
查询参数
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
symposium |
userId |
用户ID |
timing |
id |
支付ID/订单ID |
V2 完整请求体(填入业务值后 AES 加密,填入代理请求 空 b 参数 字段)
// getOrderDetail — 获取订单详情
// POST {baseUrl}/workshop/lounge/hub/playground
//
// 代理请求:
// {
// "humor_level": "FunyMeeAI", // appId 明文
// "comedy_style": "xPOjtP0Xwypi/obXvw7mUPa0L/aqdNbZewMS2kn486c=", // AES(/v1/payment/getOrderDetail)
// "avatar_mode": "7J8V5jVfCHKnEigVbbS08w==", // AES(GET)
// "filter_type": "<AES({stakeholder: 应用包名(必填), comedy: 用户登录token}) → Base64>", // AES(映射后的Header字段名构造JSON) → Base64
// "scene_id": "<AES({symposium: 用户ID, timing: 支付ID/订单ID}) → Base64>", // AES(映射后的URL参数字段名构造JSON) → Base64
// "clip_duration": "<AES(V2请求体JSON)>", // AES(V2包装后的业务数据) → Base64
// "sample_rate": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "watermark_id": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "geo_radius": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "accuracy_m": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// }
//
// 注意: 原始接口为 GET,走代理后统一 POST,仍需传 V2 请求体(业务字段为空)
// V2 请求体 — 填入业务值后 AES 加密,填入 clip_duration
{
"shell": 2,
"capsule": {
"envelope": {
"container": {
}
}
},
"shimmer": "<随机4-8位字母数字,AES加密→Base64>",
"glimmer": "<随机4-8位字母数字,AES加密→Base64>",
"flicker": "<随机4-8位字母数字,AES加密→Base64>",
"sparkle": "<随机4-8位字母数字,AES加密→Base64>",
"rustle": "<随机4-8位字母数字,AES加密→Base64>",
"murmur": "<随机4-8位字母数字,AES加密→Base64>",
"whisper": "<随机4-8位字母数字,AES加密→Base64>",
"echo": "<随机4-8位字母数字,AES加密→Base64>"
}
响应体(解密后)
{
"sprint": "", // msg (string) 消息
"scene": 0, // code (int) 状态码,0=成功
"costume": { // data
"character": "", // activityId (string) 活动模板ID
"reformat": "", // redirectUrl (string) 重定向URL
"remix": false, // addCredits (boolean) 是否添加积分
"bubble": "", // count (string) 数量
"mascot": "", // currency (string) 货币
"timing": "", // id (string) 支付ID/订单ID
"wallet": "" // status (string) 支付状态枚举名:INIT | SUCCESS | PROCESSING | FAILED | CANCELED
}
}
反馈
需要登录态
获取反馈上传URL
POST /v1/feedback/upload-presigned-url | 鉴权:需要
请求头
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
stakeholder |
pkg |
应用包名(必填) |
comedy |
User_token |
用户登录token |
请求体字段
| 字段(V2名) | 原始字段 | 类型 | 说明 |
|---|---|---|---|
feed |
fileName |
string | 文件名 |
V2 完整请求体(填入业务值后 AES 加密,填入代理请求 b 参数 字段)
// upload_presigned_url — 获取反馈上传URL
// POST {baseUrl}/workshop/lounge/hub/playground
//
// 代理请求:
// {
// "humor_level": "FunyMeeAI", // appId 明文
// "comedy_style": "KtXIzIaOY6tKydUTTMoj9jww+otaA8rrRLFeOjwhyCAfF4F99kkeMOQm1Fv4IMCn", // AES(/v1/feedback/upload-presigned-url)
// "avatar_mode": "Mhb3yNV4SnrfCK8EJAq9VQ==", // AES(POST)
// "filter_type": "<AES({stakeholder: 应用包名(必填), comedy: 用户登录token}) → Base64>", // AES(映射后的Header字段名构造JSON) → Base64
// "scene_id": "<AES(无) → Base64>", // AES(映射后的URL参数字段名构造JSON) → Base64
// "clip_duration": "<AES(V2请求体JSON)>", // AES(V2包装后的业务数据) → Base64
// "sample_rate": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "watermark_id": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "geo_radius": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "accuracy_m": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// }
//
// V2 请求体 — 填入业务值后 AES 加密,填入 clip_duration
{
"shell": 2,
"capsule": {
"envelope": {
"container": {
"feed": "" // fileName (string) 文件名
}
}
},
"shimmer": "<随机4-8位字母数字,AES加密→Base64>",
"glimmer": "<随机4-8位字母数字,AES加密→Base64>",
"flicker": "<随机4-8位字母数字,AES加密→Base64>",
"sparkle": "<随机4-8位字母数字,AES加密→Base64>",
"rustle": "<随机4-8位字母数字,AES加密→Base64>",
"murmur": "<随机4-8位字母数字,AES加密→Base64>",
"whisper": "<随机4-8位字母数字,AES加密→Base64>",
"echo": "<随机4-8位字母数字,AES加密→Base64>"
}
响应体(解密后)
{
"sprint": "", // msg (string) 消息
"scene": 0, // code (int) 状态码,0=成功
"costume": { // data
"update": "", // uploadUrl (string) 上传URL
"search": "" // filePath (string) 文件路径
}
}
提交反馈
POST /v1/feedback/submit | 鉴权:需要
请求头
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
stakeholder |
pkg |
应用包名(必填) |
comedy |
User_token |
用户登录token |
请求体字段
| 字段(V2名) | 原始字段 | 类型 | 说明 |
|---|---|---|---|
texture |
fileUrls |
array | 文件URL列表 |
comic |
contentType |
string | 内容类型 |
gradient |
content |
string | 内容 |
V2 完整请求体(填入业务值后 AES 加密,填入代理请求 b 参数 字段)
// submit — 提交反馈
// POST {baseUrl}/workshop/lounge/hub/playground
//
// 代理请求:
// {
// "humor_level": "FunyMeeAI", // appId 明文
// "comedy_style": "5PsAKnZCdt3ZPhtFOyCMLE7h+3SY4w/D38GTwhYs3s4=", // AES(/v1/feedback/submit)
// "avatar_mode": "Mhb3yNV4SnrfCK8EJAq9VQ==", // AES(POST)
// "filter_type": "<AES({stakeholder: 应用包名(必填), comedy: 用户登录token}) → Base64>", // AES(映射后的Header字段名构造JSON) → Base64
// "scene_id": "<AES(无) → Base64>", // AES(映射后的URL参数字段名构造JSON) → Base64
// "clip_duration": "<AES(V2请求体JSON)>", // AES(V2包装后的业务数据) → Base64
// "sample_rate": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "watermark_id": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "geo_radius": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "accuracy_m": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// }
//
// V2 请求体 — 填入业务值后 AES 加密,填入 clip_duration
{
"shell": 2,
"capsule": {
"envelope": {
"container": {
"texture": [],
"comic": "", // contentType (string) 内容类型
"gradient": "" // content (string) 内容
}
}
},
"shimmer": "<随机4-8位字母数字,AES加密→Base64>",
"glimmer": "<随机4-8位字母数字,AES加密→Base64>",
"flicker": "<随机4-8位字母数字,AES加密→Base64>",
"sparkle": "<随机4-8位字母数字,AES加密→Base64>",
"rustle": "<随机4-8位字母数字,AES加密→Base64>",
"murmur": "<随机4-8位字母数字,AES加密→Base64>",
"whisper": "<随机4-8位字母数字,AES加密→Base64>",
"echo": "<随机4-8位字母数字,AES加密→Base64>"
}
响应体(解密后)
{
"sprint": "", // msg (string) 消息
"scene": 0, // code (int) 状态码,0=成功
"costume": { // data
"vote": "", // hint (string)
"revenue": "" // type (string)
}
}
获取反馈列表
GET /v1/feedback/list | 鉴权:需要
请求头
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
stakeholder |
pkg |
应用包名(必填) |
comedy |
User_token |
用户登录token |
查询参数
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
session |
page |
页码 (默认值: "1") |
seminar |
size |
每页条数 (默认值: "10") |
V2 完整请求体(填入业务值后 AES 加密,填入代理请求 空 b 参数 字段)
// list — 获取反馈列表
// POST {baseUrl}/workshop/lounge/hub/playground
//
// 代理请求:
// {
// "humor_level": "FunyMeeAI", // appId 明文
// "comedy_style": "WlI3MgBAyQnMNF3RPhldni1iZGw7c0NGgNIK6+WGKJA=", // AES(/v1/feedback/list)
// "avatar_mode": "7J8V5jVfCHKnEigVbbS08w==", // AES(GET)
// "filter_type": "<AES({stakeholder: 应用包名(必填), comedy: 用户登录token}) → Base64>", // AES(映射后的Header字段名构造JSON) → Base64
// "scene_id": "<AES({session: 1, seminar: 10}) → Base64>", // AES(映射后的URL参数字段名构造JSON) → Base64
// "clip_duration": "<AES(V2请求体JSON)>", // AES(V2包装后的业务数据) → Base64
// "sample_rate": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "watermark_id": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "geo_radius": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "accuracy_m": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// }
//
// 注意: 原始接口为 GET,走代理后统一 POST,仍需传 V2 请求体(业务字段为空)
// V2 请求体 — 填入业务值后 AES 加密,填入 clip_duration
{
"shell": 2,
"capsule": {
"envelope": {
"container": {
}
}
},
"shimmer": "<随机4-8位字母数字,AES加密→Base64>",
"glimmer": "<随机4-8位字母数字,AES加密→Base64>",
"flicker": "<随机4-8位字母数字,AES加密→Base64>",
"sparkle": "<随机4-8位字母数字,AES加密→Base64>",
"rustle": "<随机4-8位字母数字,AES加密→Base64>",
"murmur": "<随机4-8位字母数字,AES加密→Base64>",
"whisper": "<随机4-8位字母数字,AES加密→Base64>",
"echo": "<随机4-8位字母数字,AES加密→Base64>"
}
响应体(解密后)
{
"sprint": "", // msg (string) 消息
"scene": 0, // code (int) 状态码,0=成功
"costume": { // data
"insert": 0, // total (int) 总条数
"blend": 0, // current (int) 当前页
"seminar": 0, // size (int) 每页大小
"create": [ // records (array) 反馈记录列表
{
"midpoint": false, // read (boolean) 是否已读
"grain": 0, // feedbackId (long) 反馈ID
"texture": [], // fileUrls (array) 附件URL列表
"calendar": 0, // replyStatus (int) 回复状态
"amplitude": { // reply (object) 回复内容body
"gradient": "" // content (string) 回复内容
},
"layout": "", // createTimeText (string) 创建时间
"gradient": "" // content (string) 反馈内容
}
],
"rate": false // hasNext (boolean) 是否有下一页
}
}
标记反馈已读
POST /v1/feedback/read | 鉴权:需要
请求头
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
stakeholder |
pkg |
应用包名(必填) |
comedy |
User_token |
用户登录token |
请求体字段
| 字段(V2名) | 原始字段 | 类型 | 说明 |
|---|---|---|---|
showcase |
feedbackIds |
array | 反馈ID列表 |
V2 完整请求体(填入业务值后 AES 加密,填入代理请求 b 参数 字段)
// read — 标记反馈已读
// POST {baseUrl}/workshop/lounge/hub/playground
//
// 代理请求:
// {
// "humor_level": "FunyMeeAI", // appId 明文
// "comedy_style": "+hlYqg+TZabG2vOulWO6wFoogH66IgEKKds90tKS+G8=", // AES(/v1/feedback/read)
// "avatar_mode": "Mhb3yNV4SnrfCK8EJAq9VQ==", // AES(POST)
// "filter_type": "<AES({stakeholder: 应用包名(必填), comedy: 用户登录token}) → Base64>", // AES(映射后的Header字段名构造JSON) → Base64
// "scene_id": "<AES(无) → Base64>", // AES(映射后的URL参数字段名构造JSON) → Base64
// "clip_duration": "<AES(V2请求体JSON)>", // AES(V2包装后的业务数据) → Base64
// "sample_rate": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "watermark_id": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "geo_radius": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "accuracy_m": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// }
//
// V2 请求体 — 填入业务值后 AES 加密,填入 clip_duration
{
"shell": 2,
"capsule": {
"envelope": {
"container": {
"showcase": []
}
}
},
"shimmer": "<随机4-8位字母数字,AES加密→Base64>",
"glimmer": "<随机4-8位字母数字,AES加密→Base64>",
"flicker": "<随机4-8位字母数字,AES加密→Base64>",
"sparkle": "<随机4-8位字母数字,AES加密→Base64>",
"rustle": "<随机4-8位字母数字,AES加密→Base64>",
"murmur": "<随机4-8位字母数字,AES加密→Base64>",
"whisper": "<随机4-8位字母数字,AES加密→Base64>",
"echo": "<随机4-8位字母数字,AES加密→Base64>"
}
响应体(解密后)
{
"sprint": "", // msg (string) 消息
"scene": 0, // code (int) 状态码,0=成功
"costume": { // data
"vote": "", // hint (string)
"revenue": "" // type (string)
}
}
日志
埋点上报
App事件打点上报
POST /v1/log/appevent | 鉴权:需要
请求头
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
stakeholder |
pkg |
应用包名(必填) |
comedy |
User_token |
用户登录token |
查询参数
| 字段(V2名) | 原始字段 | 说明 |
|---|---|---|
sticker |
app |
应用标识(必填,iOS: HIOS / Android: HAndroid) |
gesture |
event |
事件名称(必填) |
symposium |
userId |
用户ID |
satire |
ch |
渠道 |
V2 完整请求体(填入业务值后 AES 加密,填入代理请求 b 参数 字段)
// appevent — App事件打点上报
// POST {baseUrl}/workshop/lounge/hub/playground
//
// 代理请求:
// {
// "humor_level": "FunyMeeAI", // appId 明文
// "comedy_style": "UiSfI3LsYc0fmUf/x7V4oHpN28WVH83mwh40owgUCrU=", // AES(/v1/log/appevent)
// "avatar_mode": "Mhb3yNV4SnrfCK8EJAq9VQ==", // AES(POST)
// "filter_type": "<AES({stakeholder: 应用包名(必填), comedy: 用户登录token}) → Base64>", // AES(映射后的Header字段名构造JSON) → Base64
// "scene_id": "<AES({sticker: 应用标识(必填,iOS: HIOS / Android: HAndroid), gesture: 事件名称(必填), symposium: 用户ID, satire: 渠道}) → Base64>", // AES(映射后的URL参数字段名构造JSON) → Base64
// "clip_duration": "<AES(V2请求体JSON)>", // AES(V2包装后的业务数据) → Base64
// "sample_rate": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "watermark_id": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "geo_radius": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// "accuracy_m": "<随机4-8位字母数字,AES加密→Base64>" // 噪音
// }
//
// V2 请求体 — 填入业务值后 AES 加密,填入 clip_duration
{
"shell": 2,
"capsule": {
"envelope": {
"container": {
}
}
},
"shimmer": "<随机4-8位字母数字,AES加密→Base64>",
"glimmer": "<随机4-8位字母数字,AES加密→Base64>",
"flicker": "<随机4-8位字母数字,AES加密→Base64>",
"sparkle": "<随机4-8位字母数字,AES加密→Base64>",
"rustle": "<随机4-8位字母数字,AES加密→Base64>",
"murmur": "<随机4-8位字母数字,AES加密→Base64>",
"whisper": "<随机4-8位字母数字,AES加密→Base64>",
"echo": "<随机4-8位字母数字,AES加密→Base64>"
}
响应体(解密后)
{
"sprint": "", // msg (string) 消息
"scene": 0, // code (int) 状态码,0=成功
"costume": { // data
"vote": "", // hint (string)
"revenue": "" // type (string)
}
}
字段映射全表
| 原始字段 | V2字段 |
|---|---|
| User_token | comedy |
| accountId | meme |
| accountName | avatar |
| activityId | character |
| activitys | animate |
| actualAmount | sketch |
| addCredits | remix |
| adsTokenId | humor |
| age | intensity |
| amount | cartoon |
| animate | duration |
| app | sticker |
| appFbConfig | stylize |
| appType | reaction |
| appraise | render |
| approveState | clip |
| aspectRatio | caption |
| automaticRenewal | punchline |
| avatar | frequency |
| baseCredits | opacity |
| baseUrl | joke |
| begTime | gag |
| bonus | contrast |
| bonusCredits | saturation |
| bonusRatio | sharpness |
| businessId | angle |
| businessType | offset |
| campaignInfo | parody |
| card | spoof |
| categoryId | scale |
| categoryName | rotation |
| ch | satire |
| channel | skit |
| channelType | reel |
| client | filter |
| clientId | template |
| code | scene |
| coder | panel |
| config | edit |
| content | gradient |
| contentType | comic |
| count | bubble |
| countId | share |
| country | overlay |
| countryCode | publish |
| creatTime | palette |
| createTime | typography |
| createTimeText | layout |
| credit | export |
| creditPromotion | apply |
| credits | padding |
| creditsRecordUrl | swap |
| cryptoInvoiceUrl | merge |
| currency | mascot |
| current | blend |
| cvcCode | persona |
| data | costume |
| days | backdrop |
| department | resize |
| desc | kurtosis |
| description | crop |
| devId | frame |
| deviceId | stage |
| discountOff | margin |
| domain | theme |
| domains | adjust |
| dt | mood |
| duration | preview |
| draft | |
| enable_music | vibe |
| enabled | customize |
| endTime | expression |
| event | gesture |
| expectedSize | pose |
| expireMonth | outfit |
| expireYear | trait |
| expiresIn | upload |
| ext | profile |
| extConfig | download |
| extJson | gallery |
| face | border |
| faceIndex | radius |
| faceInfos | discover |
| face_index | shadow |
| fbClientId | glow |
| fbClientToken | blur |
| feature | browse |
| features | explore |
| feedbackId | grain |
| feedbackIds | showcase |
| fileName | feed |
| fileName1 | trending |
| fileName2 | spotlight |
| filePath | search |
| filePath1 | generate |
| filePath2 | transform |
| fileUrls | texture |
| filterCountry | collection |
| filterDomain | badge |
| filterOwnerId | reward |
| filterStatus | quest |
| filterTaskType | caucus |
| filterVip | allowance |
| firstName | appendix |
| firstRegister | enhance |
| forcePayCenter | convert |
| fps | lineage |
| frameIndex | pattern |
| frame_index | motion |
| freeBlurTimes | tag |
| freeTimes | label |
| gender | speed |
| googleClientId | roster |
| h5UrlConfig | rank |
| hasNext | rate |
| hash | medallion |
| hashIsZero | member |
| headFaceIndex | entry |
| headImg | terminal |
| headPos | repository |
| headType | delegate |
| hint | vote |
| hlsUrl | precision |
| host | nominee |
| icon | delay |
| id | timing |
| imageCount | bounce |
| imageFaceIndex | digest |
| imageId | registration |
| imageInfos | elastic |
| img | circular |
| imgCount | indicator |
| imgId | histogram |
| imgList | easing |
| imgType | compressive |
| imgUrl | boost |
| index | weight |
| inviteBy | socket |
| invitedCnt | pin |
| isBlur | archive |
| isVip | restore |
| issuerUrl | duplicate |
| keepUserId | campus |
| label | density |
| lang | venture |
| lastName | council |
| lastUpdateTime | follow |
| launchImgUrl | coverage |
| link | capital |
| list | ordinance |
| lowUrl | durability |
| maxLimit | like |
| method | listing |
| methodActivitys | comment |
| methodChannels | collect |
| model | exhibit |
| msg | sprint |
| name | alignment |
| needCredits | colorize |
| needImage | edge |
| needUndress | authorization |
| needopt | team |
| negativePrompt | delegation |
| note | spacing |
| openType | morph |
| optimizeCountSql | reface |
| optimizeJoinOfCountSql | voice |
| orderId | franchise |
| orders | sync |
| originAmount | brochure |
| owner | heritage |
| p12KeyPath | tally |
| packageName | accolade |
| page | session |
| pages | loop |
| password | scope |
| payCenterUrl | schedule |
| payId | depth |
| payMethod | layer |
| payMethods | cluster |
| payStatus | submit |
| payTime | channel |
| payTypeList | introspect |
| payUrl | objectify |
| paylink | segment |
| paymentMethod | ledger |
| paymentMethods | invoke |
| permissions | terminate |
| phone | sponsor |
| pkg | stakeholder |
| platform | abstract |
| previewImage | slice |
| previewVideo | anchor |
| productType | pivot |
| progress | origin |
| prompt | appointment |
| publicKey | thread |
| purchaseData | gauge |
| queueCnt | endpoint |
| read | midpoint |
| receipt | funnel |
| recent | fabricate |
| recentlyUsed | breakpoint |
| recommend | threshold |
| records | create |
| redirectUrl | reformat |
| referer | link |
| refererType | complex |
| reply | amplitude |
| replyStatus | calendar |
| requiredHeaders | tokenize |
| resolution | consortium |
| resolution480p | span |
| resolution720p | factor |
| resulotion | correctness |
| rewardCredits | sigma |
| rewardRatio | gutter |
| role | transport |
| searchCount | transmit |
| selected | adaptive |
| serviceAccountEmail | balance |
| sharedSecret | stake |
| showName | constant |
| sign | mandate |
| signature | selection |
| size | seminar |
| sort | overtone |
| srcFaceImgBase64 | tournament |
| srcFaceIndex | circuit |
| srcImg | permission |
| srcImg1 | crew |
| srcImg1Url | consulate |
| srcImg2 | lease |
| srcImg2Url | glossary |
| srcImgBase64 | dynasty |
| srcImgUrl | logbook |
| srcVideo | commendation |
| state | bitrate |
| status | wallet |
| style | module |
| subBusinessType | keepalive |
| subPaymentMethod | bundle |
| subScribeValidTime | recognize |
| subscriptionActivitys | cap |
| subscriptionPeriod | unicast |
| sumCredits | assert |
| sys | load |
| t2IConfig | reboot |
| tag | remainder |
| tags | enqueue |
| targetId | manifest |
| targetInvitedCnt | unpack |
| taskId | exponential |
| taskIds | vendor |
| taskType | liaison |
| taskTypes | synopsis |
| templateFaceUrl | quantized |
| templateFifCredits | compressed |
| templateFifDuration | usability |
| templateFifUrl | tension |
| templateName | itinerary |
| templateTfCredits | capitalization |
| templateTfDuration | demodulation |
| templateTfUrl | convergence |
| templateType | ringing |
| templateTypes | dialogue |
| templateUrl | refractive |
| templates | microscopic |
| tgId | chart |
| tgName | spend |
| tgOrderId | microservice |
| theme | capacity |
| title | interval |
| token | attachment |
| total | insert |
| totalUnreadCount | promote |
| transactionId | installation |
| truePrompt | coalition |
| ts | debit |
| type | revenue |
| types | standard |
| unreadCountList | weigh |
| updateTime | overflow |
| uploadUrl | update |
| uploadUrl1 | harden |
| uploadUrl2 | complete |
| url | altitude |
| user | resistance |
| userApplePayList | variety |
| userId | symposium |
| userInfoType | carnival |
| userName | supplement |
| userToken | disambiguate |
| userType | resample |
| username | ring |
| usign | reauthenticate |
| val | compliance |
| value | platoon |
| verifyCode | taskforce |
| videoDuration | hue |
| videoFaceIndex | escrow |
| videoFrameIndex | periodical |
| videoSize | genealogy |
| videoUrl | postprocess |
| waitTime | acuity |
| x1 | angular |
| x2 | enthalpy |
| y1 | binormal |
| y2 | manifold |
错误码
| code | 说明 |
|---|---|
| 0 | 成功 |
| -1 | 失败 |
| -2 | 系统错误 |
| -3 | 鉴权失败 |
| -5 | 参数错误 |
| 1001 | 积分不足 |
| 1002 | 免费次数已用完 |
| 1003 | 免费次数和积分均已用完 |
本文档由 ProtocolEncTool 自动生成,API 变更后请重新执行 v2 guide --app FunyMeeAI。