# Comments

## Get comments for multiple submissions

> Returns comments for up to \*\*1000\*\* submission IDs in one request.<br>

```json
{"openapi":"3.0.3","info":{"title":"Daxium Air API","version":"v1.3"},"tags":[{"name":"submission-comments"}],"servers":[{"url":"https://api.daxium-air.com","description":"Production"}],"security":[{"BearerAuth":[]}],"components":{"securitySchemes":{"BearerAuth":{"type":"http","scheme":"bearer"}},"parameters":{"AppShort":{"name":"app_short","in":"path","required":true,"description":"Short name of the workspace instance (e.g. `daxium-test`)","schema":{"type":"string"}}},"schemas":{"Comment":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Comment identifier (UUID v4)"},"message":{"type":"string","maxLength":1000,"description":"Plain text only — no HTML or script tags"},"client_created_at":{"type":"integer","format":"int64","description":"Client-side creation timestamp (Unix timestamp)"},"client_updated_at":{"type":"integer","format":"int64","description":"Client-side update timestamp (Unix timestamp)"},"user_id":{"type":"integer"},"submission_id":{"type":"string","format":"uuid"},"replies":{"type":"array","description":"Second-level replies (thread depth is limited to 2)","items":{"$ref":"#/components/schemas/Comment"}}}},"ErrorResponse":{"type":"object","properties":{"code":{"type":"string","description":"Unique error code prefixed with `DAERR-`"},"message":{"type":"string"},"url":{"type":"string","format":"uri","description":"Link to the detailed error documentation"},"api_version":{"type":"string"},"infos":{"type":"array","items":{},"description":"Additional context (may be empty)"},"server_time":{"type":"string","description":"Unix timestamp as string"}}}}},"paths":{"/{app_short}/submissions/comments":{"post":{"summary":"Get comments for multiple submissions","description":"Returns comments for up to **1000** submission IDs in one request.\n","tags":["submission-comments"],"operationId":"getCommentsBySubmissionIds","parameters":[{"$ref":"#/components/parameters/AppShort"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["submission_ids"],"properties":{"submission_ids":{"type":"array","maxItems":1000,"items":{"type":"string","format":"uuid"}}}}}}},"responses":{"200":{"description":"Comments grouped by submission UUID","content":{"application/json":{"schema":{"type":"object","additionalProperties":{"type":"array","items":{"$ref":"#/components/schemas/Comment"}}}}}},"400":{"description":"Too many submission IDs — max 1000 (DAERR-COM1010)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}}}}
```

## GET /{app\_short}/submissions/{id}/comments

> List comments on a submission

```json
{"openapi":"3.0.3","info":{"title":"Daxium Air API","version":"v1.3"},"tags":[{"name":"submission-comments"}],"servers":[{"url":"https://api.daxium-air.com","description":"Production"}],"security":[{"BearerAuth":[]}],"components":{"securitySchemes":{"BearerAuth":{"type":"http","scheme":"bearer"}},"parameters":{"AppShort":{"name":"app_short","in":"path","required":true,"description":"Short name of the workspace instance (e.g. `daxium-test`)","schema":{"type":"string"}}},"schemas":{"Comment":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Comment identifier (UUID v4)"},"message":{"type":"string","maxLength":1000,"description":"Plain text only — no HTML or script tags"},"client_created_at":{"type":"integer","format":"int64","description":"Client-side creation timestamp (Unix timestamp)"},"client_updated_at":{"type":"integer","format":"int64","description":"Client-side update timestamp (Unix timestamp)"},"user_id":{"type":"integer"},"submission_id":{"type":"string","format":"uuid"},"replies":{"type":"array","description":"Second-level replies (thread depth is limited to 2)","items":{"$ref":"#/components/schemas/Comment"}}}},"ErrorResponse":{"type":"object","properties":{"code":{"type":"string","description":"Unique error code prefixed with `DAERR-`"},"message":{"type":"string"},"url":{"type":"string","format":"uri","description":"Link to the detailed error documentation"},"api_version":{"type":"string"},"infos":{"type":"array","items":{},"description":"Additional context (may be empty)"},"server_time":{"type":"string","description":"Unix timestamp as string"}}}}},"paths":{"/{app_short}/submissions/{id}/comments":{"get":{"summary":"List comments on a submission","tags":["submission-comments"],"operationId":"listSubmissionComments","parameters":[{"$ref":"#/components/parameters/AppShort"},{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"List of comments (including replies)","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Comment"}}}}},"403":{"description":"Access to submission forbidden (DAERR-COM1000)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Submission not found (DAERR-COM1006)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}}}}
```

## Create a comment on a submission

> Adds a new comment. Plain text only — no HTML or script content.\
> Maximum \*\*1000 characters\*\*. Supports an optional client-supplied UUID.<br>

