Skip to main content

submit-ava-feedback

dci submit-ava-feedback [body]

Submit feedback on an Ava answer to help improve response quality.

Pass the request body as name: value arguments or pipe JSON on stdin — see Command structure.

Where the IDs come from

answerId and conversationId are returned by dci ask-ava-sync only when the conversation is persisted (ephemeral: false, the default); ephemeral answers cannot receive feedback. dci ava-feedback is accepted as an alias.

Examples

# Mark an answer as helpful.
dci submit-ava-feedback < feedback.json
# feedback.json — both IDs come from a persisted (ephemeral: false) ask-ava-sync response
{"answerId": "<answer-id>", "conversationId": "<conversation-id>", "feedback": {"positive": true}}
# Mark it as unhelpful and say why.
dci submit-ava-feedback < negative-feedback.json
# negative-feedback.json
{"answerId": "<answer-id>", "conversationId": "<conversation-id>",
"feedback": {"positive": false, "text": "The answer ignored the date range I asked about"}}

Request

Content-Type: application/json

FieldTypeRequiredDescription
conversationIdstringyesThe conversation ID the feedback relates to.
answerIdstringyesThe specific answer ID within the conversation.
feedbackobjectyes
feedback.positivebooleanyesWhether the feedback is positive or negative.
feedback.textstringOptional text providing additional feedback details.
Raw JSON schema
{
"type": "object",
"properties": {
"conversationId": {
"type": "string",
"description": "The conversation ID the feedback relates to."
},
"answerId": {
"type": "string",
"description": "The specific answer ID within the conversation."
},
"feedback": {
"type": "object",
"properties": {
"positive": {
"type": "boolean",
"description": "Whether the feedback is positive or negative."
},
"text": {
"type": "string",
"description": "Optional text providing additional feedback details."
}
},
"required": [
"positive"
]
}
},
"required": [
"conversationId",
"answerId",
"feedback"
]
}

Output

On success, this command produces no response data.

Errors

On failure, dci prints a single error message — with a hint when one is available — and exits with a typed code your scripts can branch on. See Errors and exit codes for the full contract.

HTTP status to exit code mapping
HTTP statusExit codeError codeMeaning
40030VALIDATION_ERRORThe arguments or request body were rejected. Review the command's flags and payload.
40110AUTHENTICATION_FAILEDNot signed in, or the API token is invalid. Run dci login or check DCI_API_KEY.
40311PERMISSION_DENIEDThe DoiT user or the active customer context does not have access.
50040API_SERVER_ERRORThe API failed to process the request. Retryable; contact DoiT support if it persists.

Aliases: ava-feedback