pdd/requests/
pdd_ad_api_unit_creative_create.rs

1use crate::Request;
2
3use serde::{Deserialize, Serialize};
4
5
6/// 创建创意
7#[derive(Serialize, Deserialize, Debug, Default)]
8pub struct PddAdApiUnitCreativeCreate {
9    
10    /// 创意列表
11    #[serde(rename = "adCreativeCreateMessage")]
12    pub ad_creative_create_message: Option<AdCreativeCreateMessage>,
13    
14    /// 广告单元Id
15    #[serde(rename = "adId")]
16    pub ad_id: Option<i64>,
17    
18}
19
20/// 创建创意
21#[derive(Serialize, Deserialize, Debug, Default)]
22pub struct AdTextVoList {
23    
24    /// 标题
25    #[serde(rename = "text")]
26    pub text: Option<String>,
27    
28}
29
30/// 创建创意
31#[derive(Serialize, Deserialize, Debug, Default)]
32pub struct AdCreativeCreateMessage {
33    
34    /// 创意图片列表
35    #[serde(rename = "adImageVOList")]
36    pub ad_image_vo_list: Option<Vec<AdImageVoList>>,
37    
38    /// 创意标题列表
39    #[serde(rename = "adTextVOList")]
40    pub ad_text_vo_list: Option<Vec<AdTextVoList>>,
41    
42    /// 创意规格,6:商品轮播图,7:商品长图,其余规格暂不支持
43    #[serde(rename = "creativeSpecificationId")]
44    pub creative_specification_id: Option<i64>,
45    
46}
47
48/// 创建创意
49#[derive(Serialize, Deserialize, Debug, Default)]
50pub struct AdImageVoList {
51    
52    /// 图片链接,可用图片参考以下接口返回:pdd.ad.api.goods.query.gallery.images(轮播图),pdd.ad.api.goods.query.long.images(长图)
53    #[serde(rename = "imageUrl")]
54    pub image_url: Option<String>,
55    
56}
57
58
59/// 创建创意
60impl Request for PddAdApiUnitCreativeCreate {
61    fn get_type() -> String {
62        "pdd.ad.api.unit.creative.create".to_string()
63    }
64
65    fn get_response_name() -> String {
66        "response".to_string()
67    }
68}