> For the complete documentation index, see [llms.txt](https://docs.otherside.xyz/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.otherside.xyz/odk-docs/odk-plugin/wallets/wallet-views.md).

# Wallet Views

### Overview

Wallet views allow you to filter the tokens in your wallets. If you want to get all koda cam photo tokens, you can use wallet views for that.

To get tokens in a view, simply call `GetWalletView` on the `BP_ODK_WalletWorldService`. You will need to pass in the `WalletViewClass` for the wallet view you care about.

<figure><img src="/files/zStsJpl3d6h0YSYbQSzL" alt=""><figcaption><p>Example of grabbing tokens in a view</p></figcaption></figure>

### Creating Wallet Views

You can define new wallet views by creating a new child of `BP_ODK_WalletView`. Then all you need to do is override `IsRelevantToken` on the wallet view to filter for tokens your view cares about. Here is an example of koda cam photos:

<figure><img src="/files/IzIX6lVa1TJwOf8WriBR" alt=""><figcaption><p>Example filtering logic</p></figcaption></figure>

IMPORTANT: You can create your own custom views but should only do so if there is not an existing view that already filters in the same way. Having duplicate filter logic in two views will reduce the efficiancy of the system unnecessarily.

### Checking Tokens

You can use `IsTokenDataRelevantToView` to check if a token fulfils the filter criteria of a wallet view. In the case below, we check if the token represents ownership of an emote.

<figure><img src="/files/j8M9MP8ero7H5fKRP8lI" alt=""><figcaption></figcaption></figure>

### Binding to Wallet View Events

You can bind to event on wallet views to be informed when tokens of a particular type change in your wallet. In the case below, we want to be informed whenever koda cam photos have been added or removed from a wallet. This particular event batches adds and removes together so that over a given frame, if there are multiple add and remove token events, the event will only be broadcast once.

<figure><img src="/files/Hs2B3DPWf2eeewJ18N1h" alt=""><figcaption></figcaption></figure>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.otherside.xyz/odk-docs/odk-plugin/wallets/wallet-views.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
