RedRanks - Traffic and Intelligence API
The RedRanks API finds Reddit threads from Google's Discussion Box, AI Overview, and organic results for any keyword, returning traffic estimates, SERP positions, and detailed brand sentiment analysis.
Authenticate using your RapidAPI key in the request headers:
| Header | Value |
|---|---|
x-rapidapi-key | Your RapidAPI key |
x-rapidapi-host | reddit-traffic-and-intelligence-api.p.rapidapi.com |
Content-Type | application/json |
Get your API key at RapidAPI.
Authenticate using your Zyla API Hub key in the request headers:
| Header | Value |
|---|---|
Authorization | Bearer YOUR_ZYLA_API_KEY |
Content-Type | application/json |
Get your API key at Zyla API Hub
https://reddit-traffic-and-intelligence-api.p.rapidapi.com
https://zylalabs.com/api/11553/reddit+traffic+plus+intelligence+api/21766/discover+threads
Discover Reddit threads from Google's Discussion Box, AI Overview, and organic results for a keyword, with traffic estimates and brand sentiment analysis.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
keyword | string | Yes | - | The keyword to search (2-100 characters) |
your_brand | string | No | null | Your brand name for mention analysis |
competitors | array | No | null | Competitor brand names (max 20) |
max_threads | integer | No | 5 | Number of threads to return (0-20) |
max_comments_per_thread | integer | No | 5 | Comments per thread (0-20) |
data_freshness | string | No | "balanced" | "realtime", "balanced", or "custom" |
max_data_age | integer | No | null | Maximum cache age in seconds (required when data_freshness is "custom") |
Check if the API service is running.
curl --request POST \
--url "https://reddit-traffic-and-intelligence-api.p.rapidapi.com/api/v2/discover-threads" \
--header "Content-Type: application/json" \
--header "x-rapidapi-host: reddit-traffic-and-intelligence-api.p.rapidapi.com" \
--header "x-rapidapi-key: YOUR_RAPIDAPI_KEY" \
--data '{
"keyword": "CRM software",
"your_brand": "Acme CRM",
"competitors": ["HubSpot", "Salesforce", "Pipedrive"],
"max_threads": 5
}'curl --request POST \
--url "https://zylalabs.com/api/11553/reddit+traffic+plus+intelligence+api/21766/discover+threads" \
--header "Content-Type: application/json" \
--header "Authorization: Bearer YOUR_ZYLA_API_KEY" \
--data '{
"keyword": "CRM software",
"your_brand": "Acme CRM",
"competitors": ["HubSpot", "Salesforce", "Pipedrive"],
"max_threads": 5
}'const response = await fetch( 'https://reddit-traffic-and-intelligence-api.p.rapidapi.com/api/v2/discover-threads', { method: 'POST', headers: { 'Content-Type': 'application/json', 'x-rapidapi-host': 'reddit-traffic-and-intelligence-api.p.rapidapi.com', 'x-rapidapi-key': 'YOUR_RAPIDAPI_KEY' }, body: JSON.stringify({ keyword: 'CRM software', your_brand: 'Acme CRM', competitors: ['HubSpot', 'Salesforce', 'Pipedrive'], max_threads: 5 }) } ); const data = await response.json(); console.log(data.threads);
const response = await fetch( 'https://zylalabs.com/api/11553/reddit+traffic+plus+intelligence+api/21766/discover+threads', { method: 'POST', headers: { 'Content-Type': 'application/json', 'Authorization': 'Bearer YOUR_ZYLA_API_KEY' }, body: JSON.stringify({ keyword: 'CRM software', your_brand: 'Acme CRM', competitors: ['HubSpot', 'Salesforce', 'Pipedrive'], max_threads: 5 }) } ); const data = await response.json(); console.log(data.threads);
import requests url = "https://reddit-traffic-and-intelligence-api.p.rapidapi.com/api/v2/discover-threads" headers = { "Content-Type": "application/json", "x-rapidapi-host": "reddit-traffic-and-intelligence-api.p.rapidapi.com", "x-rapidapi-key": "YOUR_RAPIDAPI_KEY" } payload = { "keyword": "CRM software", "your_brand": "Acme CRM", "competitors": ["HubSpot", "Salesforce", "Pipedrive"], "max_threads": 5 } response = requests.post(url, json=payload, headers=headers) data = response.json() print(data["threads"])
import requests url = "https://zylalabs.com/api/11553/reddit+traffic+plus+intelligence+api/21766/discover+threads" headers = { "Content-Type": "application/json", "Authorization": "Bearer YOUR_ZYLA_API_KEY" } payload = { "keyword": "CRM software", "your_brand": "Acme CRM", "competitors": ["HubSpot", "Salesforce", "Pipedrive"], "max_threads": 5 } response = requests.post(url, json=payload, headers=headers) data = response.json() print(data["threads"])
{
"status": "success",
"keyword": "CRM software",
"keyword_metrics": {
"keyword": "crm software",
"volume": 84192,
"cpc": 14.61,
"keyword_difficulty": 71.9,
"search_intent": "commercial"
},
"threads_discovered": 8,
"threads": [
{
"post_id": "1e5141p",
"title": "Best CRM for small business?",
"subreddit": "smallbusiness",
"estimated_traffic": 33677,
"priority": "HIGH",
"analysis": {
"sentiment": "mixed",
"pain_points": ["pricing complexity"],
"brand_sentiments": {
"HubSpot": { "positive": 15, "negative": 8 }
}
}
}
],
"summary": {
"total_threads": 8,
"estimated_monthly_traffic": 134705
},
"metadata": {
"timestamp": "2025-11-30T18:00:00Z",
"processing_time_ms": 28470
},
"data_freshness_info": {
"from_cache": false,
"age_seconds": 0
}
}| Field | Type | Description |
|---|---|---|
status | string | "success" or "error" |
keyword | string | The keyword analyzed (may be normalized) |
keyword_metrics | object | Search volume, CPC, difficulty, intent |
threads_discovered | integer | Total threads found ranking on Google |
threads | array | Thread details with analysis |
summary | object | Aggregated stats (traffic, priorities, brands) |
metadata | object | Timestamp and processing times |
data_freshness_info | object | Cache status and data age |
| Mode | Behavior | Response Time |
|---|---|---|
"balanced" | Returns cached data if available (up to 24 hours old) | ~1s (cached) / 20-30s (fresh) |
"realtime" | Always fetches fresh data, ignores cache | 20-30 seconds |
"custom" | Set your own max cache age with max_data_age parameter | Varies |
traffic = search_volume x position_ctr. We include the CTR rate used in every response so you can verify the calculation yourself.
We find Reddit threads in Google's AI Overview, Discussion Box, and standard organic results.
Requests will return a 429 error. Your quota resets at the start of your billing cycle.