curl -X POST "https://server.smartlead.ai/api/v1/master-inbox/assigned-me?api_key=YOUR_KEY&fetch_message_history=false" \
-H "Content-Type: application/json" \
-d '{
"offset": 0,
"limit": 20,
"filters": {
"emailStatus": "Replied",
"leadCategories": {
"isAssigned": true,
"categoryIdsIn": [1]
},
"replyTimeBetween": ["2025-01-01T00:00:00Z", "2025-01-31T23:59:59Z"]
},
"sortBy": "REPLY_TIME_DESC"
}'
import requests
from datetime import datetime
API_KEY = "YOUR_API_KEY"
# Get my assigned leads that replied this month
payload = {
"offset": 0,
"limit": 20,
"filters": {
"emailStatus": "Replied",
"leadCategories": {
"isAssigned": True,
"categoryIdsIn": [1] # Interested category
},
"replyTimeBetween": [
"2025-01-01T00:00:00Z",
"2025-01-31T23:59:59Z"
]
},
"sortBy": "REPLY_TIME_DESC"
}
response = requests.post(
"https://server.smartlead.ai/api/v1/master-inbox/assigned-me",
params={
"api_key": API_KEY,
"fetch_message_history": False
},
json=payload
)
result = response.json()
print(f"Found {result.get('total_count', 0)} assigned leads")
const API_KEY = 'YOUR_API_KEY';
// Get my assigned leads that replied this month
const payload = {
offset: 0,
limit: 20,
filters: {
emailStatus: 'Replied',
leadCategories: {
isAssigned: true,
categoryIdsIn: [1] // Interested category
},
replyTimeBetween: [
'2025-01-01T00:00:00Z',
'2025-01-31T23:59:59Z'
]
},
sortBy: 'REPLY_TIME_DESC'
};
const response = await fetch(
`https://server.smartlead.ai/api/v1/master-inbox/assigned-me?api_key=${API_KEY}&fetch_message_history=false`,
{
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify(payload)
}
);
const result = await response.json();
console.log(`Found ${result.total_count} assigned leads`);
{
"messages": [
{
"id": "msg_123",
"campaign_lead_map_id": "2433664091",
"lead": {
"email": "john@company.com",
"first_name": "John",
"last_name": "Doe"
},
"campaign": {
"id": 12345,
"name": "Q1 2025 Outreach"
},
"last_message": {
"subject": "Re: Partnership Opportunity",
"body": "I'm interested in learning more...",
"received_at": "2025-01-15T14:30:00Z"
},
"email_status": "Replied",
"category": {
"id": 1,
"name": "Interested"
},
"assigned_to": {
"id": 456,
"name": "Jane Smith"
},
"is_read": false
}
],
"total_count": 1,
"offset": 0,
"limit": 20
}
{
"message": "Invalid API Key"
}
{
"error": "limit must be between 1 and 20"
}
Master Inbox
Get Assigned to Me
Retrieve all emails and conversations assigned to the authenticated user
POST
/
api
/
v1
/
master-inbox
/
assigned-me
curl -X POST "https://server.smartlead.ai/api/v1/master-inbox/assigned-me?api_key=YOUR_KEY&fetch_message_history=false" \
-H "Content-Type: application/json" \
-d '{
"offset": 0,
"limit": 20,
"filters": {
"emailStatus": "Replied",
"leadCategories": {
"isAssigned": true,
"categoryIdsIn": [1]
},
"replyTimeBetween": ["2025-01-01T00:00:00Z", "2025-01-31T23:59:59Z"]
},
"sortBy": "REPLY_TIME_DESC"
}'
import requests
from datetime import datetime
API_KEY = "YOUR_API_KEY"
# Get my assigned leads that replied this month
payload = {
"offset": 0,
"limit": 20,
"filters": {
"emailStatus": "Replied",
"leadCategories": {
"isAssigned": True,
"categoryIdsIn": [1] # Interested category
},
"replyTimeBetween": [
"2025-01-01T00:00:00Z",
"2025-01-31T23:59:59Z"
]
},
"sortBy": "REPLY_TIME_DESC"
}
response = requests.post(
"https://server.smartlead.ai/api/v1/master-inbox/assigned-me",
params={
"api_key": API_KEY,
"fetch_message_history": False
},
json=payload
)
result = response.json()
print(f"Found {result.get('total_count', 0)} assigned leads")
const API_KEY = 'YOUR_API_KEY';
// Get my assigned leads that replied this month
const payload = {
offset: 0,
limit: 20,
filters: {
emailStatus: 'Replied',
leadCategories: {
isAssigned: true,
categoryIdsIn: [1] // Interested category
},
replyTimeBetween: [
'2025-01-01T00:00:00Z',
'2025-01-31T23:59:59Z'
]
},
sortBy: 'REPLY_TIME_DESC'
};
const response = await fetch(
`https://server.smartlead.ai/api/v1/master-inbox/assigned-me?api_key=${API_KEY}&fetch_message_history=false`,
{
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify(payload)
}
);
const result = await response.json();
console.log(`Found ${result.total_count} assigned leads`);
{
"messages": [
{
"id": "msg_123",
"campaign_lead_map_id": "2433664091",
"lead": {
"email": "john@company.com",
"first_name": "John",
"last_name": "Doe"
},
"campaign": {
"id": 12345,
"name": "Q1 2025 Outreach"
},
"last_message": {
"subject": "Re: Partnership Opportunity",
"body": "I'm interested in learning more...",
"received_at": "2025-01-15T14:30:00Z"
},
"email_status": "Replied",
"category": {
"id": 1,
"name": "Interested"
},
"assigned_to": {
"id": 456,
"name": "Jane Smith"
},
"is_read": false
}
],
"total_count": 1,
"offset": 0,
"limit": 20
}
{
"message": "Invalid API Key"
}
{
"error": "limit must be between 1 and 20"
}
View your personalized inbox showing only leads and conversations assigned to you. Essential for team collaboration and individual accountability.
Overview
Retrieves all emails assigned to the authenticated user across all campaigns. This endpoint provides a personalized view for team members to focus on their assigned leads. Key Features:- Personalized inbox view for individual team members
- Same comprehensive filtering as other inbox endpoints
- Track assigned lead performance and engagement
- Enable accountability in team-based campaigns
- Individual dashboards: Show team members only their assigned work
- Performance tracking: Monitor individual team member metrics
- Load balancing: View current assignment distribution
- Task management: Track follow-ups on assigned leads
Query Parameters
string
required
Your SmartLead API key
boolean
default:"false"
Include full email thread history. Set to
true to get complete conversation context.Request Body
number
default:"0"
Number of records to skip for pagination. Must be non-negative.
number
default:"20"
Number of records to return per page. Must be between 1 and 20.
object
Advanced filtering options
Show filters properties
Show filters properties
string
Search term to filter emails by lead email, name, or content. Max 30 characters.
object
string
Filter by email engagement status. Valid values:
Opened, Clicked, Replied, Unsubscribed, Bounced, Accepted, Not Repliednumber
Filter by specific campaign ID (single value only for this endpoint)
number
Filter by specific email account ID (single value only)
number
Filter by specific team member ID (single value only)
number
Filter by campaign tag ID (single value only)
number
Filter by client ID (single value only)
array
Date range filter for reply times. Array of 2 ISO 8601 datetime strings:
["2025-01-01T00:00:00Z", "2025-01-31T23:59:59Z"]string
default:"REPLY_TIME_DESC"
Sort order for results
REPLY_TIME_DESC: Most recent replies first (default)SENT_TIME_DESC: Most recently sent emails first
curl -X POST "https://server.smartlead.ai/api/v1/master-inbox/assigned-me?api_key=YOUR_KEY&fetch_message_history=false" \
-H "Content-Type: application/json" \
-d '{
"offset": 0,
"limit": 20,
"filters": {
"emailStatus": "Replied",
"leadCategories": {
"isAssigned": true,
"categoryIdsIn": [1]
},
"replyTimeBetween": ["2025-01-01T00:00:00Z", "2025-01-31T23:59:59Z"]
},
"sortBy": "REPLY_TIME_DESC"
}'
import requests
from datetime import datetime
API_KEY = "YOUR_API_KEY"
# Get my assigned leads that replied this month
payload = {
"offset": 0,
"limit": 20,
"filters": {
"emailStatus": "Replied",
"leadCategories": {
"isAssigned": True,
"categoryIdsIn": [1] # Interested category
},
"replyTimeBetween": [
"2025-01-01T00:00:00Z",
"2025-01-31T23:59:59Z"
]
},
"sortBy": "REPLY_TIME_DESC"
}
response = requests.post(
"https://server.smartlead.ai/api/v1/master-inbox/assigned-me",
params={
"api_key": API_KEY,
"fetch_message_history": False
},
json=payload
)
result = response.json()
print(f"Found {result.get('total_count', 0)} assigned leads")
const API_KEY = 'YOUR_API_KEY';
// Get my assigned leads that replied this month
const payload = {
offset: 0,
limit: 20,
filters: {
emailStatus: 'Replied',
leadCategories: {
isAssigned: true,
categoryIdsIn: [1] // Interested category
},
replyTimeBetween: [
'2025-01-01T00:00:00Z',
'2025-01-31T23:59:59Z'
]
},
sortBy: 'REPLY_TIME_DESC'
};
const response = await fetch(
`https://server.smartlead.ai/api/v1/master-inbox/assigned-me?api_key=${API_KEY}&fetch_message_history=false`,
{
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify(payload)
}
);
const result = await response.json();
console.log(`Found ${result.total_count} assigned leads`);
Response Codes
Success
Request successful - assigned emails retrieved
Unauthorized
Invalid or missing API key
Validation Error
Invalid request parameters (e.g., limit > 20, invalid date format)
Internal Server Error
Server error occurred
{
"messages": [
{
"id": "msg_123",
"campaign_lead_map_id": "2433664091",
"lead": {
"email": "john@company.com",
"first_name": "John",
"last_name": "Doe"
},
"campaign": {
"id": 12345,
"name": "Q1 2025 Outreach"
},
"last_message": {
"subject": "Re: Partnership Opportunity",
"body": "I'm interested in learning more...",
"received_at": "2025-01-15T14:30:00Z"
},
"email_status": "Replied",
"category": {
"id": 1,
"name": "Interested"
},
"assigned_to": {
"id": 456,
"name": "Jane Smith"
},
"is_read": false
}
],
"total_count": 1,
"offset": 0,
"limit": 20
}
{
"message": "Invalid API Key"
}
{
"error": "limit must be between 1 and 20"
}
Common Workflows
Daily Task Check
# Get all my unread assigned leads
payload = {
"filters": {
"emailStatus": "Replied",
"leadCategories": {"isAssigned": True}
},
"limit": 20
}
response = get_assigned_me(payload)
Hot Leads Follow-up
# Get interested leads assigned to me
payload = {
"filters": {
"leadCategories": {
"isAssigned": True,
"categoryIdsIn": [1] # Interested
}
},
"sortBy": "REPLY_TIME_DESC"
}
response = get_assigned_me(payload)
Campaign-Specific View
# See my assigned leads in specific campaign
payload = {
"filters": {
"campaignId": 12345
},
"limit": 20
}
response = get_assigned_me(payload)
Performance Tips
- Use pagination: Default limit of 20 is optimal for response time
- Disable message history: Set
fetch_message_history=falsefor list views - Filter smartly: Combine filters to reduce result set
- Sort appropriately: Use
REPLY_TIME_DESCfor action-oriented views
Related Endpoints
- Update Team Member - Reassign leads
- Get Inbox Messages - All inbox replies
- Update Lead Category - Categorize leads
