Documentation ¶
Overview ¶
Package file 素材管理相关API models
Index ¶
- type FailedMaterialBind
- type Image
- type ImageAdGetRequest
- type ImageAdRequest
- type ImageAdResponse
- type ImageAdvertiserRequest
- type ImageAdvertiserResponse
- type ImageGetFilter
- type ImageGetRequest
- type ImageGetResponse
- type ImageGetResponseData
- type MaterialBindRequest
- type MaterialBindResponse
- type MaterialBindResponseData
- type Video
- type VideoAdGetRequest
- type VideoAdRequest
- type VideoAdResponse
- type VideoCoverSuggestRequest
- type VideoCoverSuggestResponse
- type VideoCoverSuggestResponseData
- type VideoDeleteRequest
- type VideoDeleteResponse
- type VideoDeleteResponseData
- type VideoForUpdate
- type VideoGetFilter
- type VideoGetRequest
- type VideoGetResponse
- type VideoGetResponseData
- type VideoUpdateRequest
- type VideoUpdateResponse
- type VideoUpdateResponseData
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 ¶
func (r ImageAdvertiserRequest) Encode() []model.UploadField
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"` }
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 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"` }
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返回值