Overview
Social Analyzer includes an Express.js web server providing REST API endpoints for profile analysis, settings management, and task control.Starting the Web Server
Node.js
Docker
Base URL
Endpoints
POST /analyze_string
Analyze a username across social media platforms.Username to analyze. Can be a single username or comma-separated list for batch analysis.
Unique task identifier (UUID format). Used for logging and task tracking.
Comma-separated analysis options. Available options:
FindUserProfilesFast- Fast profile detectionGetUserProfilesFast- Fast profile retrievalFindUserProfilesSlow- Deep profile detection (not compatible with Fast)ShowUserProfilesSlow- Show advanced profiles without findingFindUserProfilesSpecial- Specialized detection methodsLookUps- External search engine lookupsCustomSearch- Google custom search integrationFindOrigins- Name origin analysisSplitWordsByUpperCase- Split username by uppercase lettersSplitWordsByAlphabet- Split username alphabeticallyFindSymbols- Detect symbols in usernameFindNumbers- Detect numbers in usernameFindAges- Guess age from usernameConvertNumbers- Convert numbers to wordsWordInfo- Get word informationMostCommon- Find most common wordsExtractMetadata- Extract OSINT metadataNetworkGraph- Generate relationship graph (requires ExtractMetadata)CategoriesStats- Generate category statisticsMetadataStats- Generate metadata statistics
Automatically set to
true if string contains commas (batch mode)Response
Analyzed username
Task UUID
Analysis metadata
Fast scan results
Slow/deep scan results (if enabled)
Special detection results (if enabled)
Guessed ages from username (if FindAges enabled)
Name origin analysis (if FindOrigins enabled)
Parsed username components
Most common words (if MostCommon enabled)
Word information from dictionary (if WordInfo enabled)
Google custom search results (if CustomSearch enabled)
Network relationship graph (if NetworkGraph enabled)
Statistics (if CategoriesStats or MetadataStats enabled)
Task log contents
Example Request
Example Response
GET /get_settings
Retrieve current server settings and available websites.Response
Configured proxy URL (empty if none)
Current User-Agent header
Google API credentials (partially masked)
Available websites with selection status
Example Request
Example Response
POST /save_settings
Update server settings and website selections.Comma-separated indices of websites to select
Google API key (or masked value to keep current)
Google Custom Search engine ID (or masked value to keep current)
Custom User-Agent header
Proxy URL (empty to disable)
Response
Success message
Example Request
POST /get_logs
Retrieve the last log line for a task.Task UUID
Response
Returns plain text (not JSON):- Last log line if file exists and has content
"nothing_here_error"if log file doesn’t exist"nothinghere"if UUID is empty
Example Request
Example Response
GET /generate
Generate username combinations from a list of words.Must be “Generate”
Array of 2-7 words to combine
Response
All possible combinations of the input words
Example Request
Example Response
POST /cancel
Cancel a running analysis task.Must be “on” to trigger cancellation
Task UUID to cancel (sanitized, alphanumeric and hyphens only)
Response
Success message
Example Request
Special Test Endpoint
The/analyze_string endpoint has a special test mode:
test.json exists in the server directory, it will be returned instead of performing actual analysis.
Error Responses
All endpoints may return:- Required parameters are missing
- Invalid data is provided
- Internal errors occur
Integration Examples
JavaScript/Node.js
Python
cURL with Polling
Notes
The web server is single-threaded by default. For production use, consider using a process manager like PM2 or running multiple instances behind a load balancer.
See Also
CLI Reference
Command-line interface documentation
Python API
Python class and methods reference
Output Formats
Understanding result structures
Quickstart
Get started with Social Analyzer