素材管理接口
获取素材列表
GET https://hub.juzibot.com/api/v1/material/list?token=***¤t=1&pageSize=10&scope=User&userId=***
请求参数:
名称 | 类型 | 是否必须 | 备注 |
---|
token | string | 是 | 调用接口凭证, 获取方式 |
materialGroupId | string | 是 | 素材组id |
scope | string | 是 | 素材所属范围, User或者Org |
userId | string | 否 | 素材所属user, 当scope为User时,userId必传 |
current | Number | 是 | 当前页数 |
pageSize | Number | 是 | 每页数据条数, 不能超过1000。 |
返回示例:
{
"errcode": 0,
"errmsg": "string",
"data": [
{
"id": "string",
"name": "string",
"scope": "string",
"userId": "string",
"type": "string",
"image": {
"url": "string",
"name": "string",
},
}
]
}
返回参数说明:
参数 | 类型 | 必定存在 | 备注 |
---|
errcode | number | 是 | 返回码 |
errmsg | string | 是 | 对返回码的文本描述内容 |
data.id | string | 是 | 素材id |
data.name | string | 是 | 素材名 |
data.scope | string | 是 | 素材所属范围 Org为企业素材,User为个人素材 |
data.userId | string | 否 | 当scope为User,素材所属的userId |
data.type | string | 是 | 素材类型 |
data.text | TextPayload | 否 | 文本素材 |
data.image | ImagePayload | 否 | 图片素材 |
data.link | LinkPayload | 否 | 网页素材 |
data.file | FilePayload | 否 | 文件素材 |
data.video | VideoPayload | 否 | 视频素材 |
data.voice | VoicePayload | 否 | 语音素材 |
data.emoticon | Emoticon | 否 | 表情素材 |
data.miniProgram | MiniProgramPayload | 否 | 小程序素材 |
素材类型
enum MaterialType {
TEXT = 0,
IMAGE = 1,
LINK = 2,
FILE = 3,
MINI_PROGRAM = 4,
VIDEO = 5,
VOICE = 6,
EMOTICON = 7,
}
type Material =
TextPayload |
ImagePayload |
LinkPayload |
FilePayload |
MiniProgramPayload |
VideoPayload |
VoicePayload |
EmoticonPayload |
素材结构
1. text类型素材
interface TextPayload {
text: string,
mention?: string[],
}
参数说明:
参数 | 类型 | 必定存在 | 备注 |
---|
text | string | 是 | 素材内容 |
mention | array | 否 | @人的wxid列表, @all 可以@所有人 |
2. image类型素材
interface ImagePayload {
url: string,
name: string
size?: number,
}
参数说明:
参数 | 类型 | 必定存在 | 备注 |
---|
url | string | 是 | 图片地址 |
name | string | 是 | 图片名称 |
size | number | 否 | 图片大小 |
3. link类型素材
interface LinkPayload {
sourceUrl: string,
title: string,
description: string,
imageUrl: string,
}
参数说明:
参数 | 类型 | 必定存在 | 备注 |
---|
url | string | 是 | 跳转地址 |
title | string | 是 | 标题 |
description | string | 是 | 描述 |
imageUrl | string | 是 | 封面图地址 |
4. file类型素材
interface FilePayload {
name: string,
url: string,
size?: number,
}
参数说明:
参数 | 类型 | 必定存在 | 备注 |
---|
name | string | 是 | 文件名 |
url | string | 是 | 文件地址 |
size | number | 否 | 文件大小 |
5. miniProgram类型素材
interface MiniProgramPayload {
appid: string,
description: string,
pagePath: string,
thumbUrl: string,
title: string,
username: string,
iconUrl?: string,
}
参数说明:
参数 | 类型 | 必定存在 | 备注 |
---|
appid | string | 是 | 关联的公众号ID(使用小程序appid发送素材, 接受到的小程序无法正常打开). 企微格式要求 |
description | string | 是 | 描述 |
pagePath | string | 是 | 跳转地址 |
thumbUrl | string | 是 | 封面图地址 |
title | string | 是 | 标题 |
username | string | 是 | 小程序ID |
iconUrl | string | 否 | icon地址 |
6. video类型素材(只支持mp4格式)
interface VideoPayload {
url: string,
thumbUrl: string,
title: string
}
参数说明:
参数 | 类型 | 必定存在 | 备注 |
---|
url | string | 是 | 视频地址 |
thumbUrl | string | 是 | 封面图地址 |
title | string | 是 | 标题 |
7. voice(语音)类型素材
interface VoicePayload {
voiceUrl: string,
duration: number,
}
参数说明:
参数 | 类型 | 必定存在 | 备注 |
---|
voiceUrl | string | 是 | 语音地址 |
duration | number | 是 | 时长(秒)必须大于0 |
8. emoticon(表情)类型素材
interface EmoticonPayload {
imageUrl: string,
}
参数说明:
参数 | 类型 | 必定存在 | 备注 |
---|
imageUrl | string | 是 | 图片地址 |
创建素材
POST https://hub.juzibot.com/api/v1/material/create?token=***
请求示例:
{
materialGroupId: '63e21e6196c37fb860c29a59',
name: '素材名称',
scope: 'Org'
type: "Text"
text: {
text: "文本素材",
}
}
请求参数:
名称 | 类型 | 是否必须 | 备注 |
---|
token | string | 是 | 调用接口凭证 |
materialGroupId | string | 是 | 素材组id |
name | string | 是 | 素材名称 |
scope | string | 是 | 素材范围, Org为企业素材, User为个人素材 |
userId | string | 否 | 个人素材所属的userId, 当scope为User时,userId必传 |
type | string | 是 | "Text", "Image", "Link", "File", "MiniProgram", "Video", "Emoticon", "Voice" |
text | TextPayload | 否 | 文本素材, 当前type为"Text", text必传,字段详见 |
image | ImagePayload | 否 | 图片素材, 当type为"Image", images必传, 字段详见 |
link | LinkPayload | 否 | 网页素材, 当type为"Link" , link必传,字段详见 |
file | FilePayload | 否 | 文件素材, 当type为"File", file必传, 字段详见 |
video | VideoPayload | 否 | 视频素材, 当type为"Video", video必传,字段详见 |
voice | VoicePayload | 否 | 语音素材, 当type为"Voice", voice必传,字段详见 |
emoticon | Emoticon | 否 | 表情素材,当type为 "Emoticon", emoticon必传,字段详见 |
miniProgram | MiniProgramPayload | 否 | 小程序素材, 当type为"MiniProgram", miniProgram必传,字段详见 |
返回示例:
{
"errcode": 0,
"errmsg": "string",
"data": {
"id": "string",
"name": "string",
"scope": "string",
"userId": "string",
"type": "string",
"image": {
"url": "string",
"name": "string",
},
}
}
返回参数说明:
参数 | 类型 | 必定存在 | 备注 |
---|
errcode | number | 是 | 返回码 |
errmsg | string | 是 | 对返回码的文本描述内容 |
data.id | string | 是 | 素材id, 详见wechatyTagGroupId |
data.name | string | 是 | 素材名 |
data.scope | string | 是 | 素材可见范围 Org为企业素材,User为个人素材 |
data.userId | string | 否 | 当scope为User,素材所属的userId |
data.type | string | 是 | 素材类型 |
data.text | TextPayload | 否 | 文本素材 |
data.image | ImagePayload | 否 | 图片素材 |
data.link | LinkPayload | 否 | 网页素材 |
data.file | FilePayload | 否 | 文件素材 |
data.video | VideoPayload | 否 | 视频素材 |
data.voice | VoicePayload | 否 | 语音素材 |
data.emoticon | Emoticon | 否 | 表情素材 |
data.miniProgram | MiniProgramPayload | 否 | 小程序素材 |
修改素材
POST https://hub.juzibot.com/api/v1/material/update?token=***
请求示例:
{
id: "63e21e6196c37fb860c29a50"
materialGroupId: '63e21e6196c37fb860c29a59',
name: '素材名称',
scope: 'Org'
type: "Text"
text: {
text: "文本素材",
}
}
请求参数:
名称 | 类型 | 是否必须 | 备注 |
---|
token | string | 是 | 调用接口凭证 |
id | string | 是 | 素材id |
materialGroupId | string | 是 | 素材组id |
name | string | 是 | 素材名称 |
scope | string | 是 | 素材范围, Org为企业素材, User为个人素材 |
userId | string | 否 | 个人素材所属的userId, 当scope为User时,userId必传 |
type | string | 是 | "Text", "Image", "Link", "File", "MiniProgram", "Video", "Emoticon", "Voice" |
text | TextPayload | 否 | 文本素材, 当前type为"Text", text必传,字段详见 |
image | ImagePayload | 否 | 图片素材, 当type为"Image", images必传, 字段详见 |
link | LinkPayload | 否 | 网页素材, 当type为"Link" , link必传,字段详见 |
file | FilePayload | 否 | 文件素材, 当type为"File", file必传, 字段详见 |
video | VideoPayload | 否 | 视频素材, 当type为"Video", video必传,字段详见 |
voice | VoicePayload | 否 | 语音素材, 当type为"Voice", voice必传,字段详见 |
emoticon | Emoticon | 否 | 表情素材,当type为 "Emoticon", emoticon必传,字段详见 |
miniProgram | MiniProgramPayload | 否 | 小程序素材, 当type为"MiniProgram", miniProgram必传,字段详见 |
返回示例:
{
errcode: 0,
errmsg: "ok"
}
返回参数说明:
参数 | 类型 | 必定存在 | 备注 |
---|
errcode | number | 是 | 返回码 |
errmsg | string | 是 | 对返回码的文本描述内容 |
data.id | string | 是 | 素材id |
data.name | string | 是 | 素材名 |
data.scope | string | 是 | 素材可见范围 Org为企业素材,User为个人素材 |
data.userId | string | 否 | 当scope为User,素材所属的userId |
data.type | string | 是 | 素材类型 |
data.text | TextPayload | 否 | 文本素材 |
data.image | ImagePayload | 否 | 图片素材 |
data.link | LinkPayload | 否 | 网页素材 |
data.file | FilePayload | 否 | 文件素材 |
data.video | VideoPayload | 否 | 视频素材 |
data.voice | VoicePayload | 否 | 语音素材 |
data.emoticon | Emoticon | 否 | 表情素材 |
data.miniProgram | MiniProgramPayload | 否 | 小程序素材 |
删除素材
POST https://hub.juzibot.com/api/v1/material/delete?token=***
请求示例:
{
id: "63e21e6196c37fb860c29a50"
}
请求示例:
名称 | 类型 | 是否必须 | 备注 |
---|
token | string | 是 | 调用接口凭证 |
id | string | 是 | 素材id |
返回示例:
{
errcode: 0,
errmsg: "ok"
}
参数说明:
参数 | 类型 | 必定存在 | 备注 |
---|
errcode | number | 是 | 返回码 |
errmsg | string | 是 | 对返回码的文本描述内容 |
创建素材组
POST https://hub.juzibot.com/api/v1/material_group/create?token=***
请求示例:
{
"name": "string",
"scope": "string",
"userId": "string",
}
请求示例:
名称 | 类型 | 是否必须 | 备注 |
---|
token | string | 是 | 调用接口凭证 |
name | string | 是 | 素材组名称 |
scope | string | 是 | 素材组所属范围, Org 为企业素材,User为个人素材 |
userId | string | 否 | 素材组所属userId, 当scope为User时,userId必传 |
返回示例:
{
errcode: 0,
errmsg: "ok"
data : {
"id": "string",
"name": "string",
"scope": "string",
"userId": "string",
}
}
参数说明:
参数 | 类型 | 必定存在 | 备注 |
---|
errcode | number | 是 | 返回码 |
errmsg | string | 是 | 对返回码的文本描述内容 |
data.id | string | 是 | 素材组id |
data.name | string | 是 | 素材组名称 |
data.scope | string | 是 | 素材组所属范围,Org为企业素材组, User为个人素材组 |
data.userId | string | 否 | 素材组所属的素材组id |
更新素材组
POST https://hub.juzibot.com/api/v1/material_group/update?token=***
请求示例:
{
"id": "string",
"name": "string",
}
请求示例:
名称 | 类型 | 是否必须 | 备注 |
---|
token | string | 是 | 调用接口凭证 |
id | string | 是 | 素材组id |
name | string | 是 | 素材组名称 |
返回示例:
{
errcode: 0,
errmsg: "ok"
}
参数说明:
参数 | 类型 | 必定存在 | 备注 |
---|
errcode | number | 是 | 返回码 |
errmsg | string | 是 | 对返回码的文本描述内容 |
删除素材组
POST https://hub.juzibot.com/api/v1/material_group/delete?token=***
请求示例:
请求示例:
名称 | 类型 | 是否必须 | 备注 |
---|
token | string | 是 | 调用接口凭证 |
id | string | 是 | 素材组id |
返回示例:
{
errcode: 0,
errmsg: "ok"
}
参数说明:
参数 | 类型 | 必定存在 | 备注 |
---|
errcode | number | 是 | 返回码 |
errmsg | string | 是 | 对返回码的文本描述内容 |
素材组列表
POST https://hub.juzibot.com/api/v1/material_group/list?token=***
请求示例:
{
"scope": "Org",
"userId": "userId",
}
请求示例:
名称 | 类型 | 是否必须 | 备注 |
---|
token | string | 是 | 调用接口凭证 |
scope | string | 否 | 素材组所属范围, 默认为Org, Org为企业素材组, User为个人素材组 |
userId | string | 否 | 当scope为User, userId必传 |
current | Number | 是 | 当前页数 |
pageSize | Number | 是 | 每页数据条数 |
返回示例:
{
"errcode": 0,
"errmsg": "string",
"data": [
{
"id": "string",
"name": "string",
"scope": "string",
"userId": "string",
}
]
}
参数说明:
参数 | 类型 | 必定存在 | 备注 |
---|
errcode | number | 是 | 返回码 |
errmsg | string | 是 | 对返回码的文本描述内容 |
data.id | string | 是 | 素材组id |
data.name | string | 是 | 素材组名称 |
data.scope | string | 是 | 素材组所属范围,Org为企业素材组, User为个人素材组 |
data.userId | string | 否 | 素材组所属的素材组id |