```json
{"openapi":"3.0.3","info":{"title":"Daxium Air API","version":"v1.3"},"tags":[{"name":"submission-comments"}],"servers":[{"url":"https://api.daxium-air.com","description":"Production"}],"security":[{"BearerAuth":[]}],"components":{"securitySchemes":{"BearerAuth":{"type":"http","scheme":"bearer"}},"parameters":{"AppShort":{"name":"app_short","in":"path","required":true,"description":"Short name of the workspace instance (e.g. `daxium-test`)","schema":{"type":"string"}}},"schemas":{"CommentInput":{"type":"object","required":["message"],"properties":{"id":{"type":"string","format":"uuid","description":"Optional client-supplied UUID v4"},"message":{"type":"string","maxLength":1000,"description":"Plain text only — no HTML, script tags, or dangerous characters"},"client_created_at":{"type":"integer","format":"int64","description":"Unix timestamp"},"client_updated_at":{"type":"integer","format":"int64","description":"Unix timestamp"}}},"Comment":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Comment identifier (UUID v4)"},"message":{"type":"string","maxLength":1000,"description":"Plain text only — no HTML or script tags"},"client_created_at":{"type":"integer","format":"int64","description":"Client-side creation timestamp (Unix timestamp)"},"client_updated_at":{"type":"integer","format":"int64","description":"Client-side update timestamp (Unix timestamp)"},"user_id":{"type":"integer"},"submission_id":{"type":"string","format":"uuid"},"replies":{"type":"array","description":"Second-level replies (thread depth is limited to 2)","items":{"$ref":"#/components/schemas/Comment"}}}},"ErrorResponse":{"type":"object","properties":{"code":{"type":"string","description":"Unique error code prefixed with `DAERR-`"},"message":{"type":"string"},"url":{"type":"string","format":"uri","description":"Link to the detailed error documentation"},"api_version":{"type":"string"},"infos":{"type":"array","items":{},"description":"Additional context (may be empty)"},"server_time":{"type":"string","description":"Unix timestamp as string"}}}}},"paths":{"/{app_short}/submissions/{id}/comments":{"post":{"summary":"Create a comment on a submission","description":"Adds a new comment. Plain text only — no HTML or script content.\nMaximum **1000 characters**. Supports an optional client-supplied UUID.\n","tags":["submission-comments"],"operationId":"createSubmissionComment","parameters":[{"$ref":"#/components/parameters/AppShort"},{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CommentInput"}}}},"responses":{"200":{"description":"Comment created","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Comment"}}}},"400":{"description":"Validation error — missing message (DAERR-COM1002), too long\n(DAERR-COM1003), invalid date (DAERR-COM1004), invalid characters\n(DAERR-COM1005), invalid UUID (DAERR-COM1009), or comment limit\nreached (DAERR-COM1012)\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Access forbidden (DAERR-COM1000)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}}}}
```

## Update a comment

> Updates the text of a comment. Users can only update their own comments (DAERR-COM1008).

```json
{"openapi":"3.0.3","info":{"title":"Daxium Air API","version":"v1.3"},"tags":[{"name":"submission-comments"}],"servers":[{"url":"https://api.daxium-air.com","description":"Production"}],"security":[{"BearerAuth":[]}],"components":{"securitySchemes":{"BearerAuth":{"type":"http","scheme":"bearer"}},"parameters":{"AppShort":{"name":"app_short","in":"path","required":true,"description":"Short name of the workspace instance (e.g. `daxium-test`)","schema":{"type":"string"}}},"schemas":{"CommentInput":{"type":"object","required":["message"],"properties":{"id":{"type":"string","format":"uuid","description":"Optional client-supplied UUID v4"},"message":{"type":"string","maxLength":1000,"description":"Plain text only — no HTML, script tags, or dangerous characters"},"client_created_at":{"type":"integer","format":"int64","description":"Unix timestamp"},"client_updated_at":{"type":"integer","format":"int64","description":"Unix timestamp"}}},"Comment":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Comment identifier (UUID v4)"},"message":{"type":"string","maxLength":1000,"description":"Plain text only — no HTML or script tags"},"client_created_at":{"type":"integer","format":"int64","description":"Client-side creation timestamp (Unix timestamp)"},"client_updated_at":{"type":"integer","format":"int64","description":"Client-side update timestamp (Unix timestamp)"},"user_id":{"type":"integer"},"submission_id":{"type":"string","format":"uuid"},"replies":{"type":"array","description":"Second-level replies (thread depth is limited to 2)","items":{"$ref":"#/components/schemas/Comment"}}}},"ErrorResponse":{"type":"object","properties":{"code":{"type":"string","description":"Unique error code prefixed with `DAERR-`"},"message":{"type":"string"},"url":{"type":"string","format":"uri","description":"Link to the detailed error documentation"},"api_version":{"type":"string"},"infos":{"type":"array","items":{},"description":"Additional context (may be empty)"},"server_time":{"type":"string","description":"Unix timestamp as string"}}}}},"paths":{"/{app_short}/submissions/{id}/comments/{comment_id}":{"put":{"summary":"Update a comment","description":"Updates the text of a comment. Users can only update their own comments (DAERR-COM1008).","tags":["submission-comments"],"operationId":"updateSubmissionComment","parameters":[{"$ref":"#/components/parameters/AppShort"},{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"comment_id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CommentInput"}}}},"responses":{"200":{"description":"Comment updated","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Comment"}}}},"403":{"description":"Not allowed to update this comment (DAERR-COM1008)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Comment not found (DAERR-COM1001)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}}}}
```

