Quick Start
Get started with Status Check in under 5 minutes.
Overview
Status Check validates domains and emails to help you identify high-quality leads. This guide will walk you through:
- Creating your account
- Getting your API key
- Making your first API call
- Understanding the results
Step 1: Create Your Account
- Visit app.status-check.io/signup
- Sign up with email or Google
- Verify your email address (if using email signup)
- You'll receive free credits to get started!
Free Tier:
- First-time users get free validations based on source:
- Manual: 1 lead free
- API: 10 leads free
- Bulk: 100 leads free
- CSV: 1000 leads free
Step 2: Get Your API Key
- Log in to app.status-check.io
- Navigate to Profile → API Keys tab
- Click "+ Create New API Key"
- Give it a name (e.g., "Development Key")
- Copy and save your API key - it's only shown once!
Your API key will look like: sk_live_1a2b3c4d5e6f7g8h9i0j...
Never commit your API key to version control or share it publicly. Store it in environment variables.
Step 3: Make Your First Request
Using cURL
curl -X POST https://api.status-check.io/v1/leads \
-H "X-API-Key: sk_live_your_key_here" \
-H "Content-Type: application/json" \
-d '{
"email": "john@example.com",
"website": "https://example.com",
"validate": true
}'
Using Python
import requests
response = requests.post(
"https://api.status-check.io/v1/leads",
headers={
"X-API-Key": "sk_live_your_key_here",
"Content-Type": "application/json"
},
json={
"email": "john@example.com",
"website": "https://example.com",
"validate": True
}
)
result = response.json()
print(f"Score: {result['leadDeliverabilityRating']}/100")
Using JavaScript
const response = await fetch('https://api.status-check.io/v1/leads', {
method: 'POST',
headers: {
'X-API-Key': 'sk_live_your_key_here',
'Content-Type': 'application/json',
},
body: JSON.stringify({
email: 'john@example.com',
website: 'https://example.com',
validate: true,
}),
});
const result = await response.json();
console.log(`Score: ${result.leadDeliverabilityRating}/100`);
Step 4: Understanding the Response
You'll receive a JSON response with validation results:
{
"leadId": "lead_abc123xyz",
"email": "john@example.com",
"website": "https://example.com",
"leadDeliverabilityRating": 95,
"leadRecommendation": "high_priority",
"validationStatus": "verified",
"emailValid": true,
"emailScore": 98,
"emailType": "corporate",
"emailRisk": "low",
"emailService": "Google",
"domainHttpStatus": 200,
"domainScore": 92,
"domainSslValid": true,
"domainResponseTimeMs": 145,
"domainFinalUrl": "https://example.com",
"createdAt": "2026-06-16T10:30:00Z",
"updatedAt": "2026-06-16T10:30:15Z"
}
Key Fields Explained
Overall Assessment:
leadDeliverabilityRating(0-100) - Combined quality scoreleadRecommendation- Action to take:high_priority,validate,research, orskipvalidationStatus- Status:verified,warning,risky, orerror
Email Validation:
emailValid- Can this email receive messages?emailScore(0-100) - Email deliverability scoreemailType- Classification:corporate,personal,role, etc.emailRisk- Risk level:low,medium,high
Domain Validation:
domainHttpStatus- HTTP status code (200 = good, 404 = not found)domainScore(0-100) - Domain health scoredomainSslValid- Has valid HTTPS certificate?domainResponseTimeMs- How fast the website responds
Step 5: Interpret Results
High Priority Leads (Score 85-100)
{
"leadDeliverabilityRating": 95,
"leadRecommendation": "high_priority",
"emailValid": true,
"domainHttpStatus": 200
}
Action: Add to CRM and start outreach immediately Confidence: Very high - verified domain and email
Validate Leads (Score 70-84)
{
"leadDeliverabilityRating": 78,
"leadRecommendation": "validate",
"emailValid": true,
"domainHttpStatus": 302
}
Action: Additional verification recommended Why: Domain redirects or email is catch-all
Research Needed (Score 50-69)
{
"leadDeliverabilityRating": 62,
"leadRecommendation": "research",
"emailValid": false,
"domainHttpStatus": 200
}
Action: Manual research before outreach Why: Email invalid but domain is active
Skip Leads (Score 0-49)
{
"leadDeliverabilityRating": 35,
"leadRecommendation": "skip",
"emailValid": false,
"domainHttpStatus": 404
}
Action: Remove from list Why: Domain and email both invalid
Common Use Cases
Use Case 1: Validate Single Lead
Perfect for real-time form validation or API integrations.
curl -X POST https://api.status-check.io/v1/leads \
-H "X-API-Key: sk_live_your_key" \
-d '{"email":"test@example.com","website":"example.com","validate":true}'
Response Time: 2-5 seconds Credits Used: 0.001 (1 credit = 1000 validations)
Use Case 2: Validate Lead List (Bulk)
Perfect for cleaning existing databases or processing imports.
curl -X POST https://api.status-check.io/v1/leads/bulk \
-H "X-API-Key: sk_live_your_key" \
-d '{
"leads": [
{"email":"alice@company.com","website":"company.com"},
{"email":"bob@startup.io","website":"startup.io"}
]
}'
Response Time: Instant (processes in background) Credits Used: 0.002 (for 2 leads)
Use Case 3: Check Results
After bulk upload, query your validated leads:
curl https://api.status-check.io/v1/leads?minDeliverabilityRating=85 \
-H "X-API-Key: sk_live_your_key"
Returns only leads with score 85 or higher.
Use Case 4: Store Custom Data with CustomFields
Perfect for CSV imports with extra columns or industry-specific data.
Standard Fields: Status Check provides 25+ standard fields (firstName, lastName, email, company, title, phone, etc.)
Custom Fields:
For data not in the standard schema, use customFields:
curl -X POST https://api.status-check.io/v1/leads \
-H "X-API-Key: sk_live_your_key" \
-H "Content-Type: application/json" \
-d '{
"email": "john@acme.com",
"firstName": "John",
"lastName": "Doe",
"company": "Acme Corp",
"title": "CTO",
"website": "https://acme.com",
"customFields": {
"industry": "SaaS",
"employeeCount": "50-100",
"annualRevenue": "$5M-$10M",
"leadSource": "Trade Show",
"timezone": "America/Los_Angeles"
}
}'
Update with CustomFields (Merges, Doesn't Replace):
curl -X PUT https://api.status-check.io/v1/leads/lead_abc123 \
-H "X-API-Key: sk_live_your_key" \
-H "Content-Type: application/json" \
-d '{
"notes": "High priority",
"customFields": {
"industry": "FinTech",
"lastContactDate": "2025-01-15"
}
}'
Result: industry updates to "FinTech", existing fields preserved, lastContactDate added.
CustomFields Limits:
- Max 50 fields per lead
- Max 100 characters per field name
- Max 1KB per field value
Common CustomFields:
- Industry data: industry, vertical, employeeCount, annualRevenue
- Sales tracking: leadScore, leadSource, lastContactDate, nextFollowUp
- CSV columns: csvColumn1, csvColumn2, importDate
- Custom scoring: productInterest, decisionMaker, budgetRange
Error Handling
Insufficient Credits (402)
{
"error": "Insufficient credits",
"error_code": "PAYMENT_REQUIRED",
"details": {
"required": 1.5,
"available": 0.8
}
}
Solution: Purchase more credits at app.status-check.io/pricing
Rate Limit Exceeded (429)
{
"error": "Rate limit exceeded",
"error_code": "RATE_LIMIT_EXCEEDED",
"message": "60 per 1 minute"
}
Solution: Wait and retry, or upgrade your rate limit
Invalid API Key (401)
{
"error": "Invalid API key",
"error_code": "UNAUTHORIZED"
}
Solution: Check your API key is correct and active
Next Steps
Now that you've validated your first lead, explore advanced features:
Set Up Webhooks
Get real-time notifications when validations complete:
curl -X POST https://api.status-check.io/v1/webhooks \
-H "X-API-Key: sk_live_your_key" \
-d '{
"name":"My Webhook",
"url":"https://your-app.com/webhook",
"events":["validation.complete"]
}'
Learn More: Webhook Guide
Build Workflows
Integrate with automation platforms:
- Zapier - Connect to 5000+ apps
- Make - Visual workflow builder
- n8n - Open-source automation
- Clay - Lead enrichment platform
Learn More: Integration Guides
Explore Code Examples
See complete implementation examples:
- Python Examples - Flask, FastAPI, Django
- JavaScript Examples - Node.js, Express, Next.js
View Full API Reference
Explore all available endpoints and parameters:
Getting Help
Need assistance?
- Documentation: docs.status-check.io
- Support Email: support@status-check.io
- Dashboard: app.status-check.io
Pricing
Status Check uses a simple credit system:
- 1 credit = 1,000 validations
- $1 per 1,000 validations
- No subscriptions
- Credits never expire
Purchase Credits: app.status-check.io/pricing
Tips for Success
1. Start Small
Test with 10-50 leads before processing thousands. Verify the results match your expectations.
2. Use Batch Endpoints
For lists larger than 10 leads, use bulk endpoints (/v1/leads/bulk) instead of individual calls.
3. Filter by Score
Focus on high-scoring leads (85+) first for best ROI on your outreach efforts.
4. Monitor Credits
Set up webhook alerts for low credits to avoid interruptions:
{
"events": ["credits.low", "credits.depleted"]
}
5. Leverage Webhooks
Use webhooks instead of polling for better performance and lower API usage.
Ready to Scale?
Once you're comfortable with the basics:
- Automate - Build workflows with Zapier/Make/n8n
- Integrate - Connect to your CRM (HubSpot, Salesforce, etc.)
- Monitor - Track validation metrics in your dashboard
- Optimize - Fine-tune score thresholds for your use case
Happy validating! 🚀