file

package
v1.6.12 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 21, 2022 License: Apache-2.0 Imports: 6 Imported by: 2

Documentation

Overview

Package file 素材管理相关API models

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type FailedMaterialBind

type FailedMaterialBind struct {
	// VideoID 推送失败的视频id
	VideoID string `json:"video_id,omitempty"`
	// ImageID 推送失败的图片id
	ImageID string `json:"image_id,omitempty"`
	// TargetAdvertiserID 目标推送广告主id
	TargetAdvertiserID uint64 `json:"target_advertiser_id,omitempty"`
	// FailReason 推送失败原因
	// 枚举值:VIDEO_BINDING_EXISTED(视频已存在)、IMAGE_BINDING_EXISTED(图片已存在)
	FailReason enum.MaterialBindFailReason `json:"fail_reason,omitempty"`
}

FailedMaterialBind 推送失败素材

type Image

type Image struct {
	// ID 图片ID
	ID string `json:"id,omitempty"`
	// MaterialID 素材id,即多合一报表中的素材id,一个素材唯一对应一个素材id
	MaterialID uint64 `json:"material_id,omitempty"`
	// Size 图片大小
	Size uint64 `json:"size,omitempty"`
	// Width 图片宽度
	Width int `json:"width,omitempty"`
	// Height 图片高度
	Height int `json:"height,omitempty"`
	// URL 图片预览地址,仅限同主体进行素材预览查看,若非同主体会返回“素材所属主体与开发者主体不一致无法获取URL”
	// 链接仅做预览使用,预览链接有效期为1小时
	URL string `json:"url,omitempty"`
	// Format 图片格式
	Format string `json:"format,omitempty"`
	// Signature 图片md5
	Signature string `json:"signature,omitempty"`
	// CreateTime 素材的上传时间,格式:"yyyy-mm-dd HH:MM:SS"
	CreateTime string `json:"create_time,omitempty"`
	// Filename 素材的文件名
	Filename string `json:"filename,omitempty"`
}

Image 图片

type ImageAdGetRequest

type ImageAdGetRequest struct {
	// AdvertiserID 广告主ID
	AdvertiserID uint64 `json:"advertiser_id,omitempty"`
	// ImageIDs 图片ids,长度限制1~100
	ImageIDs []string `json:"image_ids,omitempty"`
}

ImageAdGetRequest 获取同主体下广告主图片素材 API Request

func (ImageAdGetRequest) Encode

func (r ImageAdGetRequest) Encode() string

Encode implement GetRequest interface

type ImageAdRequest

type ImageAdRequest struct {
	// AdvertiserID 广告主ID
	AdvertiserID uint64 `json:"advertiser_id,omitempty"`
	// UploadType 图片上传方式; 默认值:UPLOAD_BY_FILE; 允许值:UPLOAD_BY_FILE、UPLOAD_BY_URL
	UploadType enum.UploadType `json:"upload_type,omitempty"`
	// ImageSignature 图片的md5值(用于服务端校验),upload_type为UPLOAD_BY_FILE必填
	ImageSignature string `json:"image_signature,omitempty"`
	// ImageFile 图片文件,upload_type为UPLOAD_BY_FILE必填; 格式: jpg、jpeg、png、bmp、gif, 大小1.5M内
	ImageFile *model.UploadField `json:"image_file,omitempty"`
	// ImageUrl 图片url地址,如http://xxx.xxx,upload_type为UPLOAD_BY_URL必填
	ImageUrl string `json:"image_url,omitempty"`
	// Filename 素材的文件名,可自定义素材名,不传则默认取文件名,最长255个字符; 注:若同一素材已进行上传,重新上传不会改名
	Filename string `json:"filename,omitempty"`
}

ImageAdRequest 上传广告图片 API Request

func (ImageAdRequest) Encode

func (r ImageAdRequest) Encode() []model.UploadField

Encode implement UploadRequest interface

type ImageAdResponse

type ImageAdResponse struct {
	model.BaseResponse
	Data *Image `json:"data,omitempty"`
}

ImageAdResponse 上传广告图片 API Response

type ImageAdvertiserRequest

