Documentation ¶
Overview ¶
Package promotion 广告管理模块
Index ¶
- type CreateRequest
- type CreateResponse
- type CustomerMaterial
- type DetailRequest
- type DetailResponse
- type ListFilter
- type ListRequest
- type ListResponse
- type ListResult
- type Promotion
- type PromotionDetail
- type StatusUpdateItem
- type StatusUpdateRequest
- type StatusUpdateResponse
- type TitleMaterial
- type UpdateError
- type UpdateRequest
- type UpdateResult
- type VideoMaterial
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type CreateRequest ¶
type CreateRequest struct { // LocalAccountID 本地推广告账户ID LocalAccountID uint64 `json:"local_account_id,omitempty"` // ProjectID 项目ID ProjectID uint64 `json:"project_id,omitempty"` // Name 广告名称,长度是1-50个字(两个英文字符占1个字) Name string `json:"name,omitempty"` // EnableGraphicDelivery 是否开启团购卡 // 仅当项目marketing_goal = VIDEO_IMAGE 短视频/图文 && external_action = OTO_PAY 团购购买/POI_RECOMMEND 门店引流时 ,有效且必传 EnableGraphicDelivery bool `json:"enable_graphic_delivery,omitempty"` // AwemeID 用于推广的抖音号id // 当营销场景为短视频,且选择素材库和上传视频投广时,该字段必填 AwemeID string `json:"aweme_id,omitempty"` // VideoHpVisibility 主页视频是否可见,默认单次展示可见 // ALWAYS_VISIBLE 主页始终可见 // HIDE_VIDEO_ON_HP 仅单次展示可见(默认值) // 仅针对素材库和上传视频生效 VideoHpVisibility enum.VideoHpVisibility `json:"video_hp_visibility,omitempty"` // LiveMaterialType 直播素材类型设置 可选值: // LIVE 直播间画面 // VIDEO 短视频 // 注意:当项目营销场景为直播间时,有效且必传。直播场景下仅支持设置其一,当选择直播间画面时,不支持传入customer_material_list LiveMaterialType enum.MarketingGoal `json:"live_material_type,omitempty"` // CustomerMaterialList 视频素材列表 // 推直播:live_material_type=VIDEO短视频时必填,live_material_type=LIVE时不支持传入,传入会报错; // 推短视频:未开启团购卡时,视频素材必传;开启团购卡时,可根据是否需要推广短视频素材选择传入 CustomerMaterialList []CustomerMaterial `json:"customer_material_list,omitempty"` }
CreateRequest 创建广告 API Request
func (CreateRequest) Encode ¶
func (r CreateRequest) Encode() []byte
Encode implement PostRequest interface
type CreateResponse ¶
type CreateResponse struct { model.BaseResponse Data struct { // PromotionID 广告ID PromotionID uint64 `json:"promotion_id,omitempty"` } `json:"data,omitempty"` }
CreateResponse 创建广告 API Response
type CustomerMaterial ¶
type CustomerMaterial struct { // ImageMode 素材类型 可选值: // IMAGE_MODE_VIDEO 横版视频 // IMAGE_MODE_VIDEO_VERTICAL 竖版视频 ImageMode local.ImageMode `json:"image_mode,omitempty"` // TitleMaterial 标题素材 // 仅针对素材库视频生效且必填,即传入video_id时,该字段生效且必填 // 当传入item_id时,以抖音主页视频的标题为主,该字段不生效 TitleMaterial *TitleMaterial `json:"title_material,omitempty"` // VideoMaterial 视频素材 VideoMaterial *VideoMaterial `json:"video_material,omitempty"` }
CustomerMaterial 视频素材列表
type DetailRequest ¶
type DetailRequest struct { // LocalAccountID 本地推广告账户ID LocalAccountID uint64 `json:"local_account_id,omitempty"` // PromotionID 广告ID PromotionID uint64 `json:"promotion_id,omitempty"` }
DetailRequest 获取广告详情 API Request
func (DetailRequest) Encode ¶
func (r DetailRequest) Encode() string
Encode implements GetRequest interface
type DetailResponse ¶
type DetailResponse struct { Data *PromotionDetail `json:"data,omitempty"` model.BaseResponse }
DetailResponse 获取广告详情 API Response
type ListFilter ¶
type ListFilter struct { // PromotionIDs 按广告IDs筛选,单次最多100个 PromotionIDs []uint64 `json:"promotion_ids,omitempty"` // PromotionName 按广告名称模糊搜索 PromotionName string `json:"promotion_name,omitempty"` // ProjectID 项目ID筛选 ProjectID uint64 `json:"project_id,omitempty"` // PromotionStatusFirst 广告一级状态过滤,默认不限(不包含已删除),允许值: // PROMOTION_STATUS_ALL 不限(包含已删除) // PROMOTION_STATUS_DELETED 已删除: // PROMOTION_STATUS_DISABLE 未投放 // PROMOTION_STATUS_DONE 已完成 // PROMOTION_STATUS_ENABLE 投放中 // PROMOTION_STATUS_FROZEN 已终止 // PROMOTION_STATUS_NOT_DELETE 不限(不包含已删除) // 默认值: PROMOTION_STATUS_NOT_DELETE PromotionStatusFirst local.PromotionStatusFirst `json:"promotion_status_first,omitempty"` // PromotionStatusSecond 广告二级状态过滤,允许值: // 仅当promotion_status_first=PROMOTION_STATUS_DISABLE未投放时传入有效且必填,不传会报错;其他情况下传入该字段无效。 // AUDIT_DENY 审核不通过 // AUDIT 新建审核中 // REAUD/IT 修改审核中 // DISABLED 已暂停 // DISABLE_BY_QUOTA 配额达限 // PROJECT_DISABLED 项目已被暂停 // NO_SCHEDULE 不在投放时段 // TIME_NO_REACH 未到达投放时间 // OFFLINE_BALANCE 账户余额不足 // BALANCE_OFFLINE_BUDGET 账户超出预算 // PROJECT_OFFLINE_BUDGET 项目超出预算 // PROMOTION_OFFLINE_BUDGET 广告超出预算 // LIVE_ROOM_OFF 直播间不可投放 // AWEME_ACCOUNT_DISABLED 抖音账号不可投放 // PRODUCT_OR_POI_OFFLINE 商品/门店不可投 PromotionStatusSecond local.PromotionStatusSecond `json:"promotion_status_second,omitempty"` // AdType 广告类型筛选,默认不限,允许值: // ALL 不限 // GENERAL 通投广告 // SEARCHING 搜索广告 // 默认值: ALL AdType local.AdType `json:"ad_type,omitempty"` // MarketingGoal 营销场景筛选,默认不限,允许值: // ALL 不限 // LIVE 直播 // VIDEO_IMAGE 短视频/图文 // 默认值: ALL MarketingGoal local.MarketingGoal `json:"marketing_goal,omitempty"` // PromotionCreateTimeStart 广告创建开始时间,格式yyyy-MM-dd HH:mm:ss与time_end搭配使用 PromotionCreateTimeStart string `json:"promotion_create_time_start,omitempty"` // PromotionCreateTimeEnd 广告创建结束时间,格式yyyy-MM-dd HH:mm:ss与time_start搭配使用 PromotionCreateTimeEnd string `json:"promotion_create_time_end,omitempty"` // PromotionModifyTimeStart 广告更新开始时间,格式yyyy-MM-dd HH:mm:ss与time_end搭配使用 PromotionModifyTimeStart string `json:"promotion_modify_time_start,omitempty"` // PromotionModifyTimeEnd 广告更新结束时间,格式yyyy-MM-dd HH:mm:ss与time_start搭配使用 PromotionModifyTimeEnd string `json:"promotion_modify_time_end,omitempty"` // RejectReasonType 审核建议类型筛选,默认不限,允许值: // ALL 不限 // NONE 无建议 // LOW_MATERAIL 低俗素材 // QUALITY_POOR 素材质量低 // EXAGGERATION 夸大宣传 // ELSE 其他 // DISCOMFORT 引人不适 // REVIEW_REJECT 审核不通过 // 默认值: ALL RejectReasonType enum.PromotionRejectReasonType `json:"reject_reason_type,omitempty"` // LearningPhase 学习期状态筛选,默认不限,允许值: // ALL 不限 // LEARNED 学习期结束 // LEARNING 学习中 // LEARN_FAILED 学习失败 // 默认值: ALL LearningPhase enum.LearningPhase `json:"learning_phase,omitempty"` // BudgetMode 预算类型筛选,默认不限,允许值: // ALL 不限 // BUDGET_MODE_DAY 日预算 // BUDGET_MODE_TOTAL 总预算 // 默认值: ALL BudgetMode enum.BudgetMode `json:"budget_mode,omitempty"` // BidType 出价方式筛选,默认不限,允许值: // ALL 不限 // MANUAL 手动出价 // SMART 智能出价 // 默认值: ALL BidType local.BidType `json:"bid_type,omitempty"` }
type ListRequest ¶
type ListRequest struct { // LocalAccountID 本地推广告账户ID LocalAccountID uint64 `json:"local_account_id,omitempty"` // Filtering 筛选项 Filtering *ListFilter `json:"filtering,omitempty"` // Page 页码,默认值1 Page int `json:"page,omitempty"` // PageSize 页面大小,最大值100,默认10 PageSize int `json:"page_size,omitempty"` }
ListRequest 获取广告列表 API Request
func (ListRequest) Encode ¶
func (r ListRequest) Encode() string
Encode implements GetRequest interface
type ListResponse ¶
type ListResponse struct { Data *ListResult `json:"data,omitempty"` model.BaseResponse }
ListResponse 获取广告列表 API Response
type ListResult ¶
type Promotion ¶
type Promotion struct { // ProjectID 项目ID ProjectID uint64 `json:"project_id,omitempty"` // LocalAccountID 广告主ID LocalAccountID uint64 `json:"local_account_id,omitempty"` // AdType 广告类型,枚举值: // GENERAL 通投广告 // SEARCHING 搜索广告 AdType local.AdType `json:"ad_type,omitempty"` // PromotionID 广告ID PromotionID uint64 `json:"promotion_id,omitempty"` // PromotionName 广告名称 PromotionName string `json:"promotion_name,omitempty"` // PromotionCreateTime 广告创建时间,格式yyyy-MM-dd HH:mm:ss PromotionCreateTime string `json:"promotion_create_time,omitempty"` // PromotionModifyTime 广告修改时间,格式yyyy-MM-dd HH:mm:ss PromotionModifyTime string `json:"promotion_modify_time,omitempty"` // PromotionStatusFirst 广告一级状态 PromotionStatusFirst local.PromotionStatusFirst `json:"promotion_status_first,omitempty"` // PromotionStatusSecond 广告二级状态 PromotionStatusSecond []local.PromotionStatusSecond `json:"promotion_status_second,omitempty"` // LearningPhase 学习期状态,枚举值: // LEARNED 学习期结束 // LEARNING 学习中 // LEARN_FAILED 学习失败 LearningPhase enum.LearningPhase `json:"learning_phase,omitempty"` // AwemeID 抖音号 AwemeID string `json:"aweme_id,omitempty"` // AwemeName 抖音号昵称 AwemeName string `json:"aweme_name,omitempty"` }
Promotion 广告
type PromotionDetail ¶
type PromotionDetail struct { // PromotionID 广告ID PromotionID uint64 `json:"promotion_id,omitempty"` // AwemeID 抖音号 AwemeID string `json:"aweme_id,omitempty"` // EnableGraphicDelivery 是否开启团购卡 EnableGraphicDelivery bool `json:"enable_graphic_delivery,omitempty"` // VideoHpVisibility 视频曝光 VideoHpVisibility enum.VideoHpVisibility `json:"video_hp_visibility,omitempty"` // LiveMaterialType 直播素材类型,枚举值: // LIVE 直播素材 // VIDEO 广告素材 LiveMaterialType enum.MarketingGoal `json:"live_material_type,omitempty"` // CustomerMaterialList 自定义素材组合 CustomerMaterialList []CustomerMaterial `json:"customer_material_list,omitempty"` }
PromotionDetail 广告详情
type StatusUpdateItem ¶
type StatusUpdateItem struct { // PromotionID 广告id PromotionID uint64 `json:"promotion_id,omitempty"` // OptStatus 目标操作 // 目标操作,可选值: // ENABLE 启用广告 // PAUSED 暂停广告 // 对于删除的广告广告不可进行任何操作,否则会报错 OptStatus string `json:"opt_status,omitempty"` }
StatusUpdateItem 批量更新广告
type StatusUpdateRequest ¶
type StatusUpdateRequest struct { // LocalAccountID 本地推广告账户ID LocalAccountID uint64 `json:"local_account_id,omitempty"` // Data 批量更新广告状态,包含广告ID和目标操作,list长度限制1~50 Data []StatusUpdateItem `json:"data,omitempty"` }
StatusUpdateRequest 批量更新广告状态 API Request
func (StatusUpdateRequest) Encode ¶
func (r StatusUpdateRequest) Encode() []byte
Encode implements PostRequest interface
type StatusUpdateResponse ¶
type StatusUpdateResponse struct { model.BaseResponse Data *UpdateResult `json:"data,omitempty"` }
StatusUpdateResponse 批量更新广告状态 API Response
type TitleMaterial ¶
type TitleMaterial struct { // Title 标题,标题长度要求5-55个字(两个英文字符占1个字) Title string `json:"title,omitempty"` // LegoMaterialID 标题素材库id LegoMaterialID uint64 `json:"lego_material_id,omitempty"` // MaterialID 标题素材id MaterialID uint64 `json:"material_id,omitempty"` }
TitleMaterial 标题素材
type UpdateError ¶
type UpdateError struct { // PromotionID 广告ID PromotionID uint64 `json:"promotion_id,omitempty"` // ErrorMessage 失败信息 ErrorMessage string `json:"error_message,omitempty"` }
UpdateError 更新失败的广告列表
func (UpdateError) Error ¶
func (e UpdateError) Error() string
type UpdateRequest ¶
type UpdateRequest struct { // LocalAccountID 本地推广告账户ID LocalAccountID uint64 `json:"local_account_id,omitempty"` // PromotionID 广告ID PromotionID uint64 `json:"promotion_id,omitempty"` // Name 广告名称,长度是1-50个字(两个英文字符占1个字) Name string `json:"name,omitempty"` // AwemeID 用于推广的抖音号id // 当营销场景为短视频,且选择素材库和上传视频投广时,该字段必填 AwemeID string `json:"aweme_id,omitempty"` // VideoHpVisibility 主页视频是否可见,默认单次展示可见 // ALWAYS_VISIBLE 主页始终可见 // HIDE_VIDEO_ON_HP 仅单次展示可见(默认值) // 仅针对素材库和上传视频生效 VideoHpVisibility enum.VideoHpVisibility `json:"video_hp_visibility,omitempty"` // CustomerMaterialList 视频素材列表 // 推直播:live_material_type=VIDEO短视频时必填,live_material_type=LIVE时不支持传入,传入会报错; // 推短视频:未开启团购卡时,视频素材必传;开启团购卡时,可根据是否需要推广短视频素材选择传入 CustomerMaterialList []CustomerMaterial `json:"customer_material_list,omitempty"` }
UpdateRequest 更新广告 API Request
func (UpdateRequest) Encode ¶
func (r UpdateRequest) Encode() []byte
Encode implement PostRequest interface
type UpdateResult ¶
type UpdateResult struct { // PromotionIDs 更新成功的广告ID PromotionIDs []uint64 `json:"promotion_ids,omitempty"` // Errors 更新失败的广告列表 Errors []UpdateError `json:"errors,omitempty"` }
type VideoMaterial ¶
type VideoMaterial struct { // VideoID 视频ID VideoID string `json:"video_id,omitempty"` // CoverWebURL 封面图片URI CoverWebURL string `json:"cover_web_url,omitempty"` // AwemeItemID 抖音短视频ID,推广抖音主页视频时传入 // 注意:如果视频为抖音主页视频,则该字段必填 // 如果和video_id同时传,以aweme_item_id为准 AwemeItemID uint64 `json:"aweme_item_id,omitempty"` // LegoMaterialID 视频素材库id LegoMaterialID uint64 `json:"lego_material_id,omitempty"` // MaterialID 视频素材id MaterialID uint64 `json:"material_id,omitempty"` // ImageMode 素材类型,枚举值: // IMAGE_MODE_VIDEO 横版视频 // IMAGE_MODE_VIDEO_VERTICAL 竖版视频 ImageMode local.ImageMode `json:"image_mode,omitempty"` // VideoDuration 视频长度 VideoDuration int64 `json:"video_duration,omitempty"` // VideoHeight 视频高度 VideoHeight int64 `json:"video_height,omitempty"` // VideoWidth 视频宽度 VideoWidth int64 `json:"video_width,omitempty"` // VideoPlayURL 视频播放链接 VideoPlayURL string `json:"video_play_url,omitempty"` // CoverImageHeight 封面图片高度 CoverImageHeight int64 `json:"cover_image_height,omitempty"` // CoverImageWidth 封面图片宽度 CoverImageWidth int64 `json:"cover_image_width,omitempty"` // CoverWebURI 封面图片uri CoverWebURI string `json:"cover_web_uri,omitempty"` }
VideoMaterial 视频素材