renegade_sdk/renegade_wallet_client/actions/
create_account.rs1use renegade_external_api::EmptyRequestResponse;
4use renegade_external_api::http::account::{CREATE_ACCOUNT_ROUTE, CreateAccountRequest};
5
6use crate::{
7 RenegadeClientError,
8 client::{AccountSecrets, RenegadeClient},
9};
10
11impl RenegadeClient {
12 pub async fn create_account(&self) -> Result<(), RenegadeClientError> {
18 let AccountSecrets { account_id, master_view_seed, auth_hmac_key, .. } = self.secrets;
19
20 let address = self.get_account_address();
21 let schnorr_public_key = self.get_schnorr_public_key();
22
23 let request = CreateAccountRequest {
24 account_id,
25 address,
26 master_view_seed,
27 auth_hmac_key: auth_hmac_key.into(),
28 schnorr_public_key,
29 };
30
31 self.relayer_client.post::<_, EmptyRequestResponse>(CREATE_ACCOUNT_ROUTE, request).await?;
32
33 Ok(())
34 }
35}