type ImageAdvertiserRequest struct {
	// AdvertiserID 广告主ID
	AdvertiserID uint64 `json:"advertiser_id,omitempty"`
	// UploadType 图片上传方式; 默认值:UPLOAD_BY_FILE; 允许值:UPLOAD_BY_FILE、UPLOAD_BY_URL
	UploadType enum.UploadType `json:"upload_type,omitempty"`
	// ImageSignature 图片的md5值(用于服务端校验),upload_type为UPLOAD_BY_FILE必填
	ImageSignature string `json:"image_signature,omitempty"`
	// ImageFile 图片文件,upload_type为UPLOAD_BY_FILE必填; 格式: jpg、jpeg、png、bmp、gif, 大小1.5M内
	ImageFile *model.UploadField `json:"image_file,omitempty"`
	// ImageUrl 图片url地址,如http://xxx.xxx,upload_type为UPLOAD_BY_URL必填
	ImageUrl string `json:"image_url,omitempty"`
	// UploadTo 调用上传资质; 默认值:CG; 允许值:CG:广告主资质接口、AD:投放资质接口
	UploadTo string `json:"upload_to,omitempty"`
}

ImageAdvertiserRequest 上传广告主图片 API Request

func (ImageAdvertiserRequest) Encode

Encode implement UploadRequest interface

type ImageAdvertiserResponse

type ImageAdvertiserResponse struct {
	model.BaseResponse
	Data *Image `json:"data,omitempty"`
}

ImageAdvertiserResponse 上传广告主图片 API Response

type ImageGetFilter

type ImageGetFilter struct {
	// ImageIDs 图片ids,可以根据图片ids(创意中使用的图片key,存在一张图片对应多个image_ids的情况)进行过滤
	// 数量限制:<=100
	// 注意:image_ids、material_ids、signatures只能选择一个进行过滤
	ImageIDs []string `json:"image_ids,omitempty"`
	// MaterialIDs 素材id列表,可以根据material_ids(素材报表使用的id,一个素材唯一对应一个素材id)进行过滤
	// 数量限制:<=100
	// 注意:image_ids、material_ids、signatures只能选择一个进行过滤
	MaterialIDs []uint64 `json:"material_ids,omitempty"`
	// Signatures md5值列表,可以根据素材的md5进行过滤
	// 数量限制:<=100
	// 注意:image_ids、material_ids、signatures只能选择一个进行过滤
	Signatures []string `json:"signatures,omitempty"`
	// Width 图片宽度
	Width int `json:"width,omitempty"`
	// Height 图片高度
	Height int `json:"height,omitempty"`
	// Ratio 图片宽高比,eg: [1.7, 2.5],输入1.7则搜索满足宽高比介于1.65-1.75之间的图片,即精度上下浮动0.05
	Ratio []float64 `json:"ratio,omitempty"`
	// StartTime 根据视频上传时间进行过滤的起始时间,与end_time搭配使用,格式:yyyy-mm-dd
	StartTime string `json:"start_time,omitempty"`
	// EndTime 根据视频上传时间进行过滤的截止时间,与start_time搭配使用,格式:yyyy-mm-dd
	EndTime string `json:"end_time,omitempty"`
}

ImageGetFilter 图片过滤条件

type ImageGetRequest

type ImageGetRequest struct {
	// AdvertiserID 广告主ID
	AdvertiserID uint64 `json:"advertiser_id,omitempty"`
	// Filtering 图片过滤条件
	Filtering *ImageGetFilter `json:"filtering,omitempty"`
	// Page 页码,默认值1
	Page int `json:"page,omitempty"`
	// PageSize 页面大小,默认值20
	PageSize int `json:"page_size,omitempty"`
}

ImageGetRequest 获取图片素材 API Request

func (ImageGetRequest) Encode

func (r ImageGetRequest) Encode() string

Encode implement GetRequest interface

type ImageGetResponse

type ImageGetResponse struct {
	model.BaseResponse
	Data *ImageGetResponseData `json:"data,omitempty"`
}

ImageGetResponse 获取图片素材 API Response

type ImageGetResponseData

type ImageGetResponseData struct {
	// List 图片列表
	List []Image `json:"list,omitempty"`
	// PageInfo 分页信息
	PageInfo *model.PageInfo `json:"page_info,omitempty"`
}

ImageGetResponseData json返回值

type MaterialBindRequest

