- [JSON representation](https://developers.google.com/workspace/slides/api/reference/rest/v1/CommentThread#SCHEMA_REPRESENTATION)
- [Post](https://developers.google.com/workspace/slides/api/reference/rest/v1/CommentThread#Post)
  - [JSON representation](https://developers.google.com/workspace/slides/api/reference/rest/v1/CommentThread#Post.SCHEMA_REPRESENTATION)
- [PostAuthor](https://developers.google.com/workspace/slides/api/reference/rest/v1/CommentThread#PostAuthor)
  - [JSON representation](https://developers.google.com/workspace/slides/api/reference/rest/v1/CommentThread#PostAuthor.SCHEMA_REPRESENTATION)
- [CommentActionType](https://developers.google.com/workspace/slides/api/reference/rest/v1/CommentThread#CommentActionType)
- [Status](https://developers.google.com/workspace/slides/api/reference/rest/v1/CommentThread#Status)

Represents a single comment thread inside a presentation.

| JSON representation |
|---|
| ``` { "commentId": string, "anchorId": string, "headPost": { object (`https://developers.google.com/workspace/slides/api/reference/rest/v1/CommentThread#Post`) }, "replies": [ { object (`https://developers.google.com/workspace/slides/api/reference/rest/v1/CommentThread#Post`) } ], "status": enum (`https://developers.google.com/workspace/slides/api/reference/rest/v1/CommentThread#Status`), "plainTextQuote": string } ``` |

| Fields ||
|---|---|
| `commentId` | `string` The unique ID of the comment thread. |
| `anchorId` | `string` The ID of the `https://developers.google.com/workspace/slides/api/reference/rest/v1/presentations.pages#Page.CommentAnchor` in the presentation that this thread is tied to. |
| `headPost` | ``object (`https://developers.google.com/workspace/slides/api/reference/rest/v1/CommentThread#Post`)`` The first post in the thread. |
| `replies[]` | ``object (`https://developers.google.com/workspace/slides/api/reference/rest/v1/CommentThread#Post`)`` Replies to the head post. |
| `status` | ``enum (`https://developers.google.com/workspace/slides/api/reference/rest/v1/CommentThread#Status`)`` Whether the thread is open or resolved. |
| The quoted text from the page element when the comment was created. The following is a list of mutually exclusive fields. At most one of the fields will be set in a response: ||
| `plainTextQuote` | `string` The quoted text from the page element when the comment was created, formatted as plain-text. |
| End of mutually exclusive fields. ||

## Post

Represents a single post in a comment thread.

| JSON representation |
|---|
| ``` { "postId": string, "content": string, "contentHtml": string, "author": { object (`https://developers.google.com/workspace/slides/api/reference/rest/v1/CommentThread#PostAuthor`) }, "createTime": string, "updateTime": string, "deleted": boolean, "fromImportedPresentation": boolean, "fromCopiedPresentation": boolean, "assigneeEmail": string, "commentAction": enum (`https://developers.google.com/workspace/slides/api/reference/rest/v1/CommentThread#CommentActionType`) } ``` |

| Fields ||
|---|---|
| `postId` | `string` Output only. The unique ID of the post. |
| `content` | `string` The content of the post. Required to be non-empty if `https://developers.google.com/workspace/slides/api/reference/rest/v1/CommentThread#Post.FIELDS.comment_action` is not `RESOLVE` or `REOPEN`. This text content will be handled similarly to comments created in the Slides editor. It will have similar behaviors for formatting, notifications, etc. May not exceed 2048 UTF-8 code units. |
| `contentHtml` | `string` Output only. The content of the post as HTML. |
| `author` | ``object (`https://developers.google.com/workspace/slides/api/reference/rest/v1/CommentThread#PostAuthor`)`` Output only. The user who created the post. |
| `createTime` | ``string (`https://protobuf.dev/reference/protobuf/google.protobuf#timestamp` format)`` Output only. The time the post was created. |
| `updateTime` | ``string (`https://protobuf.dev/reference/protobuf/google.protobuf#timestamp` format)`` Output only. The time the post was last updated. |
| `deleted` | `boolean` Output only. Whether the post is deleted. If `true`, `https://developers.google.com/workspace/slides/api/reference/rest/v1/CommentThread#Post.FIELDS.content` and `https://developers.google.com/workspace/slides/api/reference/rest/v1/CommentThread#Post.FIELDS.author` fields will be empty. |
| `fromImportedPresentation` | `boolean` Output only. Whether the post is from an imported presentation. This field cannot be set directly by callers. |
| `fromCopiedPresentation` | `boolean` Output only. Whether the post is from a copied presentation. This field cannot be set directly by callers. |
| `assigneeEmail` | `string` Optional. The email of the user who is being newly assigned to the thread as part of this post. Returns a 400 bad request error if: - The parent thread is a `https://developers.google.com/workspace/slides/api/reference/rest/v1/CommentThread` whose `https://developers.google.com/workspace/slides/api/reference/rest/v1/CommentThread#FIELDS.head_post` does not have an assignee. - `https://developers.google.com/workspace/slides/api/reference/rest/v1/CommentThread#Post.FIELDS.comment_action` is specified as `RESOLVE` or `REOPEN`. - `assigneeEmail` exceeds 2048 UTF-8 code units. |
| `commentAction` | ``enum (`https://developers.google.com/workspace/slides/api/reference/rest/v1/CommentThread#CommentActionType`)`` Action taken as part of creating the post. |

## PostAuthor

Represents a user who authored a comment post.

| JSON representation |
|---|
| ``` { "displayName": string, "me": boolean, "anonymous": boolean, "user": string } ``` |

| Fields ||
|---|---|
| `displayName` | `string` The display name of the user. May be absent if the author is anonymous. |
| `me` | `boolean` Whether the user is the authenticated user making the request. |
| `anonymous` | `boolean` Whether the user is anonymous. |
| `user` | `string` The resource name of the post author user, which can also be used to identify the user in the [Google People API](https://developers.google.com/people/api/rest/v1/people). Format: `users/{user}`. Will not be populated if the anonymous field is `true` or if the post is from an imported presentation. |

## CommentActionType

The action taken with this reply to a comment thread.

| Enums ||
|---|---|
| `COMMENT_ACTION_TYPE_UNSPECIFIED` | Default value. This value is unused. |
| `NO_COMMENT_ACTION_CHANGE` | No action change in this post. |
| `RESOLVE` | This post resolves the thread. |
| `REOPEN` | This post reopens the thread. |

## Status

The status options of the comment thread.

| Enums ||
|---|---|
| `STATUS_UNSPECIFIED` | Default value. This value is unused. |
| `OPEN` | The comment thread is open. |
| `RESOLVED` | The comment thread is resolved. |