Creates a new top-level comment. To add a reply to an existing comment, use the comments.insert
method instead.
Quota impact: A call to this method has a quota cost of 50 units.
Common use cases
Request
HTTP request
POST https://www.googleapis.com/youtube/v3/commentThreads
Authorization
This request requires authorization with at least one of the following scopes ( read more about authentication and authorization ).
| Scope |
|---|
https://www.googleapis.com/auth/youtube.force-ssl
|
Parameters
The following table lists the parameters that this query supports. All of the parameters listed are query parameters.
part
string
The
part
parameter identifies the properties that the API response will include. Set the parameter value to snippet
. The snippet
part has a quota cost of 2 units.The following list contains the
part
names that you can include in the parameter value:-
id -
replies -
snippet
Request body
Provide a commentThread resource in the request body.
For that resource, you must specify a value for the following properties:
-
snippet.channelId -
snippet.videoId -
snippet.topLevelComment.snippet.textOriginal
Response
If successful, this method returns a commentThread resource in the response body.
Errors
The following table identifies error messages that the API could return in response to a call to this method. For more details, see the error message documentation.
| Error type | Error detail | Description |
|---|---|---|
badRequest (400)
|
channelOrVideoIdMissing
|
Each comment thread must be linked to a video. Make sure the resource specifies values for the snippet.channelId
and the snippet.videoId
properties. A comment on a video appears on the video's watch page. |
badRequest (400)
|
commentTextRequired
|
The comment
resource that is being inserted must specify a value for the snippet.topLevelComment.snippet.textOriginal
property. Comments cannot be empty. |
badRequest (400)
|
commentTextTooLong
|
The comment
resource that is being inserted contains too many characters in the snippet.topLevelComment.snippet.textOriginal
property. |
badRequest (400)
|
invalidCommentThreadMetadata
|
The request metadata is invalid. |
badRequest (400)
|
processingFailure
|
The API server failed to successfully process the request. While this can be a transient error, it usually indicates that the request's input is invalid. Check the structure of the commentThread
resource in the request body to ensure that it is valid. |
forbidden (403)
|
forbidden
|
The comment thread couldn't be created due to insufficient permissions. The request might not be properly authorized. |
forbidden (403)
|
ineligibleAccount
|
The YouTube account used to authorize the API request must be merged with the user's Google Account to insert a comment or comment thread. |
notFound (404)
|
channelNotFound
|
The specified channel couldn't be found. Check the value of the snippet.channelId
property to ensure it is correct. |
notFound (404)
|
videoNotFound
|
The specified video couldn't be found. Check the value of the snippet.videoId
property to ensure it is correct. |
Try it!
Use the APIs Explorer to call this API and see the API request and response.