type MaterialBindRequest struct {
	// AdvertiserID 素材归属广告主
	AdvertiserID uint64 `json:"advertiser_id,omitempty"`
	// TargetAdvertiserIDs 待推送的广告主,数量限制:<=50
	TargetAdvertiserIDs []uint64 `json:"target_advertiser_ids,omitempty"`
	// VideoIDs 视频ID,数量限制:<=50; 注意:跟image_ids必须二选一、组织共享视频不可推送
	VideoIDs []string `json:"video_ids,omitempty"`
	// ImageIDs 图片ID,数量限制:<=50; 注意:跟video_ids必须二选一
	ImageIDs []string `json:"image_ids,omitempty"`
}

MaterialBindRequest 素材推送 API Request

func (MaterialBindRequest) Encode

func (r MaterialBindRequest) Encode() []byte

Encode implement PostRequest interface

type MaterialBindResponse

type MaterialBindResponse struct {
	model.BaseResponse
	Data *MaterialBindResponseData `json:"data,omitempty"`
}

MaterialBindResponse 素材推送 API Response

type MaterialBindResponseData

type MaterialBindResponseData struct {
	// FailList 推送失败列表
	FailList []FailedMaterialBind `json:"fail_list,omitempty"`
}

MaterialBindResponseData json返回值

type Video

type Video struct {
	// ID 视频ID
	ID string `json:"id,omitempty"`
	// VideoID 视频ID
	VideoID string `json:"video_id,omitempty"`
	// Size 视频大小
	Size uint64 `json:"size,omitempty"`
	// Width 视频宽度
	Width int `json:"width,omitempty"`
	// Height 视频高度
	Height int `json:"height,omitempty"`
	// URL 视频地址,仅限同主体进行素材预览查看,若非同主体会返回“素材所属主体与开发者主体不一致无法获取URL”
	// 链接仅做预览使用,预览链接有效期为1小时
	URL string `json:"url,omitempty"`
	// VideoURL 视频地址
	VideoURL string `json:"video_url,omitempty"`
	// Format 视频格式
	Format string `json:"format,omitempty"`
	// Signature 视频md5
	Signature string `json:"signature,omitempty"`
	// PosterURL 视频首帧截图,仅限同主体进行素材预览查看,若非同主体会返回“素材所属主体与开发者主体不一致无法获取URL”
	PosterURL string `json:"poster_url,omitempty"`
	// BitRate 码率,单位bps
	BitRate int64 `json:"bit_rate,omitempty"`
	// Duration 视频时长
	Duration float64 `json:"duration,omitempty"`
	// MaterialID 素材id,即多合一报表中的素材id,一个素材唯一对应一个素材id
	MaterialID uint64 `json:"material_id,omitempty"`
	// Source 素材来源,详见【附录-素材来源】
	Source enum.MaterialSource `json:"source,omitempty"`
	// CreateTime 素材的上传时间,格式:"yyyy-mm-dd HH:MM:SS"
	CreateTime string `json:"create_time,omitempty"`
	// Filename 素材的文件名
	Filename string `json:"filename,omitempty"`
	// Labels 视频标签
	Labels []string `json:"labels,omitempty"`
	// AwemeItemID 抖音短视频 ID
	AwemeItemID uint64 `json:"aweme_item_id,omitempty"`
	// Title 抖音中的视频标题
	Title string `json:"title,omitempty"`
	// IsRecommend 是否推荐; 0 不推荐 1 推荐
	IsRecommend int `json:"is_recommend,omitempty"`
}

Video 视频

type VideoAdGetRequest

type VideoAdGetRequest struct {
	// AdvertiserID 广告主ID
	AdvertiserID uint64 `json:"advertiser_id,omitempty"`
	// VideoIDs 视频ids,长度限制 1~60
	VideoIDs []string `json:"video_ids,omitempty"`
}

VideoAdGetRequest 获取同主体下广告主视频素材API Request

func (VideoAdGetRequest) Encode

func (r VideoAdGetRequest) Encode() string

Encode implement GetRequest interface

type VideoAdRequest

type VideoAdRequest struct {
	// AdvertiserID 广告主ID
	AdvertiserID uint64 `json:"advertiser_id,omitempty"`
	// VideoSignature 视频的md5值(用于服务端校验)
	VideoSignature string `json:"video_signature,omitempty"`
	// VideoFile 视频文件; 允许格式:mp4、mpeg、3gp、avi(10s超时限制)
	VideoFile *model.UploadField `json:"video_file,omitempty"`
	// Filename 素材的文件名,可自定义素材名,不传则默认取文件名,最长255个字符; 注:若同一素材已进行上传,重新上传不会改名
	Filename string `json:"filename,omitempty"`
}

