企业号 / 全部接口
入门指南
快速入门
术语解释
接口清单(Scope权限点)
Oauth2.0授权
简版授权流程说明
授权管理说明
新版授权常见问题
OAuth2.0原理及Marketing-API使用
回调地址怎么设置和使用
Token管理
获取Access Token
刷新Refresh Token
获取已授权账户
获取授权User信息
获取APP Access Token
账号服务
企业号账号管理
获取企业号信息
纵横组织账户管理
获取纵横组织下资产账户列表
获取纵横组织下资产账户列表(分页)
抖音企业号
消息管理
企业号私信发送消息接口
企业号私信菜单保存接口
企业号私信自动回复保存接口
企业号私信消息卡片保存接口
企业号私信消息卡片删除接口
企业号私信菜单读取接口
企业号私信自动回复读取接口
企业号私信用户群聊读取接口
企业号私信经营工具读取接口
企业号私信消息卡片读取接口
基础信息
企业号用户权限读取接口
评论管理
获取评论列表
获取评论的回复
获取评论从属信息
回复评论
获取企业号视频列表
经营分析
获取广告主关联的企业号列表
获取企业号推广操作记录
获取企业号基础数据
获取企业号流量来源数据
获取企业号视频分析数据
不同时间维度下支持查询指标一览表
用户分析
企业号意向用户标签创建
企业号意向用户标签编辑
企业号意向用户标签删除
企业号意向用户标签查询
企业号意向用户列表查询
企业号意向用户打标签或取消标签
企业号意向用户互动记录查询
素材管理
企业号用户素材列表接口
企业号永久素材上传接口
企业号素材删除接口
数据订阅服务
SPI数据订阅
SPI回调地址设置
订阅服务类型
X-Open-Signature签名校验
推送失败数据查询
获取推送数据列表
频控限制
最佳实践
附录
枚举值
返回码
过滤条件
企业号私信经营工具读取接口

读取企业号创建的审核通过的经营工具列表供私信相关接口使用,经营工具类型包括联系我们、在线预约、线索收集、汽车线索收集、官网主页、团购商品聚合页、电商商品、电商卡券。

如需查询电商商品SHOP_PRODUCT、电商卡片SHOP_COUPON类型的经营工具,请先确认企业号已绑定抖音店铺,否则会报错。

请求地址

https://ad.oceanengine.com/open_api/v1.0/enterprise/im/component/list/

请求方法

GET

请求Header

字段类型描述
Access-Token必填
string
授权access-token,获取方法见接口文档【获取Access-Token】

请求参数

字段类型描述
e_douyin_id必填
string
企业号账户ID,纵横组织管理员授权后,先通过【获取已授权账户】接口,查询到账号角色为2纵横组织 的纵横组织账户ID,再通过【获取纵横组织下资产账户列表】接口,查询到e_douyin_id,即为企业号账户ID
component_type必填
string
按经营工具类型过滤查询结果
允许值:
AD_ADVANCED_CONTACT_US 联系我们
RESERVE_SERVICE 在线预约
LEADS_COLLECTOR 线索收集
CAR_LEADS_COLLECTOR 汽车线索收集
AD_ADVANCED_OFFICIAL_SITE 官网主页
GROUPON_ACTIVITY 团购商品聚合页
SHOP_PRODUCT 电商商品
SHOP_COUPON 电商卡券
默认值:AD_ADVANCED_CONTACT_US 联系我们
如需查询SHOP_PRODUCTSHOP_COUPON,请先确认企业号已绑定抖音店铺,否则会报错
page
number
页数默认值:1,page必须大于0
page_size
number
页面大小默认值:10,page_size范围为[1,50]

请求示例

Python请求示例
JAVA请求示例
PHP请求示例
curl请求示例
# 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/v1.0/enterprise/im/component/list/" 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", "ad.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__': e_douyin_id = E_DOUYIN_ID page = PAGE page_size = PAGE_SIZE component_type = COMPONENT_TYPE # Args in JSON format my_args = "{\"e_douyin_id\": \"%s\", \"page\": \"%s\", \"page_size\": \"%s\", \"component_type\": \"%s\"}" % (e_douyin_id, page, page_size, component_type) print(get(my_args))
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/v1.0/enterprise/im/component/list/"; 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", "ad.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 { String e_douyin_id = E_DOUYIN_ID; Long page = PAGE; Long page_size = PAGE_SIZE; String component_type = COMPONENT_TYPE; // Args in JSON format String myArgs = String.format("{\"e_douyin_id\": \"%s\", \"page\": \"%s\", \"page_size\": \"%s\", \"component_type\": \"%s\"}",e_douyin_id, page, page_size, component_type); System.out.println(get(myArgs)); } }
$ACCESS_TOKEN = "xxx"; $PATH = "/open_api/v1.0/enterprise/im/component/list/"; /** * Build request URL * @param $path : Request path * @return string */ function build_url($path) { return "https://ad.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; } $e_douyin_id = E_DOUYIN_ID; $page = PAGE; $page_size = PAGE_SIZE; $component_type = COMPONENT_TYPE; /* Args in JSON format */ $my_args = sprintf("{\"e_douyin_id\": \"%s\", \"page\": \"%s\", \"page_size\": \"%s\", \"component_type\": \"%s\"}", $e_douyin_id, $page, $page_size, $component_type); echo get($my_args);
curl --get -H "Access-Token:xxx" \ --data-urlencode "e_douyin_id=E_DOUYIN_ID" \ --data-urlencode "page=PAGE" \ --data-urlencode "page_size=PAGE_SIZE" \ --data-urlencode "component_type=COMPONENT_TYPE" \ https://ad.oceanengine.com/open_api/v1.0/enterprise/im/component/list/

应答字段

字段类型描述
code
number
返回码,详见【附录-返回码】
message
string
返回信息,详见【附录-返回码】
data
json
json返回值
component_list
object[]
经营工具信息
component_id
string
经营工具ID
component_name
string
经营工具名称
component_type
string
经营工具类型
枚举值:
AD_ADVANCED_CONTACT_US 联系我们
RESERVE_SERVICE 在线预约
LEADS_COLLECTOR 线索收集
CAR_LEADS_COLLECTOR 汽车线索收集
AD_ADVANCED_OFFICIAL_SITE 官网主页
GROUPON_ACTIVITY 团购商品聚合页
SHOP_PRODUCT 电商商品
SHOP_COUPON 电商卡券
page_info
json
分页信息
page
number
页数
page_size
number
页面大小
total_number
number
总个数
total_page
number
总页数
request_id
string
请求日志ID

应答示例

{ "code": 0, "message": "OK", "request_id": "xxx", "data": { "component_list": [ { "component_id": "xxx", "component_name": "上海天文馆", "component_type": "RESERVE_SERVICE" } ], "page_info": { "page": 1, "page_size": 10, "total_number": 1, "total_page": 1 } } }