Feature & Topic Sentiment Breakdown
Categorizes review text into specific features (e.g. pricing, UI, customer support, build quality) with sentiment scores.
Customer review intelligence API for sentiment score, feature feedback, emotion tagging, and churn risk scoring.
https://rsflowhub.com/api/v1/ai/review-analyze
X-API-Key header{
"review": "The food was absolutely delicious and the service was amazing! However, it was a bit overpriced.",
"rating": 4,
"context": "Italian restaurant in downtown New York"
}
{
"result": {
"sentiment": "mixed",
"confidence": 0.88,
"language": "en",
"category": "product_quality",
"emotions": [
"satisfaction",
"frustration"
],
"key_topics": [
"delivery",
"build quality",
"battery life"
],
"positive_points": [
"Fast delivery",
"Great build quality"
],
"negative_points": [
"Short battery life"
],
"pain_points": [
"Battery does not last a full day"
],
"suggestions": [
"Improve battery capacity"
],
"urgency": "medium",
"attention_recommended": true
}
}
Product & App Store Review Sentiment Analysis API is a REST API on RSFlowHub for web, mobile and AI agent applications. Send a JSON request to POST /api/v1/ai/review-analyze with your API key; RSFlowHub runs it on a tuned AI model, falls back to a backup provider if needed, and returns a structured JSON result, usually within 1 to 3 seconds.
POST /api/v1/ai/review-analyzeX-API-Key headerSend these fields as a JSON body. An invalid or missing field returns a 422 error that names the field.
| Field | Type | Required | Description |
|---|---|---|---|
review |
string | Required | The customer review text (Max: 20,000 characters). |
rating |
integer | Optional | Optional customer numeric rating (between 1 and 5). |
language |
string | Optional | Optional review language identifier. |
context |
string | Optional | Optional product, business, or category context. |
Copy, replace rfh_your_api_key with your key and run. Prefer a client library? See the official SDKs.
curl -X POST "https://rsflowhub.com/api/v1/ai/review-analyze" \
-H "Content-Type: application/json" \
-H "X-API-Key: rfh_your_api_key" \
-d '{"review":"The food was absolutely delicious and the service was amazing! However, it was a bit overpriced.","rating":4,"context":"Italian restaurant in downtown New York"}'
<?php
$client = new \GuzzleHttp\Client();
$response = $client->post('https://rsflowhub.com/api/v1/ai/review-analyze', [
'headers' => [
'Content-Type' => 'application/json',
'X-API-Key' => 'rfh_your_api_key',
],
'json' => array (
'review' => 'The food was absolutely delicious and the service was amazing! However, it was a bit overpriced.',
'rating' => 4,
'context' => 'Italian restaurant in downtown New York',
),
]);
echo $response->getBody();
const response = await fetch('https://rsflowhub.com/api/v1/ai/review-analyze', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'X-API-Key': 'rfh_your_api_key'
},
body: JSON.stringify({"review":"The food was absolutely delicious and the service was amazing! However, it was a bit overpriced.","rating":4,"context":"Italian restaurant in downtown New York"})
});
const data = await response.json();
console.log(data);
import requests
url = "https://rsflowhub.com/api/v1/ai/review-analyze"
headers = {
"Content-Type": "application/json",
"X-API-Key": "rfh_your_api_key"
}
payload = {"review":"The food was absolutely delicious and the service was amazing! However, it was a bit overpriced.","rating":4,"context":"Italian restaurant in downtown New York"}
response = requests.post(url, json=payload, headers=headers)
print(response.json())
Every RSFlowHub endpoint uses the same envelope, so one parser handles all of them. Failed calls are not charged.
{
"success": true,
"request_id": "req_3f9a2c7e-5b1d-4e8a-9c2f-7d6e1a0b4c8d",
"data": {
"result": {
"sentiment": "mixed",
"confidence": 0.88,
"language": "en",
"category": "product_quality",
"emotions": [
"satisfaction",
"frustration"
],
"key_topics": [
"delivery",
"build quality",
"battery life"
],
"positive_points": [
"Fast delivery",
"Great build quality"
],
"negative_points": [
"Short battery life"
],
"pain_points": [
"Battery does not last a full day"
],
"suggestions": [
"Improve battery capacity"
],
"urgency": "medium",
"attention_recommended": true
}
},
"meta": {
"version": "v1",
"timestamp": "2026-10-05T09:30:00Z"
}
}
{
"success": false,
"request_id": "req_8c1d4e2a-7f3b-4a9c",
"error": {
"code": "VALIDATION_ERROR",
"message": "The given data was invalid.",
"details": {
"review": [
"This field is required."
]
}
},
"meta": {
"version": "v1",
"timestamp": "2026-10-05T09:30:00Z"
}
}
| Field | Type | Meaning |
|---|---|---|
success | boolean | true when the call worked, false on any error. |
request_id | string | Unique id for this call. Quote it when you contact support. |
data.result | object | The result of this endpoint (see the example). |
error | object | Only on failure: code, message and details per field. |
meta | object | API version and server timestamp. |
All error codes: Errors reference
Categorizes review text into specific features (e.g. pricing, UI, customer support, build quality) with sentiment scores.
Flags reviews where positive text contradicts 1-star ratings or negative text accompanies 5-star ratings.
Measures customer emotional intensity, disappointment levels, and churn risk probability.
Tailored for Amazon, Google Maps, Apple App Store, Google Play Store, G2, and Trustpilot reviews.
How teams use the Product & App Store Review Sentiment Analysis API in production.
Analyze daily mobile app store reviews to automatically flag software bugs, login crashes, and feature requests.
{"overall_sentiment": "positive", "rating_match": true, "topics": {"food": "positive", "service": "positive", "price": "negative"}}Improves app store rating and user retention.
Detect recurring product defect complaints across thousands of Amazon and Shopify buyer reviews.
{"overall_sentiment": "negative", "category": "product_defect", "aspect": "zipper"}Identifies manufacturing defects before batch distribution.
Extract cleanliness, staff behavior, and location sentiment scores from Google Business reviews.
{"overall_sentiment": "positive", "aspects": {"cleanliness": "positive", "staff": "positive"}}Provides actionable operational intelligence for hotel managers.
The same job done three ways.
| Topic | RSFlowHub API | Raw LLM prompts | Rules / regex |
|---|---|---|---|
| Output | Validated JSON fields | Free text you have to parse | Fixed patterns only |
| Setup | One POST request, no prompts | Write and maintain prompts and parsing | Write and maintain rule lists |
| Provider outage | Automatic fallback to a backup model | You build retries and a second vendor | Not applicable |
| Pricing | 3 credits per call, failed calls free | Per token, per vendor | Your own servers and upkeep |
| Understands context | Yes, AI model | Yes, AI model | No, keywords only |
Free plan with 100 credits/month + 1,000 bonus credits when you sign in before 23 Nov. Test it in the playground first, no code needed.
Flowy
AI assistant