
## Get customer account information
---
This method gets a customer’s account information.
  
This method requires customer authentication.


<div class="admonition admonition-note"><div class="admonition-icon"><svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2.5"><path stroke-linecap="round" stroke-linejoin="round" d="M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z" /></svg></div><div class="admonition-body"><div class="admonition-content">

The API key must have the `API_PERSONAL_INFORMATION_CLIENT_READ` permission from the **Client** group.

</div></div></div>

**Method name:**  
Client.getAccount()
  
**Declaration:**  

<div class="content-tabs code-tabs" data-tab-group="tabgrp-2207">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-2207-0" data-tab-group="tabgrp-2207" data-tab-active="true">Java</button><button class="tab-button" data-tab-id="tabgrp-2207-1" data-tab-group="tabgrp-2207">Kotlin</button></div>

<div class="tab-panel" data-tab-id="tabgrp-2207-0" data-tab-group="tabgrp-2207" data-tab-active="true">

```Java
public static IDataApiCall<GetAccountInformation> getAccount()
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-2207-1" data-tab-group="tabgrp-2207">

```Kotlin
fun getAccount():IDataApiCall<GetAccountInformation>
```

</div>
</div>


**Parameters:**  
No parameters required.

**Return Value:**  
[IDataApiCall](/developers/mobile-sdk/method-reference/android/public-interfaces#idataapicall)<[GetAccountInformation](/developers/mobile-sdk/class-reference/android/client#getaccountinformation)> object to execute the request.

**Example:**  

<div class="content-tabs code-tabs" data-tab-group="tabgrp-2208">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-2208-0" data-tab-group="tabgrp-2208" data-tab-active="true">Java</button><button class="tab-button" data-tab-id="tabgrp-2208-1" data-tab-group="tabgrp-2208">Kotlin</button></div>

<div class="tab-panel" data-tab-id="tabgrp-2208-0" data-tab-group="tabgrp-2208" data-tab-active="true">

```Java
private IDataApiCall<GetAccountInformation> getAccountCall;
private void getAccount(boolean isFacebook) {
        if (getAccountCall != null) getAccountCall.cancel();
        getAccountCall = Client.getAccount();
        getAccountCall.execute(({ this.onGetAccountSuccessful() }), ({ this.onGetAccountFailure() });
    }
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-2208-1" data-tab-group="tabgrp-2208">

```Kotlin
private val getAccountCall:IDataApiCall<GetAccountInformation>
private fun getAccount(isFacebook:Boolean) {
  if (getAccountCall != null) getAccountCall.cancel()
  getAccountCall = Client.getAccount()
  getAccountCall.execute(({ this.onGetAccountSuccessful() }), ({ this.onGetAccountFailure() })
}
```

</div>
</div>


## Get customer's events
---
This method retrieves events for an authenticated customer.
  
This method requires customer authentication.
**Method name:**  
Client.getEvents(clientEventsQuery)
  
**Declaration:**  

<div class="content-tabs code-tabs" data-tab-group="tabgrp-2209">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-2209-0" data-tab-group="tabgrp-2209" data-tab-active="true">Java</button><button class="tab-button" data-tab-id="tabgrp-2209-1" data-tab-group="tabgrp-2209">Kotlin</button></div>

<div class="tab-panel" data-tab-id="tabgrp-2209-0" data-tab-group="tabgrp-2209" data-tab-active="true">

```Java
public static IDataApiCall<List<ClientEventData>> getEvents(ClientEventsQuery clientEventsQuery)
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-2209-1" data-tab-group="tabgrp-2209">

```Kotlin
fun getEvents(clientEventsQuery:ClientEventsQuery):IDataApiCall<List<ClientEventData>>
```

</div>
</div>


**Parameters:**  
| Parameter | Type | Mandatory | Default | Description |
| --- | --- | --- | --- | --- |
| **clientEventsQuery** | ClientEventsQuery | yes | - | Object to create clientEvent query |

**Return Value:**  
[IDataApiCall](/developers/mobile-sdk/method-reference/android/public-interfaces#idataapicall)<List<[ClientEventData](/developers/mobile-sdk/class-reference/android/client#clienteventdata)>> object to execute the request.

**Example:**  

<div class="content-tabs code-tabs" data-tab-group="tabgrp-2210">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-2210-0" data-tab-group="tabgrp-2210" data-tab-active="true">Java</button><button class="tab-button" data-tab-id="tabgrp-2210-1" data-tab-group="tabgrp-2210">Kotlin</button></div>

<div class="tab-panel" data-tab-id="tabgrp-2210-0" data-tab-group="tabgrp-2210" data-tab-active="true">

```Java
private IDataApiCall<List<ClientEventData>> getEventClientsCall;
    if (getEventClientsCall != null) getEventClientsCall.cancel();
    getEventClientsCall = Client.getEvents(clientEventsQuery);
    getEventClientsCall.execute(({ this.onSuccess() }), ({ this.onFailure() });
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-2210-1" data-tab-group="tabgrp-2210">

```Kotlin
private val getEventClientsCall:IDataApiCall<List<ClientEventData>>
  if (getEventClientsCall != null) getEventClientsCall.cancel()
  getEventClientsCall = Client.getEvents(clientEventsQuery)
  getEventClientsCall.execute(({ this.onSuccess() }), ({ this.onFailure() })
```

</div>
</div>


## Update customer account basic information
---
This method updates a customer’s account’s basic information (without identification data: uuid, customId, email).
  
This method requires the context object with the customer’s account information. Omitted fields are not modified.
  
This method does not require customer authentication and can be used by anonymous profiles.
  
| | **iOS SDK** | **Android SDK** | **React Native SDK** | **Flutter SDK** |
| --- | --- | --- | --- | --- |
| <span style="color:green">Introduced in:</span> | 4.22.0 | 5.21.0 | 0.24.0 | 1.4.0 |


<div class="admonition admonition-note"><div class="admonition-icon"><svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2.5"><path stroke-linecap="round" stroke-linejoin="round" d="M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z" /></svg></div><div class="admonition-body"><div class="admonition-content">

The API key must have the `API_BASIC_INFORMATION_CLIENT_UPDATE` permission from the **Client** group.

</div></div></div>

**Method name:**  
Client.updateAccountBasicInformation(accountInformation)
  
**Declaration:**  

<div class="content-tabs code-tabs" data-tab-group="tabgrp-2211">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-2211-0" data-tab-group="tabgrp-2211" data-tab-active="true">Java</button><button class="tab-button" data-tab-id="tabgrp-2211-1" data-tab-group="tabgrp-2211">Kotlin</button></div>

<div class="tab-panel" data-tab-id="tabgrp-2211-0" data-tab-group="tabgrp-2211" data-tab-active="true">

```Java
public static IApiCall updateAccountBasicInformation(@NonNull UpdateAccountBasicInformation accountInformation)
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-2211-1" data-tab-group="tabgrp-2211">

```Kotlin
fun updateAccountBasicInformation(@NonNull accountInformation:UpdateAccountBasicInformation):IApiCall
```

</div>
</div>


**Parameters:**  
| Parameter | Type | Mandatory | Default | Description |
| --- | --- | --- | --- | --- |
| **accountInformation** | [UpdateAccountBasicInformation](/developers/mobile-sdk/class-reference/android/client#updateaccountbasicinformation) | yes | - | Builder Pattern object with the Customer's basic account information |

**Return Value:**  
[IApiCall](/developers/mobile-sdk/method-reference/android/public-interfaces#iapicall) object to execute the request.

**Example:**  

<div class="content-tabs code-tabs" data-tab-group="tabgrp-2212">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-2212-0" data-tab-group="tabgrp-2212" data-tab-active="true">Java</button><button class="tab-button" data-tab-id="tabgrp-2212-1" data-tab-group="tabgrp-2212">Kotlin</button></div>

<div class="tab-panel" data-tab-id="tabgrp-2212-0" data-tab-group="tabgrp-2212" data-tab-active="true">

```Java
if (apiCall != null) apiCall.cancel();
            apiCall = Client.updateAccountBasicInformation(accountInformation);
            apiCall.execute(this::onSuccess, this::onFailure);
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-2212-1" data-tab-group="tabgrp-2212">

```Kotlin
if (apiCall != null) apiCall.cancel()
apiCall = Client.updateAccountBasicInformation(accountInformation)
apiCall.execute(({ this.onSuccess() }), ({ this.onFailure() }))
```

</div>
</div>


## Update customer account information
---
This method updates a customer’s account information.
  
This method requires the context object with the customer’s account information. Omitted fields are not modified.
  
This method requires customer authentication.


<div class="admonition admonition-note"><div class="admonition-icon"><svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2.5"><path stroke-linecap="round" stroke-linejoin="round" d="M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z" /></svg></div><div class="admonition-body"><div class="admonition-content">

The API key must have the `API_PERSONAL_INFORMATION_CLIENT_UPDATE` permission from the **Client** group.

</div></div></div>

**Method name:**  
Client.updateAccount(accountInformation)
  
**Declaration:**  

<div class="content-tabs code-tabs" data-tab-group="tabgrp-2213">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-2213-0" data-tab-group="tabgrp-2213" data-tab-active="true">Java</button><button class="tab-button" data-tab-id="tabgrp-2213-1" data-tab-group="tabgrp-2213">Kotlin</button></div>

<div class="tab-panel" data-tab-id="tabgrp-2213-0" data-tab-group="tabgrp-2213" data-tab-active="true">

```Java
public static IApiCall updateAccount(@NonNull UpdateAccountInformation accountInformation)
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-2213-1" data-tab-group="tabgrp-2213">

```Kotlin
fun updateAccount(@NonNull accountInformation:UpdateAccountInformation):IApiCall
```

</div>
</div>


**Parameters:**  
| Parameter | Type | Mandatory | Default | Description |
| --- | --- | --- | --- | --- |
| **accountInformation** | [UpdateAccountInformation](/developers/mobile-sdk/class-reference/android/client#updateaccountinformation)  | yes | - | Builder Pattern object with the Customer's account information |

**Return Value:**  
[IApiCall](/developers/mobile-sdk/method-reference/android/public-interfaces#iapicall) object to execute the request.

**Example:**  

<div class="content-tabs code-tabs" data-tab-group="tabgrp-2214">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-2214-0" data-tab-group="tabgrp-2214" data-tab-active="true">Java</button><button class="tab-button" data-tab-id="tabgrp-2214-1" data-tab-group="tabgrp-2214">Kotlin</button></div>

<div class="tab-panel" data-tab-id="tabgrp-2214-0" data-tab-group="tabgrp-2214" data-tab-active="true">

```Java
if (apiCall != null) apiCall.cancel();
            apiCall = Client.updateAccount(accountInformation);
            apiCall.execute(this::onSuccess, this::onFailure);
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-2214-1" data-tab-group="tabgrp-2214">

```Kotlin
if (apiCall != null) apiCall.cancel()
apiCall = Client.updateAccount(accountInformation)
apiCall.execute(({ this.onSuccess() }), ({ this.onFailure() }))
```

</div>
</div>


## Change customer's account password
---
This method changes a customer’s password.
  
This method requires customer authentication.


<div class="admonition admonition-note"><div class="admonition-icon"><svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2.5"><path stroke-linecap="round" stroke-linejoin="round" d="M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z" /></svg></div><div class="admonition-body"><div class="admonition-content">

Returns the HTTP 403 status code if the provided old password is invalid.

</div></div></div>



<div class="admonition admonition-note"><div class="admonition-icon"><svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2.5"><path stroke-linecap="round" stroke-linejoin="round" d="M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z" /></svg></div><div class="admonition-body"><div class="admonition-content">

The API key must have the `SAUTH_CHANGE_PASSWORD_CLIENT_UPDATE` permission from the **Client** group.

</div></div></div>

**Method name:**  
Client.changePassword(oldPassword, password)
  
**Declaration:**  

<div class="content-tabs code-tabs" data-tab-group="tabgrp-2215">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-2215-0" data-tab-group="tabgrp-2215" data-tab-active="true">java</button><button class="tab-button" data-tab-id="tabgrp-2215-1" data-tab-group="tabgrp-2215">kotlin</button></div>

<div class="tab-panel" data-tab-id="tabgrp-2215-0" data-tab-group="tabgrp-2215" data-tab-active="true">

```java
public static IApiCall changePassword(@NonNull String oldPassword, @NonNull String password)
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-2215-1" data-tab-group="tabgrp-2215">

```kotlin
fun changePassword(@NonNull oldPassword:String, @NonNull password:String):IApiCall
```

</div>
</div>


**Parameters:**  
| Parameter | Type | Mandatory | Default | Description |
| --- | --- | --- | --- | --- |
| **oldPassword** | String | yes | - | Client's old password |
| **password** | String | yes | --- | Client's new password |

**Return Value:**  
[IApiCall](/developers/mobile-sdk/method-reference/android/public-interfaces#iapicall) object to execute the request.

**Example:**  

<div class="content-tabs code-tabs" data-tab-group="tabgrp-2216">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-2216-0" data-tab-group="tabgrp-2216" data-tab-active="true">java</button><button class="tab-button" data-tab-id="tabgrp-2216-1" data-tab-group="tabgrp-2216">kotlin</button></div>

<div class="tab-panel" data-tab-id="tabgrp-2216-0" data-tab-group="tabgrp-2216" data-tab-active="true">

```java
private IApiCall apiCall;
if (apiCall != null) apiCall.cancel();
            apiCall = Client.changePassword(oldPassword, password);
            apiCall.execute(this::onSuccess, this::onFailure);
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-2216-1" data-tab-group="tabgrp-2216">

```kotlin
val apiCall:IApiCall
if (apiCall != null) apiCall.cancel()
apiCall = Client.changePassword(oldPassword, password)
apiCall.execute(({ this.onSuccess() }), ({ this.onFailure() }))
```

</div>
</div>


## Request password reset for customer account
---
This method requests a customer’s password reset with email. The customer will receive a token to the provided email address. That token is then used for the confirmation of password reset.
  
This method requires the customer’s email.
  
This method is a global operation and doesn't require customer authentication.


<div class="admonition admonition-note"><div class="admonition-icon"><svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2.5"><path stroke-linecap="round" stroke-linejoin="round" d="M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z" /></svg></div><div class="admonition-body"><div class="admonition-content">

The API key must have the `SAUTH_PASSWORD_RESET_CLIENT_CREATE` permission from the **Client** group.

</div></div></div>

**Method name:**  
Client.requestPasswordReset(resetRequest)
  
**Declaration:**  

<div class="content-tabs code-tabs" data-tab-group="tabgrp-2217">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-2217-0" data-tab-group="tabgrp-2217" data-tab-active="true">Java</button><button class="tab-button" data-tab-id="tabgrp-2217-1" data-tab-group="tabgrp-2217">Kotlin</button></div>

<div class="tab-panel" data-tab-id="tabgrp-2217-0" data-tab-group="tabgrp-2217" data-tab-active="true">

```Java
public static IApiCall requestPasswordReset(@NonNull PasswordResetRequest resetRequest)
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-2217-1" data-tab-group="tabgrp-2217">

```Kotlin
fun requestPasswordReset(@NonNull resetRequest:PasswordResetRequest):IApiCall
```

</div>
</div>


**Parameters:**  
| Parameter | Type | Mandatory | Default | Description |
| --- | --- | --- | --- | --- |
| **resetRequest** | PasswordResetRequest | yes | - | PasswordResetRequest object with the Client's email. |


**Return Value:**  
[IApiCall](/developers/mobile-sdk/method-reference/android/public-interfaces#iapicall) object to execute the request.

**Example:**  

<div class="content-tabs code-tabs" data-tab-group="tabgrp-2218">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-2218-0" data-tab-group="tabgrp-2218" data-tab-active="true">Java</button><button class="tab-button" data-tab-id="tabgrp-2218-1" data-tab-group="tabgrp-2218">Kotlin</button></div>

<div class="tab-panel" data-tab-id="tabgrp-2218-0" data-tab-group="tabgrp-2218" data-tab-active="true">

```Java
if (call != null) call.cancel();
        call = Client.requestPasswordReset(new PasswordResetRequest(email));
        EspressoTestingIdlingResource.increment();
        call.execute(this::onSuccess, this::onFailure);
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-2218-1" data-tab-group="tabgrp-2218">

```Kotlin
if (call != null) call.cancel()
call = Client.requestPasswordReset(PasswordResetRequest(email))
call.execute(({ this.onSuccess() }), ({ this.onFailure() }))
```

</div>
</div>


## Confirm password reset for customer account
---
This method confirm a customer’s password reset with the new password and token provided by password reset request.  
  
This method requires the customer’s new password and the confirmation token received by e-mail.
  
This method is a global operation and doesn't require customer authentication.


<div class="admonition admonition-note"><div class="admonition-icon"><svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2.5"><path stroke-linecap="round" stroke-linejoin="round" d="M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z" /></svg></div><div class="admonition-body"><div class="admonition-content">

The API key must have the `SAUTH_PASSWORD_RESET_CLIENT_CREATE` permission from the **Client** group.

</div></div></div>

**Method name:**  
Client.confirmPasswordReset(resetConfirmation)
  
**Declaration:**  


<div class="content-tabs code-tabs" data-tab-group="tabgrp-2219">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-2219-0" data-tab-group="tabgrp-2219" data-tab-active="true">java</button><button class="tab-button" data-tab-id="tabgrp-2219-1" data-tab-group="tabgrp-2219">kotlin</button></div>

<div class="tab-panel" data-tab-id="tabgrp-2219-0" data-tab-group="tabgrp-2219" data-tab-active="true">

```java
public static IApiCall confirmPasswordReset(@NonNull PasswordResetConfirmation resetConfirmation)
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-2219-1" data-tab-group="tabgrp-2219">

```kotlin
fun confirmPasswordReset(@NonNull resetConfirmation:PasswordResetConfirmation):IApiCall
```

</div>
</div>


**Parameters:**  
| Parameter | Type | Mandatory | Default | Description |
| --- | --- | --- | --- | --- |
| **resetConfirmation** | PasswordResetConfirmation | yes | - | PasswordResetConfirmation object with the Client's new password and confirmation token. |

**Return Value:**  
[IApiCall](/developers/mobile-sdk/method-reference/android/public-interfaces#iapicall) object to execute the request.

**Example:**  

<div class="content-tabs code-tabs" data-tab-group="tabgrp-2220">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-2220-0" data-tab-group="tabgrp-2220" data-tab-active="true">Java</button><button class="tab-button" data-tab-id="tabgrp-2220-1" data-tab-group="tabgrp-2220">Kotlin</button></div>

<div class="tab-panel" data-tab-id="tabgrp-2220-0" data-tab-group="tabgrp-2220" data-tab-active="true">

```Java
private IApiCall call;
if (call != null) call.cancel();
            call = Client.confirmPasswordReset(confirmation);
            call.execute(this::onSuccess, this::onFailure);
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-2220-1" data-tab-group="tabgrp-2220">

```Kotlin
val call:IApiCall
if (call != null) call.cancel()
call = Client.confirmPasswordReset(confirmation)
call.execute(({ this.onSuccess() }), ({ this.onFailure() }))
```

</div>
</div>


## Request email change for customer account
---
This method requests a customer's email change.
  
This method is a global operation and doesn't require customer authentication.
  

<div class="admonition admonition-note"><div class="admonition-icon"><svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2.5"><path stroke-linecap="round" stroke-linejoin="round" d="M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z" /></svg></div><div class="admonition-body"><div class="admonition-content">

Returns the HTTP 403 status code if the provided token or the password is invalid.

</div></div></div>



<div class="admonition admonition-note"><div class="admonition-icon"><svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2.5"><path stroke-linecap="round" stroke-linejoin="round" d="M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z" /></svg></div><div class="admonition-body"><div class="admonition-content">

The API key must have the `SAUTH_CHANGE_EMAIL_CLIENT_UPDATE` permission from the **Client** group.

</div></div></div>

**Method name:**  
Client.requestEmailChange(email, password, externalToken, authId)
  
**Declaration:**  

<div class="content-tabs code-tabs" data-tab-group="tabgrp-2221">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-2221-0" data-tab-group="tabgrp-2221" data-tab-active="true">Java</button><button class="tab-button" data-tab-id="tabgrp-2221-1" data-tab-group="tabgrp-2221">Kotlin</button></div>

<div class="tab-panel" data-tab-id="tabgrp-2221-0" data-tab-group="tabgrp-2221" data-tab-active="true">

```Java
public static IApiCall requestEmailChange(String email, String password, @Nullable String externalToken, @Nullable String authId)
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-2221-1" data-tab-group="tabgrp-2221">

```Kotlin
fun requestEmailChange(email:String, password:String, @Nullable externalToken:String, @Nullable authId: String):IApiCall
```

</div>
</div>


**Parameters:**  
| Parameter | Type | Mandatory | Default | Description |
| --- | --- | --- | --- | --- |
| **email** | String | yes | - | Customer's email |
| **password** | String | yes | -| Customer's password |
| **externalToken** | String | no | - | ExternalToken should be used for Facebook, Oauth. For Synerise account, pass null |
| **authId** | String | no | - | Optional identifier of authorization. For Synerise account, pass null. |

**Return Value:**  
[IApiCall](/developers/mobile-sdk/method-reference/android/public-interfaces#iapicall) object to execute the request.

**Example:**  

<div class="content-tabs code-tabs" data-tab-group="tabgrp-2222">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-2222-0" data-tab-group="tabgrp-2222" data-tab-active="true">Java</button><button class="tab-button" data-tab-id="tabgrp-2222-1" data-tab-group="tabgrp-2222">Kotlin</button></div>

<div class="tab-panel" data-tab-id="tabgrp-2222-0" data-tab-group="tabgrp-2222" data-tab-active="true">

```Java
IApiCall apiCall;
apiCall = Client.requestEmailChange(email, password, null, null);
            apiCall.execute(this::onSuccess, this::onFailure);
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-2222-1" data-tab-group="tabgrp-2222">

```Kotlin
val apiCall:IApiCall
apiCall = Client.requestEmailChange(email, password, null, null)
apiCall.execute(({ this.onSuccess() }), ({ this.onFailure() }))
```

</div>
</div>


## Confirm email change for customer account
---
This method confirms an email change.
  
This method is a global operation and doesn't require customer authentication.
  

<div class="admonition admonition-note"><div class="admonition-icon"><svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2.5"><path stroke-linecap="round" stroke-linejoin="round" d="M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z" /></svg></div><div class="admonition-body"><div class="admonition-content">

Returns the HTTP 403 status code if the provided token is invalid.

</div></div></div>



<div class="admonition admonition-note"><div class="admonition-icon"><svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2.5"><path stroke-linecap="round" stroke-linejoin="round" d="M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z" /></svg></div><div class="admonition-body"><div class="admonition-content">

The API key must have the `SAUTH_CHANGE_EMAIL_CLIENT_UPDATE` permission from the **Client** group.

</div></div></div>

**Method name:**  
Client.confirmEmailChange(token, newsletterAgreement)
  
**Declaration:**  

<div class="content-tabs code-tabs" data-tab-group="tabgrp-2223">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-2223-0" data-tab-group="tabgrp-2223" data-tab-active="true">java</button><button class="tab-button" data-tab-id="tabgrp-2223-1" data-tab-group="tabgrp-2223">kotlin</button></div>

<div class="tab-panel" data-tab-id="tabgrp-2223-0" data-tab-group="tabgrp-2223" data-tab-active="true">

```java
public static IApiCall confirmEmailChange(String token, boolean newsletterAgreement)
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-2223-1" data-tab-group="tabgrp-2223">

```kotlin
fun confirmEmailChange(token:String, newsletterAgreement:Boolean):IApiCall
```

</div>
</div>


**Parameters:**  
| Parameter | Type | Mandatory | Default | Description |
| --- | --- | --- | --- | --- |
| **token** | String | yes | - | Token from customer's email |
| **newsletterAgreement** | boolean | yes | - | Newsletter agreement |

**Return Value:**  
[IApiCall](/developers/mobile-sdk/method-reference/android/public-interfaces#iapicall) object to execute the request.

**Example:**  

<div class="content-tabs code-tabs" data-tab-group="tabgrp-2224">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-2224-0" data-tab-group="tabgrp-2224" data-tab-active="true">java</button><button class="tab-button" data-tab-id="tabgrp-2224-1" data-tab-group="tabgrp-2224">kotlin</button></div>

<div class="tab-panel" data-tab-id="tabgrp-2224-0" data-tab-group="tabgrp-2224" data-tab-active="true">

```java
IApiCall apiCall;
apiCall = Client.confirmEmailChange(token, newsletterAgreement.isChecked());
            apiCall.execute(this::onSuccess, this::onFailure);
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-2224-1" data-tab-group="tabgrp-2224">

```kotlin
val apiCall:IApiCall
apiCall = Client.confirmEmailChange(token, newsletterAgreement.isChecked())
apiCall.execute(({ this.onSuccess() }), ({ this.onFailure() }))
```

</div>
</div>


## Request phone update on customer account
---
This method requests a customer's phone update. A confirmation code is sent to the phone number.
  
This method is a global operation and doesn't require customer authentication.


<div class="admonition admonition-note"><div class="admonition-icon"><svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2.5"><path stroke-linecap="round" stroke-linejoin="round" d="M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z" /></svg></div><div class="admonition-body"><div class="admonition-content">

The API key must have the `API_PERSONAL_PHONE_CLIENT_CREATE` permission from the **Client** group.

</div></div></div>

**Method name:**  
Client.requestPhoneUpdate(phone)
  
**Declaration:**  

<div class="content-tabs code-tabs" data-tab-group="tabgrp-2225">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-2225-0" data-tab-group="tabgrp-2225" data-tab-active="true">Java</button><button class="tab-button" data-tab-id="tabgrp-2225-1" data-tab-group="tabgrp-2225">Kotlin</button></div>

<div class="tab-panel" data-tab-id="tabgrp-2225-0" data-tab-group="tabgrp-2225" data-tab-active="true">

```Java
public static IApiCall requestPhoneUpdate(String phone)
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-2225-1" data-tab-group="tabgrp-2225">

```Kotlin
fun requestPhoneUpdate(phone:String):IApiCall
```

</div>
</div>


**Parameters:**  
| Parameter | Type | Mandatory | Default | Description |
| --- | --- | --- | --- | --- |
| **phone** | String | yes | - | Customer's phone number. |

**Return Value:**  
[IApiCall](/developers/mobile-sdk/method-reference/android/public-interfaces#iapicall) object to execute the request.

**Example:**  

<div class="content-tabs code-tabs" data-tab-group="tabgrp-2226">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-2226-0" data-tab-group="tabgrp-2226" data-tab-active="true">Java</button><button class="tab-button" data-tab-id="tabgrp-2226-1" data-tab-group="tabgrp-2226">Kotlin</button></div>

<div class="tab-panel" data-tab-id="tabgrp-2226-0" data-tab-group="tabgrp-2226" data-tab-active="true">

```Java
IApiCall apiCall;
apiCall = Client.requestPhoneUpdate(phone);
        apiCall.execute(this::onSuccess, this::onFailure);
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-2226-1" data-tab-group="tabgrp-2226">

```Kotlin
val apiCall:IApiCall
apiCall = Client.requestPhoneUpdate(phone)
apiCall.execute(({ this.onSuccess() }), ({ this.onFailure() }))
```

</div>
</div>


## Confirm phone update on customer account
---
This method confirms a phone number update. This action requires the new phone number and confirmation code as parameters.
  
This method is a global operation and doesn't require customer authentication.
  

<div class="admonition admonition-note"><div class="admonition-icon"><svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2.5"><path stroke-linecap="round" stroke-linejoin="round" d="M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z" /></svg></div><div class="admonition-body"><div class="admonition-content">

Returns the HTTP 403 status code if the provided UUID does not exist or the password is invalid.

</div></div></div>



<div class="admonition admonition-note"><div class="admonition-icon"><svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2.5"><path stroke-linecap="round" stroke-linejoin="round" d="M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z" /></svg></div><div class="admonition-body"><div class="admonition-content">

The API key must have the `API_PERSONAL_PHONE_CLIENT_CREATE` permission from the **Client** group.

</div></div></div>

**Method name:**  
Client.confirmPhoneUpdate(phone, confirmationCode, smsAgreement)
  
**Declaration:**  

<div class="content-tabs code-tabs" data-tab-group="tabgrp-2227">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-2227-0" data-tab-group="tabgrp-2227" data-tab-active="true">Java</button><button class="tab-button" data-tab-id="tabgrp-2227-1" data-tab-group="tabgrp-2227">Kotlin</button></div>

<div class="tab-panel" data-tab-id="tabgrp-2227-0" data-tab-group="tabgrp-2227" data-tab-active="true">

```Java
public static IApiCall confirmPhoneUpdate(String phone, String confirmationCode, @Nullable Boolean smsAgreement)
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-2227-1" data-tab-group="tabgrp-2227">

```Kotlin
fun confirmPhoneUpdate(phone:String, confirmationCode:String, @Nullable smsAgreement:Boolean):IApiCall
```

</div>
</div>


**Parameters:**  
| Parameter | Type | Mandatory | Default | Description |
| --- | --- | --- | --- | --- |
| **phone** | String | yes | - | Phone number that will be confirmed |
| **confirmationCode** | String | yes | - | Code received in SMS |
| **smsAgreement** | Boolean | no | - | Optional SMS marketing agreement |

**Return Value:**  
[IApiCall](/developers/mobile-sdk/method-reference/android/public-interfaces#iapicall) object to execute the request.

**Example:**  

<div class="content-tabs code-tabs" data-tab-group="tabgrp-2228">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-2228-0" data-tab-group="tabgrp-2228" data-tab-active="true">Java</button><button class="tab-button" data-tab-id="tabgrp-2228-1" data-tab-group="tabgrp-2228">Kotlin</button></div>

<div class="tab-panel" data-tab-id="tabgrp-2228-0" data-tab-group="tabgrp-2228" data-tab-active="true">

```Java
IApiCall apiCall;
apiCall = Client.confirmPhoneUpdate(phone, code, enableAgreement.isChecked() ? null : smsAgreement.isChecked());
            apiCall.execute(this::onSuccess, this::onFailure);
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-2228-1" data-tab-group="tabgrp-2228">

```Kotlin
val apiCall:IApiCall
apiCall = Client.confirmPhoneUpdate(phone, code, if (enableAgreement.isChecked()) null else smsAgreement.isChecked())
apiCall.execute(({ this.onSuccess() }), ({ this.onFailure() }))
```

</div>
</div>


## Delete customer account by Identity Provider
---
This method deletes a customer's account.
  
This method requires customer authentication.
  

<div class="admonition admonition-note"><div class="admonition-icon"><svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2.5"><path stroke-linecap="round" stroke-linejoin="round" d="M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z" /></svg></div><div class="admonition-body"><div class="admonition-content">

HTTP 403 status code is returned if the provided password or token is invalid.

</div></div></div>



<div class="admonition admonition-note"><div class="admonition-icon"><svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2.5"><path stroke-linecap="round" stroke-linejoin="round" d="M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z" /></svg></div><div class="admonition-body"><div class="admonition-content">

The API key must have the `SAUTH_CLIENT_DELETE`, `SAUTH_OAUTH_CLIENT_DELETE`, `SAUTH_FACEBOOK_CLIENT_DELETE`, `SAUTH_APPLE_CLIENT_DELETE` permissions from the **Client** group.

</div></div></div>

**Method name:**  
Client.deleteAccount(clientAuthFactor, clientIdentityProvider, authId)
  
**Declaration:**  

<div class="content-tabs code-tabs" data-tab-group="tabgrp-2229">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-2229-0" data-tab-group="tabgrp-2229" data-tab-active="true">Java</button><button class="tab-button" data-tab-id="tabgrp-2229-1" data-tab-group="tabgrp-2229">Kotlin</button></div>

<div class="tab-panel" data-tab-id="tabgrp-2229-0" data-tab-group="tabgrp-2229" data-tab-active="true">

```Java
public static IApiCall deleteAccount(String clientAuthFactor, ClientIdentityProvider clientIdentityProvider, @Nullable String authId)
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-2229-1" data-tab-group="tabgrp-2229">

```Kotlin
fun deleteAccount(clientAuthFactor:String, clientIdentityProvider:ClientIdentityProvider, authId:String):IApiCall
```

</div>
</div>


**Parameters:**  
| Parameter | Type | Mandatory | Default | Description |
| --- | --- | --- | --- | --- |
| **clientAuthFactor** | String | yes | - | In case of oauth, fb, or google this is token. If you have synerise account this is password. |
| **clientIdentityProvider** | [ClientIdentityProvider](/developers/mobile-sdk/class-reference/android/client#clientidentityprovider) | yes | - | Provider of your account. Example:  FACEBOOK, OAUTH, SYNERISE, GOOGLE |
| **authId** | String | no | - | Customer's optional unique identifier |

**Return Value:**  
[IApiCall](/developers/mobile-sdk/method-reference/android/public-interfaces#iapicall) object to execute the request.

**Example:**  

<div class="content-tabs code-tabs" data-tab-group="tabgrp-2230">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-2230-0" data-tab-group="tabgrp-2230" data-tab-active="true">Java</button><button class="tab-button" data-tab-id="tabgrp-2230-1" data-tab-group="tabgrp-2230">Kotlin</button></div>

<div class="tab-panel" data-tab-id="tabgrp-2230-0" data-tab-group="tabgrp-2230" data-tab-active="true">

```Java
IApiCall deleteCall = Client.deleteAccount(password, ClientIdentityProvider.SYNERISE, null);
            deleteCall.execute(this::onSuccess, this::onFailure);
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-2230-1" data-tab-group="tabgrp-2230">

```Kotlin
val deleteCall = Client.deleteAccount(password, ClientIdentityProvider.SYNERISE, null)
deleteCall.execute(({ this.onSuccess() }), ({ this.onFailure() }))
```

</div>
</div>


## Removed methods

### <del>Delete customer account</del> {#delete-customer-account}
---
This method deletes a customer's account.
  
This method requires customer authentication.
  
| | **iOS SDK** | **Android SDK** | **React Native SDK** | **Flutter SDK** |
| --- | --- | --- | --- | --- |
| <span style="color:green">Introduced in:</span> | 3.6.11 | 3.6.13 | 0.9.12 | n/a |
| <span style="color:orange">Deprecated in:</span> | 3.6.19 | 3.6.19 | 0.14.0 | n/a |
| <span style="color:red">Removed in:</span> | 5.0.0 | 6.0.0 | n/a | n/a |


<div class="admonition admonition-note"><div class="admonition-icon"><svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2.5"><path stroke-linecap="round" stroke-linejoin="round" d="M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z" /></svg></div><div class="admonition-body"><div class="admonition-content">

Returns the HTTP 403 status code is returned if the provided password is invalid.

</div></div></div>



<div class="admonition admonition-note"><div class="admonition-icon"><svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2.5"><path stroke-linecap="round" stroke-linejoin="round" d="M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z" /></svg></div><div class="admonition-body"><div class="admonition-content">

The API key must have the `SAUTH_CLIENT_DELETE` permission from the **Client** group.

</div></div></div>

**Replaced By:**  
[Delete customer account by Identity Provider](/developers/mobile-sdk/method-reference/android/client-account#delete-customer-account-by-identity-provider)
  
**Method name:**  
Client.deleteAccount(password)
  
**Declaration:**  

<div class="content-tabs code-tabs" data-tab-group="tabgrp-2231">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-2231-0" data-tab-group="tabgrp-2231" data-tab-active="true">Java</button><button class="tab-button" data-tab-id="tabgrp-2231-1" data-tab-group="tabgrp-2231">Kotlin</button></div>

<div class="tab-panel" data-tab-id="tabgrp-2231-0" data-tab-group="tabgrp-2231" data-tab-active="true">

```Java
public static IApiCall deleteAccount(String password)
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-2231-1" data-tab-group="tabgrp-2231">

```Kotlin
fun deleteAccount(password:String):IApiCall
```

</div>
</div>


**Parameters:**  
| Parameter | Type | Mandatory | Default | Description |
| --- | --- | --- | --- | --- |
| **password** | String | yes | - | Customer's current password. |


**Return Value:**  
[IApiCall](/developers/mobile-sdk/method-reference/android/public-interfaces#iapicall) object to execute the request.

**Example:**  

<div class="content-tabs code-tabs" data-tab-group="tabgrp-2232">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-2232-0" data-tab-group="tabgrp-2232" data-tab-active="true">Java</button><button class="tab-button" data-tab-id="tabgrp-2232-1" data-tab-group="tabgrp-2232">Kotlin</button></div>

<div class="tab-panel" data-tab-id="tabgrp-2232-0" data-tab-group="tabgrp-2232" data-tab-active="true">

```Java
IApiCall deleteCall = Client.deleteAccount(password);
            deleteCall.execute(this::onSuccess, this::onFailure);
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-2232-1" data-tab-group="tabgrp-2232">

```Kotlin
val deleteCall = Client.deleteAccount(password)
deleteCall.execute(({ this.onSuccess() }), ({ this.onFailure() }))
```

</div>
</div>


### <del>Delete customer account by OAuth</del> {#delete-customer-account-by-oauth}
---
This method deletes a customer's account by OAuth.
  
This method requires customer authentication.
  
| | **iOS SDK** | **Android SDK** | **React Native SDK** | **Flutter SDK** |
| --- | --- | --- | --- | --- |
| <span style="color:green">Introduced in:</span> | 3.6.11 | 3.6.13 | 0.9.12 | n/a |
| <span style="color:orange">Deprecated in:</span> | 3.6.19 | 3.6.19 | 0.14.0 | n/a |
| <span style="color:red">Removed in:</span> | 5.0.0 | 6.0.0 | n/a | n/a |


<div class="admonition admonition-note"><div class="admonition-icon"><svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2.5"><path stroke-linecap="round" stroke-linejoin="round" d="M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z" /></svg></div><div class="admonition-body"><div class="admonition-content">

The API key must have the `SAUTH_CLIENT_DELETE` and `SAUTH_OAUTH_CLIENT_DELETE` permissions from the **Client** group.

</div></div></div>

**Replaced By:**  
[Delete customer account by Identity Provider](/developers/mobile-sdk/method-reference/android/client-account#delete-customer-account-by-identity-provider)
  
**Method name:**  
Client.deleteAccountByOAuth(accessToken, uuid)

**Declaration:**  

<div class="content-tabs code-tabs" data-tab-group="tabgrp-2233">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-2233-0" data-tab-group="tabgrp-2233" data-tab-active="true">Java</button><button class="tab-button" data-tab-id="tabgrp-2233-1" data-tab-group="tabgrp-2233">Kotlin</button></div>

<div class="tab-panel" data-tab-id="tabgrp-2233-0" data-tab-group="tabgrp-2233" data-tab-active="true">

```Java
public static IApiCall deleteAccountByOAuth(String accessToken, @Nullable String uuid)
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-2233-1" data-tab-group="tabgrp-2233">

```Kotlin
fun deleteAccountByOAuth(accessToken:String, @Nullable uuid:String):IApiCall
```

</div>
</div>


**Parameters:**  
| Parameter | Type | Mandatory | Default | Description |
| --- | --- | --- | --- | --- |
| **accessToken** | String | yes | - | user's token |
| **uuid** | String | no | --- | Optional Customer UUID, internal UUID is used if this parameter is null |

**Return Value:**  
[IApiCall](/developers/mobile-sdk/method-reference/android/public-interfaces#iapicall) object to execute the request.

**Example:**  

<div class="content-tabs code-tabs" data-tab-group="tabgrp-2234">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-2234-0" data-tab-group="tabgrp-2234" data-tab-active="true">Java</button><button class="tab-button" data-tab-id="tabgrp-2234-1" data-tab-group="tabgrp-2234">Kotlin</button></div>

<div class="tab-panel" data-tab-id="tabgrp-2234-0" data-tab-group="tabgrp-2234" data-tab-active="true">

```Java
IApiCall deleteCall = Client.deleteAccountByOAuth(accessToken, uuid)
            deleteCall.execute(this::onSuccess, this::onFailure);
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-2234-1" data-tab-group="tabgrp-2234">

```Kotlin
val deleteCall = Client.deleteAccountByOAuth(accessToken, uuid)
deleteCall.execute(({ this.onSuccess() }), ({ this.onFailure() }))
```

</div>
</div>


### <del>Delete customer account by Facebook</del> {#delete-customer-account-by-facebook}
---
This method deletes a customer's account by Facebook.
  
This method requires customer authentication.

| | **iOS SDK** | **Android SDK** | **React Native SDK** | **Flutter SDK** |
| --- | --- | --- | --- | --- |
| <span style="color:green">Introduced in:</span> | 3.3.8 | 3.3.0 | 0.9.12 | n/a |
| <span style="color:orange">Deprecated in:</span> | 3.6.19 | 3.6.19 | 0.14.0 | n/a |
| <span style="color:red">Removed in:</span> | 5.0.0 | 6.0.0 | n/a | n/a |


<div class="admonition admonition-note"><div class="admonition-icon"><svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2.5"><path stroke-linecap="round" stroke-linejoin="round" d="M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z" /></svg></div><div class="admonition-body"><div class="admonition-content">

The API key must have the `SAUTH_CLIENT_DELETE` and `SAUTH_FACEBOOK_CLIENT_DELETE` permissions from the **Client** group.

</div></div></div>

**Replaced By:**  
[Delete customer account by Identity Provider](/developers/mobile-sdk/method-reference/android/client-account#delete-customer-account-by-identity-provider)
  
**Method name:**  
Client.deleteAccountByFacebook(facebookToken, uuid)
  
**Declaration:**  

<div class="content-tabs code-tabs" data-tab-group="tabgrp-2235">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-2235-0" data-tab-group="tabgrp-2235" data-tab-active="true">Java</button><button class="tab-button" data-tab-id="tabgrp-2235-1" data-tab-group="tabgrp-2235">Kotlin</button></div>

<div class="tab-panel" data-tab-id="tabgrp-2235-0" data-tab-group="tabgrp-2235" data-tab-active="true">

```Java
public static IApiCall deleteAccountByFacebook(String facebookToken, @Nullable String uuid)
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-2235-1" data-tab-group="tabgrp-2235">

```Kotlin
fun deleteAccountByFacebook(facebookToken:String, @Nullable uuid:String):IApiCall
```

</div>
</div>


**Parameters:**  
| Parameter | Type | Mandatory | Default | Description |
| --- | --- | --- | --- | --- |
| **facebookToken** | String | yes | - | Customer's facebook token |
| **uuid** | String | no | --- | Optional Customer UUID, internal UUID is used if this parameter is null |

**Return Value:**  
[IApiCall](/developers/mobile-sdk/method-reference/android/public-interfaces#iapicall) object to execute the request.

**Example:**  

<div class="content-tabs code-tabs" data-tab-group="tabgrp-2236">
<div class="tab-buttons"><button class="tab-button" data-tab-id="tabgrp-2236-0" data-tab-group="tabgrp-2236" data-tab-active="true">Java</button><button class="tab-button" data-tab-id="tabgrp-2236-1" data-tab-group="tabgrp-2236">Kotlin</button></div>

<div class="tab-panel" data-tab-id="tabgrp-2236-0" data-tab-group="tabgrp-2236" data-tab-active="true">

```Java
IApiCall deleteCall = Client.deleteAccountByFacebook(facebookToken, uuid)
            deleteCall.execute(this::onSuccess, this::onFailure);
```

</div>

<div class="tab-panel" data-tab-id="tabgrp-2236-1" data-tab-group="tabgrp-2236">

```Kotlin
val deleteCall = Client.deleteAccountByFacebook(facebookToken, uuid)
deleteCall.execute(({ this.onSuccess() }), ({ this.onFailure() }))
```

</div>
</div>




