Social Searcher
Search social media platforms and analyze sentiment across multiple social networks for brand monitoring, market research, and social media analytics.
Overview
The Social Searcher skill provides functionality for:
- Real-time social media search across multiple platforms
- Historical data analysis using saved searches
- Sentiment analysis of social media posts
- Social media monitoring and brand tracking
- Post engagement metrics and analytics
Connection Requirements
This skill uses direct API access to Social Searcher:
- Base URL:
https://api.social-searcher.com/v2/
- API Key:
679bf2487776909d2a63fe64ced84b5e
- No proxy required: Direct API calls to Social Searcher
Basic Usage
// Real-time search for mentions
const searchUrl = "https://api.social-searcher.com/v2/search?q=@brandname&limit=100&key=679bf2487776909d2a63fe64ced84b5e";
// Historical data from saved searches
const savedSearchUrl = "https://api.social-searcher.com/v2/searches";
Key Features
Real-time Search
- Multi-platform Search: Search across web, Facebook, Twitter, Instagram, YouTube, and more
- Mention Tracking: Track brand mentions and keywords
- Sentiment Analysis: Automatic sentiment classification (positive, negative, neutral)
- Content Filtering: Filter by content type, language, and network
Historical Data
- Saved Searches: Access historical monitoring data
- Trend Analysis: Analyze data over time periods
- Custom Date Ranges: Query specific time periods
- Bulk Data Export: Export large datasets for analysis
Supported Networks
- web: General web content and news
- facebook: Facebook posts and comments
- twitter: Twitter/X posts and interactions
- instagram: Instagram posts and stories
- youtube: YouTube videos and comments
- linkedin: LinkedIn posts and articles
- reddit: Reddit posts and comments
- tiktok: TikTok content (accessed through ‘web’ network)
- tumblr: Tumblr posts
- flickr: Flickr photos and descriptions
Real-time Search Operations
Basic Search
GET: search?q=keyword&limit=100&key={API_KEY}
Mention Search
// Add @ prefix for mentions
GET: search?q=@brandname&limit=100&key={API_KEY}
Multi-network Search
GET: search?q=keyword&network=web,facebook,twitter&key={API_KEY}
Advanced Search with Filters
GET: search?q="exact phrase" OR alternative -excluded&network=twitter,facebook&lang=en&type=photo&sentiment=positive&key={API_KEY}
Query Syntax
Search Operators
- Exact Phrases: Use double quotes
"exact phrase"
- Exclude Terms: Use minus sign
-unwanted
- OR Logic: Use
OR
(uppercase) for alternatives
- Mentions: Use
@
prefix for specific mentions
Examples
// Exact phrase search
q="customer service"
// Exclude unwanted terms
q=brand -spam -promotion
// Multiple alternatives
q=brand OR company OR organization
// Mention tracking
q=@brandname
Historical Data Access
List Saved Searches
GET: searches?key={API_KEY}
Get Historical Data
GET: searches/{searchId}/posts?key={API_KEY}
Time Period Filtering
GET: searches/{searchId}/posts?period=last30days&key={API_KEY}
Response Structure
Real-time Search Response
{
"meta": {
"requestid": "d497bd0d28394dfd9825b06b4c3ce9ff",
"http_code": 200,
"network": "web,twitter",
"query_type": "realtime",
"limit": 100,
"page": 0,
"status": "finished"
},
"posts": [
{
"network": "twitter",
"posted": "2024-11-20 12:53:21 +00:00",
"postid": "1234567890",
"text": "Great experience with @brandname customer service!",
"type": "status",
"sentiment": "positive",
"url": "https://twitter.com/user/status/1234567890",
"user": {
"name": "CustomerName",
"url": "https://twitter.com/CustomerName"
},
"popularity": [
{
"name": "retweets",
"count": 5
},
{
"name": "likes",
"count": 23
}
]
}
]
}
Saved Search Response
{
"searches": [
{
"id": "672f61b2e107bf402632223f",
"name": "Brand Monitoring",
"q": "@brandname -spam",
"network": "web,facebook,twitter,instagram",
"created": "2024-11-09 13:20:50 +00:00",
"status": "active",
"monitoring": {
"posts_count": 1250,
"start_date": "2024-11-09 13:20:51 +00:00"
}
}
]
}
Sentiment Analysis
Sentiment Categories
- positive: Positive sentiment and emotions
- negative: Negative sentiment and criticism
- neutral: Neutral or factual content
Sentiment Filtering
GET: search?q=brand&sentiment=positive,negative&key={API_KEY}
Engagement Metrics
Available Metrics
- likes: Post likes/reactions
- comments: Comment count
- retweets: Retweet/share count
- views: View count (when available)
Popularity Data
"popularity": [
{
"name": "likes",
"count": 45
},
{
"name": "comments",
"count": 12
},
{
"name": "retweets",
"count": 8
}
]
// Step 1: Initial request
GET: search?q=keyword&key={API_KEY}
// Step 2: Next page using requestid
GET: search?requestid={requestid}&page=1&key={API_KEY}
GET: searches/{searchId}/posts?page=2&key={API_KEY}
Time Periods
Predefined Periods
- recent: Last few hours
- yesterday: Previous day
- last3days: Last 3 days
- last7days: Last week
- last30days: Last month
- last3months: Last 3 months
Custom Date Ranges
// Format: YYYY-MM-DD,YYYY-MM-DD
period=2024-01-01,2024-12-31
Important Notes
- API Key: Always include the API key in requests
- Rate Limits: Respect API rate limits for high-volume searches
- Date Format: Ensure proper timezone format (+00:00)
- Historical Data: Use saved searches for historical analysis
- Mention Syntax: Add @ prefix for brand mention tracking
- Network Selection: Choose appropriate networks for your use case
- Pagination: Use requestid for consistent pagination in real-time searches
Best Practices
- Search Strategy: Use specific keywords and exclude spam terms
- Network Selection: Choose relevant networks for your audience
- Sentiment Monitoring: Track sentiment trends over time
- Historical Analysis: Use saved searches for trend analysis
- Rate Management: Implement appropriate delays between requests
- Data Processing: Handle timezone conversions properly
- Error Handling: Check response status and handle API errors
- Keyword Optimization: Refine search terms based on results quality
Responses are generated using AI and may contain mistakes.