Rate Assistant Message
Thumbs up or down on an assistant message, with an optional reason and comment (RO-319). Stored per user with the answering model, for preference learning (RO-282); a new rating replaces the old.
API key access
/api/v1/assistant/threads/{thread_id}/messages/{message_id}/feedbackAccess token from /api/v1/auth/login, or an API key (ro_pat_..., RO-176) from /api/v1/workspaces/current/api-keys: the key implies its workspace and needs the route's scope. MCP connectors (/api/v1/mcp only) may use an OAuth access token (ro_oat_..., RO-284).
In: header
Path Parameters
uuiduuidHeader Parameters
Id of the workspace to act on (must be a member).
"up" | "down"length <= 1000Response Body
curl -X PUT "http://localhost:8000/api/v1/assistant/threads/497f6eca-6276-4993-bfeb-53cbbbba6f08/messages/497f6eca-6276-4993-bfeb-53cbbbba6f08/feedback" \ -H "X-Workspace-Id: string" \ -H "Content-Type: application/json" \ -d '{ "rating": "up" }'{
"rating": "up",
"reason": {},
"comment": "string"
}{
"detail": [
{
"loc": [
"string"
],
"msg": "string",
"type": "string",
"input": null,
"ctx": {}
}
]
}Preview Assistant Attachment Import
Put an attached CSV or Excel file (its first sheet) through the lead import pipeline's upload step: the same preview as `POST /imports/leads` (detected encoding and delimiter, suggested column mapping, sample rows) plus `attachment_id`. Nothing is imported until `POST /imports/{import_id}/commit` (Oro asks for a confirmation with the mapping first). 422 for other kinds (RO-323).
Regenerate Assistant Answer
Answer the last user message again (RO-319): the last answer is deleted and a new turn starts (202; the daily budget counts it). 409 when the last message isn't an answer or a turn is running.