← 返回目录
📁 API Reference › Accounts › Comments

获取自有视频的评论

您可以使用本接口获取自有 TikTok 账号所发布的某一原生视频的所有或指定的相关公开和隐藏评论(以及相关信息)。

您可根据是否返回对应的parent_comment_id判断comment_id对应的是评论还是回复。仅回复会返回对应的父层级评论(parent_comment_id)。

注意
- 本接口返回的隐藏评论可能包括视频所有者隐藏的评论,以及因审核操作、用户隐私设置或其他系统层级的过滤机制而被隐藏的评论。 - 评论 webhook 事件 comment.update 使您能够在自有 TikTok 账号下的任一公开视频下收到新评论,或原有评论被删除,或原有评论可见设置发生修改的五分钟内收到通知。若想订阅评论 webhook,请查看订阅评论更新事件。

v1.2与v1.3版本对比

以下表格概括了 v1.2与v1.3接口的变化。 ``xtable |变化内容{25%}|v1.2{30%}|v1.3{30%}| |---|---|---| |接口路径|/v1.2/business/comments/list/|/v1.3/business/comment/list/| |方法|POST |GET| |新增请求参数|/|comment_ids<br>include_replies| |新增返回参数|/|parent_comment_id<br>reply_list(包括该对象数组内的所有参数)<br>unique_identifier(位于对象数组comments中)<br>unique_identifier(位于对象数组reply_list中)<br>display_name(位于对象数组comments中)<br>display_name(位于对象数组reply_list中)<br>image_url`|

## 请求

**地址** https://business-api.tiktok.com/open_api/v1.3/business/comment/list/

**方法** GET

**Header**

```xtable
|字段{30%}|类型{20%}|描述{50%}|
|---|---|---|
|Access-Token {必填}|string|经 TikTok 创作者授权的访问令牌。<br>若想获取访问令牌,需使用[/tt_user/oauth2/token/](https://business-api.tiktok.com/portal/docs?id=1738084387220481#item-link-获取访问令牌)接口。|

参数

请将下列参数作为查询字符串进行传递。

|字段{30%}|类型{20%}|描述{50%}|
|---|---|---|
|business_id {必填}|string|TikTok 账户的应用唯一识别ID。<br>您需将[/tt_user/oauth2/token/](https://business-api.tiktok.com/portal/docs?id=1738084387220481#item-link-获取访问令牌)接口返回的`open_id`字段值传给本字段。|
|video_id {必填}|string|自有 TikTok 视频的唯一标识符,用于列出对应评论(及评论回复)。可通过[/business/video/list/](https://ads.tiktok.com/marketing_api/docs?id=1762228421622786) 接口的<code>item_id</code>字段获取。|
|comment_ids|string[] |评论或评论回复对应的ID列表,用于筛选返回结果。<br>最大数量:30。|
|include_replies| boolean|是否在结果中返回第一层级评论对应的评论回复。<br>若将本字段设置为`true`,将返回每条第一层级评论的对应回复,每条第一层级评论返回的回复数量最大为3,评论和回复默认根据智能排序算法进行排序。<br>默认值:`false`。<br>若想获取单条评论的所有回复,需使用[/business/comment/reply/list/](https://ads.tiktok.com/marketing_api/docs?id=1762228430145538)。|
|status|string|用于筛选结果的评论(及评论回复)可见状态。<br><br><strong>枚举值</strong>:<ul><li><code>PUBLIC</code>:所有 TikTok 用户均可公开查看的评论(及评论回复)。</li><li><code>ALL</code>:视频发布者的隐藏评论(及评论回复)以及所有 TikTok 用户均可公开查看的评论(及评论回复)。</li></ul><br><strong>默认值:</strong> <code>ALL</code>。|
|sort_field|string|对评论(及评论回复)进行排序的特定字段。<br><br><strong>枚举值</strong>:<ul><li><code>likes</code>:按<code>sort_order</code>指定的排序方法,同时依据点赞数对评论(及评论回复)排序。</li><li><code>replies</code>:按<code>sort_order</code>指定的排序方法,同时依据回复数对评论(及评论回复)排序。</li><li><code>create_time</code>:按<code>sort_order</code>指定的排序方法,同时依据评论时间对评论(及评论回复)排序。</li></ul>评论默认以随机顺序返回。<br><br><p><span style="color:darkred"><b>注意</b></span>:若自有视频的评论数量超过 500 条,将根据指定的排序返回前 500 条评论,并基于点赞数逆序返回剩余的评论。此外,前 500 条后的剩余评论和前 500 条评论本身不会进行去重,可能包含重复评论。|
|sort_order|string|指定评论(及评论回复)排序方法的特定字段。<br><br><strong>枚举值</strong>:<ul><li><code>asc</code>:参照<code>sort_field</code>指定的排序依据,对评论(及评论回复)升序排序。</li><li><code>desc</code>:参照<code>sort_field</code>指定的排序依据,对评论(及评论回复)降序排序。</li><li><code>smart</code>:利用算法自动进行评论(及评论回复)排序。</li></ul><br><strong>默认值:</strong> <code>smart</code>。|
|cursor|integer|分页光标。如果返回参数<code>has_more</code> 为<code>true</code>,请将返回中此参数的光标值需传递给后续请求,以获取下一页数据。<br><br><strong>默认值</strong>:0。|
|max_count|integer|每页返回的最大评论数。<br><br><strong>默认值</strong>:20。<br><br><strong>最小值</strong>:1。<br><br><strong>最大值</strong>:30。<br><span style="color:darkred"><b>注意</b></span>: 受信任与安全政策影响,接口可能会返回少于 <code>max_count</code> 的评论数,即使返回参数<code>has_more</code> 为 <code>true</code>。|

示例

获取自有视频的所有评论

(code curl http)
curl --location --request GET 'https://business-api.tiktok.com/open_api/v1.3/business/comment/list/?business_id={{business_id}}&video_id={{video_id}}' \
--header 'Access-Token: {{Access-Token}}'
(/code)

获取自有视频的指定评论

(code curl http)
curl --location --request GET "https://business-api.tiktok.com/open_api/v1.3/business/comment/list/?business_id={{business_id}}&video_id={{video_id}}&comment_ids=["{{comment_id}}","{{comment_id}}"]" \
--header "Access-Token: {{Access-Token}}"
(/code)

返回

Header

这些header很重要,可用于记录问题报告和故障排查信息。下表列出了部分返回的header。

|字段{30%}|类型{20%}|描述{50%}|
|---|---|---|
|Date|string|收到返回时的(GMT)日期和时间 。<br><br><strong>示例</strong>: Fri, 13 Aug 2021 08:04:42 GMT|
|X-Tt-Logid|string|接口请求的唯一标识符。|

Body

|字段{30%}|类型{20%}|描述{50%}|
|---|---|---|
| request_id| string|接口请求的唯一标识符。 <br><br><span style="color:darkred"><b>注意</b></span>: 请记录此字段,用于所有接口请求。此字段对于问题报告和故障排查十分重要。|
| code|integer| 返回码。完整返回码列表及描述,可查看[附录:返回码](https://ads.tiktok.com/marketing_api/docs?id=1737172488964097)。|
| message| string|返回信息。更多信息可查看[附录:返回码](https://ads.tiktok.com/marketing_api/docs?id=1737172488964097)。|
| data|object|返回数据。|
#|comments| object[]|针对某一视频的当前页面评论(或评论回复或评论和评论回复)列表。|
##|comment_id|string| 评论或评论回复的唯一标识符。 <br><br><strong>示例</strong>: 6990565363377392901|
##|video_id|string| 评论或评论回复对应的自有视频的唯一标识符。 <br><br><strong>示例</strong>: 6990565363377392901|
##|user_id{-即将废弃}| string|发表评论或评论回复的用户在开发者应用和 TikTok 账户范围内的唯一标识符。<br><br><strong>示例</strong> :ce9b7be629b0447af777a0ad945783f61b7f790982b49fbda04a23b4722eaffe<br><br><p><span style="color:darkred"><b>注意</b></span>:本字段将在下个 API 版本中废弃。推荐您使用 `unique_identifier` 识别 TikTok 用户,因为该用户标识符在多个 API 之间保持一致。|
##| unique_identifier | string | 发表评论或评论回复的用户的全球统一标识符。该标识符在多个 API 之间保持一致,方便集成和参数的互相参照。<br><br><b>示例</b>:+ABc1D2/E0fGhijklMNOrD34vDW/zDiZUNRH5Jyahue6OcA7b8ZpwnqXV9u1Uh+k|
##|create_time| string| 评论或评论回复发表的日期和时间,采用 Unix/Epoch 格式。<br><br><strong>示例</strong>:1627617835|
##|text| string|评论或评论回复的文本内容。<br><br><strong>示例</strong>:"This is a comment #comment 🙂"|
##|likes| integer|评论或评论回复获得的点赞数。<br><br><strong>示例</strong>:123|
##|replies|integer| 评论获得的回复数。<br><br><strong>示例</strong>:123|
##|owner| boolean|评论或评论回复是否由发布对应视频的用户本人创建。<br><br><strong>示例</strong>: <code>true</code>|
##|liked|boolean| 发布对应视频的用户是否点赞了此评论或评论回复。<br><br><strong>示例</strong>: <code>true</code>|
##|pinned| boolean|发布对应视频的用户是否置顶了此评论或评论回复。<br><br><strong>示例</strong>: <code>true</code>|
##|status| string|此评论或评论回复的可见状态。<br><br><strong>枚举值:</strong><ul><li><code>HIDDEN</code>:评论或评论回复已隐藏,无法公开浏览</li> <li><code>PUBLIC</code>:评论或评论回复可被所有用户查看</li></ul><strong>示例</strong>:<code>PUBLIC</code>|
##|username| string| 发布此评论或评论回复的 TikTok 账户的唯一用户名。<br><br><strong>示例</strong>: feather_in_the_w1nd|
##| display_name | string | 发布此评论或评论回复的 TikTok 账户的显示名称。  <br><br> <strong>示例</strong>:Feather in the wind |
##| profile_image | string|发布此评论或评论回复的 TikTok 账户主页头像的临时URL。过期日期和时间以 Epoch/Unix 时间格式包含在`x-expires`查询参数中,以秒为单位。<br><br><strong>示例</strong>: https://p16-sign-va.tiktokcdn.com/tos-maliva-avt-0068/188d468fc1de3f328250ea0c96e98f8b~c5_168x168.jpeg?<strong>x-expires</strong>=1651687200&x-signature=AAiHg70%2Bnj9iUipTuQWodRmk0qA%3D |
##| parent_comment_id | string | 仅为评论回复返回此字段。<br>收到此条评论回复的评论的ID。 |
##| reply_list | object[] | 仅当请求参数`include_replies`设置为`true`时,为第一层级评论返回此对象数组。<br>有关该评论收到的回复的信息。<br>最大数量:3。 |
###| video_id | number | 该评论回复对应的自有视频的唯一标识符。<br><br><strong>示例</strong>:6990565363377392901 |
###| comment_id | number | 该评论回复的唯一标识符。<br><br><strong>示例</strong>: 6990565363377392901 |
###| create_time | string | 该评论回复发表的日期和时间,采用 Unix/Epoch 格式 。<br><br><strong>示例</strong>:1627617835 |
###| text | string | 该评论回复的文本内容。<br><br><strong>示例</strong>:"This is a comment reply#comment reply🙂" |
###| status | string | 该评论回复的可见状态。 枚举值:<ul><li>`HIDDEN`: 评论回复已隐藏,无法公开浏览。</li><li>`PUBLIC`: 评论回复可供所有用户查看。</li></ul><br><strong>示例</strong>:`PUBLIC` |
###| liked | boolean | 发布对应视频的用户是否点赞了此评论回复。<br><br><strong>示例</strong>:`true` |
###| likes | number | 此评论回复获得的点赞数。<br><br><strong>示例</strong>:123 |
###| owner | boolean | 评论回复是否由发布对应视频的用户本人创建。<br><br><strong>示例</strong>:`true` |
###| user_id {-即将废弃}| string | 发表该评论回复的用户在开发者应用和 TikTok 账户范围内的唯一标识符。<br><br><strong>示例</strong>: ce9b7be629b0447af777a0ad945783f61b7f790982b49fbda04a23b4722eaffe<br><br><p><span style="color:darkred"><b>注意</b></span>:本字段将在下个 API 版本中废弃。推荐您使用 `unique_identifier` 识别 TikTok 用户,因为该用户标识符在多个 API 之间保持一致。 |
###| unique_identifier | string | 发表评论或评论回复的用户的全球统一标识符。该标识符在多个 API 之间保持一致,方便集成和参数的互相参照。<br><br><b>示例</b>:+ABc1D2/E0fGhijklMNOrD34vDW/zDiZUNRH5Jyahue6OcA7b8ZpwnqXV9u1Uh+k|
###| username | string | 发布此评论回复的 TikTok 账户的唯一用户名。 <br><br><strong>示例</strong>:feather_in_the_w1nd |
###| display_name | string | 发布此评论回复的 TikTok 账户的显示名称。  <br><br> <strong>示例</strong>:Feather in the wind |
###| profile_image | string | 发布此评论回复的TikTok 账户主页头像的临时URL。过期日期和时间以 Epoch/Unix 时间格式包含在`x-expires`查询参数中,以秒为单位。 <br><br><strong>示例</strong>: https://p16-sign-va.tiktokcdn.com/tos-maliva-avt-0068/188d468fc1de3f328250ea0c96e98f8b~c5_168x168.jpeg?<strong>x-expires</strong>=1651687200&x-signature=AAiHg70%2Bnj9iUipTuQWodRmk0qA%3D |
###| parent_comment_id | string | 收到此条评论回复的评论的ID。 |
##| image_url | string | 评论中图片的 URL。<br><br>当评论为图片时返回。<br><br>此 URL 不会过期。 |
#|cursor| integer| 用于获取下一页结果的光标,可传递到后续接口请求的 `cursor` 查询参数。 |
#|has_more | boolean | 是否有下一页数据。 |

示例

获取自有视频的所有评论

(code)
HTTPS/1.1 200 OK
{
    "code": 0,
    "message": "OK",
    "request_id": "{{request_id}}",
    "data": {
        "comments": [
            {
                "user_id": "{{user_id}}",
                "unique_identifier": "{{unique_identifier}}",
                "profile_image": "{{profile_image}}",
                "replies": 0,
                "username": "{{username}}",
                "display_name": "{{display_name}}",
                "liked": false,
                "comment_id": "{{comment_id}}",
                "status": "HIDDEN",
                "create_time": "1681790814",
                "pinned": false,
                "likes": 0,
                "owner": true,
                "video_id": "{{video_id}}",
                "text": "{{text}}"
            },
            {
                "user_id": "{{user_id}}",
                "unique_identifier": "{{unique_identifier}}",
                "profile_image": "{{profile_image}}",
                "replies": 0,
                "username": "{{username}}",
                "display_name": "{{display_name}}",
                "liked": false,
                "comment_id": "{{comment_id}}",
                "status": "HIDDEN",
                "create_time": "1681790814",
                "pinned": false,
                "likes": 0,
                "owner": true,
                "video_id": "{{video_id}}",
                "text": "{{text}}"
            },
            {
                "user_id": "{{user_id}}",
                "unique_identifier": "{{unique_identifier}}",
                "profile_image": "{{profile_image}}",
                "replies": 1,
                "username": "{{username}}",
                "display_name": "{{display_name}}",
                "liked": true,
                "comment_id": "{{comment_id}}",
                "status": "PUBLIC",
                "create_time": "{{create_time}}",
                "pinned": false,
                "likes": 1,
                "owner": true,
                "video_id": "{{video_id}}",
                "text": "{{text}}"
            }
        ],
        "has_more": false,
        "cursor": 3
    }
}
(/code)

获取自有视频的指定评论

(code)
HTTPS/1.1 200 OK
{
    "code": 0,
    "message": "OK",
    "request_id": "{{request_id}}",
    "data": {
        "comments": [
            {
                "user_id": "{{user_id}}",
                "unique_identifier": "{{unique_identifier}}",
                "profile_image": "{{profile_image}}",
                "replies": 0,
                "username": "{{username}}",
                "display_name": "{{display_name}}",
                "liked": false,
                "comment_id": "{{comment_id}}",
                "status": "HIDDEN",
                "create_time": "1681790814",
                "pinned": false,
                "likes": 0,
                "owner": true,
                "video_id": "{{video_id}}",
                "text": "{{text}}"
            },
            {
                "user_id": "{{user_id}}",
                "unique_identifier": "{{unique_identifier}}",
                "profile_image": "{{profile_image}}",
                "replies": 1,
                "username": "{{username}}",
                "display_name": "{{display_name}}",
                "liked": true,
                "comment_id": "{{comment_id}}",
                "status": "PUBLIC",
                "create_time": "{{create_time}}",
                "pinned": false,
                "likes": 1,
                "owner": true,
                "video_id": "{{video_id}}",
                "text": "{{text}}"
            }
        ]
    }
}
(/code)

内容来源:TikTok API for Business 官方文档 · 本地归档

在接这个接口时卡住了?
Stuck wiring this API into production? We build ad-delivery tooling on these platforms — campaign automation, reporting pipelines, error-handling and migration between API versions.
联系我们 · Talk to us 每日平台更新简报 →