import requests
url = "https://eu.app.clarifeye.ai/api/v1/projects/{project_id}/coach-conversations/{coach_conversation_id}/feedback/"
payload = {
"grade": 3,
"comment": "<string>"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({grade: 3, comment: '<string>'})
};
fetch('https://eu.app.clarifeye.ai/api/v1/projects/{project_id}/coach-conversations/{coach_conversation_id}/feedback/', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));curl --request POST \
--url https://eu.app.clarifeye.ai/api/v1/projects/{project_id}/coach-conversations/{coach_conversation_id}/feedback/ \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"grade": 3,
"comment": "<string>"
}
'{
"feedback_state": "submitted"
}{
"error": "User not found"
}{
"error": "Authentication credentials were not provided."
}{
"error": "You do not have permission to perform this action."
}{
"error": "Not found."
}Submit post-interview feedback
Record the interviewee’s rating of a completed interview (types
interview and guided-interview only). Only the assignee of the
interview can submit; each interview accepts feedback once (a second
submission returns 400). Declining to answer is not persisted — the
client simply asks again on a later visit.
The grade and comment are Clarifeye-internal quality signals — they are
not exposed back through the API; conversations only report a
feedback_state of none/submitted.
import requests
url = "https://eu.app.clarifeye.ai/api/v1/projects/{project_id}/coach-conversations/{coach_conversation_id}/feedback/"
payload = {
"grade": 3,
"comment": "<string>"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({grade: 3, comment: '<string>'})
};
fetch('https://eu.app.clarifeye.ai/api/v1/projects/{project_id}/coach-conversations/{coach_conversation_id}/feedback/', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));curl --request POST \
--url https://eu.app.clarifeye.ai/api/v1/projects/{project_id}/coach-conversations/{coach_conversation_id}/feedback/ \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"grade": 3,
"comment": "<string>"
}
'{
"feedback_state": "submitted"
}{
"error": "User not found"
}{
"error": "Authentication credentials were not provided."
}{
"error": "You do not have permission to perform this action."
}{
"error": "Not found."
}Authorizations
Use Authorization: Bearer <token>. The token is either a user token / OAuth access
token, or a service-account API key (cfk_...). A key is valid on every endpoint and
acts as its service account, an organization member with per-store permissions.
Refused keys answer 403 with Invalid API key., API key revoked.,
API key expired. or API key disabled..
Path Parameters
UUID of the project
UUID of the interview (coach conversation)
Body
Response
Feedback recorded
submitted