import { Resend } from 'resend';
const resend = new Resend('re_xxxxxxxxx');
const { data, error } = await resend.inboxes.threads.get({
inboxId: 'b3e2b2b6-3f0e-4c8e-9ad3-2f43a1e2c7f1',
threadId: '4d8e2a1c-9b3f-4c6d-8a21-3e5f7c9c0d12',
});
curl -X GET 'https://api.resend.com/inboxes/b3e2b2b6-3f0e-4c8e-9ad3-2f43a1e2c7f1/threads/4d8e2a1c-9b3f-4c6d-8a21-3e5f7c9c0d12' \
-H 'Authorization: Bearer re_xxxxxxxxx'
resend inboxes threads get \
--inbox_id b3e2b2b6-3f0e-4c8e-9ad3-2f43a1e2c7f1 \
--thread_id 4d8e2a1c-9b3f-4c6d-8a21-3e5f7c9c0d12
{
"object": "inbox_thread",
"id": "4d8e2a1c-9b3f-4c6d-8a21-3e5f7c9c0d12",
"subject": "Refund for order 1041",
"folder": "inbox",
"labels": [
{
"id": "7f9c1d2e-4a6b-4c3d-8e15-9b0a7c6d5e34",
"name": "Urgent",
"color": "crimson"
}
],
"read": false,
"messages": [
{
"id": "5b1a9f47-2c8d-4e6f-9a03-1d2e3f4a5b60",
"direction": "inbound",
"from": "Ada Lovelace <ada@example.org>",
"to": ["support@example.com"],
"cc": [],
"bcc": [],
"reply_to": ["replies@example.org"],
"subject": "Refund for order 1041",
"message_id": "<1041@example.org>",
"html": "<p>Could I get a refund for order 1041?</p>",
"text": "Could I get a refund for order 1041?",
"attachments": [
{
"id": "9d4f2b81-6c3a-4e7d-8b12-0a5c6d7e8f90",
"filename": "receipt.pdf",
"size": 20841
}
],
"read": false,
"received_at": "2026-08-05T14:03:11.229Z"
}
]
}
Retrieve Thread
Retrieve a thread with its full message history.
GET
/
inboxes
/
:inbox_id
/
threads
/
:thread_id
import { Resend } from 'resend';
const resend = new Resend('re_xxxxxxxxx');
const { data, error } = await resend.inboxes.threads.get({
inboxId: 'b3e2b2b6-3f0e-4c8e-9ad3-2f43a1e2c7f1',
threadId: '4d8e2a1c-9b3f-4c6d-8a21-3e5f7c9c0d12',
});
curl -X GET 'https://api.resend.com/inboxes/b3e2b2b6-3f0e-4c8e-9ad3-2f43a1e2c7f1/threads/4d8e2a1c-9b3f-4c6d-8a21-3e5f7c9c0d12' \
-H 'Authorization: Bearer re_xxxxxxxxx'
resend inboxes threads get \
--inbox_id b3e2b2b6-3f0e-4c8e-9ad3-2f43a1e2c7f1 \
--thread_id 4d8e2a1c-9b3f-4c6d-8a21-3e5f7c9c0d12
{
"object": "inbox_thread",
"id": "4d8e2a1c-9b3f-4c6d-8a21-3e5f7c9c0d12",
"subject": "Refund for order 1041",
"folder": "inbox",
"labels": [
{
"id": "7f9c1d2e-4a6b-4c3d-8e15-9b0a7c6d5e34",
"name": "Urgent",
"color": "crimson"
}
],
"read": false,
"messages": [
{
"id": "5b1a9f47-2c8d-4e6f-9a03-1d2e3f4a5b60",
"direction": "inbound",
"from": "Ada Lovelace <ada@example.org>",
"to": ["support@example.com"],
"cc": [],
"bcc": [],
"reply_to": ["replies@example.org"],
"subject": "Refund for order 1041",
"message_id": "<1041@example.org>",
"html": "<p>Could I get a refund for order 1041?</p>",
"text": "Could I get a refund for order 1041?",
"attachments": [
{
"id": "9d4f2b81-6c3a-4e7d-8b12-0a5c6d7e8f90",
"filename": "receipt.pdf",
"size": 20841
}
],
"read": false,
"received_at": "2026-08-05T14:03:11.229Z"
}
]
}
Inboxes are currently in private beta and only available to a limited
number of users. The response shape might change before GA. Get in
touch if you’re interested in testing this
feature.Once you have access, upgrade your Resend SDK to use the methods on this
page:
npm install resend@6.28.1-preview-inboxes.1
npm install -g resend-cli@2.22.0-preview-inboxes.1
Path Parameters
Response Fields
string
Always
inbox_thread.string
The ID of the thread.
string | null
The subject of the thread.
string
The folder the thread lives in. One of
inbox, archive, spam, sent, or
trash.array
The labels attached to the thread, each with an
id, name, and color.boolean
True only when every message in the thread is read.
array
The thread’s messages, oldest first. The full history is returned in one
response.
Hide properties
Hide properties
string
The ID of the message.
string
Whether the message was received by the inbox or sent from it.
string
Sender email address.
string[]
The recipients of the message.
string[]
The CC recipients of the message.
string[]
The BCC recipients of the message.
string[]
The Reply-To addresses.
string | null
The subject of the message.
string | null
The Message-ID header of the message.
string | null
The HTML body.
string | null
The plain-text body.
array
boolean
Whether the message has been read.
string
ISO 8601 timestamp when the message arrived or was sent.
import { Resend } from 'resend';
const resend = new Resend('re_xxxxxxxxx');
const { data, error } = await resend.inboxes.threads.get({
inboxId: 'b3e2b2b6-3f0e-4c8e-9ad3-2f43a1e2c7f1',
threadId: '4d8e2a1c-9b3f-4c6d-8a21-3e5f7c9c0d12',
});
curl -X GET 'https://api.resend.com/inboxes/b3e2b2b6-3f0e-4c8e-9ad3-2f43a1e2c7f1/threads/4d8e2a1c-9b3f-4c6d-8a21-3e5f7c9c0d12' \
-H 'Authorization: Bearer re_xxxxxxxxx'
resend inboxes threads get \
--inbox_id b3e2b2b6-3f0e-4c8e-9ad3-2f43a1e2c7f1 \
--thread_id 4d8e2a1c-9b3f-4c6d-8a21-3e5f7c9c0d12
{
"object": "inbox_thread",
"id": "4d8e2a1c-9b3f-4c6d-8a21-3e5f7c9c0d12",
"subject": "Refund for order 1041",
"folder": "inbox",
"labels": [
{
"id": "7f9c1d2e-4a6b-4c3d-8e15-9b0a7c6d5e34",
"name": "Urgent",
"color": "crimson"
}
],
"read": false,
"messages": [
{
"id": "5b1a9f47-2c8d-4e6f-9a03-1d2e3f4a5b60",
"direction": "inbound",
"from": "Ada Lovelace <ada@example.org>",
"to": ["support@example.com"],
"cc": [],
"bcc": [],
"reply_to": ["replies@example.org"],
"subject": "Refund for order 1041",
"message_id": "<1041@example.org>",
"html": "<p>Could I get a refund for order 1041?</p>",
"text": "Could I get a refund for order 1041?",
"attachments": [
{
"id": "9d4f2b81-6c3a-4e7d-8b12-0a5c6d7e8f90",
"filename": "receipt.pdf",
"size": 20841
}
],
"read": false,
"received_at": "2026-08-05T14:03:11.229Z"
}
]
}
Was this page helpful?
⌘I