Get a thread
GET
/v1/email/threads/{thread_id}
const thread = await bird.email.threads.get("thr_01abc");
console.log(thread.subject);thread = client.email.threads.get("thr_01krdgeqcxet5s7t44vh8rt9mg")
print(thread.subject)thread, err := client.Email.Threads.Get(context.Background(), "thr_123")
if err != nil {
log.Fatal(err)
}
fmt.Println(thread.Id)$thread = $bird->email->threads->get('thr_01krdgeqcxet5s7t44vh8rt9mg');
echo $thread->getSubject(), ' ', $thread->getMessageCount();bird email threads get <thread-id>curl -X GET "https://us1.platform.bird.com/v1/email/threads/{thread_id}" \
-H "Authorization: Bearer $TOKEN"Risposta200
{
"id": "thr_01krdgeqcxet5s7t44vh8rt9mg",
"mailbox_id": "mbx_01krdgeqcxet5s7t44vh8rt9mg",
"channel": "email",
"contact_id": "con_01krdgeqcxet5s7t44vh8rt9mg",
"subject": "Re: Your order",
"last_direction": "inbound",
"labels": [
"inbox",
"urgent"
],
"highlights": {
"subject": [
"Re: your **order** **4821**"
],
"text": [
"confirming your **order** **4821** shipped"
]
}
}
Returns a single conversation. Fetch the messages in the conversation with List messages in a thread. A thread whose retention tier has ended returns 410 Gone.
Parametri
thread_id
string
Thread identifier. Starts with thr_.
Payload di risposta
id
string
obbligatorio
Thread ID.
mailbox_id
string
obbligatorio
Mailbox this conversation belongs to.
channel
string
obbligatorio
Channel this conversation lives on. Always email.
contact_id
nullable string
obbligatorio
Contact linked to this conversation, or null when none is linked.
subject
nullable string
obbligatorio
Subject of the conversation, taken from its first message. Null when that message had no subject.
participants
array of string
obbligatorio
Addresses that appear on the retained messages in this conversation, including the mailbox's own address.
message_count
integer
obbligatorio
Number of retained messages in this conversation, both directions.
unread_count
integer
obbligatorio
Number of retained received messages that are still unread. Spam and blocked mail is not counted.
last_message_at
string
obbligatorio
When the most recent retained message in this conversation was received or sent.
last_direction
string
obbligatorio
Direction of the most recent message: inbound for a received message, outbound for a sent one.
Possible values: inbound, outbound
labels
array of string
obbligatorio
Labels on this conversation. Exactly one system placement label is always present, set by the message that started the conversation:
- inbox: The conversation is in the inbox.
- archive: The conversation was filed away and is done for now.
- spam: The conversation's opening message failed sender authentication.
- blocked: The conversation's opening message was rejected by the mailbox's receive policy or rules.
Move a conversation by updating its labels. Add spam to file it as spam, add archive to clean it out of the inbox, and add inbox, or remove spam, blocked, or archive, to bring it back. An archived conversation returns to the inbox by itself when a new message arrives. Custom labels share the same list, and a conversation has at most 20 labels in total.
created_at
string
obbligatorio
When the thread was created.
updated_at
string
obbligatorio
When the thread last changed.
highlights
object
Matched search fragments, keyed by the field that matched. Returned only by thread search. Omitted when listing threads.
Mostra attributi secondari
highlights.subject
array of string
Matched fragments from the conversation's subject.
highlights.text
array of string
Matched fragments from a message's body text.
Related resources
Continue with the documentation, guides and examples for this topic. Resources are in English.
Watch the guideGetting started with emailExplore the capabilityEmailFollow the learning pathBuild your first integrationImplementation guideSend your first email
Try the practice and get an implementation brief