Skip to content

自定义大纲内容生成PPT



适用场景

  • 自定义标题、大纲和页面内容
  • 自定义页面图片

步骤1:请求生成PPT封面图片

1.说明

  • 接口描述:通过PPT的标题来生成模板封面信息(支持主题颜色和模板风格的指定),并返回模板封面的ID以及该封面的预览图片URL

  • 请求地址:https://saas.api.yoo-ai.com/apps/ppt-cover

  • 请求方式:POST

2.请求参数

Headers请求参数

  • Token需要在韦尼克平台创建相关应用获取
名称类型必选说明示例值
AuthorizationstringAuthorization - Bearer TokenBearer Yoo-xxxxxxxxx

Body请求参数

参数类型必须默认值默认值
titlestringYPPT标题
countstringY模板个数,数量范围(0,4]4
user_namestringN作者尤小优
colorstringN主题颜色,取值为:["紫色","红色","橙色","黄色","绿色","青色","蓝色","粉色"]随机
stylestringN模板风格, 取值为:["科技","商务","小清新","极简","中国风","可爱卡通"]随机

3.请求示例

json
{
    "title":"网络安全大赛",
    "count":"2",
    "user_name":"尤小优",
    "color":"绿色",
    "style":"小清新"
}

4.响应内容

名称类型说明默认值
cover_imagestring封面图片url
cover_idstring封面ID(有效期:10min)
colorstring主题色
color_listArray配色列表

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需要在韦尼克平台创建相关应用获取
名称类型必选说明示例值
AuthorizationstringAuthorization - Bearer TokenBearer Yoo-xxxxxxxxx

Body请求参数

参数类型备注必选默认值
custom_datastring自定义参数Y
cover_idstring封面ID(无指定封面即随机)N
ai_picturebool是否使用ai生成图片NFalse

custom_data

参数类型必须说明
titlestringY标题
sub_titlestringN副标题
authorstringN作者
catalogsarray(object)N大纲,具体看catalogs表格
contentsarray(object)N内容,具体看contents表格

catalogs(Array)

参数类型必须说明
catalogstringY一级大纲
sub_catalogarray (string)N该一级大纲下的二级大纲 可以为空,但要尽量保证所有一级大纲下都有或者都没有二级大纲

contents (array)

参数类型必须说明
catalog_indexinitY属于哪个一级大纲,从0开始
sub_catalog_indexinitN属于一级大纲下的第几个二级大纲,从0开始 如果没有二级大纲可传0或不传
contentarray (string) array (object key-value) stringY支持3种格式: array (string): 所有文本会以换行连接进行显示(图文)array (object key-value): 会以图示显示;或者key+value由上到下排列图文显示,key会高亮;图示与图文概率随机string: 直接显示一段文本(图文)
picturearray (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.响应内容

名称类型描述默认值
codeinit状态码
msgstring返回信息
datastring数据体
data.idstring生成任务ID

5.响应示例

json
{
    "code": 200,
    "msg": "success",
    "data": {
        "id": "acQdp8mesqQUmpQqkVHRMRffWyW7PqsW"
    }
}

步骤3:获取PPT生成结果

1.说明

  • 接口描述:通过之前生成任务的ID即可查询生成任务的进度,并获取对应PPT的预览图片。接口建议进行轮询,通过status参数获取生成状态,通过data.state_description获取进度描述,预览图片逐步生成的

  • 请求地址:https://saas.api.yoo-ai.com/apps/ppt-result

  • 请求方式:GET

2.请求参数

Headers

  • Token需要在韦尼克平台创建相关应用获取
名称类型必选说明示例值
AuthorizationstringAuthorization - Bearer TokenBearer Yoo-xxxxxxxxx

Query参数

名称类型必选说明
idstring任务ID

3.请求示例

json
{
    "id":"acQdp8mesqQUmpQqkVHRMRffWyW7PqsW"
}

4.响应内容

名称类型描述
codeint响应状态码,200表示请求成功
msgstring响应消息,"success"表示请求成功
dataobject包含PPT相关信息的数据对象
idstring任务ID
images_urlarray包含PPT中所有图片的URL和时间戳的数组
images_url.urlstringPPT图片预览地址
images_url.timestringPPT图片生成时间戳
note_statusintPPT备注状态,0-无备注,1-有备注
introducestringPPT的大纲
ppt_titlestringPPT的标题
page_countintPPT的页数
progressint生成进度,100表示已完成
statusint状态(1-进行中 2-已完成 3-生成失败)
first_image_up_atstring第一张图片上传的时间
created_atstringPPT创建的时间
updated_atstringPPT最后更新的时间
state_descriptionstring状态描述,"生成已完成"、"正在生成演示内容"
process_urlstring生成进度的URL
preview_urlstringPPT预览的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需要在韦尼克平台创建相关应用获取
名称类型必选说明示例值
AuthorizationstringAuthorization - Bearer TokenBearer Yoo-xxxxxxxxx

query参数

参数类型必须默认值说明
idstringPPT生成ID
typestringpptx下载的文件格式

3.请求示例

  • 下载PPTX格式示例:
{
  "id":"BTs3qWzWaFpjRbyz5ZGfAR6SMnSPYyyB",
  "type":"pptx"
}

4.响应内容

名称类型参数描述参数示例
codeint状态码
msgstring描述消息
dataobject数据体
data.download_urlstring下载链接

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="
      }
}