Reply to an existing comment thread

POST /task/v1/comments/reply

Operation id: replyComment

Description

Replies to an existing comment thread. message_type must be R (case-insensitive); any other value → E126 before reaching the service. Response shape is identical to /add. Requires ROS_UNIT_DOMAIN line-of-sight authorization.

Tags: MyWorkComments

Security

  • ApiKeyHeader (apiKey)
    • APIGEE API key header validated by VerifyAPIKey policy.
  • AuthTokenHeader (apiKey)
    • Session authentication token validated server-side against the user session store.

Responses

200 — Success — {status: OK, comment_data[]} (same shape as /add)

Content type: application/json

400 — E126 — invalid message_type (must be R) / E125 — invalid attachment type

Content type: application/json

401 — Missing or invalid X-reflexis-csrf-token-X session token

Content type: application/json

500 — Unexpected server-side error

Content type: application/json

Request body

Required: Yes

multipart/form-data

Schema

PropertyTypeRequiredDescription
message_typestringYesMust be R (case-insensitive) — mandatory (E126 if missing or different value)
msg_main_idintegerYesRoot/thread message ID being replied to — mandatory
commentstringYesHTML-formatted reply body (URL-encoded) — mandatory
plain_textstringYesPlain-text version of the reply — mandatory
cluster_idstringNoCluster context of the thread
feed_keyintegerNoFeed/project key
msg_parent_idintegerNoImmediate parent message ID within the thread
reason_codestringNoReason code key
reason_textstringNoReason code display label
assign_storestringNoTarget store to assign the reply to
assign_profilestringNoTarget profile to assign to
assign_deptstringNoTarget department to assign to
assign_userstringNoTarget user to assign to
assign_textstringNoDisplay text for the assignment
assign_detailsstringNoJSON assignment detail metadata
linkstringNoURL to embed in the reply
internalstringNoInternal-only flag: Y=internal, -1=not set
{
  "type": "object",
  "required": [
    "message_type",
    "msg_main_id",
    "comment",
    "plain_text"
  ],
  "properties": {
    "message_type": {
      "type": "string",
      "description": "Must be R (case-insensitive) — mandatory (E126 if missing or different value)",
      "enum": [
        "R"
      ]
    },
    "msg_main_id": {
      "type": "integer",
      "description": "Root/thread message ID being replied to — mandatory"
    },
    "comment": {
      "type": "string",
      "description": "HTML-formatted reply body (URL-encoded) — mandatory"
    },
    "plain_text": {
      "type": "string",
      "description": "Plain-text version of the reply — mandatory"
    },
    "cluster_id": {
      "type": "string",
      "description": "Cluster context of the thread",
      "default": "-1"
    },
    "feed_key": {
      "type": "integer",
      "description": "Feed/project key",
      "default": 0
    },
    "msg_parent_id": {
      "type": "integer",
      "description": "Immediate parent message ID within the thread",
      "default": 0
    },
    "reason_code": {
      "type": "string",
      "description": "Reason code key"
    },
    "reason_text": {
      "type": "string",
      "description": "Reason code display label"
    },
    "assign_store": {
      "type": "string",
      "description": "Target store to assign the reply to",
      "default": "-1"
    },
    "assign_profile": {
      "type": "string",
      "description": "Target profile to assign to",
      "default": "-1"
    },
    "assign_dept": {
      "type": "string",
      "description": "Target department to assign to",
      "default": "-1"
    },
    "assign_user": {
      "type": "string",
      "description": "Target user to assign to",
      "default": "-1"
    },
    "assign_text": {
      "type": "string",
      "description": "Display text for the assignment"
    },
    "assign_details": {
      "type": "string",
      "description": "JSON assignment detail metadata"
    },
    "link": {
      "type": "string",
      "description": "URL to embed in the reply"
    },
    "internal": {
      "type": "string",
      "description": "Internal-only flag: Y=internal, -1=not set",
      "default": "-1"
    }
  }
}

Response models

200 — Success — {status: OK, comment_data[]} (same shape as /add)

Content type: application/json

Schema

JSON object (structure varies by endpoint).

{
  "type": "object",
  "description": "JSON object (structure varies by endpoint)."
}

400 — E126 — invalid message_type (must be R) / E125 — invalid attachment type

Content type: application/json

Schema

PropertyTypeRequiredDescription
statusstringYesAlways "ER" for error responses
errorCodestringYesApplication-level error code (e.g. E202, E105, E404)
responsestringYesHuman-readable error message
{
  "type": "object",
  "example": {
    "status": "ER",
    "errorCode": "E202",
    "response": "User session is invalid"
  },
  "required": [
    "status",
    "errorCode",
    "response"
  ],
  "properties": {
    "status": {
      "type": "string",
      "description": "Always \"ER\" for error responses",
      "enum": [
        "ER"
      ]
    },
    "errorCode": {
      "type": "string",
      "description": "Application-level error code (e.g. E202, E105, E404)"
    },
    "response": {
      "type": "string",
      "description": "Human-readable error message"
    }
  }
}

401 — Missing or invalid X-reflexis-csrf-token-X session token

Content type: application/json

Schema

PropertyTypeRequiredDescription
statusstringYesAlways "ER" for error responses
errorCodestringYesApplication-level error code (e.g. E202, E105, E404)
responsestringYesHuman-readable error message
{
  "type": "object",
  "example": {
    "status": "ER",
    "errorCode": "E202",
    "response": "User session is invalid"
  },
  "required": [
    "status",
    "errorCode",
    "response"
  ],
  "properties": {
    "status": {
      "type": "string",
      "description": "Always \"ER\" for error responses",
      "enum": [
        "ER"
      ]
    },
    "errorCode": {
      "type": "string",
      "description": "Application-level error code (e.g. E202, E105, E404)"
    },
    "response": {
      "type": "string",
      "description": "Human-readable error message"
    }
  }
}

Example:

{
  "status": "ER",
  "errorCode": "E202",
  "response": "User session is invalid"
}

500 — Unexpected server-side error

Content type: application/json

Schema

PropertyTypeRequiredDescription
statusstringYesAlways "ER" for error responses
errorCodestringYesApplication-level error code (e.g. E202, E105, E404)
responsestringYesHuman-readable error message
{
  "type": "object",
  "example": {
    "status": "ER",
    "errorCode": "E202",
    "response": "User session is invalid"
  },
  "required": [
    "status",
    "errorCode",
    "response"
  ],
  "properties": {
    "status": {
      "type": "string",
      "description": "Always \"ER\" for error responses",
      "enum": [
        "ER"
      ]
    },
    "errorCode": {
      "type": "string",
      "description": "Application-level error code (e.g. E202, E105, E404)"
    },
    "response": {
      "type": "string",
      "description": "Human-readable error message"
    }
  }
}

Example:

{
  "status": "ER",
  "errorCode": "E302",
  "response": "Internal server error"
}