Skip to main content

beeper_desktop_api/client/
accounts.rs

1//! Account-related API operations
2
3use crate::models::GetAccountsOutput;
4use crate::error::Result;
5use super::{BeeperClient, handle_response};
6
7impl BeeperClient {
8    /// Lists all connected messaging accounts
9    ///
10    /// Lists chat accounts across networks (WhatsApp, Telegram, Twitter/X, etc.)
11    /// actively connected to this Beeper Desktop instance
12    pub async fn get_accounts(&self) -> Result<GetAccountsOutput> {
13        let url = format!("{}/v1/accounts", self.get_base_url());
14        let response = self
15            .get_http_client()
16            .get(&url)
17            .header("Authorization", self.get_auth_header())
18            .send()
19            .await
20            .map_err(|e| super::utils::map_request_error(e, self.get_base_url()))?;
21
22        handle_response(response).await
23    }
24}