Close a comment thread

PUT /task/v1/comments/close

Operation id: closeComment

Description

Closes (or changes the status of) a comment thread via a two-phase service call. Phase 1 collects ETL messages and dispatches socket notifications. Phase 2 commits the DB update. Both phases are mandatory.

Session-derived defaults (client can override via snake_case): time_zone defaults to session short TZ; local_code defaults to session langCode. Requires MSG_ACCESS 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, message: "Comment closed successfully."}

Content type: application/json

400 — E120 — msg_id is mandatory / must be a valid integer

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

application/x-www-form-urlencoded

Schema

PropertyTypeRequiredDescription
msg_idstringYesID of the message/thread to close — mandatory integer (E120 if missing or non-numeric)
cluster_idstringNoCluster context of the thread
feed_keystringNoFeed key associated with the comment
statusstringNoNew comment status code (default: CLOSE_COMMENT constant)
local_codestringNoLocale/language code for ETL datetime formatting (defaults to session langCode)
msg_date_timestringNoURL-encoded message datetime override
time_zonestringNoTimezone string for datetime resolution — short (UTC) or long (America/Los_Angeles) accepted (defaults to session short TZ)
{
  "type": "object",
  "required": [
    "msg_id"
  ],
  "properties": {
    "msg_id": {
      "type": "string",
      "description": "ID of the message/thread to close — mandatory integer (E120 if missing or non-numeric)"
    },
    "cluster_id": {
      "type": "string",
      "description": "Cluster context of the thread",
      "default": "-1"
    },
    "feed_key": {
      "type": "string",
      "description": "Feed key associated with the comment",
      "default": "-1"
    },
    "status": {
      "type": "string",
      "description": "New comment status code (default: CLOSE_COMMENT constant)"
    },
    "local_code": {
      "type": "string",
      "description": "Locale/language code for ETL datetime formatting (defaults to session langCode)"
    },
    "msg_date_time": {
      "type": "string",
      "description": "URL-encoded message datetime override"
    },
    "time_zone": {
      "type": "string",
      "description": "Timezone string for datetime resolution — short (UTC) or long (America/Los_Angeles) accepted (defaults to session short TZ)"
    }
  }
}

Response models

200 — Success — {status: OK, message: "Comment closed successfully."}

Content type: application/json

Schema

JSON object (structure varies by endpoint).

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

400 — E120 — msg_id is mandatory / must be a valid integer

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"
}