Creates a reply to an existing comment. Note: To create a top-level comment, use the commentThreads.insert method.
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/comments
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.
| Parameters | ||
|---|---|---|
| Required parameters | ||
part | 
      stringThe 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:
  | 
    |
Request body
Provide a comment resource in the request body. For that resource:
- 
    
You must specify a value for these properties:
snippet.textOriginalsnippet.parentId
 - 
    
You can set values for these properties:
snippet.textOriginal
 
Response
If successful, this method returns a comment 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. Please see the error message documentation for more detail.
| Error type | Error detail | Description | 
|---|---|---|
badRequest (400) | 
      commentTextRequired | 
      The comment resource that is being inserted must specify a value for the snippet.textOriginal property. Comments cannot be empty. | 
    
badRequest (400) | 
      commentTextTooLong | 
      The comment resource that is being inserted contains too many characters in the snippet.textOriginal property. | 
    
badRequest (400) | 
      invalidCustomEmoji | 
      The comment resource that is being inserted contains invalid custom emoji. | 
    
badRequest (400) | 
      invalidCommentMetadata | 
      The request metadata is invalid. | 
badRequest (400) | 
      operationNotSupported | 
      The API user is not able to insert a comment in reply to the top-level comment identified by the snippet.parentId property. In a commentThread resource, the snippet.canReply property indicates whether the current viewer can reply to the thread. | 
    
badRequest (400) | 
      parentCommentIsPrivate | 
      The specified parent comment is private. The API does not support replies to private comments. | 
badRequest (400) | 
      parentIdMissing | 
      The comment that is being inserted must be linked to a parent comment. However, the comment resource in the body of the API request did not specify a value for the snippet.parentId property. | 
    
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 comment resource in the request body to ensure that it is valid. | 
    
forbidden (403) | 
      forbidden | 
      The comment cannot 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) | 
      parentCommentNotFound | 
      The specified parent comment could not be found. Check the value of the snippet.parentId property in the request body to ensure that it is correct. | 
    
Try it!
Use the APIs Explorer to call this API and see the API request and response.