VideoAdRequest 上传广告视频 API Request

func (VideoAdRequest) Encode

func (r VideoAdRequest) Encode() []model.UploadField

Encode implement UploadRequest interface

type VideoAdResponse

type VideoAdResponse struct {
	model.BaseResponse
	Data *Video `json:"data,omitempty"`
}

VideoAdResponse 上传广告视频 API Response

type VideoAwemeGetFiltering added in v1.5.0

type VideoAwemeGetFiltering struct {
	//ProductID 商品ID,查询关联商品的相应视频,仅短视频带货场景需入参
	ProductID uint64 `json:"product_id,omitempty"`
}

VideoAwemeGetFiltering 筛选条件

type VideoAwemeGetRequest added in v1.5.0

type VideoAwemeGetRequest struct {
	// AdvertiserID 广告主ID
	AdvertiserID uint64 `json:"advertiser_id,omitempty"`
	// AwemeID 需拉取视频的抖音号
	AwemeID uint64 `json:"aweme_id,omitempty"`
	// Filtering 视频过滤条件
	Filtering *VideoAwemeGetFiltering `json:"filtering,omitempty"`
	// Cursor 页码游标值,第一次拉取,无需入参
	Cursor int `json:"cursor,omitempty"`
	// Count 页面大小,默认值30,限制1-50
	Count int `json:"count,omitempty"`
}

VideoAwemeGetRequest 获取抖音号下的视频 API Request

func (VideoAwemeGetRequest) Encode added in v1.5.0

func (r VideoAwemeGetRequest) Encode() string

Encode implement GetRequest interface

type VideoAwemeGetResponse added in v1.5.0

type VideoAwemeGetResponse struct {
	model.BaseResponse
	Data *VideoAwemeGetResponseData `json:"data,omitempty"`
}

VideoAwemeGetResponse 获取抖音号下的视频 API Response

type VideoAwemeGetResponseData added in v1.5.0

type VideoAwemeGetResponseData struct {
	// List 视频列表
	List []Video `json:"video_list,omitempty"`
	// PageInfo 分页信息
	PageInfo *model.PageInfo `json:"page_info,omitempty"`
}

VideoAwemeGetResponseData json返回值

type VideoCoverSuggestRequest

type VideoCoverSuggestRequest struct {
	// AdvertiserID 广告主ID
	AdvertiserID uint64 `json:"advertiser_id,omitempty"`
	// VideoID 视频id
	VideoID string `json:"video_id,omitempty"`
}

VideoCoverSuggestRequest 获取视频智能封面 API Request

func (VideoCoverSuggestRequest) Encode

func (r VideoCoverSuggestRequest) Encode() string

Encode implement GetRequest interface

type VideoCoverSuggestResponse

type VideoCoverSuggestResponse struct {
	model.BaseResponse
	Data *VideoCoverSuggestResponseData `json:"data,omitempty"`
}

VideoCoverSuggestResponse 获取视频智能封面 API Response

type VideoCoverSuggestResponseData

type VideoCoverSuggestResponseData struct {
	// Status 封面生成的状态
	// 枚举值:RUNNING(生成中)、SUCCESS(成功)、FAILED(失败)
	// 注意:视频封面不是实时生成,需要根据status字段判断封面生成的状态,大概需要6,7s中生成,所以当status=RUNNING时请等待后重试
	Status enum.VideoCoverStatus `json:"status,omitempty"`
	// List 视频封面列表
	List []Image `json:"list,omitempty"`
}

VideoCoverSuggestResponseData json返回值

type VideoDeleteRequest

type VideoDeleteRequest struct {
	// AdvertiserID 素材归属的广告主
	AdvertiserID uint64 `json:"advertiser_id,omitempty"`
	// VideoIDs 待删除的video_id列表,长度范围:1 ~ 100
	VideoIDs []string `json:"video_ids,omitempty"`
}

VideoDeleteRequest 批量删除视频素材 API Request

func (VideoDeleteRequest) Encode

func (r VideoDeleteRequest) Encode() []byte

Encode implement PostRequest interface

type VideoDeleteResponse

type VideoDeleteResponse struct {
	model.BaseResponse
	Data *VideoDeleteResponseData `json:"data,omitempty"`
}

VideoDeleteResponse 批量删除视频素材 API Response

type VideoDeleteResponseData

