import requests
url = "https://eu.app.clarifeye.ai/api/v1/projects/{project_id}/feedbacks/"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://eu.app.clarifeye.ai/api/v1/projects/{project_id}/feedbacks/', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));curl --request GET \
--url https://eu.app.clarifeye.ai/api/v1/projects/{project_id}/feedbacks/ \
--header 'Authorization: Bearer <token>'{
"count": 123,
"next": "<string>",
"previous": "<string>",
"results": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"given_by": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"email": "[email protected]"
},
"status": "to_review",
"feedback": "<string>",
"context": {
"conversation_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"query_id": 123,
"source": "<string>",
"user_query": "<string>",
"additional_details": "<string>"
},
"is_positive": true,
"user_message": "<string>",
"conversation_title": "<string>",
"suggested_action_type": "<string>",
"suggested_action_data": {},
"reviewed_at": "2023-11-07T05:31:56Z",
"reviewed_by": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"email": "[email protected]"
},
"query_id": 123,
"source": "<string>"
}
]
}{
"error": "Authentication credentials were not provided."
}{
"error": "You do not have permission to perform this action."
}{
"error": "Not found."
}List feedback
Retrieve all feedback for a project with optional filtering.
Access Control:
- Admins see all feedback in the project
- Regular users see only feedback they submitted
Impersonation:
- When using impersonation, returns feedback submitted by the impersonated user
Sorting:
- Results are ordered by most recently updated first (
updated_atfield)
Note: For grouped views by conversation, use /projects/{project_id}/feedbacks/grouped_by_conversation/
import requests
url = "https://eu.app.clarifeye.ai/api/v1/projects/{project_id}/feedbacks/"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://eu.app.clarifeye.ai/api/v1/projects/{project_id}/feedbacks/', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));curl --request GET \
--url https://eu.app.clarifeye.ai/api/v1/projects/{project_id}/feedbacks/ \
--header 'Authorization: Bearer <token>'{
"count": 123,
"next": "<string>",
"previous": "<string>",
"results": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"given_by": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"email": "[email protected]"
},
"status": "to_review",
"feedback": "<string>",
"context": {
"conversation_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"query_id": 123,
"source": "<string>",
"user_query": "<string>",
"additional_details": "<string>"
},
"is_positive": true,
"user_message": "<string>",
"conversation_title": "<string>",
"suggested_action_type": "<string>",
"suggested_action_data": {},
"reviewed_at": "2023-11-07T05:31:56Z",
"reviewed_by": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"email": "[email protected]"
},
"query_id": 123,
"source": "<string>"
}
]
}{
"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..
Headers
Email of the user to impersonate. Requires CAN_IMPERSONATE_OTHER_USERS permission.
If the target user is not found or does not have access to the project, the request
proceeds as the authenticated user. Contact Clarifeye to enable this permission.
Path Parameters
UUID of the project
Query Parameters
Filter by feedback status
to_review: Feedback pending review (default). Setting this on a closed feedback reopens it and clearsreviewed_at/reviewed_by.reviewed: Feedback has been revieweddismissed: Closed without action (won't fix, or archived praise)
to_review, reviewed, dismissed Which sentiment bucket to return. actionable means negative or neutral —
everything that is work to review. Feedback submitted without is_positive is
neutral, so filtering on is_positive=false alone hides it. An unknown value is
a 400.
actionable, positive, all Filter by raw sentiment; overrides sentiment when both are given. Prefer sentiment.
Only feedback linked to this playground conversation
Only feedback about this chat message (used to restore thumb state)
Search in feedback text or user email (case-insensitive)
Maximum number of results per page
1 <= x <= 1000Number of results to skip for pagination
x >= 0