API Reference
Welcome to the CampaignKit API documentation. Our REST API allows you to integrate email validation directly into your applications, websites, and workflows.
Base URL
All API requests should be made to:
https://api.campaignkit.cc/v1Authentication
CampaignKit uses API key authentication with Bearer tokens. Include your API key in the Authorization header of every request:
Authorization: Bearer YOUR_API_KEYYou can generate and manage your API keys in the CampaignKit dashboard.
Getting Your API Key
- Log in to your CampaignKit account
- Navigate to API Settings
- Click Generate New API Key
- Copy and securely store your API key
Keep your API key secure and never share it publicly. Anyone with your API key can consume your validation credits.
Available Endpoints
Email Validation
Validate single or multiple email addresses to check deliverability, detect spam traps, disposable emails, and more.
View Email Validation documentation →
Validation Jobs
Process large batches of emails asynchronously by creating validation jobs. Upload files, track progress, and download filtered results.
View Validation Jobs documentation →
Webhooks
Set up webhooks to receive real-time notifications when validation jobs are completed.
Quick Start Example
Here’s a simple example to validate an email address using curl:
curl -X POST https://api.campaignkit.cc/v1/email/validate \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"emails": ["test@example.com"]
}'Response:
{
"creditsUsed": 1,
"results": [
{
"email": "test@example.com",
"contextId": "ctx_abc123",
"result": {
"syntax": "pass",
"mx": "pass",
"mailbox": "pass",
"score": 10,
"classifier": "valid",
"description": [],
"smtpResponse": "250 OK"
}
}
]
}Rate Limits
API requests are subject to rate limits based on your subscription plan. If you exceed your rate limit, you’ll receive a 429 Too Many Requests response.
Current rate limits:
- Free plan: 10 requests per minute
- Starter plan: 60 requests per minute
- Professional plan: 300 requests per minute
- Enterprise plan: Custom limits
Rate limits are applied per API key. Contact our support team if you need higher limits.
Error Handling
The API uses standard HTTP status codes to indicate success or failure:
| Status Code | Description |
|---|---|
200 | Success - Request completed successfully |
400 | Bad Request - Invalid request parameters |
401 | Unauthorized - Invalid or missing API key |
429 | Too Many Requests - Rate limit exceeded |
500 | Internal Server Error - Something went wrong on our end |
Error responses include a JSON body with more details:
{
"error": {
"code": "invalid_request",
"message": "The 'emails' field is required"
}
}Best Practices
Use Batch Validation
When validating multiple emails, send them in a single request rather than making multiple individual requests. This is more efficient and counts as one API call.
Handle Errors Gracefully
Always implement proper error handling in your integration. Check HTTP status codes and parse error messages to provide meaningful feedback to your users.
Store Results
Cache validation results to avoid validating the same email multiple times. Email validation results are generally valid for 30-90 days.
Monitor Your Usage
Keep track of your API usage and validation credits in the CampaignKit dashboard. Set up alerts to avoid running out of credits during critical operations.
Support
Need help with the API? Here’s how to get support:
- Email: support@campaignkit.cc
- Documentation: Browse these API docs
- Dashboard: Check your API settings for status and usage
For bug reports or feature requests, please contact our support team with details about your use case.