## Delete a comment

> Deletes a comment. Users can only delete their own comments (DAERR-COM1007).

```json
{"openapi":"3.0.3","info":{"title":"Daxium Air API","version":"v1.3"},"tags":[{"name":"submission-comments"}],"servers":[{"url":"https://api.daxium-air.com","description":"Production"}],"security":[{"BearerAuth":[]}],"components":{"securitySchemes":{"BearerAuth":{"type":"http","scheme":"bearer"}},"parameters":{"AppShort":{"name":"app_short","in":"path","required":true,"description":"Short name of the workspace instance (e.g. `daxium-test`)","schema":{"type":"string"}}},"schemas":{"ErrorResponse":{"type":"object","properties":{"code":{"type":"string","description":"Unique error code prefixed with `DAERR-`"},"message":{"type":"string"},"url":{"type":"string","format":"uri","description":"Link to the detailed error documentation"},"api_version":{"type":"string"},"infos":{"type":"array","items":{},"description":"Additional context (may be empty)"},"server_time":{"type":"string","description":"Unix timestamp as string"}}}}},"paths":{"/{app_short}/submissions/{id}/comments/{comment_id}":{"delete":{"summary":"Delete a comment","description":"Deletes a comment. Users can only delete their own comments (DAERR-COM1007).","tags":["submission-comments"],"operationId":"deleteSubmissionComment","parameters":[{"$ref":"#/components/parameters/AppShort"},{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"comment_id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"Comment deleted"},"403":{"description":"Not allowed to delete this comment (DAERR-COM1007)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Comment not found (DAERR-COM1001)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}}}}
```

## Reply to a comment

> Adds a reply to a first-level comment (max thread depth is 2).\
> Replying to a reply is not allowed (DAERR-COM1011).<br>

```json
{"openapi":"3.0.3","info":{"title":"Daxium Air API","version":"v1.3"},"tags":[{"name":"submission-comments"}],"servers":[{"url":"https://api.daxium-air.com","description":"Production"}],"security":[{"BearerAuth":[]}],"components":{"securitySchemes":{"BearerAuth":{"type":"http","scheme":"bearer"}},"parameters":{"AppShort":{"name":"app_short","in":"path","required":true,"description":"Short name of the workspace instance (e.g. `daxium-test`)","schema":{"type":"string"}}},"schemas":{"CommentInput":{"type":"object","required":["message"],"properties":{"id":{"type":"string","format":"uuid","description":"Optional client-supplied UUID v4"},"message":{"type":"string","maxLength":1000,"description":"Plain text only — no HTML, script tags, or dangerous characters"},"client_created_at":{"type":"integer","format":"int64","description":"Unix timestamp"},"client_updated_at":{"type":"integer","format":"int64","description":"Unix timestamp"}}},"Comment":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Comment identifier (UUID v4)"},"message":{"type":"string","maxLength":1000,"description":"Plain text only — no HTML or script tags"},"client_created_at":{"type":"integer","format":"int64","description":"Client-side creation timestamp (Unix timestamp)"},"client_updated_at":{"type":"integer","format":"int64","description":"Client-side update timestamp (Unix timestamp)"},"user_id":{"type":"integer"},"submission_id":{"type":"string","format":"uuid"},"replies":{"type":"array","description":"Second-level replies (thread depth is limited to 2)","items":{"$ref":"#/components/schemas/Comment"}}}},"ErrorResponse":{"type":"object","properties":{"code":{"type":"string","description":"Unique error code prefixed with `DAERR-`"},"message":{"type":"string"},"url":{"type":"string","format":"uri","description":"Link to the detailed error documentation"},"api_version":{"type":"string"},"infos":{"type":"array","items":{},"description":"Additional context (may be empty)"},"server_time":{"type":"string","description":"Unix timestamp as string"}}}}},"paths":{"/{app_short}/submissions/{id}/comments/{comment_id}/replies":{"post":{"summary":"Reply to a comment","description":"Adds a reply to a first-level comment (max thread depth is 2).\nReplying to a reply is not allowed (DAERR-COM1011).\n","tags":["submission-comments"],"operationId":"replyToSubmissionComment","parameters":[{"$ref":"#/components/parameters/AppShort"},{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"comment_id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CommentInput"}}}},"responses":{"200":{"description":"Reply created","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Comment"}}}},"403":{"description":"Cannot reply to a second-level comment (DAERR-COM1011)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}}}}
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://www.center.daxium-air.com/api-reference/submissions/comments.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
