Skip to content
  • Auto
  • Light
  • Dark
Download Beeper

Retrieve

Retrieve chat details
chats.retrieve(strchat_id, ChatRetrieveParams**kwargs) -> Chat
get/v1/chats/{chatID}

Retrieve chat details including metadata, participants, and latest message

ParametersExpand Collapse
chat_id: str

Unique identifier of the chat.

max_participant_count: Optional[int]

Maximum number of participants to return. Use -1 for all; otherwise 0–500. Defaults to 20.

minimum-1
maximum500
ReturnsExpand Collapse
class Chat:
id: str

Unique identifier of the chat (room/thread ID, same as id) across Beeper.

account_id: str

Beeper account ID this chat belongs to.

network: str

Display-only human-readable network name (e.g., 'WhatsApp', 'Messenger').

participants: Participants

Chat participants information.

has_more: bool

True if there are more participants than included in items.

items: List[User]

Participants returned for this chat (limited by the request; may be a subset).

id: str

Stable Beeper user ID. Use as the primary key when referencing a person.

cannot_message: Optional[bool]

True if Beeper cannot initiate messages to this user (e.g., blocked, network restriction, or no DM path). The user may still message you.

email: Optional[str]

Email address if known. Not guaranteed verified.

full_name: Optional[str]

Display name as shown in clients (e.g., 'Alice Example'). May include emojis.

img_url: Optional[str]

Avatar image URL if available. May be temporary or local-only to this device; download promptly if durable access is needed.

is_self: Optional[bool]

True if this user represents the authenticated account's own identity.

phone_number: Optional[str]

User's phone number in E.164 format (e.g., '+14155552671'). Omit if unknown.

username: Optional[str]

Human-readable handle if available (e.g., '@alice'). May be network-specific and not globally unique.

total: int

Total number of participants in the chat.

title: str

Display title of the chat as computed by the client/server.

type: Literal["single", "group"]

Chat type: 'single' for direct messages, 'group' for group chats.

Accepts one of the following:
"single"
"group"
unread_count: int

Number of unread messages.

is_archived: Optional[bool]

True if chat is archived.

is_muted: Optional[bool]

True if chat notifications are muted.

is_pinned: Optional[bool]

True if chat is pinned.

last_activity: Optional[datetime]

Timestamp of last activity. Chats with more recent activity are often more important.

formatdate-time
last_read_message_sort_key: Optional[Union[int, str, null]]

Last read message sortKey (hsOrder). Used to compute 'isUnread'.

Accepts one of the following:
LastReadMessageSortKeyUnionMember0 = int
LastReadMessageSortKeyUnionMember1 = str
local_chat_id: Optional[str]

Local chat ID specific to this Beeper Desktop installation.

Retrieve chat details
from beeper_desktop_api import BeeperDesktop

client = BeeperDesktop(
    access_token="My Access Token",
)
chat = client.chats.retrieve(
    chat_id="!NCdzlIaMjZUmvmvyHU:beeper.com",
)
print(chat.id)
{
  "id": "!instagram_mattwondra:local-instagram.localhost",
  "accountID": "local-instagram_ba_eRfQMmnSNy_p7Ih7HL7RduRpKFU",
  "network": "Instagram",
  "participants": {
    "hasMore": false,
    "items": [
      {
        "id": "@mattwondra:local-instagram.localhost",
        "cannotMessage": false,
        "email": "email",
        "fullName": "Matt Wondra",
        "imgURL": "imgURL",
        "isSelf": false,
        "phoneNumber": "phoneNumber",
        "username": "mattwondra"
      },
      {
        "id": "@batuhan:local-instagram.localhost",
        "cannotMessage": false,
        "email": "email",
        "fullName": "Batuhan İçöz",
        "imgURL": "imgURL",
        "isSelf": true,
        "phoneNumber": "phoneNumber",
        "username": "batuhan"
      }
    ],
    "total": 2
  },
  "title": "Matt Wondra",
  "type": "single",
  "unreadCount": 0,
  "isArchived": false,
  "isMuted": false,
  "isPinned": false,
  "lastActivity": "2025-08-31T19:41:41.000Z",
  "lastReadMessageSortKey": 449706228480,
  "localChatID": "1229391"
}
Returns Examples
{
  "id": "!instagram_mattwondra:local-instagram.localhost",
  "accountID": "local-instagram_ba_eRfQMmnSNy_p7Ih7HL7RduRpKFU",
  "network": "Instagram",
  "participants": {
    "hasMore": false,
    "items": [
      {
        "id": "@mattwondra:local-instagram.localhost",
        "cannotMessage": false,
        "email": "email",
        "fullName": "Matt Wondra",
        "imgURL": "imgURL",
        "isSelf": false,
        "phoneNumber": "phoneNumber",
        "username": "mattwondra"
      },
      {
        "id": "@batuhan:local-instagram.localhost",
        "cannotMessage": false,
        "email": "email",
        "fullName": "Batuhan İçöz",
        "imgURL": "imgURL",
        "isSelf": true,
        "phoneNumber": "phoneNumber",
        "username": "batuhan"
      }
    ],
    "total": 2
  },
  "title": "Matt Wondra",
  "type": "single",
  "unreadCount": 0,
  "isArchived": false,
  "isMuted": false,
  "isPinned": false,
  "lastActivity": "2025-08-31T19:41:41.000Z",
  "lastReadMessageSortKey": 449706228480,
  "localChatID": "1229391"
}