type VideoDeleteResponseData struct {
	// FailVideoIDs 操作失败的video_id列表,不在此列表内的素材表示删除成功
	FailVideoIDs []string `json:"fail_video_ids,omitempty"`
}

VideoDeleteResponseData json返回值

type VideoForUpdate

type VideoForUpdate struct {
	// VideoID 视频id,更新必填
	VideoID string `json:"video_id,omitempty"`
	// Filename 视频素材名称,最多255个字,更新时必填
	Filename string `json:"filename,omitempty"`
	// StatusCode 更新状态
	// SUCCESS 成功; FAILURE 失败(原因:操作视频非当前广告主所有或操作的视频不存在)
	StatusCode enum.VideoUpdateStatusCode `json:"status_code,omitempty"`
}

VideoForUpdate 上传视频信息

type VideoGetFilter

type VideoGetFilter struct {
	// VideoIDs 视频ids,示例: ["86adb23eaa21229fc04ef932b5089bb8"]
	// 数量限制:<=100
	// 注意:video_ids、material_ids、signatures只能选择一个进行过滤
	VideoIDs []string `json:"video_ids,omitempty"`
	// MaterialIDs 素材id列表,可以根据material_ids(素材报表使用的id,一个素材唯一对应一个素材id)进行过滤
	// 数量限制:<=100
	// 注意:image_ids、material_ids、signatures只能选择一个进行过滤
	MaterialIDs []uint64 `json:"material_ids,omitempty"`
	// Signatures md5值列表,可以根据素材的md5进行过滤
	// 数量限制:<=100
	// 注意:image_ids、material_ids、signatures只能选择一个进行过滤
	Signatures []string `json:"signatures,omitempty"`
	// Width 图片宽度
	Width int `json:"width,omitempty"`
	// Height 图片高度
	Height int `json:"height,omitempty"`
	// Ratio 图片宽高比,eg: [1.7, 2.5],输入1.7则搜索满足宽高比介于1.65-1.75之间的图片,即精度上下浮动0.05
	Ratio []float64 `json:"ratio,omitempty"`
	// StartTime 根据视频上传时间进行过滤的起始时间,与end_time搭配使用,格式:yyyy-mm-dd
	StartTime string `json:"start_time,omitempty"`
	// EndTime 根据视频上传时间进行过滤的截止时间,与start_time搭配使用,格式:yyyy-mm-dd
	EndTime string `json:"end_time,omitempty"`
}

VideoGetFilter 视频过滤条件

type VideoGetRequest

type VideoGetRequest struct {
	// AdvertiserID 广告主ID
	AdvertiserID uint64 `json:"advertiser_id,omitempty"`
	// Filtering 视频过滤条件
	Filtering *VideoGetFilter `json:"filtering,omitempty"`
	// Page 页码,默认值1
	Page int `json:"page,omitempty"`
	// PageSize 页面大小,默认值20
	PageSize int `json:"page_size,omitempty"`
}

VideoGetRequest 获取视频素材 API Request

func (VideoGetRequest) Encode

func (r VideoGetRequest) Encode() string

Encode implement GetRequest interface

type VideoGetResponse

type VideoGetResponse struct {
	model.BaseResponse
	Data *VideoGetResponseData `json:"data,omitempty"`
}

VideoGetResponse 获取视频素材 API Response

type VideoGetResponseData

type VideoGetResponseData struct {
	// List 视频列表
	List []Video `json:"list,omitempty"`
	// PageInfo 分页信息
	PageInfo *model.PageInfo `json:"page_info,omitempty"`
}

VideoGetResponseData json返回值

type VideoUpdateRequest

type VideoUpdateRequest struct {
	// AdvertiserID 素材归属的广告主
	AdvertiserID uint64 `json:"advertiser_id,omitempty"`
	// Videos 限制最多 100 个
	Videos []VideoForUpdate `json:"videos,omitempty"`
}

VideoUpdateRequest 更新视频API Request

func (VideoUpdateRequest) Encode

func (r VideoUpdateRequest) Encode() []byte

Encode implement PostRequest interface

type VideoUpdateResponse

type VideoUpdateResponse struct {
	model.BaseResponse
	Data *VideoUpdateResponseData `json:"data,omitempty"`
}

VideoUpdateResponse 更新视频API Response

type VideoUpdateResponseData

type VideoUpdateResponseData struct {
	// Videos 视频列表
	Videos []VideoForUpdate `json:"videos,omitempty"`
}

VideoUpdateResponseData json返回值

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL