Skip to content

Edit a comment

PATCH
/boards/{board}/cards/{card}/comments/{comment}
curl --request PATCH \
--url https://projects.work.optidata.cloud/api/boards/1/cards/1/comments/1 \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{ "content": "Looks good — ship it today 🚀" }'

Updates the comment body. Only the author (or a board manager) may edit. New @-mentions are notified.

board
required
integer

Board id.

card
required
integer

Card id (must belong to the board).

comment
required
integer

Comment id (must belong to the card).

Media typeapplication/json
object
content
required
string
>= 1 characters
Example
{
"content": "Looks good — ship it today 🚀"
}

The updated comment.

Media typeapplication/json
object
id
integer
card_id
integer
user_id

Author user id.

integer
content
string
created_at
string format: date-time
updated_at
string format: date-time
Examplegenerated
{
"id": 1,
"card_id": 1,
"user_id": 1,
"content": "example",
"created_at": "2026-04-15T12:00:00Z",
"updated_at": "2026-04-15T12:00:00Z"
}

Missing, invalid or expired bearer passport.

Media typeapplication/json
object
error
string
Example
{
"error": "JWT passport exception: Missing bearer token in request"
}

The authenticated user lacks the required board permission.

Media typeapplication/json
object
message
string
Example
{
"message": "This action is unauthorized."
}

Resource not found, or a nested resource does not belong to its parent in the path.

Media typeapplication/json
object
message
string
Example
{
"message": "Not found."
}

Validation failed.

Media typeapplication/json
object
message

First validation error message.

string
errors

Map of field name → list of error messages.

object
key
additional properties
Array<string>
Example
{
"message": "The name field is required.",
"errors": {
"name": [
"The name field is required."
]
}
}