Get Email by ID
curl --request GET \
--url https://api.thepurplebox.io/v1/emails/{email_id} \
--header 'Authorization: Bearer <token>'{
"status": 200,
"message": "email retrieved successfully.",
"data": {
"id": "xxxxx",
"message_id": "xxxxx@me.thepurplebox.io",
"from_address": "hello@yourdomain.com",
"to_addresses": [
"user@example.com"
],
"subject": "Test from http client",
"size": 280,
"inline": 0,
"attachments": 0,
"api_key_id": 2,
"snippet": "hello world",
"created_at": "2025-11-18T18:42:21.819994Z",
"team_id": "xxxxx",
"metadata": {
"from": "hello@yourdomain.com",
"to": [
"user@example.com"
],
"cc": null,
"bcc": null,
"reply_to": null,
"text": "hello world",
"html": ""
},
"opened_at": null,
"delivered_at": "2025-11-18T18:42:23.494Z",
"click_count": 0,
"status": "delivered",
"credits_used": 1,
"logs": [
{
"email_id": "xxxxx",
"team_id": "xxxxx",
"status": "delivered",
"from": "hello@yourdomain.com",
"to": "user@example.com",
"subject": "Test from http client",
"response": "250 2.0.0 OK xxxxx 6a1803df08f44-882866ae38bsi47823636d6.1634 - gsmtp",
"code": "250",
"mx_hostname": "gmail-smtp-in.l.google.com",
"time": 1763491342,
"queued_at": "2025-11-18T18:42:23.494Z",
"recipient": "user@example.com",
"recipient_type": "to"
},
{
"email_id": "xxxxx",
"team_id": "xxxxx",
"status": "queued",
"from": "hello@yourdomain.com",
"to": "user@example.com",
"subject": "Test from http client",
"response": "250 Message queued as xxxxx",
"code": "250",
"mx_hostname": "",
"time": 1763491343,
"queued_at": "2025-11-18T18:42:23Z",
"recipient": "user@example.com",
"recipient_type": "to"
},
{
"email_id": "xxxxx",
"team_id": "xxxxx",
"status": "processing",
"from": "hello@yourdomain.com",
"to": "user@example.com",
"subject": "Test from http client",
"response": "250 2.0.0 Ok: queued as xxxxx",
"code": "250",
"mx_hostname": "",
"time": 1763491341,
"queued_at": "",
"recipient": "user@example.com",
"recipient_type": "to"
}
]
}
}
Emails
Get Email by ID
Retrieve detailed information about a specific email, including full content and delivery logs.
GET
/
v1
/
emails
/
{email_id}
Get Email by ID
curl --request GET \
--url https://api.thepurplebox.io/v1/emails/{email_id} \
--header 'Authorization: Bearer <token>'{
"status": 200,
"message": "email retrieved successfully.",
"data": {
"id": "xxxxx",
"message_id": "xxxxx@me.thepurplebox.io",
"from_address": "hello@yourdomain.com",
"to_addresses": [
"user@example.com"
],
"subject": "Test from http client",
"size": 280,
"inline": 0,
"attachments": 0,
"api_key_id": 2,
"snippet": "hello world",
"created_at": "2025-11-18T18:42:21.819994Z",
"team_id": "xxxxx",
"metadata": {
"from": "hello@yourdomain.com",
"to": [
"user@example.com"
],
"cc": null,
"bcc": null,
"reply_to": null,
"text": "hello world",
"html": ""
},
"opened_at": null,
"delivered_at": "2025-11-18T18:42:23.494Z",
"click_count": 0,
"status": "delivered",
"credits_used": 1,
"logs": [
{
"email_id": "xxxxx",
"team_id": "xxxxx",
"status": "delivered",
"from": "hello@yourdomain.com",
"to": "user@example.com",
"subject": "Test from http client",
"response": "250 2.0.0 OK xxxxx 6a1803df08f44-882866ae38bsi47823636d6.1634 - gsmtp",
"code": "250",
"mx_hostname": "gmail-smtp-in.l.google.com",
"time": 1763491342,
"queued_at": "2025-11-18T18:42:23.494Z",
"recipient": "user@example.com",
"recipient_type": "to"
},
{
"email_id": "xxxxx",
"team_id": "xxxxx",
"status": "queued",
"from": "hello@yourdomain.com",
"to": "user@example.com",
"subject": "Test from http client",
"response": "250 Message queued as xxxxx",
"code": "250",
"mx_hostname": "",
"time": 1763491343,
"queued_at": "2025-11-18T18:42:23Z",
"recipient": "user@example.com",
"recipient_type": "to"
},
{
"email_id": "xxxxx",
"team_id": "xxxxx",
"status": "processing",
"from": "hello@yourdomain.com",
"to": "user@example.com",
"subject": "Test from http client",
"response": "250 2.0.0 Ok: queued as xxxxx",
"code": "250",
"mx_hostname": "",
"time": 1763491341,
"queued_at": "",
"recipient": "user@example.com",
"recipient_type": "to"
}
]
}
}
Headers
application/jsonPath Parameters
The unique identifier of the email to retrieve.
Response
HTTP status code. Returns
200 when the email is retrieved successfully.A human-readable message describing the result of the operation.
Contains complete email details, including full content and delivery logs.
Show properties
Show properties
Unique identifier for the email.
The message ID used in email headers.
The sender email address.
Array of recipient email addresses.
The email subject line.
Total size of the email in bytes.
Number of inline attachments.
Number of file attachments.
ID of the API key used to send the email.
Text preview/snippet of the email content.
ISO 8601 timestamp when the email was created.
The team ID that owns this email.
Complete email metadata including full text and HTML content.
Show properties
Show properties
Sender email address.
Array of recipient email addresses.
CC recipients, if any.
BCC recipients, if any.
Reply-to email address, if set.
Plain text version of the email content.
HTML version of the email content.
ISO 8601 timestamp when the email was first opened. Null if not opened.
ISO 8601 timestamp when the email was delivered. Null if not yet delivered.
Number of times links in the email were clicked.
Current email status. Possible values:
processing, queued, delivered, failed, bounced, complaint.Number of credits consumed to send this email.
Chronological delivery logs showing the email’s journey through the sending process.
Show properties
Show properties
The email identifier this log entry belongs to.
The team ID that owns this email.
Status at this point in delivery. Possible values:
processing, queued, delivered, failed, bounced.Sender email address.
Recipient email address for this log entry.
Email subject line.
SMTP server response message.
SMTP response code (e.g.,
250 for success).The MX hostname of the receiving mail server.
Unix timestamp of when this log entry was created.
ISO 8601 timestamp when the email was queued at this stage.
The recipient email address.
Type of recipient. Possible values:
to, cc, bcc.{
"status": 200,
"message": "email retrieved successfully.",
"data": {
"id": "xxxxx",
"message_id": "xxxxx@me.thepurplebox.io",
"from_address": "hello@yourdomain.com",
"to_addresses": [
"user@example.com"
],
"subject": "Test from http client",
"size": 280,
"inline": 0,
"attachments": 0,
"api_key_id": 2,
"snippet": "hello world",
"created_at": "2025-11-18T18:42:21.819994Z",
"team_id": "xxxxx",
"metadata": {
"from": "hello@yourdomain.com",
"to": [
"user@example.com"
],
"cc": null,
"bcc": null,
"reply_to": null,
"text": "hello world",
"html": ""
},
"opened_at": null,
"delivered_at": "2025-11-18T18:42:23.494Z",
"click_count": 0,
"status": "delivered",
"credits_used": 1,
"logs": [
{
"email_id": "xxxxx",
"team_id": "xxxxx",
"status": "delivered",
"from": "hello@yourdomain.com",
"to": "user@example.com",
"subject": "Test from http client",
"response": "250 2.0.0 OK xxxxx 6a1803df08f44-882866ae38bsi47823636d6.1634 - gsmtp",
"code": "250",
"mx_hostname": "gmail-smtp-in.l.google.com",
"time": 1763491342,
"queued_at": "2025-11-18T18:42:23.494Z",
"recipient": "user@example.com",
"recipient_type": "to"
},
{
"email_id": "xxxxx",
"team_id": "xxxxx",
"status": "queued",
"from": "hello@yourdomain.com",
"to": "user@example.com",
"subject": "Test from http client",
"response": "250 Message queued as xxxxx",
"code": "250",
"mx_hostname": "",
"time": 1763491343,
"queued_at": "2025-11-18T18:42:23Z",
"recipient": "user@example.com",
"recipient_type": "to"
},
{
"email_id": "xxxxx",
"team_id": "xxxxx",
"status": "processing",
"from": "hello@yourdomain.com",
"to": "user@example.com",
"subject": "Test from http client",
"response": "250 2.0.0 Ok: queued as xxxxx",
"code": "250",
"mx_hostname": "",
"time": 1763491341,
"queued_at": "",
"recipient": "user@example.com",
"recipient_type": "to"
}
]
}
}
⌘I