Comments
Retrieve comments on a Basecamp 3 recording.
Table Specific Information
Select
The columns in Comments are filtered client side. You can either get all comments for a recording by specifying the RecordingId or you can get a certain comment by specifying its Id.
If ProjectId is not specified in the query, the default ProjectId is used.
SELECT * FROM Comments WHERE ProjectId = '11111111' AND RecordingId = '222222222' AND Content = 'Exempli gratia' AND CreatedAt < '2017-04-18T15:53:38.040-06:00'
You can also retrieve a single comment by specifying the Id (given that you've specified the ProjectId in the connection)
SELECT * FROM Comments WHERE Id = '1234567'
Insert
You can insert a new comment, by providing the required RecordingId and Content.
INSERT INTO Comments (Content, RecordingId) VALUES ('Very informative document. Thanks!', 392946856)
Update
You can change the columns that are not read-only by providing the Id, ProjectId, and new values.
UPDATE Comments SET Content = 'I like this better now' WHERE ProjectId = '18061798' AND Id = '1308746423'
Delete
Comments cannot be deleted (unsupported by the API).
Columns
| Name | Type | ReadOnly | References | Description |
| Id [KEY] | String | True |
The ID of the comment. | |
| Content | String | False |
The conent of the comment. | |
| Title | String | True |
The title of the comment. | |
| Status | String | True |
The status of the comment. | |
| CreatedAt | Datetime | True |
The time the comment was created. | |
| UpdatedAt | Datetime | True |
The time the comment was last updated. | |
| InheritsStatus | Boolean | True |
Whether this comment inherits its status or not. | |
| URL | String | True |
The URL of the comment. | |
| VisibleToClients | Boolean | True |
Whether this comment is visible to clients or not. | |
| ProjectId | Long | False |
Projects.Id |
The ID of the project this comment is a child of. A project contains recordings. |
| ProjectName | String | True |
The name of the project this comment is a child of. | |
| RecordingId | Long | False |
Recordings.Id |
The ID of the recording the comment is written on. A recording can be a comment, document, message, question::answer, schedule::entry, todo, todolist or upload. |
| CommenterId | String | True |
The ID of the commenter. | |
| CommenterName | String | True |
The name of the commenter. | |
| CommenterIsAdmin | Boolean | True |
Whether the commenter is an admin or not. | |
| CommenterIsOwner | Boolean | True |
Whether the commenter is the owner of the recording or not. | |
| CommenterTitle | String | True |
The commenter's title. | |
| CommenterEmail | String | True |
The email address of the commenter. | |
| CommenterAvatarURL | String | True |
The URL of the avatar of the commenter. | |
| CommenterCompanyId | String | True |
The company ID of the commenter. | |
| CommenterCompanyName | String | True |
The name of the company of the commenter. | |
| AppURL | String | True |
The URL of the app this comment belongs to. | |
| BookmarkURL | String | True |
The URL of the bookmark. | |
| CommenterAttachableSGID | String | True |
Te attachable SGID of the commenter. |