---
id: "6ea0673e130c6b65c107"
url: "https://www.xmcsl.cn/project/ocean-engine-api/%E8%8E%B7%E5%8F%96%E6%8A%95%E6%94%BE%E9%A1%B9%E7%9B%AE%E4%B8%8B%E7%B4%A0%E6%9D%90-1854927239666825.html"
source_url: "https://open.oceanengine.com/labels/7/docs/1854927239666825"
source_date: null
checked_at: "2026-11-05T04:21:48.909937+00:00"
status: "ready"
check_scope: "structure_only; not a factual or human review"
body_sha256: "40f91352338bb16117c92ed8a8c13998ccbfeea5399fc765a93a9bf6d28cfe69"
---

# 获取投放项目下素材 — 巨量引擎 API

# 获取投放项目下素材

 

<table><tr><th>关键信息</th><th>详情</th></tr><tr><th>文档 ID</th><td>1854927239666825</td></tr>&#10;<tr><th>标签 ID</th><td>7</td></tr>&#10;<tr><th>原始文档</th><td>&#91;https://open.oceanengine.com/labels/7/docs/1854927239666825&#93;(https://open.oceanengine.com/labels/7/docs/1854927239666825)</td></tr>&#10;<tr><th>接口标识</th><td>oc&#95;project.material.get</td></tr>&#10;</table>

 

💡根据客户 ID、项目 ID、素材类型等条件，获取投放项目下的素材信息，支持多种素材类型的查询和筛选。 获取投放项目下素材

 

