> ## Documentation Index
> Fetch the complete documentation index at: https://docs.castled.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Custom App Inbox

In the preceding section, we discussed the configuration for utilizing the default App Inbox implementation.

For developers interested in implementing a custom **Activity** as the **App Inbox** notification center,
Castled SDK offers methods that facilitate the retrieval of messages for display. Additionally, SDK provides essential methods for managing key lifecycle events.

```kotlin kotlin
// Fetching the unread message count directly
CastledNotifications.getInboxUnreadCount {
  println("unread count is $it")
}

// Retrieving all inbox items
CastledNotifications.getInboxItems { inboxItems ->
  println("InboxItems $inboxItems")
}

// Logging read inbox items
CastledNotifications.logInboxItemsRead(itemsList)

// Deleting a specific inbox item
CastledNotifications.deleteInboxItem(inboxItem)

// Logging a click on an inbox item
CastledNotifications.logInboxItemClicked(inboxItem, "btn-title")
```

```java java
// Fetching the unread message count using a callback
CastledNotifications.getInboxUnreadCount(count -> {
  Lg.d("Unread Inbox count: " + count);
  return null;
});

// Retrieving all inbox items
CastledNotifications.getInboxItems((List<CastledInboxItem> items) -> {
  // Handle the fetched items here
  return null;
});

// Logging read inbox items
CastledNotifications.logInboxItemsRead(itemsList)

// Deleting a specific inbox item
CastledNotifications.deleteInboxItem(inboxItem);

// Logging a click on an inbox item
CastledNotifications.logInboxItemClicked(inboxItem, "btn-title");

```


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.