Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
T
toutiao-api
Project
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Jobs
Commits
Open sidebar
chenmingyang
toutiao-api
Commits
f9fb2a60
Commit
f9fb2a60
authored
Apr 30, 2019
by
BetterXT
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
complete all dto
parent
4733a477
Hide whitespace changes
Inline
Side-by-side
Showing
13 changed files
with
576 additions
and
18 deletions
+576
-18
AdvertisingCreativeApi.java
...utiao/api/advertisingdelivery/AdvertisingCreativeApi.java
+91
-1
AdvertisingPlanApi.java
...r/toutiao/api/advertisingdelivery/AdvertisingPlanApi.java
+1
-1
AdvertisingCreativeDTO.java
.../advertisingdelivery/creative/AdvertisingCreativeDTO.java
+0
-10
AdvertisingDeliveryQueryDTO.java
...ter/toutiao/dto/delivery/AdvertisingDeliveryQueryDTO.java
+1
-1
AccountBudgetDTO.java
.../better/toutiao/dto/delivery/budget/AccountBudgetDTO.java
+1
-2
AdvertisingCreativeInDTO.java
...utiao/dto/delivery/creative/AdvertisingCreativeInDTO.java
+156
-0
AdvertisingCreativeOutDTO.java
...tiao/dto/delivery/creative/AdvertisingCreativeOutDTO.java
+227
-0
ImageCreativeOutDTO.java
...er/toutiao/dto/delivery/creative/ImageCreativeOutDTO.java
+45
-0
VideoCreativeOutDTO.java
...er/toutiao/dto/delivery/creative/VideoCreativeOutDTO.java
+46
-0
AdvertisingGroupDTO.java
...etter/toutiao/dto/delivery/group/AdvertisingGroupDTO.java
+4
-1
AdvertisingPlanInDTO.java
...etter/toutiao/dto/delivery/plan/AdvertisingPlanInDTO.java
+1
-1
AdvertisingPlanOutDTO.java
...tter/toutiao/dto/delivery/plan/AdvertisingPlanOutDTO.java
+1
-1
UpdateStatusDTO.java
...in/java/io/better/toutiao/dto/status/UpdateStatusDTO.java
+2
-0
No files found.
src/main/java/io/better/toutiao/api/advertisingdelivery/AdvertisingCreativeApi.java
View file @
f9fb2a60
package
io
.
better
.
toutiao
.
api
.
advertisingdelivery
;
package
io
.
better
.
toutiao
.
api
.
advertisingdelivery
;
import
io.better.toutiao.dto.BaseRespDTO
;
import
io.better.toutiao.dto.delivery.creative.AdvertisingCreativeInDTO
;
import
io.better.toutiao.dto.delivery.creative.AdvertisingCreativeOutDTO
;
import
io.better.toutiao.dto.status.UpdateStatusDTO
;
import
org.springframework.cloud.netflix.feign.FeignClient
;
import
org.springframework.cloud.netflix.feign.FeignClient
;
import
org.springframework.web.bind.annotation.*
;
import
java.util.List
;
import
java.util.Map
;
/**
/**
* The interface Advertising creative api.
*
* @author better create in 2019-04-28 16:27
* @author better create in 2019-04-28 16:27
*/
*/
@FeignClient
(
value
=
"
"
,
url
=
"
"
)
@FeignClient
(
value
=
"
https://ad.toutiao.com/open_api/2"
,
url
=
"/creative
"
)
public
interface
AdvertisingCreativeApi
{
public
interface
AdvertisingCreativeApi
{
/**
* 广告投放-获取某广告主的广告创意信息
*
* @param accessToken 访问凭证
* @param advertiserId 广告主ID
* @param page 当前页
* @param pageSize 每页记录数
* @param filtering 过滤字段
* @param fields 查询字段
* @return 广告创意信息 base resp dto
*/
@GetMapping
(
value
=
"/get"
)
BaseRespDTO
<
AdvertisingCreativeInDTO
>
listAdvertisingCreative
(
@RequestHeader
(
"Access-Token"
)
String
accessToken
,
@RequestParam
(
"advertiser_id"
)
Long
advertiserId
,
@RequestParam
(
value
=
"page"
,
defaultValue
=
"1"
,
required
=
false
)
Integer
page
,
@RequestParam
(
value
=
"page_size"
,
defaultValue
=
"20"
,
required
=
false
)
Integer
pageSize
,
@RequestParam
(
value
=
"filtering"
,
required
=
false
)
Map
<
String
,
Object
>
filtering
,
@RequestParam
(
value
=
"fields"
,
required
=
false
)
String
[]
fields
);
/**
* 广告投放-为某广告主下的某计划创建广告创意
*
* @param accessToken 访问凭证
* @param advertisingCreativeOut 创建信息
* @return the base resp dto
*/
@PostMapping
(
value
=
"/create_v2"
)
BaseRespDTO
<
Integer
>
createAdvertisingCreative
(
@RequestHeader
(
"Access-Token"
)
String
accessToken
,
@RequestBody
AdvertisingCreativeOutDTO
advertisingCreativeOut
);
/**
* 广告投放-查看某广告主下某计划下的创建详情信息
*
* @param accessToken 访问凭证
* @param advertiserId 广告主ID
* @param adId 计划ID
* @return the advertising creative detail info
*/
@GetMapping
(
value
=
"/read_v2"
)
BaseRespDTO
<
List
<
AdvertisingCreativeOutDTO
>>
getAdvertisingCreativeDetailInfo
(
@RequestHeader
(
"Access-Token"
)
String
accessToken
,
@RequestParam
(
"advertiser_id"
)
Integer
advertiserId
,
@RequestParam
(
"ad_id"
)
Integer
adId
);
/**
* 更新
*
* @param accessToken 访问凭证
* @param advertisingCreativeOut 更新信息
* @return the base resp dto
*/
@PostMapping
(
value
=
"/update_v2"
)
BaseRespDTO
<
Integer
>
updateAdvertisingCreative
(
@RequestHeader
(
"Access-Token"
)
String
accessToken
,
@RequestBody
AdvertisingCreativeOutDTO
advertisingCreativeOut
);
/**
* 广告投放-更新某个广告创意状态
*
* @param accessToken 访问凭证
* @param updateStatus 更新状态信息
* @return the base resp dto
*/
@PostMapping
(
value
=
"/update/status"
)
BaseRespDTO
<?>
updateAdvertisingCreativeStatus
(
@RequestHeader
(
"Access-Token"
)
String
accessToken
,
@RequestBody
UpdateStatusDTO
updateStatus
);
/**
* 广告投放-获取光广告创意下的素材信息
*
* @param accessToken 访问凭证
* @param advertiserId 广告主ID
* @param creativeIds 广告创意ID
* @param fields 广告创意获取字段
* @return
*/
@GetMapping
(
value
=
"/material/read"
)
BaseRespDTO
<
AdvertisingCreativeInDTO
.
CreativeMaterialInfo
>
getCreativeMaterial
(
@RequestHeader
(
"Access-Token"
)
String
accessToken
,
@RequestParam
(
"advertiser_id"
)
Long
advertiserId
,
@RequestParam
(
"creative_ids"
)
Long
[]
creativeIds
,
@RequestParam
(
"fields"
)
String
[]
fields
);
}
}
src/main/java/io/better/toutiao/api/advertisingdelivery/AdvertisingPlanApi.java
View file @
f9fb2a60
package
io
.
better
.
toutiao
.
api
.
advertisingdelivery
;
package
io
.
better
.
toutiao
.
api
.
advertisingdelivery
;
import
io.better.toutiao.dto.BaseRespDTO
;
import
io.better.toutiao.dto.BaseRespDTO
;
import
io.better.toutiao.dto.
advertising
delivery.plan.AdvertisingPlanInDTO
;
import
io.better.toutiao.dto.delivery.plan.AdvertisingPlanInDTO
;
import
io.better.toutiao.dto.budget.UpdateBidDTO
;
import
io.better.toutiao.dto.budget.UpdateBidDTO
;
import
io.better.toutiao.dto.budget.UpdateBudgetDTO
;
import
io.better.toutiao.dto.budget.UpdateBudgetDTO
;
import
io.better.toutiao.dto.resp.AdvertisingPlanRespDTO
;
import
io.better.toutiao.dto.resp.AdvertisingPlanRespDTO
;
...
...
src/main/java/io/better/toutiao/dto/advertisingdelivery/creative/AdvertisingCreativeDTO.java
deleted
100644 → 0
View file @
4733a477
package
io
.
better
.
toutiao
.
dto
.
advertisingdelivery
.
creative
;
import
lombok.Data
;
/**
* @author better create in 2019-04-29 11:16
*/
@Data
public
class
AdvertisingCreativeDTO
{
}
src/main/java/io/better/toutiao/dto/
advertising
delivery/AdvertisingDeliveryQueryDTO.java
→
src/main/java/io/better/toutiao/dto/delivery/AdvertisingDeliveryQueryDTO.java
View file @
f9fb2a60
package
io
.
better
.
toutiao
.
dto
.
advertising
delivery
;
package
io
.
better
.
toutiao
.
dto
.
delivery
;
import
io.better.toutiao.dto.PageDTO
;
import
io.better.toutiao.dto.PageDTO
;
import
lombok.Data
;
import
lombok.Data
;
...
...
src/main/java/io/better/toutiao/dto/
advertising
delivery/budget/AccountBudgetDTO.java
→
src/main/java/io/better/toutiao/dto/delivery/budget/AccountBudgetDTO.java
View file @
f9fb2a60
package
io
.
better
.
toutiao
.
dto
.
advertising
delivery
.
budget
;
package
io
.
better
.
toutiao
.
dto
.
delivery
.
budget
;
import
lombok.Data
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
/**
/**
* @author better create in 2019-04-29 14:03
* @author better create in 2019-04-29 14:03
...
...
src/main/java/io/better/toutiao/dto/delivery/creative/AdvertisingCreativeInDTO.java
0 → 100644
View file @
f9fb2a60
package
io
.
better
.
toutiao
.
dto
.
delivery
.
creative
;
import
io.better.toutiao.dto.resp.PageRespDTO
;
import
lombok.Data
;
import
java.util.List
;
/**
* @author better create in 2019-04-29 11:16
*/
@Data
public
class
AdvertisingCreativeInDTO
{
/**
* 分页信息
*/
private
PageRespDTO
pageInfo
;
/**
* 创意信息集合
*/
private
List
<
CreativeInfo
>
list
;
/**
* 创意信息
*/
@Data
private
static
class
CreativeInfo
{
/**
* 创意ID
*/
private
String
creativeId
;
/**
* 广告计划ID
*/
private
String
adId
;
/**
* 广告主ID
*/
private
String
advertiserId
;
/**
* 创意素材标题
*/
private
String
title
;
/**
* 动态词包列表
*/
private
String
[]
creativeWordIds
;
/**
* 创意素材状态
*/
private
String
status
;
/**
* 创意素材操作状态
*/
private
String
optStatus
;
/**
* 创意素材类型
*/
private
String
imageMode
;
/**
* 图片素材id列表
*/
private
String
[]
imageIds
;
/**
* 视频素材封面
*/
private
String
imageId
;
/**
* 视频id
*/
private
String
videoId
;
/**
* 第三方id
*/
private
String
thirdPartyId
;
/**
* 创意审核信息
*/
private
String
auditRejectReason
;
/**
* 素材信息列表
*/
private
List
<?>
materials
;
}
/**
* 创意素材信息
*/
@Data
public
static
class
CreativeMaterialInfo
{
/**
* 创意ID
*/
private
String
id
;
/**
* 广告ID
*/
private
String
adId
;
/**
* 广告主ID
*/
private
String
advertiserId
;
/**
* 创意标题
*/
private
String
title
;
/**
* 创意状态
*/
private
String
optStatus
;
/**
* 创意类型
*/
private
String
imageMode
;
/**
* 图片素材信息
*/
private
String
[]
imageInfo
;
/**
*
*/
private
String
imageId
;
/**
*
*/
private
String
videoId
;
/**
*
*/
private
String
auditRejectReason
;
}
}
src/main/java/io/better/toutiao/dto/delivery/creative/AdvertisingCreativeOutDTO.java
0 → 100644
View file @
f9fb2a60
package
io
.
better
.
toutiao
.
dto
.
delivery
.
creative
;
import
lombok.Data
;
import
java.util.List
;
/**
* @author better create in 2019-04-29 11:16
*/
@Data
public
class
AdvertisingCreativeOutDTO
{
/**
* 广告主ID
*/
private
String
advertiserId
;
/**
* 广告计划ID
*/
private
String
adId
;
/**
* 展示监测链接
*/
private
String
trackUrl
;
/**
* 点击监测链接
*/
private
String
actionTrackUrl
;
/**
* 点击监测链接
*/
private
String
videoPlayEffectiveTrackUrl
;
/**
* 视频播放完毕监测链接
*/
private
String
videoPlayDoneTrackUrl
;
/**
* 视频播放监测链接
*/
private
String
videoPlayTrackUrl
;
/**
* 是否关闭评论
* <p>
* 允许值: 0, 1
*/
private
Integer
isCommentDisable
;
/**
* 是否关闭视频详情页落地页
* 允许值: 0, 1
*/
private
Integer
closeVideoDetail
;
/**
* 创意展现方式
* <p>
* 允许值: "CREATIVE_DISPLAY_MODE_CTR", "CREATIVE_DISPLAY_MODE_RANDOM"
*/
private
String
creativeDisplayMode
;
/**
* 是否使用优选广告位,0表示不使用优选,1表示使用,
* <p>
* 使用优选广告位的时候默认忽略inventory_type字段
* <p>
* 默认值: 0
* <p>
* 允许值: 0, 1
*/
private
Integer
smartInventory
;
/**
* 场景广告位
* <p>
* 使用场景广告位时默认忽略inventory_type字段,与scene_inventory不能同时传
* <p>
* 允许值: "VIDEO_SCENE", "FEED_SCENE", "TAIL_SCENE"
*/
private
String
sceneInventory
;
/**
* 是否开启衍生计划,1为开启,0为不开启
* <p>
* 默认值: 0
*/
private
String
generateDerivedAd
;
/**
* 创意投放位置
*/
private
String
[]
inventoryType
;
/**
* 文章来源
* <p>
* 当推广目的为非应用下载或推广目的为应用下载&download_type=EXTERNAL_URL时必填
*/
private
String
source
;
/**
* 应用名
* <p>
* 当推广应用下载[包含Android、iOS]时, 必填
*/
private
String
appName
;
/**
* Android应用下载详情页
* <p>
* 当推广应用下载Android时, 必填
*/
private
String
webUrl
;
/**
* 创意标签
* <p>
* 以英文逗号分隔,最多20个标签,且每个标签长度不超过10个字符
*/
private
String
[]
adKeywords
;
/**
* 创意分类-三级行业(新版),填写三级行业ID,
* <p>
* 可从tools/industry/get/ 接口获取
*/
private
Integer
thirdIndustryId
;
/**
* 附加创意类型
* 仅当推广目的landing_type=LINK时,填写
* 允许值: "ATTACHED_CREATIVE_NONE", "ATTACHED_CREATIVE_PHONE","ATTACHED_CREATIVE_FORM"
*/
private
String
advancedCreativeType
;
/**
* 副标题
*/
private
String
advancedCreativeTitle
;
/**
* 电话号码
* 当附加创意类型为ATTACHED_CREATIVE_PHONE时, 必填
*/
private
String
phoneNumber
;
/**
* 按钮文本
* 当附加创意类型不为ATTACHED_CREATIVE_NONE时, 必填
*/
private
String
buttonText
;
/**
* 表单提交链接
* 当附加创意类型为ATTACHED_CREATIVE_FORM时, 必填
* 且当附加创意类型为当附加创意类型为ATTACHED_CREATIVE_FORM时, 必须为今日头条建站地址
*/
private
String
formUrl
;
/**
* 创意类型
* 该字段为STATIC_ASSEMBLE表示程序化创意,其他情况无该字段
*/
private
String
creativeMaterialMode
;
/**
* 标题信息,程序化创意必填
*/
private
List
<
TitleCreativeInfo
>
titleList
;
/**
* 素材信息,程序化创意必填
*/
private
List
<
ImageCreativeInfo
>
imageList
;
/**
* 素材信息,投放位置和创意类型决定素材规格
*/
private
List
<?>
creatives
;
@Data
public
static
class
TitleCreativeInfo
{
/**
* 创意标题
*/
private
String
title
;
/**
* 动态词包ID
* 可使用动态词包查询接口获得
*/
private
List
<?>
creativeWordIds
;
}
@Data
public
static
class
ImageCreativeInfo
{
/**
* 素材类型
*/
private
String
imageMode
;
/**
* 图片ID
*/
private
String
imageId
;
/**
* 视频ID
*/
private
String
videoId
;
/**
* 图片id列表,非视频素材时填写
*/
private
List
<?>
imageIds
;
}
}
src/main/java/io/better/toutiao/dto/delivery/creative/ImageCreativeOutDTO.java
0 → 100644
View file @
f9fb2a60
package
io
.
better
.
toutiao
.
dto
.
delivery
.
creative
;
import
lombok.Data
;
import
java.util.List
;
/**
* @author better create in 2019-04-30 09:50
*/
@Data
public
class
ImageCreativeOutDTO
{
/**
* 创意标题,如果要使用动态词包
* 格式如下:“XXX{词包名}XXX{词包名}XXX”
* 请注意当您使用动态词包需在下方creative_word_ids字段中按顺序传入词包ID
* 并且在一个标题中最多使用两个动态词包。长度为6-30个字, 两个英文字符占1位
*/
private
String
title
;
/**
* 动态词包ID,可使用动态词包查询接口获得
* 结合标题中的词包格式您需要填写相同个数与顺序的词包ID
* 如果实际ID顺序与标题中词包名顺序不一致我们将以词包ID顺序为准
*/
private
List
<?>
creativeWordIds
;
/**
* 素材类型
*/
private
String
imageMode
;
/**
* 图片id列表,非视频素材时填写(组图传3张图,其他传1张)
* 图片ID和视频ID可通过文件管理 中的接口获得。
*/
private
List
<?>
imageIds
;
/**
* 创意自定义参数,
* 例如开发者可设定此参数为创意打标签用于区分使用的素材类型,选填
*/
private
String
thirdPartyId
;
}
src/main/java/io/better/toutiao/dto/delivery/creative/VideoCreativeOutDTO.java
0 → 100644
View file @
f9fb2a60
package
io
.
better
.
toutiao
.
dto
.
delivery
.
creative
;
import
lombok.Data
;
import
java.util.List
;
/**
* @author better create in 2019-04-30 09:50
*/
@Data
public
class
VideoCreativeOutDTO
{
/**
* 创意标题,如果要使用动态词包
* 格式如下:“XXX{词包名}XXX{词包名}XXX”
* 请注意当您使用动态词包需在下方creative_word_ids字段中按顺序传入词包ID
* 并且在一个标题中最多使用两个动态词包。标题,长度为6-30个字, 两个英文字符占1位
*/
private
String
title
;
/**
* 动态词包ID,可使用动态词包查询接口获得,结合标题中的词包格式您需要填写相同个数与顺序的词包ID,
* 如果实际ID顺序与标题中词包名顺序不一致我们将以词包ID顺序为准。
*/
private
List
<?>
creativeWordIds
;
/**
* 素材类型
*/
private
String
imageMode
;
/**
* 图片id,视频素材时填写。图片ID和视频ID可通过文件管理 中的接口获得。
*/
private
String
imageId
;
/**
* 视频id,视频素材时填写。图片ID和视频ID可通过文件管理 中的接口获得。
*/
private
String
videoId
;
/**
* 创意自定义参数,例如开发者可设定此参数为创意打标签用于区分使用的素材类型,选填
*/
private
String
thirdPartyId
;
}
src/main/java/io/better/toutiao/dto/
advertising
delivery/group/AdvertisingGroupDTO.java
→
src/main/java/io/better/toutiao/dto/delivery/group/AdvertisingGroupDTO.java
View file @
f9fb2a60
package
io
.
better
.
toutiao
.
dto
.
advertisingdelivery
.
group
;
package
io
.
better
.
toutiao
.
dto
.
delivery
.
group
;
import
lombok.Data
;
/**
/**
* @author better create in 2019-04-29 11:15
* @author better create in 2019-04-29 11:15
*/
*/
@Data
public
class
AdvertisingGroupDTO
{
public
class
AdvertisingGroupDTO
{
}
}
src/main/java/io/better/toutiao/dto/
advertising
delivery/plan/AdvertisingPlanInDTO.java
→
src/main/java/io/better/toutiao/dto/delivery/plan/AdvertisingPlanInDTO.java
View file @
f9fb2a60
package
io
.
better
.
toutiao
.
dto
.
advertising
delivery
.
plan
;
package
io
.
better
.
toutiao
.
dto
.
delivery
.
plan
;
import
lombok.Data
;
import
lombok.Data
;
...
...
src/main/java/io/better/toutiao/dto/
advertising
delivery/plan/AdvertisingPlanOutDTO.java
→
src/main/java/io/better/toutiao/dto/delivery/plan/AdvertisingPlanOutDTO.java
View file @
f9fb2a60
package
io
.
better
.
toutiao
.
dto
.
advertising
delivery
.
plan
;
package
io
.
better
.
toutiao
.
dto
.
delivery
.
plan
;
import
lombok.Data
;
import
lombok.Data
;
...
...
src/main/java/io/better/toutiao/dto/status/UpdateStatusDTO.java
View file @
f9fb2a60
...
@@ -12,5 +12,7 @@ public class UpdateStatusDTO {
...
@@ -12,5 +12,7 @@ public class UpdateStatusDTO {
private
Integer
[]
campaignIds
;
private
Integer
[]
campaignIds
;
private
Integer
[]
creativeIds
;
private
String
optStatus
;
private
String
optStatus
;
}
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment