Appearance
自定义大纲内容生成PPT

适用场景
- 自定义标题、大纲和页面内容
- 自定义页面图片
步骤1:请求生成PPT封面图片
1.说明
接口描述:通过PPT的标题来生成模板封面信息(支持主题颜色和模板风格的指定),并返回模板封面的ID以及该封面的预览图片URL
请求方式:POST
2.请求参数
Headers请求参数
- Token需要在韦尼克平台创建相关应用获取
名称 | 类型 | 必选 | 说明 | 示例值 |
---|---|---|---|---|
Authorization | string | 是 | Authorization - Bearer Token | Bearer Yoo-xxxxxxxxx |
Body请求参数
参数 | 类型 | 必须 | 默认值 | 默认值 |
---|---|---|---|---|
title | string | Y | PPT标题 | |
count | string | Y | 模板个数,数量范围(0,4] | 4 |
user_name | string | N | 作者 | 尤小优 |
color | string | N | 主题颜色,取值为:["紫色","红色","橙色","黄色","绿色","青色","蓝色","粉色"] | 随机 |
style | string | N | 模板风格, 取值为:["科技","商务","小清新","极简","中国风","可爱卡通"] | 随机 |
3.请求示例
json
{
"title":"网络安全大赛",
"count":"2",
"user_name":"尤小优",
"color":"绿色",
"style":"小清新"
}
4.响应内容
名称 | 类型 | 说明 | 默认值 |
---|---|---|---|
cover_image | string | 封面图片url | |
cover_id | string | 封面ID(有效期:10min) | |
color | string | 主题色 | |
color_list | Array | 配色列表 |
5.响应示例
json
{
"code": 200,
"msg": "success",
"data": [
{
"cover_image": "http://image.yoojober.com/chatppt/2024-02/db15519f6ec1aeac1faa91d14fe1416c.png",
"cover_id": "DBgQNU-0",
"color": "橙色",
"color_list": [
"#FFFFFF",
"#581F00",
"#FFFFFF",
"#FFFDFB",
"#F26C00",
"#FFBC02",
"#F88B36",
"#FB9448",
"#FE9E5B",
"#FFA86E",
"#F26C00",
"#FFBC02"
]
},
{
"cover_image": "http://image.yoojober.com/chatppt/2024-02/89678a9df539cf90856611e22a6f5ba4.png",
"cover_id": "DBgQNU-1",
"color": "橙色",
"color_list": [
"#FFFFFF",
"#581F00",
"#FFFFFF",
"#FFFDFB",
"#F26C00",
"#FFBC02",
"#F88B36",
"#FB9448",
"#FE9E5B",
"#FFA86E",
"#F26C00",
"#FFBC02"
]
},
{
"cover_image": "http://image.yoojober.com/chatppt/2024-02/0e93fab3c72bd0540e0d21f676c6e67c.png",
"cover_id": "DBgQNU-2",
"color": "橙色",
"color_list": [
"#FFFFFF",
"#581F00",
"#FFFFFF",
"#FFFDFB",
"#F26C00",
"#FFBC02",
"#F88B36",
"#FB9448",
"#FE9E5B",
"#FFA86E",
"#F26C00",
"#FFBC02"
]
},
{
"cover_image": "http://image.yoojober.com/chatppt/2024-02/f0d7aed12cd3845e607803d1630918d1.png",
"cover_id": "DBgQNU-3",
"color": "橙色",
"color_list": [
"#FFFFFF",
"#581F00",
"#FFFFFF",
"#FFFDFB",
"#F26C00",
"#FFBC02",
"#F88B36",
"#FB9448",
"#FE9E5B",
"#FFA86E",
"#F26C00",
"#FFBC02"
]
}
]
}
步骤2:请求生成PPT文档
1.说明
- 接口描述:接收PPT信息(PPT标题、PPT大纲、封面ID、PPT内容),根据这些信息生成PPT制作任务,任务生成后,会立即返回一个唯一的任务ID,可以使用该任务ID来查询PPT的生成进度或预览结果
- 请求地址:https://saas.api.yoo-ai.com/apps/ppt-create
- 请求方式:POST
2.请求参数
Headers
- Token需要在韦尼克平台创建相关应用获取
名称 | 类型 | 必选 | 说明 | 示例值 |
---|---|---|---|---|
Authorization | string | 是 | Authorization - Bearer Token | Bearer Yoo-xxxxxxxxx |
Body请求参数
参数 | 类型 | 备注 | 必选 | 默认值 |
---|---|---|---|---|
custom_data | string | 自定义参数 | Y | |
cover_id | string | 封面ID(无指定封面即随机) | N | |
ai_picture | bool | 是否使用ai生成图片 | N | False |
custom_data
参数 | 类型 | 必须 | 说明 |
---|---|---|---|
title | string | Y | 标题 |
sub_title | string | N | 副标题 |
author | string | N | 作者 |
catalogs | array(object) | N | 大纲,具体看catalogs表格 |
contents | array(object) | N | 内容,具体看contents表格 |
catalogs(Array)
参数 | 类型 | 必须 | 说明 |
---|---|---|---|
catalog | string | Y | 一级大纲 |
sub_catalog | array (string) | N | 该一级大纲下的二级大纲 可以为空,但要尽量保证所有一级大纲下都有或者都没有二级大纲 |
contents (array)
参数 | 类型 | 必须 | 说明 |
---|---|---|---|
catalog_index | init | Y | 属于哪个一级大纲,从0开始 |
sub_catalog_index | init | N | 属于一级大纲下的第几个二级大纲,从0开始 如果没有二级大纲可传0或不传 |
content | array (string) array (object key-value) string | Y | 支持3种格式: array (string): 所有文本会以换行连接进行显示(图文)array (object key-value): 会以图示显示;或者key+value由上到下排列图文显示,key会高亮;图示与图文概率随机string: 直接显示一段文本(图文) |
picture | array (string:url) | N | 要显示的图片地址,尽量不要超过3张 |
3.请求示例
json
{
"cover_id":"FGRW43DF-1",
"custom_data": {
"title": "标题",
"sub_title": "副标题",
"author": "作者",
"catalogs": [{
"catalog": "一级大纲1",
"sub_catalog": ["一级大纲1-二级大纲1"]
}, {
"catalog": "一级大纲2",
"sub_catalog": ["一级大纲2-二级大纲1"]
}],
"contents": [{
"catalog_index": 0,
"sub_catalog_index": 0,
"content": ["一级大纲1-二级大纲1-内容1", "一级大纲1-二级大纲1-内容2"]
}, {
"catalog_index": 1,
"sub_catalog_index": 0,
"content": [{
"key": "一级大纲2-二级大纲1-小标题1",
"value": "一级大纲2-二级大纲1-子内容1"
}, {
"key": "一级大纲2-二级大纲1-小标题2",
"value": "一级大纲2-二级大纲1-子内容2"
}, {
"key": "一级大纲2-二级大纲1-小标题3",
"value": "一级大纲2-二级大纲1-子内容3"
}],
"picture": ["https://image.yoojober.com/chatppt_business/2024-02/000114cd07b809cb8c6bb22674e814da.png"]
}]
}
}
4.响应内容
名称 | 类型 | 描述 | 默认值 |
---|---|---|---|
code | init | 状态码 | |
msg | string | 返回信息 | |
data | string | 数据体 | |
data.id | string | 生成任务ID |
5.响应示例
json
{
"code": 200,
"msg": "success",
"data": {
"id": "acQdp8mesqQUmpQqkVHRMRffWyW7PqsW"
}
}
步骤3:获取PPT生成结果
1.说明
接口描述:通过之前生成任务的ID即可查询生成任务的进度,并获取对应PPT的预览图片。接口建议进行轮询,通过
status
参数获取生成状态,通过data.state_description
获取进度描述,预览图片逐步生成的请求方式:GET
2.请求参数
Headers
- Token需要在韦尼克平台创建相关应用获取
名称 | 类型 | 必选 | 说明 | 示例值 |
---|---|---|---|---|
Authorization | string | 是 | Authorization - Bearer Token | Bearer Yoo-xxxxxxxxx |
Query参数
名称 | 类型 | 必选 | 说明 |
---|---|---|---|
id | string | 是 | 任务ID |
3.请求示例
json
{
"id":"acQdp8mesqQUmpQqkVHRMRffWyW7PqsW"
}
4.响应内容
名称 | 类型 | 描述 |
---|---|---|
code | int | 响应状态码,200表示请求成功 |
msg | string | 响应消息,"success"表示请求成功 |
data | object | 包含PPT相关信息的数据对象 |
id | string | 任务ID |
images_url | array | 包含PPT中所有图片的URL和时间戳的数组 |
images_url.url | string | PPT图片预览地址 |
images_url.time | string | PPT图片生成时间戳 |
note_status | int | PPT备注状态,0-无备注,1-有备注 |
introduce | string | PPT的大纲 |
ppt_title | string | PPT的标题 |
page_count | int | PPT的页数 |
progress | int | 生成进度,100表示已完成 |
status | int | 状态(1-进行中 2-已完成 3-生成失败) |
first_image_up_at | string | 第一张图片上传的时间 |
created_at | string | PPT创建的时间 |
updated_at | string | PPT最后更新的时间 |
state_description | string | 状态描述,"生成已完成"、"正在生成演示内容" |
process_url | string | 生成进度的URL |
preview_url | string | PPT预览的URL |
5.响应示例
json
{
"code": 200,
"msg": "success",
"data": {
"id": "K7zx7Jb2y7c7AyHCPrsVG6cgpJK6HvFA",
"images_url": [
{
"url": "https://file.static.yoojober.cn/chatppt/20241219/6763c90b92dcc.png",
"time": 1734592779
},
{
"url": "https://file.static.yoojober.cn/chatppt/20241219/6763c915af2ec.png",
"time": 1734592790
},
{
"url": "https://file.static.yoojober.cn/chatppt/20241219/6763c91684fe5.png",
"time": 1734592790
},
{
"url": "https://file.static.yoojober.cn/chatppt/20241219/6763c92c0f38d.png",
"time": 1734592812
},
{
"url": "https://file.static.yoojober.cn/chatppt/20241219/6763c92d1c2a6.png",
"time": 1734592813
},
{
"url": "https://file.static.yoojober.cn/chatppt/20241219/6763c92e2ee0d.png",
"time": 1734592814
},
{
"url": "https://file.static.yoojober.cn/chatppt/20241219/6763c9185bb98.png",
"time": 1734592792
},
{
"url": "https://file.static.yoojober.cn/chatppt/20241219/6763c92f5f359.png",
"time": 1734592815
},
{
"url": "https://file.static.yoojober.cn/chatppt/20241219/6763c9305e9c2.png",
"time": 1734592816
},
{
"url": "https://file.static.yoojober.cn/chatppt/20241219/6763c93174fb5.png",
"time": 1734592817
},
{
"url": "https://file.static.yoojober.cn/chatppt/20241219/6763c91a5aad2.png",
"time": 1734592794
},
{
"url": "https://file.static.yoojober.cn/chatppt/20241219/6763c932a1606.png",
"time": 1734592818
},
{
"url": "https://file.static.yoojober.cn/chatppt/20241219/6763c9338bb15.png",
"time": 1734592820
},
{
"url": "https://file.static.yoojober.cn/chatppt/20241219/6763c9349b0ff.png",
"time": 1734592820
},
{
"url": "https://file.static.yoojober.cn/chatppt/20241219/6763c91c17976.png",
"time": 1734592796
},
{
"url": "https://file.static.yoojober.cn/chatppt/20241219/6763c935bf07f.png",
"time": 1734592821
},
{
"url": "https://file.static.yoojober.cn/chatppt/20241219/6763c9369a528.png",
"time": 1734592822
},
{
"url": "https://file.static.yoojober.cn/chatppt/20241219/6763c937d1686.png",
"time": 1734592824
},
{
"url": "https://file.static.yoojober.cn/chatppt/20241219/6763c93844a3d.png",
"time": 1734592824
}
],
"note_status": 0,
"introduce": "网络攻击类型及防御策略\r\n网络攻击分类概览\r\n常见网络攻击类型解析\r\n新型网络攻击手段剖析\r\n攻击手段发展趋势预测\r\n网络攻击分类概览\r\n网络架构安全设计原则\r\n防御系统部署与配置\r\n应急响应机制建立\r\n网络攻击分类概览\r\n防火墙与入侵检测系统\r\n数据加密与访问控制\r\n安全漏洞扫描与修复\r\n网络攻击分类概览\r\n员工网络安全意识培养\r\n定期安全培训与演练\r\n建立安全文化氛围\r\n",
"ppt_title": "网络攻击类型及防御策略",
"page_count": 19,
"progress": 100,
"status": 2,
"first_image_up_at": "2024-12-19 15:19:39",
"created_at": "2024-12-19 15:19:15",
"updated_at": "2024-12-19 15:20:26",
"state_description": "生成已完成...",
"process_url": "https://chatppt.test.yoo-ai.com/generateResults?generateID=K7zx7Jb2y7c7AyHCPrsVG6cgpJK6HvFA",
"preview_url": "https://chatppt.test.yoo-ai.com/generateResults?generateID=K7zx7Jb2y7c7AyHCPrsVG6cgpJK6HvFA"
}
}
步骤4:获取PPT下载地址
1.说明
接口描述 | 获取PPT下载链接,支持长图、PDF、PPTX格式 | ||
---|---|---|---|
请求地址 | https://saas.api.yoo-ai.com/apps/ppt-download | 请求方式 | GET |
2.请求参数
Headers
- Token需要在韦尼克平台创建相关应用获取
名称 | 类型 | 必选 | 说明 | 示例值 |
---|---|---|---|---|
Authorization | string | 是 | Authorization - Bearer Token | Bearer Yoo-xxxxxxxxx |
query参数
参数 | 类型 | 必须 | 默认值 | 说明 |
---|---|---|---|---|
id | string | 是 | PPT生成ID | |
type | string | 是 | pptx | 下载的文件格式 |
3.请求示例
- 下载PPTX格式示例:
{
"id":"BTs3qWzWaFpjRbyz5ZGfAR6SMnSPYyyB",
"type":"pptx"
}
4.响应内容
名称 | 类型 | 参数描述 | 参数示例 |
---|---|---|---|
code | int | 状态码 | |
msg | string | 描述消息 | |
data | object | 数据体 | |
data.download_url | string | 下载链接 |
5.响应示例
json
{
"code": 200,
"msg": "success",
"data":{
"download_url":"https://download.yoojober.com/chatppt_business/2024-06/86b26b64cb6ebf7565523c9192f467a2.pptx?e=1717675120&token=8_2qFlGEVQZPpFvHdGR6gg2t9A9QZfWT9wwTl92s:cbgbknWpC2QuLzn2zqFDHjifCA4="
}
}