AI-generated Key Takeaways
- 
          A commentThreadresource in YouTube's API represents a comment thread, including a top-level comment and its replies, if present, on a specific video.
- 
          Each commentThreadcontainscommentresources for both the top-level comment and its replies, and does not necessarily contain all replies, as they may need to be retrieved with thecomments.listmethod.
- 
          The commentThreadsAPI supports thelistmethod to retrieve comment threads and theinsertmethod to create a new top-level comment.
- 
          The snippetobject within acommentThreadprovides essential details like the associated channel ID, video ID, the top-level comment itself, reply settings, and the total reply count.
- 
          The repliesobject within thecommentThreadresource contains a list ofcommentresources that represent the replies to the top level comment, however it is a subset of the total number of replies, not necessarily all of them.
A commentThread resource contains information about a YouTube comment thread, which comprises a top-level comment and replies, if any exist, to that comment. A commentThread resource represents comments on a video.
Both the top-level comment and the replies are actually comment resources nested inside the commentThread resource. The commentThread resource does not necessarily contain all replies to a comment, and you need to use the comments.list method if you want to retrieve all replies for a particular comment. Some comments don't have replies.
Methods
The API supports the following methods for commentThreads resources:
- list
- Returns a list of comment threads that match the API request parameters. Try it now.
- insert
- Creates a new top-level comment. To add a reply to an existing comment, use the comments.insertmethod instead. Try it now.
Resource representation
The JSON structure shows the format of a commentThreads resource:
{
  "kind": "youtube#commentThread",
  "etag": etag,
  "id": string,
  "snippet": {
    "channelId": string,
    "videoId": string,
    "topLevelComment": comments Resource,
    "canReply": boolean,
    "totalReplyCount": unsigned integer,
    "isPublic": boolean
  },
  "replies": {
    "comments": [
      comments Resource
    ]
  }
}Properties
The following table defines the properties that appear in this resource:
| Properties | |
|---|---|
| kind | stringIdentifies the API resource's type. The value will be youtube#commentThread. | 
| etag | etagThe Etag of this resource. | 
| id | stringThe ID that YouTube uses to uniquely identify the comment thread. | 
| snippet | objectThe snippetobject contains basic details about the comment thread. It also contains the thread's top-level comment, which is acommentresource. | 
| snippet.channelId | stringThe YouTube channel that is associated with the comments in the thread. The snippet.videoIdproperty identifies the video. | 
| snippet.videoId | stringThe ID of the video to which the comments refer. | 
| snippet.topLevelComment | objectThe thread's top-level comment. The property's value is a commentresource. | 
| snippet.canReply | booleanThis setting indicates whether the current viewer can reply to the thread. | 
| snippet.totalReplyCount | unsigned integerThe total number of replies that have been submitted in response to the top-level comment. | 
| snippet.isPublic | booleanThis setting indicates whether the thread, including all of its comments and comment replies, is visible to all YouTube users. | 
| replies | objectThe repliesobject is a container that contains a list of replies to the comment, if any exist. Thereplies.commentsproperty represents the list of comments itself. | 
| replies.comments[] | listA list of one or more replies to the top-level comment. Each item in the list is a commentresource.The list contains a limited number of replies, and unless the number of items in the list equals the value of the snippet.totalReplyCountproperty, the list of replies is only a subset of the total number of replies available for the top-level comment. To retrieve all of the replies for the top-level comment, you need to call thecomments.listmethod and use theparentIdrequest parameter to identify the comment for which you want to retrieve replies. |