---
schema_version: "1"
id: cd1829529571a08e739d4b45ebc35110632e8965e00793a739d9ddbda626490a
title: Conversation Lists for Android
collection: developer
version: current
locale: en-us
portal_url: https://docs.salesforce.com/developer/current/en-us/service-cloud/messaging-in-app/guides/android-conversation-lists.md
canonical_url: https://developer.salesforce.com/docs/service/messaging-in-app/guide/android-conversation-lists.html
source_site: developer.salesforce.com
content_type: documentation
content_hash: 2e42d339804eb9089139666f4b03f34644a5166308c9286a82fb622cda19ee4e
products:
  - Enhanced In-App Chat
  - Service Cloud Developer Content
---
# Conversation Lists for Android

The conversation list API allows you to structure your user interface around multiple distinct conversations. Using this API, you can access an ordered list of existing conversations and decide how you want to display that information to your users. This behavior is useful when you expect users to have more than one conversation ongoing with reps or bots.


**important:** This feature requires version 1.3.0 or later of the Enhanced In-App Chat SDK.


This article applies to the following implementations:

| UI SDK | Core SDK |
| :----: | :------: |
|   ✅   |    ✅    |


Regardless of whether you're using the UI SDK or the Core SDK, this feature requires that you create your own user interface to display the list of conversations. From there, UI SDK implementations can drop into the built-in user interface provided by the SDK.


To access the list of conversations, use one of the `conversations()` or `conversationsPaged()` methods on your [`CoreClient`](https://salesforce-async-messaging.github.io/messaging-in-app-android/sdk/core/com.salesforce.android.smi.core/-core-client/index.html) object to get the list of conversations.

```kotlin
// Call CoreClient.conversations(limit: Int, olderThanConversation: Conversation? = null)
coreClient.conversations(10, null).collect { result ->
     when (result) {
         is Result.Success -> result.data.forEach { conversation ->
              // TO DO: Display each conversation
              println(conversation.identifier)
         }
         is Result.Error -> println("Error: ${result.exception.message}")
         else -> println("No data yet")
     }
}
```

**tip:** The `conversations` method that uses the `olderThanConversation` parameter (as shown above) queries the server to ensure that you have the latest information about the conversation list. The method that uses the `sortedByActivity` parameter only queries your local cached data for a list of conversations and may not reflect the latest conversation data. Cached data is updated after calling the `conversations` method that uses the `olderThanConversation` parameter.


See the reference documentation for [`CoreClient`](https://salesforce-async-messaging.github.io/messaging-in-app-android/sdk/core/com.salesforce.android.smi.core/-core-client/index.html) to learn more.
