
### Synerise
Main Synerise module responsible for whole SDK. This class is responsible for initialization of SDK.

**Declared In:**  
`com.synerise.sdk.core.Synerise`

**Declaration:**  

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

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

```Java
public class Synerise
```

</div>

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

```Kotlin
class Synerise
```

</div>
</div>


**Properties:**  

| Property | Type | Optional | Default | Description |
| --- | --- | --- | --- | --- |
| **settings** | [Settings](/developers/mobile-sdk/class-reference/android/lifecycle#settings) | no | - | Configuration of whole SDK |


**Initializers:**  

There are no initializers.



**Methods:**  


Method to get applicationContext.

<pre><code class="language-java">public static Context getApplicationContext()</code></pre>



---

Method that generates the document assigned to a slug. 

<pre><code class="language-java">public static String getClientApiKey()</code></pre>



---

Get application ID.

<pre><code class="language-java">public static String getAppId()</code></pre>



---

Get base URL.

<pre><code class="language-java">public static String getBaseUrl()</code></pre>



---

Get flag indicating debugMode state.

<pre><code class="language-java">public static boolean getSyneriseDebugMode()</code></pre>



---

---
---

### Client
Module responsible for all operations connected with a profile (formerly client). 

**Declared In:**  
`com.synerise.sdk.client.Client`

**Declaration:**  

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

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

```Java
public abstract class Client
```

</div>

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

```Kotlin
abstract class Client
```

</div>
</div>


**Properties:**  

There are no properties.

**Initializers:**  

There are no initializers.

**Methods:**  

This method sets ClientStateChangeListener to get optional callbacks. 

<pre><code class="language-java">public static void setOnClientStateChangeListener(OnClientStateChangeListener listener)</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/client-authentication#set-client-state-change-listener)

---

This method removes ClientStateChangeListener. 

<pre><code class="language-java">public static void removeClientStateChangeListener()</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/client-authentication#remove-client-state-change-listener)

---

This method changes a Profile (formerly Client) API key dynamically.

<pre><code class="language-java">public static void changeApiKey(@NonNull String apiKey)</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/lifecycle#change-profile-api-key-dynamically)

---
This method changes a Profile (formerly Client) API key dynamically, with additional parameters.

<pre><code class="language-java">public static void changeApiKey(String apiKey, InitializationConfig initializationConfig)</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/lifecycle#change-profile-api-key-dynamically-with-config)

---

This method registers a new customer with an email, password, and optional data.

<pre><code class="language-java">public static IApiCall registerAccount(@NonNull RegisterClient registerClient)</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/client-authentication#register-customer-account)

---

This method activates a customer with email.

<pre><code class="language-java">public static IApiCall requestAccountActivation(String email)</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/client-authentication#request-customer-account-activation)

---

This method confirms a customer account with the confirmation token.

<pre><code class="language-java">public static IApiCall confirmAccountActivation(String token)</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/client-authentication#confirm-customer-account-activation)

---

This method requests a customer's account registration process with the PIN code.

<pre><code class="language-java">public static IApiCall requestAccountActivationByPin(String email)</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/client-authentication#request-customer-account-activation-by-pin)

---

This method confirms a customer's account registration process with the PIN code.

<pre><code class="language-java">public static IApiCall confirmAccountActivationByPin(String pinCode, String email)</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/client-authentication#confirm-customer-account-activation-by-pin)

---

This method signs a customer in to obtain a JSON Web Token (JWT) which can be used in subsequent requests.

<pre><code class="language-java">public static IApiCall signIn(@NonNull String email, @NonNull String password)</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/client-authentication#sign-in-a-customer)

---

This method signs a customer in to obtain a JSON Web Token (JWT) which can be used in subsequent requests.

<pre><code class="language-java">public static IDataApiCall&lt;AuthConditions&gt; signInConditionally(@NonNull String email, @NonNull String password)</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/client-authentication#sign-in-a-customer-conditionally)

---

This method authenticates a customer with OAuth, Facebook, Google, Apple, or Synerise.

<pre><code class="language-java">public static IApiCall authenticate(@NonNull String token, @NonNull ClientIdentityProvider provider, @Nullable Agreements agreements, @Nullable Attributes attributes, @Nullable String authId)</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/client-authentication#authenticate-customer-by-identityprovider)

---

This method authenticates a customer with OAuth, Facebook, Google, Apple, or Synerise.

<pre><code class="language-java">public static IDataApiCall&lt;AuthConditions&gt; authenticateConditionally(@NonNull String token, @NonNull ClientIdentityProvider provider, @Nullable Agreements agreements, @Nullable Attributes attributes, @Nullable String authId)</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/client-authentication#authenticate-customer-conditionally-by-identityprovider)

---

This method authenticates a customer with OAuth.

<pre><code class="language-java">public static IApiCall authenticateByOAuth(@NonNull String accessToken, @Nullable Agreements agreements, @Nullable Attributes attributes, @Nullable String authId)</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/client-authentication#authenticate-customer-by-oauth-with-registration) - **REMOVED in version 6.0.0**

---

This method authenticates a customer with OAuth.

<pre><code class="language-java">public static IApiCall authenticateByOAuthIfRegistered(@NonNull String accessToken, @Nullable String authId)</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/client-authentication#authenticate-customer-by-oauth-without-registration) - **REMOVED in version 6.0.0**

---

This method authenticates a customer with Facebook.

<pre><code class="language-java">public static IApiCall authenticateByFacebook(@NonNull String facebookToken, @Nullable Agreements agreements, @Nullable Attributes attributes, @Nullable String authId)</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/client-authentication#authenticate-customer-by-facebook-with-registration) - **REMOVED in version 6.0.0**

---

This method authenticates a customer with Facebook.

<pre><code class="language-java">public static IApiCall authenticateByFacebookIfRegistered(@NonNull String facebookToken, @Nullable String authId)</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/client-authentication#authenticate-customer-by-facebook-without-registration) - **REMOVED in version 6.0.0**

---

This method signs in a customer in with the provided token payload.

<pre><code class="language-java">public static IApiCall authenticateWithTokenPayload(TokenPayload tokenPayload, @NonNull String authId)</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/client-authentication#authenticate-customer-with-token-payload)

---

This method authenticates a customer with Simple Profile Authentication.

<pre><code class="language-java">public static IApiCall simpleAuthentication(ClientData clientData, String authId)</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/client-authentication#authenticate-customer-via-simple-profile-authentication)

---

This method checks if a customer is signed in (via Synerise Authentication - RaaS, OAuth, Facebook, Apple).

<pre><code class="language-java">public static boolean isSignedIn()</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/ios/client-authentication#check-if-a-customer-is-signed-in-via-raas-oauth-facebook-apple)

---

This method checks if a customer is signed in (via Simple Profile Authentication).

<pre><code class="language-java">public static boolean isSignedInViaSimpleAuthentication()</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/client-authentication#check-if-a-customer-is-signed-in-via-simple-profile-authentication)

---

This method signs out a customer out.

<pre><code class="language-java">public static void signOut()</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/client-authentication#sign-out-customer)

---

This method signs out a customer out with a chosen mode.

<pre><code class="language-java">public static void signOut(ClientSignOutMode mode)</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/client-authentication#sign-out-customer-with-mode) - **REMOVED in version 6.0.0**

---

This method signs out a customer out with a chosen mode and Determines if the method should sign out all devices

<pre><code class="language-java">public static IApiCall signOut(ClientSignOutMode mode, Boolean signOutFromAllDevices)</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/client-authentication#sign-out-customer-with-mode-or-from-all-devices)

---

This method refreshes the customer’s current token.

<pre><code class="language-java">public static IApiCall refreshToken()</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/client-session#refresh-customer-token)

---

This method retrieves the customer’s current, active token.

<pre><code class="language-java">public static IDataApiCall&lt;Token&gt; retrieveToken()
    [(Click for more details)](/developers/mobile-sdk/method-reference/android/client-session#get-customer-token)</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/client-session#retrieve-customer-token)

---

This method retrieves the customer’s current UUID.

<pre><code class="language-java">public static String getUuid()</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/client-session#get-current-customer-uuid)

---

Retrieves the current UUID or generates a new one from a seed.

<pre><code class="language-java">public static String getUuidForAuthentication(@NonNull String authId)</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/client-session#get-customer-uuid-for-use-in-authentication)

---

This method regenerates the UUID and clears the authentication token, login session, custom email, and custom identifier.

<pre><code class="language-java">public static boolean regenerateUuid()</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/client-session#regenerate-customer)

---

This method regenerates the UUID and clears the authentication token, login session, custom email, and custom identifier.

<pre><code class="language-java">public static boolean regenerateUuid(String clientIdentifier)</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/client-session#regenerate-customer-with-identifier)

---

This method destroys the session completely.

<pre><code class="language-java">public static void destroySession()</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/client-session#destroy-current-session)

---

This method gets a customer’s account information.

<pre><code class="language-java">public static IDataApiCall&lt;GetAccountInformation&gt; getAccount()</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/client-account#get-customer-account-information)

---

This method retrieves events for an authenticated customer.

<pre><code class="language-java">public static IDataApiCall&lt;List&lt;ClientEventData&gt;&gt; getEvents(ClientEventsQuery clientEventsQuery)</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/tracking#get-customers-events)

---

This method updates a customer’s account’s basic information (without identification data: uuid, customId, email).

<pre><code class="language-java">public static IApiCall updateAccountBasicInformation(@NonNull UpdateAccountBasicInformation accountInformation)</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/client-account#update-customer-account-basic-information)

---

This method updates a customer’s account information.

<pre><code class="language-java">public static IApiCall updateAccount(@NonNull UpdateAccountInformation accountInformation)</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/client-account#update-customer-account-information)

---

This method requests a customer’s password reset with email.

<pre><code class="language-java">public static IApiCall requestPasswordReset(@NonNull PasswordResetRequest resetRequest)</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/client-account#request-password-reset-for-customer-account)

---

This method confirm a customer’s password reset with the new password and token provided by password reset request.

<pre><code class="language-java">public static IApiCall confirmPasswordReset(@NonNull PasswordResetConfirmation resetConfirmation)</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/client-account#confirm-password-reset-for-customer-account)

---

This method changes a customer’s password.

<pre><code class="language-java">public static IApiCall changePassword(@NonNull String oldPassword, @NonNull String password)</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/client-account#change-customers-account-password)

---

This method requests a customer's email change.

<pre><code class="language-java">public static IApiCall requestEmailChange(String email, String password, @Nullable String externalToken, @Nullable String authId)</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/client-account#request-email-change-for-customer-account)

---

This method confirms an email change.

<pre><code class="language-java">public static IApiCall confirmEmailChange(String token, boolean newsletterAgreement)</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/client-account#confirm-email-change-for-customer-account)

---

Requests a customer's phone update. A confirmation code is sent to the phone number.

<pre><code class="language-java">public static IApiCall requestPhoneUpdate(String phone)</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/client-account#request-phone-update-on-customer-account)

---

This method confirms a phone number update. This action requires the new phone number and confirmation code as parameters.

<pre><code class="language-java">public static IApiCall confirmPhoneUpdate(String phone, String confirmationCode, @Nullable Boolean smsAgreement)</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/client-account#confirm-phone-update-on-customer-account)

---

This method deletes a customer's account.

<pre><code class="language-java">public static IApiCall deleteAccount(String clientAuthFactor, ClientIdentityProvider clientIdentityProvider, @Nullable String authId)</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/client-account#delete-customer-account-by-identity-provider)

---

This method deletes a customer's account.

<pre><code class="language-java">public static IApiCall deleteAccount(String password)</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/client-account#delete-customer-account) - **REMOVED in version 6.0.0**

---

This method deletes a customer's account by OAuth.

<pre><code class="language-java">public static IApiCall deleteAccountByOAuth(String accessToken, @Nullable String uuid)</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/client-account#delete-customer-account-by-oauth) - **REMOVED in version 6.0.0**

---

This method deletes a customer's account by Facebook.

<pre><code class="language-java">public static IApiCall deleteAccountByFacebook(String facebookToken, @Nullable String uuid)</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/client-account#delete-customer-account-by-facebook) - **REMOVED in version 6.0.0**

---

This method passes the Firebase Token to Synerise for notifications and doesn't update the agreement of the profile.

<pre><code class="language-java">public static IApiCall registerForPush(@NonNull String firebaseId)</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/campaigns#register-for-push-notifications-without-agreement)

---

This method passes the Firebase Token to Synerise for notifications.

<pre><code class="language-java">public static IApiCall registerForPush(@NonNull String firebaseId, boolean mobilePushAgreement)</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/campaigns#register-for-push-notifications)

--- 

---
---

### Tracker
Module responsible for sending events. 

**Declared In:**  
`com.synerise.sdk.event.Tracker`

**Declaration:**  

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

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

```Java
public abstract class Tracker
```

</div>

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

```Kotlin
abstract class Tracker
```

</div>
</div>


**Properties:**  

There are no properties.

**Initializers:**  

There are no initializers.

**Methods:**  


This method sets a custom identifier in the parameters of every event.

<pre><code class="language-java">public static void setCustomIdentifier(String customIdentifier)</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/tracking#set-custom-identifier-for-events)

---

This method sets a custom email in the parameters of every event.

<pre><code class="language-java">public static void setCustomEmail(String customEmail)</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/tracking#set-custom-email-for-events)

---

This method sends an event.

<pre><code class="language-java">public static void send(Event event)</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/tracking#send-event)

---

This method forces sending the events from the queue to the server.

<pre><code class="language-java">public static void flush()</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/tracking#flush-events-from-tracker)

---

---
---

### Injector
Module responsible for handling push notifications and in-app communication.

**Declared In:**  
`com.synerise.sdk.injector.Injector`

**Declaration:**  

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

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

```Java
public abstract class Injector
```

</div>

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

```Kotlin
abstract class Injector
```

</div>
</div>


**Properties:**  

There are no properties.

**Initializers:**  

There are no initializers.

**Methods:**  

Closes an in-app message and sends an `inApp.discard` event.  

Usage examples:
- Closing a top bar or bottom bar when the user taps outside the in-app area.
- Automatically dismissing messages when navigating away from a screen.
- Controlling in-app visibility based on app logic for a smoother user experience.

  <pre><code class="language-java">public static void closeInAppMessage(String campaignHash)</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/campaigns#close-in-app-message)

---

This method handles a notification payload and starts activity.

<pre><code class="language-java">public static boolean handlePushPayload(Bundle bundle)
public static boolean handlePushPayload(Map&lt;String, String&gt; pushPayload)</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/campaigns#handle-synerise-push-notification)

---

This method decrypts the notification payload. 

<pre><code class="language-java">public static Map&lt;String, String&gt; decryptPushPayload(Map&lt;String, String&gt; pushPayload) throws DecryptionException</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/campaigns#decrypt-push-notification)

---

This method verifies if a notification is encrypted.

<pre><code class="language-java">public static boolean isPushEncrypted(Map&lt;String, String&gt; pushPayload)</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/campaigns#check-if-push-notification-is-encrypted)

---

This method verifies if a notification was sent by Synerise.

<pre><code class="language-java">public static boolean isSynerisePush(Map&lt;String, String&gt; pushPayload)</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/campaigns#check-if-push-notification-is-from-synerise)

---

This method verifies if a notification's sender is Synerise and if the notification is a Silent Command.

<pre><code class="language-java">public static boolean isSilentCommand(Map&lt;String, String&gt; pushPayload)</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/campaigns#check-if-push-notification-is-a-silent-command)

---

This method verifies if a notification's sender is Synerise and if the notification is a Silent SDK Command.

<pre><code class="language-java">public static boolean isSilentCommandSdk(Map&lt;String, String&gt; pushPayload)</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/campaigns#check-if-push-notification-is-a-silent-sdk-command)

---

This method verifies if a notification’s sender is Synerise and if the notification is a Simple Push campaign

<pre><code class="language-java">public static boolean isSyneriseSimplePush(Map&lt;String, String&gt; pushPayload)</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/campaigns#check-if-push-notification-is-a-simple-push-campaign)

---

This method verifies if a notification’s sender is Synerise and if the notification is a Banner campaign.

<pre><code class="language-java">public static boolean isSyneriseBanner(Map&lt;String, String&gt; pushPayload)</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/campaigns#check-if-push-notification-is-a-banner-campaign) - **REMOVED in version 6.0.0**

---

This method converts push payload into SilentCommand object. 

<pre><code class="language-java">public static SilentCommand getSilentCommand(Map&lt;String, String&gt; payload) throws ValidationException</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/campaigns#get-a-silent-command)

---

This method fetches a walkthrough.

<pre><code class="language-java">public static void getWalkthrough()</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/campaigns#get-walkthrough) - **REMOVED in version 6.0.0**

---

This method shows a walkthrough when it is loaded.

<pre><code class="language-java">public static boolean showWalkthrough()</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/campaigns#show-walkthrough) - **REMOVED in version 6.0.0**

---

This method checks if a walkthrough is loaded.

<pre><code class="language-java">public static boolean isWalkthroughLoaded()</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/campaigns#check-if-walkthrough-is-loaded) - **REMOVED in version 6.0.0**

---

This method checks if the walkthrough is unique compared to the previous one.

<pre><code class="language-java">public static boolean isLoadedWalkthroughUnique()</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/campaigns#check-if-loaded-walkthrough-is-unique) - **REMOVED in version 6.0.0**

---

This method fetches banners set for mobile campaigns and caches the valid ones.

<pre><code class="language-java">public static void fetchBanners()
public static void fetchBanners(@NonNull final DataActionListener&lt;List&lt;TemplateBanner&gt;&gt; successListener,
                                    @NonNull final DataActionListener&lt;ApiError&gt; errorListener)</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/campaigns#fetch-banners)- **REMOVED in version 6.0.0**

---

This method provides valid banners directly from SDK cache.

<pre><code class="language-java">public static List&lt;TemplateBanner&gt; getBanners()</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/campaigns#get-banners)

---

This method shows a banner immediately.

<pre><code class="language-java">public static void showBanner(TemplateBanner banner, boolean markPresented)</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/campaigns#show-banner)- **REMOVED in version 6.0.0**

---

This method fetches Push Notifications set for mobile campaigns.

<pre><code class="language-java">public static IDataApiCall&lt;List&lt;SynerisePushResponse&gt;&gt; getPushes()</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/campaigns#get-pushes)

---

---
---

### Promotions
Module responsible for managing promotions.

**Declared In:**  
`com.synerise.sdk.promotions.Promotions`

**Declaration:**  

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

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

```Java
public abstract class Promotions
```

</div>

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

```Kotlin
abstract class Promotions
```

</div>
</div>


**Properties:**  

There are no properties.

**Initializers:**  

There are no initializers.

**Methods:**  


This method retrieves all available promotions that are defined for a customer.

<pre><code class="language-java">public static IDataApiCall&lt;PromotionResponse&gt; getPromotions()</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/promotions#get-all-promotions-of-a-customer)

---

This method retrieves all available promotions that are defined for a customer.

<pre><code class="language-java">public static IDataApiCall&lt;PromotionResponse&gt; getPromotions(PromotionsApiQuery promotionsApiQuery)</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/promotions#get-all-promotions-of-a-customer)

---

This method retrieves the promotion with the specified UUID.

<pre><code class="language-java">public static IDataApiCall&lt;SinglePromotionResponse&gt; getPromotionByUuid(@NonNull String uuid)</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/promotions#get-promotion-by-uuid)

---

This method retrieves the promotion with the specified code.

<pre><code class="language-java">public static IDataApiCall&lt;SinglePromotionResponse&gt; getPromotionByCode(@NonNull String code)</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/promotions#get-promotion-by-code)

---

This method activates the promotion with the specified UUID.

<pre><code class="language-java">public static IApiCall activatePromotionByUuid(@NonNull String uuid)</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/promotions#activate-promotion-by-uuid)

---

This method activates the promotion with the specified code.

<pre><code class="language-java">public static IApiCall activatePromotionByCode(@NonNull String code)</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/promotions#activate-promotion-by-code)

---

This method deactivates the promotion with the specified UUID.

<pre><code class="language-java">public static IApiCall deactivatePromotionByUuid(@NonNull String uuid)</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/promotions#deactivate-promotion-by-uuid)

---

This method deactivates the promotion with the specified code.

<pre><code class="language-java">public static IApiCall deactivatePromotionByCode(@NonNull String code)</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/promotions#deactivate-promotion-by-code)

---

This method retrieves an assigned voucher code or assigns a voucher from a pool identified by UUID to the profile.

When the voucher is assigned for the first time, a [voucherCode.assigned](/docs/assets/events/event-reference/loyalty#vouchercodeassigned) event is produced.

<pre><code class="language-java">public static IDataApiCall&lt;AssignVoucherResponse&gt; getOrAssignVoucher(@NonNull String poolUuid)</code></pre>

 [(Click for more details)](/developers/mobile-sdk/method-reference/android/promotions#get-or-assign-voucher-from-pool)

---

This method assigns a voucher from a pool identified by UUID to the profile.

A [voucherCode.assigned](/docs/assets/events/event-reference/loyalty#vouchercodeassigned) event is produced.

<pre><code class="language-java">public static IDataApiCall&lt;AssignVoucherResponse&gt; assignVoucherCode(@NonNull String poolUuid)</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/promotions#assign-voucher-code-from-pool)

---

This method retrieves voucher codes for a customer.

<pre><code class="language-java">public static IDataApiCall&lt;VoucherCodesResponse&gt; getAssignedVoucherCodes()</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/promotions#get-voucher-codes-assigned-to-customer)

--- 

---
---

### Content
Module responsible for managing documents, reccommendations and content widget. 

**Declared In:**  
`com.synerise.sdk.content.Content`

**Declaration:**  

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

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

```Java
public abstract class Content
```

</div>

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

```Kotlin
abstract class Content
```

</div>
</div>


**Properties:**  

There are no properties.

**Initializers:**  

There are no initializers.

**Methods:**  

This method generates the document assigned to a slug.

<pre><code class="language-java">public static IDataApiCall&lt;Object&gt; getDocument(String slugName)</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/content#get-document) - **REMOVED in version 6.0.0**

---

This method generates the document that is defined for the provided slug.

<pre><code class="language-java">public static IDataApiCall&lt;Document&gt; generateDocument(String slugName)</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/content#generate-document)

---

This method generates the document that is defined for parameters provided in the query object.

<pre><code class="language-java">public static IDataApiCall&lt;Document&gt; generateDocument(DocumentApiQuery documentApiQuery)</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/content#generate-document-with-query-parameters)

---

This method generates documents that are defined for parameters provided in the query object.

<pre><code class="language-java">public static IDataApiCall&lt;List&lt;Object&gt;&gt; getDocuments(DocumentsApiQuery documentsApiQuery)</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/content#get-documents) - **REMOVED in version 6.0.0**

---

This method generates recommendations that are defined for the options provided. The recommendations are generated by using a document with an insert.  

For instructions, see ["Displaying AI recommendations > With documents and screen views"](/developers/mobile-sdk/displaying-recommendations/documents).

<pre><code class="language-java">public static IDataApiCall&lt;RecommendationResponse&gt; getRecommendations(String slugName, RecommendationRequestBody options)</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/content#get-recommendations) - **REMOVED in version 6.0.0**

---

This method generates recommendations that are defined for the options provided. The recommendations are generated by using a document with an insert.  

For instructions, see ["Displaying AI recommendations > With documents and screen views"](/developers/mobile-sdk/displaying-recommendations/documents).

<pre><code class="language-java">public static IDataApiCall&lt;RecommendationResponse&gt; getRecommendationsV2(String slugName, RecommendationRequestBody options)</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/content#get-recommendations-v2)

---

This method generates the customer's highest-priority screen view campaign.

<pre><code class="language-java">public static IDataApiCall&lt;ScreenViewResponse&gt; getScreenView()</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/content#get-screen-view) - **REMOVED in version 6.0.0**

---

This method generates a customer's highest-priority screen view campaign from the feed with the provided feed slug.

<pre><code class="language-java">public static IDataApiCall&lt;ScreenView&gt; generateScreenView(String feedSlug)</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/content#generate-screen-view)

---

This method generates customer's highest-priority screen view campaign that is defined for parameters provided in the query object.

<pre><code class="language-java">public static IDataApiCall&lt;ScreenView&gt; generateScreenView(ScreenViewApiQuery screenViewApiQuery)</code></pre>

[(Click for more details)](/developers/mobile-sdk/method-reference/android/content#generate-screen-view-with-query-parameters) 