# Mark as read
curl -X PATCH "https://server.smartlead.ai/api/v1/master-inbox/change-read-status?api_key=YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{"email_lead_map_id": 2433664091, "read_status": true}'
# Mark as unread
curl -X PATCH "https://server.smartlead.ai/api/v1/master-inbox/change-read-status?api_key=YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{"email_lead_map_id": 2433664091, "read_status": false}'
{
"success": true,
"message": "Read status updated",
"data": {
"email_lead_map_id": 2433664091,
"is_read": true,
"updated_at": "2025-01-20T15:30:00Z"
}
}
Mark emails as read or unread
# Mark as read
curl -X PATCH "https://server.smartlead.ai/api/v1/master-inbox/change-read-status?api_key=YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{"email_lead_map_id": 2433664091, "read_status": true}'
# Mark as unread
curl -X PATCH "https://server.smartlead.ai/api/v1/master-inbox/change-read-status?api_key=YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{"email_lead_map_id": 2433664091, "read_status": false}'
{
"success": true,
"message": "Read status updated",
"data": {
"email_lead_map_id": 2433664091,
"is_read": true,
"updated_at": "2025-01-20T15:30:00Z"
}
}
PATCH /v1/master-inbox/mark-unread is deprecated after August 14, 2025. Use this endpoint (change-read-status) instead with read_status: false./mark-unread endpoint with more flexible boolean control.
Migration from /mark-unread:
# OLD (deprecated after Aug 14, 2025)
PATCH /v1/master-inbox/mark-unread
Body: {"email_lead_map_id": 123}
# NEW (use this)
PATCH /v1/master-inbox/change-read-status
Body: {"email_lead_map_id": 123, "read_status": false}
campaign_lead_map_id from inbox endpoints.true: Mark as readfalse: Mark as unread# Mark as read
curl -X PATCH "https://server.smartlead.ai/api/v1/master-inbox/change-read-status?api_key=YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{"email_lead_map_id": 2433664091, "read_status": true}'
# Mark as unread
curl -X PATCH "https://server.smartlead.ai/api/v1/master-inbox/change-read-status?api_key=YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{"email_lead_map_id": 2433664091, "read_status": false}'
{
"success": true,
"message": "Read status updated",
"data": {
"email_lead_map_id": 2433664091,
"is_read": true,
"updated_at": "2025-01-20T15:30:00Z"
}
}
def bulk_mark_as_read(lead_map_ids):
"""Mark multiple emails as read"""
results = []
for lead_id in lead_map_ids:
result = mark_as_read(lead_id)
results.append(result)
return results
# Mark all unread as read
unread = get_unread_replies({})
lead_ids = [msg['campaign_lead_map_id'] for msg in unread['messages']]
bulk_mark_as_read(lead_ids)