API
All apis
have corresponding endpoints
that you can embed in your app. We use this extensively in our demo
Accessible apis are available via http://quick-feedback.adeolaade.com/api/
Question
This returns the survey questions and associated data
Sample response
response.json
{
"id": 1,
"api_key": "ad465161762",
"title": "Site performance",
"question": "How would you rate our website load time",
"logo": "path/to/image",
"data": null
}
Post
This is how your users can respond to your survey
Parameter | Required | Default | Description |
---|---|---|---|
key | yes | (none) | The api key |
rating | yes | (none) | This is the rating of the feedback |
message | no | (none) | This is the content of the feedback |
auth.email | no | (none) | You can add user's email for verification |
auth.verify | no | false | This will send OTP to user to confirm their email |
params | no | (none) | Additional information for the feedback |
example.ts
fetch("https://quick-feedback.xyz/api/post-feedback?key=ad465161762", {
method: "POST",
body: JSON.stringify({
rating: 5,
message:
"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.",
auth: {
email: "example@email.com",
verify: true,
},
params: {
name: "John Doe",
gender: "male",
},
}),
});
Analysis
Summary
This returns an overview of the feedback aggregation
Sample response
response.json
{
"id": 1,
"api_key": "ad465161762",
"response_count": 838,
"average_rating": 4.4,
"1_star": 111,
"2_star": 135,
"3_star": 136,
"4_star": 244,
"5_star": 212
}
Feedback
Returns a paginated list of feedbacks
Parameter | Required | Default | Description |
---|---|---|---|
key | yes | (none) | The api key |
page | no | 1 | The page number |
size | no | 20 | The number of feedbacks to return |
Sample response
response.json
{
"feedback_count": 20,
"page": 3,
"data": [
{
"id": 1,
"survey_id": 2,
"rating": 4,
"message": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.",
"created_at": "2025-03-04T22:45:34.605Z",
"param": null
},
{
"id": 2,
"survey_id": 2,
"rating": 4,
"message": "Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.",
"created_at": "2025-03-04T22:45:34.605Z",
"param": null
}
]
}
Sentiment
Returns AI analysis of all the feedbacks and provide a summary of all the feedbacks.
Sample response
response.json
{
"data": "<div id='Translation'><h3>The standard Lorem Ipsum passage, used since the 1500s</h3><>'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.'</p> <h3>1914 translation by H. Rackham</h3> <p>'But I must explain to you how all this mistaken idea of denouncing pleasure and praising pain was born and I will give you a complete account of the system, and expound the actual teachings of the great explorer of the truth, the master-builder of human happiness. </p>"
}
Trend
Returns the current trend by grabbing the ratings within a time frame
Parameter | Required | Default | Description |
---|---|---|---|
key | yes | (none) | The api key |
type | no | d | Grabs the rating within that period: (d, w, m, y) |
- d: today (last 24 hours)
- w: this week
- m: this month
- y: this year
Sample response
response.json
[
{
"rating": 5,
"created_at": "2025-03-04T22:45:34.605Z"
},
{
"rating": 4,
"created_at": "2025-03-04T22:45:34.604Z"
},
{
"rating": 3,
"created_at": "2025-03-04T22:45:34.595Z"
},
{
"rating": 2,
"created_at": "2025-03-04T22:45:33.605Z"
},
{
"rating": 1,
"created_at": "2025-03-04T22:45:24.605Z"
},
{
"rating": 5,
"created_at": "2025-03-04T22:44:34.605Z"
},
{
"rating": 4,
"created_at": "2025-03-04T22:35:34.605Z"
},
{
"rating": 3,
"created_at": "2025-03-04T21:45:34.605Z"
},
{
"rating": 2,
"created_at": "2025-03-04T12:45:34.605Z"
},
{
"rating": 1,
"created_at": "2025-03-03T22:45:34.605Z"
},
{
"rating": 5,
"created_at": "2025-02-03T22:45:34.605Z"
},
{
"rating": 4,
"created_at": "2024-03-03T22:45:34.605Z"
},
{
"rating": 3,
"created_at": "2015-03-03T22:45:34.605Z"
},
{
"rating": 2,
"created_at": "1925-03-03T22:45:34.605Z"
}
]
Delta
Get the changes in average rating within a time frame
Parameter | Required | Default | Description |
---|---|---|---|
key | yes | (none) | The api key |
type | no | d | Grabs the rating within that period: (d, w, m, y) |
- d: compares average of today (24 hours) with yesterday
- w: compares average of this week against last week
- m: this month vs last month
- y: this year vs last year
Sample response
response.json
{
"delta": -0.6,
"previous": 4.8,
"current": 4.2,
"duration": "day"
}
Word cloud
Get the changes in average rating within a time frame
Parameter | Required | Default | Description |
---|---|---|---|
key | yes | (none) | The api key |
size | no | 20 | Gets the words the highest frequencies |
Sample response
response.json
{
"data": [
{
"word": "Lorem",
"frequency": 34,
"rating": 4.3
},
{
"word": "Ipsum",
"frequency": 24,
"rating": 4.7
},
{
"word": "Dolor",
"frequency": 16,
"rating": 4.2
},
{
"word": "Sit",
"frequency": 8,
"rating": 1.0
}
]
}