Comments
Comments may be left on a variety of object types in Close.
The commenting features is modeled as threads with comments, where each thread is associated with a specific object and has one or more comments associated with it. A comment may not exist without a thread, and a thread may not exist without any comments. Generally, threads are maintained automatically and don't need special consideration when creating or removing individual comments.
Comment bodies are formatted as rich text,
and may include basic styling and user/group mentions. The object_type
of the commented-on object is included in the thread, and should match up
with the object types described in the
event log docs.
Fetch multiple comment threads
GET /comment_thread/{?object_ids, ids}
Fetch an individual comment thread.
GET /comment_thread/{thread_id}/
Fetch multiple comments.
GET /comment/{?object_id, thread_id}
Comments may be fetched by object_id
(the object that was commented
on) or by thread_id
. Exactly one of those filters must be provided.
Create a Comment
POST /comment/
Create a comment on an object. If a comment thread already exists on that object, a new comment is added to the existing thread. If no thread exists yet, one is created automatically.
Fetch an individual comment.
GET /comment/{comment_id}/
Update a Comment.
PUT /comment/{comment_id}/
You can use this endpoint to edit a comment body. Note that users may only update their own comments.
Remove a comment
DELETE /comment/{comment_id}/
Note that contrary to the HTTP verb, this does not necessarily delete a comment (but it will remove it). Comments bodies are removed, but the comment object still exists until all comments in a thread are removed (at which point the entire thread is deleted).
Permissions around removing comments inherit from the users permission to delete their own or other users' activities.