turbifier
v0.0.5
Published
Turbify email verifier — proxy support, concurrent processing, real-time progress
Downloads
423
Readme
Turbifier
Verify Turbify email accounts in bulk. Sort results into valid, invalid, and non-Turbify — all from the command line.
Proxy Support | Concurrent Processing | Real-time Progress
What is Turbifier?
Turbifier verifies Turbify (Yahoo Small Business) email accounts at scale. Give it a list of emails and it tells you which ones are valid Turbify accounts, which don't exist, and which aren't Turbify at all.
Output
| File | Description | | ------------------- | -------------------------------------------- | | valid.txt | Verified Turbify accounts that exist | | invalid.txt | Turbify accounts that don't exist | | not-turbify.txt | Non-Turbify emails with their detected provider |
Features
- No Captcha — Direct verification, no captcha solving
- 3-Way Sorting — Valid, invalid, or not-turbify with provider info
- Proxy Support — SOCKS5, SOCKS4, HTTP, HTTPS with rotation and authentication
- Concurrent Processing — Configurable parallel verification
- Real-time Progress — Speed, ETA, and category breakdown while running
- Duplicate Tracking — Per-project tracking to skip already-checked emails
- Device Management — PIN protection, security questions, multi-device support
- Rate Limiting — Configurable request throttling
- Graceful Shutdown — Ctrl+C flushes pending results before exiting
Installation
npm install -g turbifierVerify the installation:
turbifier --versionQuick Start
1. Create Configuration
turbifier initCreates config.toml in your current directory with default settings.
2. Authenticate
turbifier login <your-access-token>First time login will prompt you to:
- Create a 6-digit PIN
- Set up a security question for PIN recovery
3. Prepare Email List
Create emails.txt with one email per line:
[email protected]
[email protected]
[email protected]
[email protected]4. Start Verification
turbifier startResults are saved to your output folder:
./turbify-results/
├── valid.txt
├── invalid.txt
└── not-turbify.txtVerify a specific amount:
turbifier start 500Configuration
Turbifier supports config.toml (default) and config.jsonc formats.
Basic Settings
projectName = "my-project" # For duplicate tracking
outputFolder = "./turbify-results" # Where results are saved
filePath = "./emails.txt" # Email list to verify
allowDuplicate = false # Skip already-checked emails
concurrency = 10 # Parallel workers (5-15 recommended)
intervalCap = 1000 # Max requests per interval
interval = 1000 # Interval in milliseconds
maximumError = 5 # Consecutive errors before action
stopIfMaximumErrorReached = false # true = stop, false = continueProxy Settings
[proxy]
enabled = true
stopIfNone = true # Stop if all proxies fail
rotate = true # Rotate between proxies
maximumProxyError = 5 # Errors before disabling a proxy
stopIfMaximumProxyErrorReached = false
[[proxy.proxies]]
useMe = true
protocol = "socks5" # socks5, socks4, http, https
host = "proxy.example.com"
port = 1080
useAuth = true
username = "your-username"
password = "your-password"
# Add more proxies by duplicating the [[proxy.proxies]] block
[[proxy.proxies]]
useMe = true
protocol = "http"
host = "proxy2.example.com"
port = 8080
useAuth = false
username = ""
password = ""JSONC Format
Use --jsonc to create a JSONC config instead:
turbifier init --jsoncConvert between formats:
turbifier convertOutput
Results are organized into three files:
./turbify-results/
├── valid.txt # Verified Turbify accounts
├── invalid.txt # Non-existent Turbify accounts
└── not-turbify.txt # Non-Turbify emails with providervalid.txt and invalid.txt contain one email per line. not-turbify.txt includes the detected provider:
[email protected] - Gmail
[email protected] - OutlookCommands
Core
| Command | Description |
| ------------------------- | ------------------------------------------------- |
| turbifier init | Create config file |
| turbifier init --jsonc | Create JSONC config |
| turbifier convert | Convert config between TOML and JSONC |
| turbifier start [N] | Start verification (optionally limit to N emails) |
| turbifier login <token> | Authenticate with access token |
| turbifier logout | Log out current device |
Configuration
Update config values without editing the file:
| Command | Description |
| ------------------------------------- | ----------------------------- |
| turbifier set --output <path> | Set output folder |
| turbifier set --emails <path> | Set email file path |
| turbifier set --project <name> | Set project name |
| turbifier set --concurrency <n> | Set parallel workers |
| turbifier set --interval <ms> | Set rate limit interval |
| turbifier set --interval-cap <n> | Set max requests per interval |
| turbifier set --max-errors <n> | Set error threshold |
| turbifier set --allow-duplicates | Allow duplicate emails |
| turbifier set --no-allow-duplicates | Filter duplicate emails |
Multiple values can be set at once:
turbifier set --project campaign-2 --output ./results --concurrency 20Duplicate Tracking
| Command | Description |
| ---------------------------------- | ------------------------------ |
| turbifier stats | View project statistics |
| turbifier clear --current | Clear current project tracking |
| turbifier clear --project <name> | Clear specific project |
| turbifier clear --force | Skip confirmation prompt |
Combine flags:
turbifier clear -cf # Clear current project, skip prompt
turbifier clear -p old-data # Clear specific projectDevice Management
| Command | Description |
| ---------------------------------- | ----------------------------------------- |
| turbifier auth list | List all registered devices |
| turbifier auth device <id> | View device details (supports partial ID) |
| turbifier auth pin | Change your PIN |
| turbifier auth reset-pin <token> | Reset PIN via security questions |
Security Questions
| Command | Description |
| ------------------------------------ | ------------------------------- |
| turbifier auth security-questions | View your security questions |
| turbifier auth add-security | Add a security question (max 3) |
| turbifier auth update-security <n> | Update question by number (1-3) |
| turbifier auth remove-security <n> | Remove question by number (1-3) |
Updates
| Command | Description |
| ------------------------ | -------------------------- |
| turbifier check-update | Check for new versions |
| turbifier upgrade | Install the latest version |
Help
turbifier --help # General help
turbifier --version # Show version
turbifier start --help # Help for a specific command
turbifier auth --help # Help for auth subcommandsProgress Display
During verification:
Processing |████████████░░░░░░░░| 60% | 600/1000 | 12.5/s | ETA 0:32
✓ 312 valid | ✗ 95 invalid | ⊘ 168 not-turbify | ⚠ 2 errors | avg 245msAfter completion:
✨ Processing Complete
─────────────────────────────────────────────
Total: 1000 emails
Valid: 312
Invalid: 95
Not Turbify: 591
Errors: 2
─────────────────────────────────────────────
Duration: 1:20
Speed: 12.5 emails/sec
Avg: 245ms/emailDevice Management
Limits
- Maximum 3 active devices per account
- Devices inactive for 30+ days are auto-removed
- 3-day cooling period after auto-removal
Logout Wait Period
After logging out, you must wait before logging back in on the same device:
- 30+ days of usage: 3-day wait
- Less than 30 days: 14-day wait
PIN
- 6-digit PIN required for authentication
- Optional hint to help you remember
- Can be reset using security questions
Security Questions
- 1-3 questions for PIN recovery
- Choose from predefined questions or write your own
- Required to reset a forgotten PIN
Proxies
Why Use Proxies?
- Avoid rate limiting from a single IP
- Distribute requests across multiple IPs
- Increase verification throughput
Setup
[proxy]
enabled = true
rotate = true
[[proxy.proxies]]
useMe = true
protocol = "socks5"
host = "proxy.example.com"
port = 1080
useAuth = true
username = "user"
password = "pass"Turbifier automatically:
- Rotates between available proxies
- Disables proxies that exceed the error threshold
- Falls back to direct connection if all proxies fail (unless
stopIfNone = true)
Supported Protocols
socks5socks4httphttps
Rate Limiting
Control request rate to stay under detection thresholds:
concurrency = 10 # 10 simultaneous checks
intervalCap = 100 # Max 100 requests...
interval = 1000 # ...per 1000ms (1 second)Example: 10 concurrent workers, max 100 requests per second.
Duplicate Tracking
Turbifier tracks checked emails per project to avoid rechecking:
turbifier stats # View current project stats
turbifier clear --current # Clear and re-check
turbifier clear --project old-run # Clear a different projectBenefits:
- Resume interrupted verification — already-checked emails are skipped
- Track verification history per project
- Switch between projects with different
projectNamevalues
Best Practices
Performance
- Start with concurrency of 5, increase to 10-20 if stable
- Use
intervalCapof 50-200 per second - Use 3-10 proxies for best results, or one rotating proxy
- Test with 100 emails first, then scale up
Reliability
- Enable duplicate tracking (
allowDuplicate = false) - Use proxies to avoid IP-based rate limits
- If error rate exceeds 10%, reduce concurrency and increase interval
- Monitor the error count in the progress display
Security
- Never share your access token
- Set up 2-3 security questions for PIN recovery
- Use a non-obvious PIN
- Log out from devices you no longer use
Troubleshooting
"Not authenticated"
turbifier login <your-token>"Configuration file not found"
turbifier init"Email file not found"
turbifier set --emails ./path/to/emails.txt"Maximum consecutive errors reached"
- Check your internet connection
- Verify proxy settings if enabled
- Reduce concurrency:
turbifier set --concurrency 5 - Increase interval:
turbifier set --interval 2000
"Device limit reached"
turbifier auth list # See all devices
turbifier logout # Logout from old deviceHigh error rate
- Enable proxy rotation
- Reduce concurrency to 5
- Increase interval to 2000ms
- Check proxy health
Slow verification
- Increase concurrency to 15-20
- Use multiple fast proxies
- Reduce interval (minimum 500ms recommended)
Updating
Check for updates:
turbifier check-updateInstall the latest version:
turbifier upgradeTurbifier detects your package manager (npm, bun, pnpm, yarn) and runs the appropriate install command.
Examples
Basic
turbifier init
turbifier login ABC123TOKEN
turbifier startVerify First 500 Emails
turbifier start 500High-Speed with Proxies
concurrency = 20
intervalCap = 2000
interval = 1000
[proxy]
enabled = true
rotate = true
[[proxy.proxies]]
useMe = true
protocol = "socks5"
host = "fast-proxy-1.com"
port = 1080
[[proxy.proxies]]
useMe = true
protocol = "socks5"
host = "fast-proxy-2.com"
port = 1080turbifier startResume After Interruption
# Just run again — already-checked emails are skipped
turbifier start
# Or clear tracking to start fresh
turbifier clear -c
turbifier startChange Settings on the Fly
turbifier set --concurrency 20 --interval 500
turbifier set --emails new-batch.txt --project batch-2
turbifier startLicense
Copyright 2024 Turbifier. All rights reserved.
This software is proprietary and confidential. Unauthorized copying, distribution, or use is strictly prohibited.
