Sets the moderation status of one or more comments. The API request must be authorized by the owner of the channel or video associated with the comments.

**Quota impact:** A call to this method has a [quota cost](https://developers.google.com/youtube/data/getting-started.md.txt#quota) of 50 units.

## Common use cases

<iframe src="https://developers.devsite.google/frame/youtube/data/reference/rest/v3/comments/setModerationStatus_9d5520438c3775036009a0353fdadd1a0de26977dcfac4deddd587c6d37bfdc1.frame" class="framebox inherit-locale " allow="clipboard-write https://developers.devsite.google" allowfullscreen is-upgraded></iframe>

## Request

### HTTP request

```
POST https://www.googleapis.com/youtube/v3/comments/setModerationStatus
```

### Authorization

This request requires authorization with at least one of the following scopes ([read more about authentication and authorization](https://developers.google.com/youtube/data/guides/authentication.md.txt)).

| 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** |||
| `id` | `string` The `id` parameter specifies a comma-separated list of up to 50 IDs that identify the comments for which you are updating the moderation status. |
| `moderationStatus` | `string` Identifies the new moderation status of the specified comments. Acceptable values are: - `heldForReview` -- Marks a comment as awaiting review by a moderator. - `published` -- Clears a comment for public display. You can't change the moderation status of a rejected comment to `published`. - `rejected` -- Rejects a comment as being unfit for display. This action also effectively hides all replies to the rejected comment. To remove a comment authored by another user from your channel or video, set its moderation status to `rejected`. The `comments.delete` method can only be used by the comment's original author. |
| **Optional parameters** |||
| `banAuthor` | `boolean` The `banAuthor` parameter lets you indicate that you want to automatically reject any additional comments written by the comment's author. Set the parameter value to `true` to ban the author. This parameter is only valid if the `moderationStatus` parameter is also set to `rejected`. |

### Request body

Do not provide a request body when calling this method.

## Response

If successful, this method returns an HTTP `204` response code (`No Content`).

## 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](https://developers.google.com/youtube/data/reference/rest/v3/errors.md.txt) documentation for more detail.

| Error type | Error detail | Description |
|---|---|---|
| `badRequest (400)` | `banWithoutReject` | The `banAuthor` parameter can only be used if the `moderationStatus` parameter value is `rejected`. |
| `badRequest (400)` | `operationNotSupported` | Comments not based on Google+ offer only limited moderation functionality. |
| `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. This error is also returned when attempting to moderate a comment that has already been deleted by the original commenter. |
| `forbidden (403)` | `forbidden` | The moderation status of one or more comments can't be set due to insufficient permissions. The request might not be authorized. This error is also returned when attempting to moderate a deleted or invalid comment ID. |
| `notFound (404)` | `commentNotFound` | One or more of the comments that the request is trying to update can't be found. Check the values of the request's `id` parameter to ensure that they are correct. |

## Try it!

Use the APIs Explorer to call this API and see the API request and response.