GET \[https://api.oceanengine.com/open\_api/v3.0/oc\_project/material/get/\](https://api.oceanengine.com/open\_api/v3.0/oc\_project/material/get/) <a href="https://open.oceanengine.com/tools/visual_debug.html?docId=1854927239666825">🔍 可视化调试</a> <a href="https://open.oceanengine.com/labels/7/docs/1773083358100557">📦 SDK下载</a>

 

## 接口说明

 

根据客户 ID、项目 ID、素材类型等条件，获取投放项目下的素材信息，支持多种素材类型的查询和筛选。

 

获取投放项目下素材

 

## 请求地址

 

<a href="https://api.oceanengine.com/open_api/v3.0/oc_project/material/get/">https://api.oceanengine.com/open&#95;api/v3.0/oc&#95;project/material/get/</a><a href="https://open.oceanengine.com/tools/visual_debug.html?docId=1854927239666825">可视化调试</a><a href="https://open.oceanengine.com/labels/7/docs/1773083358100557">SDK下载</a>

 

## 请求方法

 

GET

 

## Header

 

<table>&#10;<thead>&#10;<tr>&#10;<th>字段</th>&#10;<th>类型</th>&#10;<th>必填</th>&#10;<th>描述</th>&#10;</tr>&#10;</thead>&#10;<tbody>&#10;<tr>&#10;<td><code>Access-Token</code></td>&#10;<td>string</td>&#10;<td>必填</td>&#10;<td>授权access&#95;token，可以通过【<a href="https://open.oceanengine.com/labels/7/docs/1696710505596940">获取Access token</a>】接口获取</td>&#10;</tr>&#10;</tbody>&#10;</table>

 

## 请求参数

 

<table>&#10;<thead>&#10;<tr>&#10;<th>字段</th>&#10;<th>类型</th>&#10;<th>必填</th>&#10;<th>描述</th>&#10;</tr>&#10;</thead>&#10;<tbody>&#10;<tr>&#10;<td><code>advertiser&#95;id</code></td>&#10;<td>number</td>&#10;<td>必填</td>&#10;<td>客户id</td>&#10;</tr>&#10;<tr>&#10;<td><code>project&#95;id</code></td>&#10;<td>number</td>&#10;<td>必填</td>&#10;<td>项目id</td>&#10;</tr>&#10;</tbody>&#10;</table>

 

<code>filtering</code>（object，必填） — 过滤器

 \| 字段 \| 类型 \| 必填 \| 描述 \| \| \-\-\- \| \-\-\- \| \-\-\- \| \-\-\- \| \| \`material\_type\` \| string \| 必填 \| 素材类型，可选值，单次仅支持传入一个:\- \`VIDEO\` 视频  
\- \`TITLE\` 标题  
\- \`IMAGE\` 图片  
\- \`CAROUSEL\` 图文  
\- \`TRIAL\_PLAY\_MATERIAL\`试玩素材  
\- \`INSTANT\_PLAY\_MATERIAL\`直玩素材  
\- \`MINI\_PROGRAM\_INFO\` 字节小程序&amp;小游戏信息  
\- \`OTHER\` 其他素材类型（包括产品信息、短剧专辑链接、落地页、行动号召等）  
 \| \| \`search\_keyword\` \| string \| 否 \| 搜索关键词，支持根据视频mid进行搜索，当且仅当material\_type=\`VIDEO\` 视频、\`IMAGE\` 图片、\`CAROUSEL\` 图文时支持传入 \| \| \`material\_status\_first\` \| string \| 否 \| 素材一级状态过滤，可选值:   
\- \`STATUS\_DELETE\` 已删除  
\- \`STATUS\_DISABLE\` 未投放  
\- \`STATUS\_FROZEN\` 已终止  
\- \`STATUS\_OK\` 投放中  
\- \`STATUS\_TIME\_DONE\` 已完成 \| \| \`material\_status\_second\` \| string \| 否 \| 素材二级状态过滤，可选值：\- \`MATERIAL\_STATUS\_OFFLINE\_AUDIT\`审核不通过  
\- \`MATERIAL\_STATUS\_AUDIT\`新建审核中  
\- \`MATERIAL\_STATUS\_DISABLE\`手动暂停  
\- \`MATERIAL\_STATUS\_PROCEDURAL\_DISABLE\` 系统暂停  
\- \`DOUYIN\_ITEM\_NOT\_AVAILABLE\_FOR\_DELIVERY\` 关联抖音视频不可投  
\- \`GUIDE\_VIDEO\_NOT\_EXIST\`引导视频不存在 \|

 

<table>&#10;<thead>&#10;<tr>&#10;<th>字段</th>&#10;<th>类型</th>&#10;<th>必填</th>&#10;<th>描述</th>&#10;</tr>&#10;</thead>&#10;<tbody>&#10;<tr>&#10;<td><code>page</code></td>&#10;<td>number</td>&#10;<td>否</td>&#10;<td>页码，默认值：1，当且仅当material&#95;type=<code>VIDEO</code> 视频、<code>IMAGE</code> 图片、<code>CAROUSEL</code> 图文、<code>TRIAL&#95;PLAY&#95;MATERIAL</code>试玩素材时支持传入</td>&#10;</tr>&#10;<tr>&#10;<td><code>page&#95;size</code></td>&#10;<td>number</td>&#10;<td>否</td>&#10;<td>页面大小，允许值：10, 20, 50, 100，默认值：10，仅material&#95;type=<code>VIDEO</code> 视频时支持传入</td>&#10;</tr>&#10;</tbody>&#10;</table>

 

### python

 

```python
# coding=utf-8
import json
import requests

from six import string_types
from six.moves.urllib.parse import urlencode, urlunparse  # noqa

ACCESS_TOKEN = "xxx"
PATH = "/open_api/v3.0/uni_project/material/get/"


def build_url(path, query=""):
    # type: (str, str) -> str
    """
    Build request URL
    :param path: Request path
    :param query: Querystring
    :return: Request URL
    """
    scheme, netloc = "https", "api.oceanengine.com"
    return urlunparse((scheme, netloc, path, "", query, ""))

def get(json_str):
    # type: (str) -> dict
    """
    Send GET request
    :param json_str: Args in JSON format
    :return: Response in JSON format
    """
    args = json.loads(json_str)
    query_string = urlencode({k: v if isinstance(v, string_types) else json.dumps(v) for k, v in args.items()})
    url = build_url(PATH, query_string)
    headers = {
        "Access-Token": ACCESS_TOKEN,
    }
    rsp = requests.get(url, headers=headers)
    return rsp.json()


if __name__ == '__main__':
    advertiser_id = ADVERTISER_ID
    project_id = PROJECT_ID
    material_type = MATERIAL_TYPE
    material_status_frist = MATERIAL_STATUS_FRIST
    search_keyword = SEARCH_KEYWORD
    page = PAGE
    page_size = PAGE_SIZE

    # Args in JSON format
    my_args = "{\"advertiser_id\": \"%s\", \"project_id\": \"%s\", \"filtering\": {\"material_type\": \"%s\", \"material_status_frist\": \"%s\", \"search_keyword\": \"%s\"}, \"page\": \"%s\", \"page_size\": \"%s\"}" % (advertiser_id, project_id, material_type, material_status_frist, search_keyword, page, page_size)
    print(get(my_args))
```

 

### java

 

```java
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import okhttp3.*;
import org.apache.http.client.utils.URIBuilder;

import java.io.IOException;
import java.net.URI;
import java.net.URISyntaxException;
import java.net.URL;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;

public class Demo {
    private static final String ACCESS_TOKEN = "xxx";
    private static final String PATH = "/open_api/v3.0/uni_project/material/get/";
    private static final ObjectMapper mapper = new ObjectMapper();

    /**
     * Build request URL
     *
     * @param path Request path
     * @return Request URL
     */
    private static String buildUrl(String path) throws URISyntaxException {
        URI uri = new URI("https", "api.oceanengine.com", path, "", "");
        return uri.toString();
    }


    /**
     * Send GET request
     *
     * @param jsonStr:Args in JSON format
     * @return Response in JSON format
     */
    private static String get(String jsonStr) throws IOException, URISyntaxException {
        OkHttpClient client = new OkHttpClient().newBuilder().build();
        URIBuilder ub = new URIBuilder(buildUrl(PATH));
        Map< String, Object > map = mapper.readValue(jsonStr, Map.class);
        map.forEach((k, v) -> {
            try {
                ub.addParameter(k, v instanceof String ? (String) v : mapper.writeValueAsString(v));
            } catch (JsonProcessingException e) {
                e.printStackTrace();
            }
        });
        URL url = ub.build().toURL();

        Request request = new Request.Builder()
                .url(url)
                .method("GET", null)
                .addHeader("Access-Token", ACCESS_TOKEN)
                .build();
        Response response = client.newCall(request).execute();
        return response.body().string();
    }


    public static void main(String[] args) throws IOException, URISyntaxException {
        Long advertiser_id = ADVERTISER_ID;
        Long project_id = PROJECT_ID;
        String material_type = MATERIAL_TYPE;
        String material_status_frist = MATERIAL_STATUS_FRIST;
        String search_keyword = SEARCH_KEYWORD;
        Long page = PAGE;
        Long page_size = PAGE_SIZE;

        // Args in JSON format
        String myArgs = String.format("{\"advertiser_id\": \"%s\", \"project_id\": \"%s\", \"filtering\": {\"material_type\": \"%s\", \"material_status_frist\": \"%s\", \"search_keyword\": \"%s\"}, \"page\": \"%s\", \"page_size\": \"%s\"}",advertiser_id, project_id, material_type, material_status_frist, search_keyword, page, page_size);
        System.out.println(get(myArgs));
    }
}
```

 

### php

 

```php
$ACCESS_TOKEN = "xxx";
$PATH = "/open_api/v3.0/uni_project/material/get/";

/**
 * Build request URL
 * @param $path : Request path
 * @return string
 */
function build_url($path)
{
    return "https://api.oceanengine.com" . $path;
}

/**
 * Send GET request
 * @param $json_str : Args in JSON format
 * @return bool|string : Response in JSON format
 */
function get($json_str)
{
    global $ACCESS_TOKEN, $PATH;
    $curl = curl_init();

    $args = json_decode($json_str, true);

    /* Values of querystring is also in JSON format */
    foreach ($args as $key => $value) {
        $args[$key] = is_string($value) ? $value : json_encode($value);
    }

    $url = build_url($PATH) . "?" . http_build_query(
            $args
        );

    curl_setopt_array($curl, array(
        CURLOPT_URL => $url,
        CURLOPT_RETURNTRANSFER => true,
        CURLOPT_ENCODING => "",
        CURLOPT_MAXREDIRS => 10,
        CURLOPT_TIMEOUT => 0,
        CURLOPT_FOLLOWLOCATION => true,
        CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
        CURLOPT_CUSTOMREQUEST => "GET",
        CURLOPT_HTTPHEADER => array(
            "Access-Token: " . $ACCESS_TOKEN,
        ),
    ));

    $response = curl_exec($curl);
    curl_close($curl);
    return $response;
}


$advertiser_id = ADVERTISER_ID;
$project_id = PROJECT_ID;
$material_type = MATERIAL_TYPE;
$material_status_frist = MATERIAL_STATUS_FRIST;
$search_keyword = SEARCH_KEYWORD;
$page = PAGE;
$page_size = PAGE_SIZE;

/* Args in JSON format */
$my_args = sprintf("{\"advertiser_id\": \"%s\", \"project_id\": \"%s\", \"filtering\": {\"material_type\": \"%s\", \"material_status_frist\": \"%s\", \"search_keyword\": \"%s\"}, \"page\": \"%s\", \"page_size\": \"%s\"}", $advertiser_id, $project_id, $material_type, $material_status_frist, $search_keyword, $page, $page_size);
echo get($my_args);
```

 

### curl

 

```curl
curl --get -H "Access-Token:xxx" \
--data-urlencode "advertiser_id=ADVERTISER_ID" \
--data-urlencode "project_id=PROJECT_ID" \
--data-urlencode "filtering={\"material_type\": \"MATERIAL_TYPE\", \"material_status_frist\": \"MATERIAL_STATUS_FRIST\", \"search_keyword\": \"SEARCH_KEYWORD\"}" \
--data-urlencode "page=PAGE" \
--data-urlencode "page_size=PAGE_SIZE" \
https://api.oceanengine.com/open_api/v3.0/uni_project/material/get/
```

 

## 应答字段

 

<table>&#10;<thead>&#10;<tr>&#10;<th>字段</th>&#10;<th>类型</th>&#10;<th>必填</th>&#10;<th>描述</th>&#10;</tr>&#10;</thead>&#10;<tbody>&#10;<tr>&#10;<td><code>code</code></td>&#10;<td>number</td>&#10;<td>否</td>&#10;<td>返回码,详见 <a href="https://open.oceanengine.com/labels/7/docs/1696710760866831">【附录-返回码】</a></td>&#10;</tr>&#10;<tr>&#10;<td><code>message</code></td>&#10;<td>string</td>&#10;<td>否</td>&#10;<td>返回信息,详见 <a href="https://open.oceanengine.com/labels/7/docs/1696710760866831">【附录-返回码】</a></td>&#10;</tr>&#10;</tbody>&#10;</table>

 

<code>data</code>（json，否） — json返回值

 

<code>video&#95;material&#95;list</code>（object\[\]，否） — 视频素材信息

 \| 字段 \| 类型 \| 必填 \| 描述 \| \| \-\-\- \| \-\-\- \| \-\-\- \| \-\-\- \| \| \`video\_id\` \| string \| 否 \| 视频id \| \| \`video\_cover\_uri\` \| string \| 否 \| 视频封面图片ID \| \| \`material\_id\` \| number \| 否 \| 素材id \| \| \`material\_opt\_status\` \| string \| 否 \| 视频素材操作状态，枚举值：\- \`DISABLE\` 暂停  
\- \`ENABLE\` 启用 \| \| \`material\_status\_frist\` \| string \| 否 \| 可选值:   
\- \`STATUS\_DELETE\` 已删除  
\- \`STATUS\_DISABLE\` 未投放  
\- \`STATUS\_FROZEN\` 已终止  
\- \`STATUS\_OK\` 投放中  
\- \`STATUS\_TIME\_DONE\` 已完成 \| \| \`material\_status\_second\` \| string\[\] \| 否 \| 可选值:   
\- \`MATERIAL\_STATUS\_AUDIT\` 未投放\-新建审核中  
\- \`MATERIAL\_STATUS\_AWEME\_ACCOUNT\_OFFLINE\` 抖音账号不可投放  
\- \`MATERIAL\_STATUS\_DELETE\` 已删除\-素材已删除  
\- \`MATERIAL\_STATUS\_DISABLE\` 已暂停  
\- \`MATERIAL\_STATUS\_NO\_SCHEDULE\` 不在投放时段  
\- \`MATERIAL\_STATUS\_OFFLINE\_AUDIT\` 未投放\-审核不通过  
\- \`MATERIAL\_STATUS\_OFFLINE\_BALANCE\` 账户余额不足  
\- \`MATERIAL\_STATUS\_OFFLINE\_BUDGET\` 账户超出预算  
\- \`MATERIAL\_STATUS\_PRODUCT\_OFFLINE\` 商品不可投放  
\- \`MATERIAL\_STATUS\_PROJECT\_DISABLE\` 项目已暂停  
\- \`MATERIAL\_STATUS\_PROJECT\_OFFLINE\_BUDGET\` 项目超出预算  
\- \`MATERIAL\_STATUS\_TIME\_NO\_REACH\` 未达投放时间  
\- \`PROJECT\_STATUS\_DELETE\` 已删除\-项目已删除  
\- \`PROJECT\_STATUS\_FROZEN\` 已终止\-项目已终止  
\- \`PROJECT\_STATUS\_REAUDIT\` 未投放\-修改审核中 \| \| \`image\_mode\` \| string \| 否 \| 可选值:   
\- \`CREATIVE\_IMAGE\_MODE\_CALIBRATION\_FREE\_VIDEO\` 穿山甲免校验  
\- \`CREATIVE\_IMAGE\_MODE\_UNION\_SPLASH\_VIDEO\` 互动创意  
\- \`CREATIVE\_IMAGE\_MODE\_VIDEO\` 视频  
\- \`CREATIVE\_IMAGE\_MODE\_VIDEO\_VERTICAL\` 抖音&amp;火山竖版视频素材 \| \| \`item\_id\` \| number \| 否 \| 抖音主页视频id \|

 

<code>image&#95;material&#95;list</code>（object\[\]，否） — 图片素材信息

 \| 字段 \| 类型 \| 必填 \| 描述 \| \| \-\-\- \| \-\-\- \| \-\-\- \| \-\-\- \| \| \`image\_mode\` \| string \| 否 \| 素材类型，可选值:   
\- \`CREATIVE\_IMAGE\_MODE\_LARGE\`  
\- \`CREATIVE\_IMAGE\_MODE\_LARGE\_VERTICAL\` 大图竖版图  
\- \`CREATIVE\_IMAGE\_MODE\_SMALL\`  
\- \`SEARCH\_AD\_SMALL\_IMAGE\` 搜索小图  
\- \`TOUTIAO\_SEARCH\_AD\_IMAGE\` 搜索大图 \| \| \`image\_ids\` \| string\[\] \| 否 \| 图片id \| \| \`material\_id\` \| number \| 否 \| 素材id \| \| \`material\_status\_frist\` \| string \| 否 \| 素材一级状态，可选值:   
\- \`STATUS\_DELETE\` 已删除  
\- \`STATUS\_DISABLE\` 未投放  
\- \`STATUS\_FROZEN\` 已终止  
\- \`STATUS\_OK\` 投放中  
\- \`STATUS\_TIME\_DONE\` 已完成 \| \| \`material\_status\_second\` \| string\[\] \| 否 \| 素材二级状态，可选值：\- PROJECT\_STATUS\_DELETE 项目已删除  
\- MATERIAL\_STATUS\_DELETE 素材已删除  
\- PROJECT\_STATUS\_FROZEN 项目已终止  
\- MATERIAL\_STATUS\_FROZEN 素材已终止  
\- MATERIAL\_STATUS\_OFFLINE\_AUDIT 审核不通过  
\- MATERIAL\_STATUS\_AUDIT 新建审核中  
\- MATERIAL\_STATUS\_DISABLE 手动暂停  
\- MATERIAL\_STATUS\_PROCEDURAL\_DISABLE 系统暂停  
\- DOUYIN\_ITEM\_NOT\_AVAILABLE\_FOR\_DELIVERY 关联抖音视频不可投  
\- GUIDE\_VIDEO\_NOT\_EXIST 引导视频不存在  
\- MATERIAL\_STATUS\_PROJECT\_DISABLE 项目已暂停  
\- LACK\_BASIC\_MATERIAL\_STATUS项目素材待补充  
\- PROJECT\_STATUS\_AUDIT 项目新建审核中  
\- PROJECT\_STATUS\_REAUDIT 项目修改审核中  
\- PROJECT\_AUDIT\_REJECTED 项目审核不通过  
\- MATERIAL\_STATUS\_OFFLINE\_BALANCE 账户余额不足  
\- MATERIAL\_STATUS\_OFFLINE\_BUDGET 账户超出预算  
\- SHARED\_WALLET\_EXCEEDS\_BUDGET 共享钱包超出预算  
\- MATERIAL\_STATUS\_PROJECT\_OFFLINE\_BUDGET 项目超出预算  
\- MATERIAL\_STATUS\_TIME\_NO\_REACH 项目未达投放时间  
\- PROJECT\_REACHED\_DELIVERY\_DURATION 项目已达投放时长  
\- MATERIAL\_STATUS\_NO\_SCHEDULE 项目不在投放时段  
\- LIVE\_ROOM\_NOT\_AVAILABLE\_FOR\_DELIVERY 关联直播间不可投  
\- MATERIAL\_STATUS\_PRODUCT\_OFFLINE 商品不可投放  
\- APP\_NOT\_AVAILABLE\_FOR\_DELIVERY 应用不可投  
\- ACCOUNT\_AVATAR\_NOT\_AVAILABLE\_FOR\_DELIVERY 账户头像不可投  
\- MATERIAL\_STATUS\_AWEME\_ACCOUNT\_OFFLINE 抖音账号不可投放 \|

 

<code>carousel&#95;material&#95;list</code>（object\[\]，否） — 图文素材信息

 \| 字段 \| 类型 \| 必填 \| 描述 \| \| \-\-\- \| \-\-\- \| \-\-\- \| \-\-\- \| \| \`carousel\_id\` \| number \| 否 \| 图文id \| \| \`item\_id\` \| number \| 否 \| 抖音主页图文id \| \| \`video\_hp\_visibility\` \| string \| 否 \| 可选值:   
\- \`ALWAYS\_VISIBLE\` 主页始终可见  
\- \`HIDE\_VIDEO\_ON\_HP\` 主页隐藏 默认值: \`HIDE\_VIDEO\_ON\_HP\` \| \| \`material\_status\_frist\` \| string \| 否 \| 可选值:   
\- \`STATUS\_DELETE\` 已删除  
\- \`STATUS\_DISABLE\` 未投放  
\- \`STATUS\_FROZEN\` 已终止  
\- \`STATUS\_OK\` 投放中  
\- \`STATUS\_TIME\_DONE\` 已完成 \| \| \`material\_status\_second\` \| string\[\] \| 否 \| 可选值:   
\- \`ACCOUNT\_AVATAR\_NOT\_AVAILABLE\_FOR\_DELIVERY\` 账户头像不可投放  
\- \`ACCOUNT\_EXCEEDS\_BUDGET\` 账户超出预算  
\- \`ALL\_KEYWORDS\_DELETED\` 关键词均删除  
\- \`ALL\_MATERIALS\_DELETED\` 素材均删除  
\- \`APP\_NOT\_AVAILABLE\_FOR\_DELIVERY\` 应用不可投放  
\- \`AUDIT\_REJECTED\` 审核不通过  
\- \`DOUYIN\_ACCOUNT\_NOT\_AVAILABLE\_FOR\_DELIVERY\` 抖音账户不可投放  
\- \`GOODS\_NOT\_AVAILABLE\_FOR\_DELIVERY\` 商品不可投放  
\- \`LIVE\_ROOM\_NOT\_AVAILABLE\_FOR\_DELIVERY\` 直播间不可投放  
\- \`LIVE\_ROOM\_NOT\_STARTED\` 直播间未开播  
\- \`MANUAL\_PAUSE\` 手动暂停  
\- \`MODIFY\_AUDITING\` 修改审核中  
\- \`NEW\_CREATED\_AUDITING\` 新建审核中  
\- \`PAUSED\` 已暂停  
\- \`PROJECT\_AUDIENCE\_SETTING\_CONFLICT\` 与项目定向设置冲突  
\- \`PROJECT\_AUDIT\_REJECTED\` 项目审核不通过  
\- \`PROJECT\_BALANCE\_INSUFFICIENT\` 项目余额不足  
\- \`PROJECT\_COMPLETED\` 项目已完成  
\- \`PROJECT\_DELETED\` 项目已删除  
\- \`PROJECT\_EXCEEDS\_BUDGET\` 项目超出预算  
\- \`PROJECT\_MODIFY\_AUDITING\` 项目修改审核中  
\- \`PROJECT\_NEW\_CREATED\_AUDITING\` 项目新建审核中  
\- \`PROJECT\_NOT\_IN\_DELIVERY\_PERIOD\` 项目不在投放时段  
\- \`PROJECT\_NOT\_REACH\_DELIVERY\_TIME\` 项目未达投放时间  
\- \`PROJECT\_PAUSED\` 项目已暂停  
\- \`PROJECT\_REACHED\_DELIVERY\_DURATION\` 项目已达投放时长  
\- \`PROJECT\_TERMINATED\` 项目已终止  
\- \`REACHED\_REGULATION\_BUDGET\_UPPER\_LIMIT\` 到达调控预算上限  
\- \`SHARED\_WALLET\_EXCEEDS\_BUDGET\` 共享钱包超出预算  
\- \`TASK\_BID\_EXCEEDS\_PROJECT\_BUDGET\` 不满足出价或预算规则  
\- \`TASK\_DELETED\` 任务已删除  
\- \`TASK\_REACHED\_REGULATION\_DURATION\` 任务已达调控时长  
\- \`TASK\_TERMINATED\` 任务已终止 \|

 

<code>trial&#95;play&#95;material&#95;list</code>（object\[\]，否） — 试玩素材信息

 \| 字段 \| 类型 \| 必填 \| 描述 \| \| \-\-\- \| \-\-\- \| \-\-\- \| \-\-\- \| \| \`app\_play\_uri\` \| string \| 否 \| 试玩素材uri \| \| \`guide\_video\_id\` \| string \| 否 \| 引导视频ID \| \| \`image\_mode\` \| string \| 否 \| 可选值:   
\- \`CREATIVE\_IMAGE\_MODE\_TRIAL\_PLAY\_LARGE\` 试玩横屏  
\- \`CREATIVE\_IMAGE\_MODE\_TRIAL\_PLAY\_VERTICAL\` 试玩竖屏 \| \| \`app\_play\_version\` \| string \| 否 \| 试玩素材版本号 \| \| \`file\_name\` \| string \| 否 \| 素材名称 \| \| \`material\_id\` \| number \| 否 \| 素材id \| \| \`material\_status\_frist\` \| string \| 否 \| 可选值:   
\- \`STATUS\_DELETE\` 已删除  
\- \`STATUS\_DISABLE\` 未投放  
\- \`STATUS\_FROZEN\` 已终止  
\- \`STATUS\_OK\` 投放中  
\- \`STATUS\_TIME\_DONE\` 已完成 \| \| \`material\_status\_second\` \| string\[\] \| 否 \| 可选值:   
\- \`ACCOUNT\_AVATAR\_NOT\_AVAILABLE\_FOR\_DELIVERY\` 账户头像不可投放  
\- \`APP\_NOT\_AVAILABLE\_FOR\_DELIVERY\` 应用不可投放  
\- \`DOUYIN\_ITEM\_NOT\_AVAILABLE\_FOR\_DELIVERY\` 抖音素材不可投放  
\- \`GUIDE\_VIDEO\_NOT\_EXIST\` 引导视频不存在  
\- \`LACK\_BASIC\_MATERIAL\_STATUS\` 项目素材待补充  
\- \`LIVE\_ROOM\_NOT\_AVAILABLE\_FOR\_DELIVERY\` 直播间不可投放  
\- \`MATERIAL\_STATUS\_AUDIT\` 新建审核中  
\- \`MATERIAL\_STATUS\_AWEME\_ACCOUNT\_OFFLINE\` 抖音账号不可投放  
\- \`MATERIAL\_STATUS\_DELETE\` 素材已删除  
\- \`MATERIAL\_STATUS\_DISABLE\` 手动暂停  
\- \`MATERIAL\_STATUS\_FROZEN\` 素材已终止  
\- \`MATERIAL\_STATUS\_NO\_SCHEDULE\` 项目不在投放时段  
\- \`MATERIAL\_STATUS\_OFFLINE\_AUDIT\` 审核不通过  
\- \`MATERIAL\_STATUS\_OFFLINE\_BALANCE\` 账户余额不足  
\- \`MATERIAL\_STATUS\_OFFLINE\_BUDGET\` 账户超出预算  
\- \`MATERIAL\_STATUS\_PROCEDURAL\_DISABLE\` 系统暂停  
\- \`MATERIAL\_STATUS\_PRODUCT\_OFFLINE\` 商品不可投放  
\- \`MATERIAL\_STATUS\_PROJECT\_DISABLE\` 项目已暂停  
\- \`MATERIAL\_STATUS\_PROJECT\_OFFLINE\_BUDGET\` 项目超出预算  
\- \`MATERIAL\_STATUS\_TIME\_NO\_REACH\` 项目未达投放时间  
\- \`PROJECT\_AUDIT\_REJECTED\` 项目审核不通过  
\- \`PROJECT\_REACHED\_DELIVERY\_DURATION\` 项目已达投放时长  
\- \`PROJECT\_STATUS\_AUDIT\` 项目新建审核中  
\- \`PROJECT\_STATUS\_DELETE\` 项目已删除  
\- \`PROJECT\_STATUS\_FROZEN\` 项目已终止  
\- \`PROJECT\_STATUS\_REAUDIT\` 项目修改审核中  
\- \`SHARED\_WALLET\_EXCEEDS\_BUDGET\` 共享钱包超出预算 \|

 

<code>title&#95;material&#95;list</code>（object\[\]，否） — 标题素材信息

 \| 字段 \| 类型 \| 必填 \| 描述 \| \| \-\-\- \| \-\-\- \| \-\-\- \| \-\-\- \| \| \`title\` \| string \| 否 \| 创意标题 \| \| \`material\_id\` \| number \| 否 \| 创意id \|

 

<code>product&#95;info</code>（object，否） — 产品信息

 \| 字段 \| 类型 \| 必填 \| 描述 \| \| \-\-\- \| \-\-\- \| \-\-\- \| \-\-\- \| \| \`titles\` \| string\[\] \| 否 \| 产品名称 \| \| \`image\_ids\` \| string\[\] \| 否 \| 产品主图 \| \| \`selling\_points\` \| string\[\] \| 否 \| 产品卖点 \|

 \| 字段 \| 类型 \| 必填 \| 描述 \| \| \-\-\- \| \-\-\- \| \-\-\- \| \-\-\- \| \| \`call\_to\_action\_buttons\` \| string\[\] \| 否 \| 行动号召 \| 

<code>playlet&#95;series&#95;url&#95;info</code>（object\[\]，否） — 短剧专辑链接信息

 \| 字段 \| 类型 \| 必填 \| 描述 \| \| \-\-\- \| \-\-\- \| \-\-\- \| \-\-\- \| \| \`playlet\_series\_url\_type\` \| string \| 否 \| 短剧专辑类型，可选值:   
\- \`IAA\`  
\- \`IAP\` \| \| \`playlet\_series\_url\` \| string \| 否 \| 短剧专辑链接 \|

 \| 字段 \| 类型 \| 必填 \| 描述 \| \| \-\-\- \| \-\-\- \| \-\-\- \| \-\-\- \| \| \`external\_url\_material\_list\` \| string\[\] \| 否 \| 普通落地页链接素材 \| \| \`web\_url\_material\_list\` \| string\[\] \| 否 \| 应用下载详情页 \| 

<code>component&#95;material&#95;list</code>（object\[\]，否） — 创意组件信息。数量上限为2

 \| 字段 \| 类型 \| 必填 \| 描述 \| \| \-\-\- \| \-\-\- \| \-\-\- \| \-\-\- \| \| \`component\_id\` \| number \| 否 \| 组件id \|

 

<code>anchor&#95;material&#95;list</code>（object\[\]，否） — 原生锚点素材

 \| 字段 \| 类型 \| 必填 \| 描述 \| \| \-\-\- \| \-\-\- \| \-\-\- \| \-\-\- \| \| \`anchor\_id\` \| string \| 否 \| 原生锚点id \| \| \`anchor\_type\` \| string \| 否 \| 可选值:   
\- \`APP\_GAME\` 应用下载\-游戏锚点  
\- \`APP\_INTERNET\_SERVICE\` 应用下载\-网服锚点  
\- \`APP\_SHOP\` 应用下载\-电商锚点  
\- \`INSURANCE\` 保险锚点  
\- \`ONLINE\_SUBSCRIBE\` 通用锚点  
\- \`PRIVATE\_CHAT\` 私信锚点  
\- \`SHOPPING\_CART\` 购物车锚点 \|

 \| 字段 \| 类型 \| 必填 \| 描述 \| \| \-\-\- \| \-\-\- \| \-\-\- \| \-\-\- \| \| \`anchor\_related\_type\` \| string \| 否 \| 可选值:   
\- \`AUTO\` 自动生成  
\- \`OFF\` 不启用  
\- \`SELECT\` 手动选择 \| \| \`open\_url\` \| string \| 否 \| 直达链接 \| \| \`ulink\_url\_type\` \| string \| 否 \| 直达链接备用链接类型，可选值:   
\- \`UNIVERSAL\_LINK\`  
\- \`APPLINK\` \| \| \`ulink\_url\` \| string \| 否 \| 直达链接备用链接 \| 

<code>instant&#95;play&#95;material&#95;list</code>（object\[\]，否） — 直玩素材信息

 \| 字段 \| 类型 \| 必填 \| 描述 \| \| \-\-\- \| \-\-\- \| \-\-\- \| \-\-\- \| \| \`app\_play\_uri\` \| string \| 否 \| 直玩素材uri \| \| \`image\_mode\` \| string \| 否 \| 直玩素材类型，可选值:   
\- \`CREATIVE\_IMAGE\_MODE\_INSTANT\_PLAY\` 直玩 \| \| \`cover\_uri\` \| string \| 否 \| 封面图 \| \| \`file\_name\` \| string \| 否 \| 封面名称 \| \| \`material\_id\` \| number \| 否 \| 素材id \| \| \`material\_status\_frist\` \| string \| 否 \| 可选值:   
\- \`STATUS\_DELETE\` 已删除  
\- \`STATUS\_DISABLE\` 未投放  
\- \`STATUS\_FROZEN\` 已终止  
\- \`STATUS\_OK\` 投放中  
\- \`STATUS\_TIME\_DONE\` 已完成 \| \| \`material\_status\_second\` \| string\[\] \| 否 \| 可选值:   
\- \`ACCOUNT\_AVATAR\_NOT\_AVAILABLE\_FOR\_DELIVERY\` 账户头像不可投放  
\- \`APP\_NOT\_AVAILABLE\_FOR\_DELIVERY\` 应用不可投放  
\- \`DOUYIN\_ITEM\_NOT\_AVAILABLE\_FOR\_DELIVERY\` 抖音素材不可投放  
\- \`GUIDE\_VIDEO\_NOT\_EXIST\` 引导视频不存在  
\- \`LACK\_BASIC\_MATERIAL\_STATUS\` 项目素材待补充  
\- \`LIVE\_ROOM\_NOT\_AVAILABLE\_FOR\_DELIVERY\` 直播间不可投放  
\- \`MATERIAL\_STATUS\_AUDIT\` 新建审核中  
\- \`MATERIAL\_STATUS\_AWEME\_ACCOUNT\_OFFLINE\` 抖音账号不可投放  
\- \`MATERIAL\_STATUS\_DELETE\` 素材已删除  
\- \`MATERIAL\_STATUS\_DISABLE\` 手动暂停  
\- \`MATERIAL\_STATUS\_FROZEN\` 素材已终止  
\- \`MATERIAL\_STATUS\_NO\_SCHEDULE\` 项目不在投放时段  
\- \`MATERIAL\_STATUS\_OFFLINE\_AUDIT\` 审核不通过  
\- \`MATERIAL\_STATUS\_OFFLINE\_BALANCE\` 账户余额不足  
\- \`MATERIAL\_STATUS\_OFFLINE\_BUDGET\` 账户超出预算  
\- \`MATERIAL\_STATUS\_PROCEDURAL\_DISABLE\` 系统暂停  
\- \`MATERIAL\_STATUS\_PRODUCT\_OFFLINE\` 商品不可投放  
\- \`MATERIAL\_STATUS\_PROJECT\_DISABLE\` 项目已暂停  
\- \`MATERIAL\_STATUS\_PROJECT\_OFFLINE\_BUDGET\` 项目超出预算  
\- \`MATERIAL\_STATUS\_TIME\_NO\_REACH\` 项目未达投放时间  
\- \`PROJECT\_AUDIT\_REJECTED\` 项目审核不通过  
\- \`PROJECT\_REACHED\_DELIVERY\_DURATION\` 项目已达投放时长  
\- \`PROJECT\_STATUS\_AUDIT\` 项目新建审核中  
\- \`PROJECT\_STATUS\_DELETE\` 项目已删除  
\- \`PROJECT\_STATUS\_FROZEN\` 项目已终止  
\- \`PROJECT\_STATUS\_REAUDIT\` 项目修改审核中  
\- \`SHARED\_WALLET\_EXCEEDS\_BUDGET\` 共享钱包超出预算 \|

 

<code>mini&#95;program&#95;info</code>（object，否） — 字节小程序&amp;小游戏信息

 \| 字段 \| 类型 \| 必填 \| 描述 \| \| \-\-\- \| \-\-\- \| \-\-\- \| \-\-\- \| \| \`url\` \| string \| 否 \| 字节小程序&amp;小游戏调起链接 \| \| \`app\_id\` \| string \| 否 \| 小程序/小游戏原始id \| \| \`start\_path\` \| string \| 否 \| 启动路径 \| \| \`params\` \| string \| 否 \| 页面检测参数 \|

 \| 字段 \| 类型 \| 必填 \| 描述 \| \| \-\-\- \| \-\-\- \| \-\-\- \| \-\-\- \| \| \`playlet\_series\_url\_list\` \| string\[\] \| 否 \| 短剧合集链接url \| \| \`open\_urls\` \| string\[\] \| 否 \| 多直达链接 \| 

<code>page&#95;info</code>（object，否） — 分页信息

 \| 字段 \| 类型 \| 必填 \| 描述 \| \| \-\-\- \| \-\-\- \| \-\-\- \| \-\-\- \| \| \`page\` \| number \| 否 \| 页码 \| \| \`page\_size\` \| number \| 否 \| 页面大小 \| \| \`total\_number\` \| number \| 否 \| 总数 \| \| \`total\_page\` \| number \| 否 \| 总页数 \|

 

<table>&#10;<thead>&#10;<tr>&#10;<th>字段</th>&#10;<th>类型</th>&#10;<th>必填</th>&#10;<th>描述</th>&#10;</tr>&#10;</thead>&#10;<tbody>&#10;<tr>&#10;<td><code>request&#95;id</code></td>&#10;<td>string</td>&#10;<td>否</td>&#10;<td>请求日志id</td>&#10;</tr>&#10;</tbody>&#10;</table>

 

## 应答示例

 

```json
HTTPS/1.1 200 OK
{
    "message": "OK",
    "code": 0,
    "data": {}
}
```

 

## 业务错误码

 

仅披露当前接口高频的参数校验报错，更多常见报错详见<a href="https://open.oceanengine.com/labels/34/docs/1696710760866831">「返回码」</a>文档
