Sign inGet Started

Restore a thread from trash

POST
/v1/email/threads/{thread_id}/restore
const thread = await bird.email.threads.restore("thr_01abc");
console.log(thread.id);
Response200
{
  "id": "thr_01krdgeqcxet5s7t44vh8rt9mg",
  "mailbox_id": "mbx_01krdgeqcxet5s7t44vh8rt9mg",
  "channel": "email",
  "contact_id": "con_01krdgeqcxet5s7t44vh8rt9mg",
  "subject": "Re: Your order",
  "last_direction": "inbound",
  "folder": "inbox",
  "labels": [
    "urgent"
  ],
  "highlights": {
    "subject": [
      "Re: your **order** **4821**"
    ],
    "text": [
      "confirming your **order** **4821** shipped"
    ]
  }
}

Restores the conversation's unexpired trashed messages and updates its message and unread counts. Messages past their trash deadline or the mailbox retention period stay deleted. Folder, read state and custom labels are preserved. Repeating the operation leaves restored messages unchanged. Previously canceled scheduled sends are not resumed.

Parameters

thread_idstring

Thread identifier. Starts with thr_.

Response Payload

id
string
required

Thread ID.

mailbox_id
string
required

Mailbox this conversation belongs to.

channel
string
required

Channel this conversation lives on. Always email.

contact_id
nullable string
required

Contact linked to this conversation, or null when none is linked.

subject
nullable string
required

Subject of the conversation, taken from its first message. Null when that message had no subject.

participants
array of string
required

Addresses that appear on the retained messages in this conversation, including the mailbox's own address.

message_count
integer
required

Number of retained messages in this conversation, both directions.

unread_count
integer
required

Number of retained received messages that are still unread. Spam and blocked mail is not counted.

last_message_at
string
required

When the most recent retained message in this conversation was received or sent.

last_direction
string
required

Direction of the most recent message: inbound for a received message, outbound for a sent one.

Possible values: inbound, outbound

folder
string
required

Primary conversation folder. The supported folders are inbox, archive, spam, blocked, sent, and trash. Blocked and sent are assigned automatically. The sent filter also includes sent conversations that received replies and still sit in the inbox; moving them with PATCH removes them from the sent filter.

Possible values: inbox, archive, spam, blocked, sent, trash

read
boolean
required

Whether every retained received message is read, including trash, spam and blocked messages. Outbound messages do not affect this state.

labels
array of string
required

Custom labels applied to this conversation. Folder and read state are separate fields.

created_at
string
required

When the thread was created.

updated_at
string
required

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.

Show child attributes
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.

scheduled_count
integer

Scheduled or dispatching sends targeting this conversation. Returned by conversation get and list, including zero when none remain. Omitted by search.

next_scheduled_at
string

Earliest due time among scheduled or dispatching sends. Returned by conversation get and list only when scheduled_count is positive. Omitted by search and when no sends remain.

Continue with the documentation, guides and examples for this topic.