---
title: "Post a comment"
method: POST
path: "/v1/org/{orgId}/comment"
tags: ["comment"]
---

# Post a comment

`POST /v1/org/{orgId}/comment`

## Path parameters

- `orgId` string, required

## Request body

- CreateComment
  - `parentEntityId` string — parent entity id that this comment belongs to, should be used with entityId
  - `entityId` string, required — entity the comment was posted on
  - `entityType` 'CHANGE' | 'ASSESSMENT' | 'SCENARIO' | 'FORM_RESPONSE' | 'APPROVAL_APPROVE' | 'APPROVAL_REJECT' | 'APPROVAL_REASSIGN' | 'APPROVAL_WITHDRAW', required — type of entity the comment was posted on
  - `commentAction` 'APPROVE' | 'REJECT' | 'REQUEST_CHANGES' — action that happened together with the comment
  - `content` Markup, required
    - `type` 'HTML' | 'MARKDOWN' | 'TEXT', required — Type of markup
    - `value` string, required — Markup content in its source format

## Response `201`

comment created

- Comment
  - `id` string, required — globally unique id
  - `orgId` string, required — org id the comment belongs to
  - `parentEntityId` string — parent entity id that this comment belongs to, should be used with entityId
  - `entityId` string, required — entity the comment was posted on
  - `entityType` 'CHANGE' | 'ASSESSMENT' | 'SCENARIO' | 'FORM_RESPONSE' | 'APPROVAL_APPROVE' | 'APPROVAL_REJECT' | 'APPROVAL_REASSIGN' | 'APPROVAL_WITHDRAW', required — type of entity the comment was posted on
  - `commentAction` 'APPROVE' | 'REJECT' | 'REQUEST_CHANGES' — action that happened together with the comment
  - `content` Markup, required
    - `type` 'HTML' | 'MARKDOWN' | 'TEXT', required — Type of markup
    - `value` string, required — Markup content in its source format
  - `createAt` string, required — timestamp that the comment was posted
  - `createId` string, required — user id who posted the comment
  - `createBehalfId` string — created on behalf of user id
  - `createAttribution` Attribution
    - `principalUserId` string
    - `agentUserIds` string[]
    - `eventId` string
    - `aiChatId` string
    - `aiToolUseId` string
    - `channel` 'WEB' | 'MOBILE' | 'SLACK' | 'TEAMS' | 'MCP'
  - `updateAt` string — timestamp that the comment was edited
  - `updateId` string — user id who edited the comment
  - `updateBehalfId` string — last updated on behalf of user id
  - `updateAttribution` Attribution
    - `principalUserId` string
    - `agentUserIds` string[]
    - `eventId` string
    - `aiChatId` string
    - `aiToolUseId` string
    - `channel` 'WEB' | 'MOBILE' | 'SLACK' | 'TEAMS' | 'MCP'
  - `deleteAt` string — deleted timestamp
  - `deleteId` string — user who deleted the comment
  - `deleteBehalfId` string — deleted on behalf of user id
  - `deleteAttribution` Attribution
    - `principalUserId` string
    - `agentUserIds` string[]
    - `eventId` string
    - `aiChatId` string
    - `aiToolUseId` string
    - `channel` 'WEB' | 'MOBILE' | 'SLACK' | 'TEAMS' | 'MCP'

## Other responses

- `400` — invalid data
- `401` — not authorized
- `403` — permission denied
- `404` — org not found

---

[API](https://skmtc.net/charthop/apis/charthop-api.md) · [All operations](https://skmtc.net/charthop/apis/charthop-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/charthop/charthop-api/versions/50a1edd6b27e/schema)
