List mailboxes
/v1/email/mailboxesfor await (const mailbox of bird.email.mailboxes.list()) {
console.log(mailbox.address);
}for mailbox in client.email.mailboxes.list():
print(mailbox.id, mailbox.address)for mailbox, err := range client.Email.Mailboxes.List(context.Background(), bird.EmailMailboxesListParams{}) {
if err != nil {
log.Fatal(err)
}
fmt.Println(mailbox.Id)
}foreach ($bird->email->mailboxes->list() as $mailbox) {
echo $mailbox->getId(), ' ', $mailbox->getAddress(), "\n";
}bird email mailboxes listcurl -X GET "https://us1.platform.bird.com/v1/email/mailboxes" \
-H "Authorization: Bearer $TOKEN" \
--url-query "address=concierge@inbox.ai" \
--url-query "q=concierge" \
--url-query "domain=inbox.ai" \
--url-query "include_deleted=false" \
--url-query "limit=25"{
"data": [
{
"id": "mbx_01krdgeqcxet5s7t44vh8rt9mg",
"address": "concierge@inbox.ai",
"display_name": "Acme Concierge",
"receive_policy": "open",
"state": "active",
"channel": "email",
"owner": {
"type": "workspace",
"id": "ws_01krdgeqcxet5s7t44vh8rt9mg"
},
"inbound_address_id": "ina_01krdgeqcxet5s7t44vh8rt9mg",
"retention_tier": "30d"
}
],
"next_cursor": "eyJ2IjoxLCJzIjoiXCIyMDI2LTA1LTI1VDE0OjAzOjEwWlwiIiwiaSI6IjAxOTJmM2IxLTRjN2UtN2EyYi05ZDYxLThmM2E1YzJlN2I0MCJ9",
"prev_cursor": null,
"refresh_cursor": "eyJ2IjoxLCJzIjoiXCIyMDI2LTA1LTI1VDE2OjQyOjAxWlwiIiwiaSI6IjAxOTJmM2IxLTllMDQtN2NkMy1iODE3LTJhNmY0ZDFjOGUwOSJ9"
}
Returns a paginated list of the workspace's mailboxes, newest first. Search across addresses and display names with q, look a mailbox up by its exact address, or filter by lifecycle state or domain.
Query Parameters
addressstringFilter to the mailbox with exactly this address.
qstringCase-insensitive search matching the mailbox's address or display name (substring).
statestringReturn only active or suspended mailboxes. Use include_deleted for restorable deleted mailboxes.
Possible values: active, suspended
domainstringFilter to mailboxes whose address is on this domain.
include_deletedbooleanInclude mailboxes deleted within their 30-day restore window. Defaults to false, so only active and suspended mailboxes are returned. A deleted mailbox has deleted_at set.
limitintegerMaximum number of items to return per page.
starting_afterstringCursor from the next_cursor field of a previous list response. Returns items immediately after the cursor position in the current sort order.
ending_beforestringCursor from the prev_cursor or refresh_cursor field of a previous list response. Returns items immediately before the cursor position in the current sort order. prev_cursor returns the preceding page. refresh_cursor anchors at the first row of that response, which on a newest-first sort is how to fetch the items that have appeared since.
Response Payload
dataShow child attributes
data.idMailbox ID.
data.addressThe mailbox's email address. Immutable once created.
data.display_nameDisplay name used as the sender name on mail from this mailbox. null when unset.
data.default_reply_toDefault Reply-To address stamped on mail sent from this mailbox. null when unset.
data.receive_policyWhich inbound mail the mailbox accepts:
open: Accepts everything not blocked by a rule.replies_only: Accepts only replies to messages this mailbox has sent. A reply must match a message the mailbox sent. Landing in an existing thread by itself does not count.allowlist: Accepts only senders matching an allow rule. Replies to prior outbound mail are always admitted unless blocked.drop: Stores nothing.
Possible values: open, replies_only, allowlist, drop
data.stateLifecycle state. active means the mailbox can send, receive, and expose conversations. suspended pauses sending, conversation reads, and events; inbound mail is retained with the blocked label until you resume it.
Possible values: active, suspended
data.channelThe channel this mailbox receives on. Always email.
Possible values: email
data.ownerThe principal that owns the mailbox. Always the workspace.
Show child attributes
data.owner.typeOwner principal type.
Possible values: workspace
data.owner.idOwner principal ID.
data.inbound_address_idThe underlying inbound address that receives this mailbox's mail.
data.retention_tierHow long message metadata, extracted text, and attachments are kept. Original bodies and inbound raw MIME are limited to 30 days on every tier.
Possible values: 30d, 90d, 1y
data.message_countNumber of retained messages across all threads.
data.thread_countNumber of retained threads.
data.size_bytesStored bytes across the mailbox's retained messages: subject, preview, extracted text, and attachment bytes. Message bodies and raw MIME expire after 30 days and do not count. Maintained with each message written or deleted, so the value is current; messages stored before the counter existed are not counted.
data.unread_thread_countNumber of threads with unread messages in this mailbox, excluding trash. null on create/update responses.
data.metadataYour own key/value data attached to the mailbox. Up to 2 KB. Keys starting with __bird are reserved.
data.local_part_generatedWhether we generated the local part of the address. false means a custom handle was chosen at creation. On the shared inbox.ai domain a custom handle counts against your plan's custom-handle allowance.
data.created_atWhen the mailbox was created.
data.updated_atWhen the mailbox was last updated.
data.deleted_atWhen the mailbox was deleted, or null if active. Deletion stops receiving; restore is available for 30 days unless permanent erasure has started.
next_cursorCursor for the next page. Pass back as starting_after to advance forward. null when no next page exists.
prev_cursorCursor for the previous page. Pass back as ending_before to step backward. null when no previous page exists.
refresh_cursorRefresh anchor, the first row of this response. Pass back as ending_before to fetch what precedes it in the current sort order. On a newest-first sort those are the items that have appeared since; on any other sort they are the items that sort earlier, so refreshing such a list means re-fetching it instead. Non-null whenever data is non-empty; null only on an empty page. Distinct from prev_cursor.
Related resources
Continue with the documentation, guides and examples for this topic.