> For the complete documentation index, see [llms.txt](https://docs.transactionlink.io/docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.transactionlink.io/docs/transactionlink-api/api-reference/records/comments.md).

# Comments

This API allows users to create comments associated with a specific record in a table. Comments enable collaboration and contextual communication directly within the record, allowing users to share notes and document important information related to the record.

## Create a comment on a specific record

> Create a comment on a specific record. Requires \`can\_comment\` permission on the table.

```json
{"openapi":"3.0.1","info":{"title":"TransactionLink API","version":"v3"},"servers":[{"url":"https://api.transactionlink.io","description":"Production"}],"security":[{"organizationToken":[]},{"bearerAuthJWT":[]}],"components":{"securitySchemes":{"organizationToken":{"type":"apiKey","in":"header","name":"Authorization","description":"Organization API token (tot_) — preferred authentication method. Pass the token directly without Bearer prefix."},"bearerAuthJWT":{"type":"http","scheme":"bearer","bearerFormat":"JWT","description":"Legacy JWT Bearer token — deprecated in favor of organization tokens (tot_). Still supported for backwards compatibility."}},"schemas":{"CreateRecordCommentRequest":{"title":"CreateRecordCommentRequest","required":["content"],"type":"object","properties":{"content":{"type":"string","description":"Content of the comment"}}},"RecordCommentResponse":{"title":"RecordCommentResponse","required":["content","createdDateTime","id","recordId"],"type":"object","properties":{"recordId":{"type":"string","description":"Identifier of the record the comment belongs to"},"createdDateTime":{"type":"string","description":"Timestamp when the comment was created"},"id":{"type":"string","description":"Unique identifier of the created comment"},"content":{"type":"string","description":"Content of the comment"}}},"ErrorResponse":{"required":["errors","fingerprint"],"type":"object","properties":{"fingerprint":{"type":"string","description":"Unique identifier for this error instance"},"errors":{"type":"array","description":"List of error details","items":{"required":["code","message"],"properties":{"code":{"type":"string","description":"Error code representing the type of error"},"message":{"type":"string","description":"Error message providing more details about the error"}}}}}}}},"paths":{"/tables/{tableId}/records/{recordId}/comments":{"post":{"tags":["Record Comments"],"summary":"Create a comment on a specific record","description":"Create a comment on a specific record. Requires `can_comment` permission on the table.","operationId":"create-record-comment","parameters":[{"name":"tableId","in":"path","description":"Identifier of the table containing the record","required":true,"style":"simple","explode":false,"schema":{"type":"string"}},{"name":"recordId","in":"path","description":"Identifier of the record to comment on","required":true,"style":"simple","explode":false,"schema":{"type":"string"}},{"name":"Authorization","in":"header","description":"Organization token (`tot_`) — preferred method, or legacy Bearer JWT token. Pass the `tot_` token directly without Bearer prefix; use `Bearer <jwt>` for legacy JWT auth.","required":true,"style":"simple","explode":false,"schema":{"type":"string"}},{"name":"Content-Type","in":"header","description":"Content type of the request - application/json","required":true,"style":"simple","explode":false,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json;charset=UTF-8":{"schema":{"$ref":"#/components/schemas/CreateRecordCommentRequest"}}}},"responses":{"201":{"description":"201","headers":{"Content-Type":{"description":"Content type of the response - application/json","style":"simple","explode":false,"schema":{"type":"string"}}},"content":{"application/json;charset=UTF-8":{"schema":{"$ref":"#/components/schemas/RecordCommentResponse"}}}},"400":{"description":"Bad Request – invalid request parameters","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized – JWT token missing or invalid","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Forbidden – insufficient permissions","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Not Found – resource does not exist","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error – unexpected server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}}}}
```
