Create a new comment on a pull request. Comments can be top-level or replies to existing comments using the parentCommentId field for threaded discussions.
Authentication
This endpoint requires JWT authentication. Include the JWT token in the Authorization header:
Authorization: Bearer <token>
Request Body
The content of the comment
The file path where the comment is being made
The line number in the file where the comment applies
The ID of the pull request this comment belongs to
The ID of the parent comment if this is a reply in a threaded conversation. Omit this field for top-level comments.
Response
The unique identifier for the comment
The content of the comment
The file path where the comment was made
The line number in the file
The ID of the pull request
The ID of the user who created the comment
The ID of the parent comment if this is a reply
Whether this comment thread has been resolved (default: false)
ISO 8601 timestamp of when the comment was created
ISO 8601 timestamp of when the comment was last updated
Example
curl -X POST https://api.diffy.com/comments \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
-d '{
"body": "This function could be optimized by caching the result",
"filePath": "src/utils/processor.ts",
"lineNumber": 42,
"pullRequestId": "123456789"
}'
Creating a threaded reply
curl -X POST https://api.diffy.com/comments \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
-d '{
"body": "Good catch! I'll add memoization here.",
"filePath": "src/utils/processor.ts",
"lineNumber": 42,
"pullRequestId": "123456789",
"parentCommentId": 1
}'