Ticket activity timeline β user comments with @-mentions and immutable changelog entries.
List ticket comments + changelog
Paginated ticket_activities rows. Both COMMENT (user-written) and CHANGELOG (auto-generated audit) types live here β omit type to get both interleaved (newest first), or filter to one.
mentions is empty for CHANGELOG rows. metadata is {} for COMMENT and {field, old, new} for CHANGELOG.
path Parameters
ticket_idUUID of the ticket.
query Parameters
typepage1-indexed page number. Capped at 500 to bound deep-scan cost.
limitList ticket comments + changelog βΊ Responses
Activities page.
successCreate a comment
Creates a user comment with optional @-mentions. The server does NOT re-parse content for mention tokens β the client is responsible for extracting the mention UUIDs from @[Name](uuid) and passing them explicitly in mentioned_user_ids[].
path Parameters
ticket_idUUID of the ticket.
Create a comment βΊ Request Body
contentmentioned_user_idsFrontend-pre-parsed @[Name](uuid) tokens. Server does NOT re-parse content.
Create a comment βΊ Responses
Comment created.
successEdit a comment
Edit comment content and optionally replace mentions. The caller must be the original author β otherwise 403 only the comment author can edit this comment.
CHANGELOG rows are immutable audit artifacts β targeting one returns 404 (same shape as not-found so the caller cannot probe).
Mention replacement semantics: omit mentioned_user_ids to leave existing mentions untouched; pass [] to clear all; pass [a,b] to replace with [a,b].
path Parameters
ticket_idUUID of the ticket.
comment_idUUID of the comment (ticket_activities row of type=COMMENT).
Edit a comment βΊ Request Body
contentmentioned_user_idsReplacement semantics β omit to leave existing mentions untouched; [] to clear; [a,b] to replace.
Edit a comment βΊ Responses
Updated.
success