curl "https://server.smartlead.ai/api/v1/email-accounts/123/?api_key=YOUR_KEY&fetch_campaigns=true"
import requests
API_KEY = "YOUR_API_KEY"
account_id = 123
response = requests.get(
f"https://server.smartlead.ai/api/v1/email-accounts/{account_id}/",
params={
"api_key": API_KEY,
"fetch_campaigns": True
}
)
account = response.json()
print(f"Account: {account['from_email']}")
print(f"SMTP Status: {'Connected' if account['is_smtp_success'] else 'Failed'}")
print(f"Warmup Status: {account['warmup_details']['status']}")
if 'campaign_ids' in account:
print(f"Used in {len(account['campaign_ids'])} campaigns")
const API_KEY = 'YOUR_API_KEY';
const accountId = 123;
const params = new URLSearchParams({
api_key: API_KEY,
fetch_campaigns: true
});
const response = await fetch(
`https://server.smartlead.ai/api/v1/email-accounts/${accountId}/?${params}`
);
const account = await response.json();
console.log(`Account: ${account.from_email}`);
console.log(`SMTP Status: ${account.is_smtp_success ? 'Connected' : 'Failed'}`);
console.log(`Warmup Status: ${account.warmup_details.status}`);
if (account.campaign_ids) {
console.log(`Used in ${account.campaign_ids.length} campaigns`);
}
{
"id": 123,
"created_at": "2025-01-15T10:30:00.000Z",
"updated_at": "2025-11-26T08:00:00.000Z",
"user_id": 456,
"from_name": "John Doe",
"from_email": "john@example.com",
"username": "john@example.com",
"password": "decrypted_password",
"smtp_host": "smtp.gmail.com",
"smtp_port": 587,
"smtp_port_type": "TLS",
"message_per_day": 50,
"is_smtp_success": true,
"is_imap_success": true,
"type": "GMAIL",
"daily_sent_count": 25,
"client_id": null,
"warmup_details": {
"id": 789,
"status": "ACTIVE",
"created_at": "2025-01-15T10:30:00.000Z",
"reply_rate": 15,
"warmup_key_id": 1001,
"blocked_reason": null,
"total_sent_count": 450,
"total_spam_count": 2,
"warmup_max_count": 30,
"warmup_min_count": 10,
"is_warmup_blocked": false,
"max_email_per_day": 50,
"warmup_reputation": 95
},
"campaign_ids": [101, 102, 103]
}
{
"message": "Invalid API Key"
}
{
"error": "Email account not found"
}
Email Account Management
Get Email Account by ID
Retrieve complete configuration, credentials, and warmup details for a specific email account
GET
/
api
/
v1
/
email-accounts
/
{email_account_id}
/
curl "https://server.smartlead.ai/api/v1/email-accounts/123/?api_key=YOUR_KEY&fetch_campaigns=true"
import requests
API_KEY = "YOUR_API_KEY"
account_id = 123
response = requests.get(
f"https://server.smartlead.ai/api/v1/email-accounts/{account_id}/",
params={
"api_key": API_KEY,
"fetch_campaigns": True
}
)
account = response.json()
print(f"Account: {account['from_email']}")
print(f"SMTP Status: {'Connected' if account['is_smtp_success'] else 'Failed'}")
print(f"Warmup Status: {account['warmup_details']['status']}")
if 'campaign_ids' in account:
print(f"Used in {len(account['campaign_ids'])} campaigns")
const API_KEY = 'YOUR_API_KEY';
const accountId = 123;
const params = new URLSearchParams({
api_key: API_KEY,
fetch_campaigns: true
});
const response = await fetch(
`https://server.smartlead.ai/api/v1/email-accounts/${accountId}/?${params}`
);
const account = await response.json();
console.log(`Account: ${account.from_email}`);
console.log(`SMTP Status: ${account.is_smtp_success ? 'Connected' : 'Failed'}`);
console.log(`Warmup Status: ${account.warmup_details.status}`);
if (account.campaign_ids) {
console.log(`Used in ${account.campaign_ids.length} campaigns`);
}
{
"id": 123,
"created_at": "2025-01-15T10:30:00.000Z",
"updated_at": "2025-11-26T08:00:00.000Z",
"user_id": 456,
"from_name": "John Doe",
"from_email": "john@example.com",
"username": "john@example.com",
"password": "decrypted_password",
"smtp_host": "smtp.gmail.com",
"smtp_port": 587,
"smtp_port_type": "TLS",
"message_per_day": 50,
"is_smtp_success": true,
"is_imap_success": true,
"type": "GMAIL",
"daily_sent_count": 25,
"client_id": null,
"warmup_details": {
"id": 789,
"status": "ACTIVE",
"created_at": "2025-01-15T10:30:00.000Z",
"reply_rate": 15,
"warmup_key_id": 1001,
"blocked_reason": null,
"total_sent_count": 450,
"total_spam_count": 2,
"warmup_max_count": 30,
"warmup_min_count": 10,
"is_warmup_blocked": false,
"max_email_per_day": 50,
"warmup_reputation": 95
},
"campaign_ids": [101, 102, 103]
}
{
"message": "Invalid API Key"
}
{
"error": "Email account not found"
}
Returns detailed email account information including SMTP/IMAP credentials (with decoded passwords), warmup statistics, and optionally the list of campaigns using this account.
Path Parameters
number
required
The email account ID to retrieve
Query Parameters
string
required
Your SmartLead API key
boolean
default:"false"
If
true, includes array of campaign IDs using this email accountcurl "https://server.smartlead.ai/api/v1/email-accounts/123/?api_key=YOUR_KEY&fetch_campaigns=true"
import requests
API_KEY = "YOUR_API_KEY"
account_id = 123
response = requests.get(
f"https://server.smartlead.ai/api/v1/email-accounts/{account_id}/",
params={
"api_key": API_KEY,
"fetch_campaigns": True
}
)
account = response.json()
print(f"Account: {account['from_email']}")
print(f"SMTP Status: {'Connected' if account['is_smtp_success'] else 'Failed'}")
print(f"Warmup Status: {account['warmup_details']['status']}")
if 'campaign_ids' in account:
print(f"Used in {len(account['campaign_ids'])} campaigns")
const API_KEY = 'YOUR_API_KEY';
const accountId = 123;
const params = new URLSearchParams({
api_key: API_KEY,
fetch_campaigns: true
});
const response = await fetch(
`https://server.smartlead.ai/api/v1/email-accounts/${accountId}/?${params}`
);
const account = await response.json();
console.log(`Account: ${account.from_email}`);
console.log(`SMTP Status: ${account.is_smtp_success ? 'Connected' : 'Failed'}`);
console.log(`Warmup Status: ${account.warmup_details.status}`);
if (account.campaign_ids) {
console.log(`Used in ${account.campaign_ids.length} campaigns`);
}
Response Fields
Response includes the same fields as Get All Email Accounts, plus detailed warmup configuration and optionally campaign IDs.
object
Comprehensive warmup details with additional fields
Show Extended warmup properties
Show Extended warmup properties
number
Warmup detail record ID
string
Warmup status:
ACTIVE, INACTIVE, PAUSEDtimestamp
When warmup was initiated
number
Reply rate percentage for warmup emails
number
Warmup service key identifier
string | null
Reason if warmup is blocked
number
Total warmup emails sent
number
Total warmup emails marked as spam
number
Maximum warmup emails per day
number
Minimum warmup emails per day
boolean
Whether warmup is blocked
number
Maximum emails allowed per day (warmup + campaign)
number
Warmup reputation score (0-100)
array
Array of campaign IDs using this email account (only if
fetch_campaigns=true)Response Codes
Success
Email account retrieved successfully
Unauthorized
Invalid or missing API key
Not Found
Email account not found or you don’t have access to it
Internal Server Error
Server error occurred
{
"id": 123,
"created_at": "2025-01-15T10:30:00.000Z",
"updated_at": "2025-11-26T08:00:00.000Z",
"user_id": 456,
"from_name": "John Doe",
"from_email": "john@example.com",
"username": "john@example.com",
"password": "decrypted_password",
"smtp_host": "smtp.gmail.com",
"smtp_port": 587,
"smtp_port_type": "TLS",
"message_per_day": 50,
"is_smtp_success": true,
"is_imap_success": true,
"type": "GMAIL",
"daily_sent_count": 25,
"client_id": null,
"warmup_details": {
"id": 789,
"status": "ACTIVE",
"created_at": "2025-01-15T10:30:00.000Z",
"reply_rate": 15,
"warmup_key_id": 1001,
"blocked_reason": null,
"total_sent_count": 450,
"total_spam_count": 2,
"warmup_max_count": 30,
"warmup_min_count": 10,
"is_warmup_blocked": false,
"max_email_per_day": 50,
"warmup_reputation": 95
},
"campaign_ids": [101, 102, 103]
}
{
"message": "Invalid API Key"
}
{
"error": "Email account not found"
}
Usage Notes
This endpoint returns decoded passwords in plain text. Use HTTPS and secure storage when handling this sensitive data.
Use
fetch_campaigns=true to see which campaigns are using this email account before making changes or deletions.Related Endpoints
⌘I
