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

# Filters

## Filters model

The filters model is used to filter the data you want to receive from the stream. The filters are applied to the data before it is sent to the client.

```json theme={null}
{
  "name": "MyWalletTransactions",
  "chainId": ["evm:1", "evm:56"],
  "events": ["trace", "log", "transaction", "block", "swap", "transfer", "pool"],
  "filters": {
    "and": [
      { "eq": ["action.from", "0x123456789"] },
      { "eq": ["transaction.receipt.status", "0x1"] }
    ]
  }
}
```

### Filters table

| Filter | Description                                                                                                                                                     |
| ------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `eq`   | Checks if a field equals a specific value. The value can be a string, number, boolean or null. Example: `{ "eq": ["action.from", "0x123"] }`                    |
| `neq`  | Checks if a field does not equal a specific value. The value can be a string, number, boolean or null. Example: `{ "neq": ["transaction.status", "0x0"] }`      |
| `lt`   | Checks if a numeric field is less than a specific value. The value is coerced to a number. Example: `{ "lt": ["block.number", 15000000] }`                      |
| `lte`  | Checks if a numeric field is less than or equal to a specific value. The value is coerced to a number. Example: `{ "lte": ["transaction.value", 1000000] }`     |
| `gt`   | Checks if a numeric field is greater than a specific value. The value is coerced to a number. Example: `{ "gt": ["log.logIndex", 5] }`                          |
| `gte`  | Checks if a numeric field is greater than or equal to a specific value. The value is coerced to a number. Example: `{ "gte": ["block.timestamp", 1672527600] }` |
| `in`   | Checks if a field's value is included in a specific value. The value can be a string, number, boolean or null. Example: `{ "in": ["action.to", "0x123"] }`      |

### Multiple filters

You can use multiple filters to get the data you need. The filters are applied in the order they are defined.

```json theme={null}
{
  "or": [
    {
      "and": [
        { "eq": ["log.address", "0x0000000000000000003456000000008766600000"] },
        { "gte": ["log.logIndex", "1"] },
      ],
    },
    {
      "and": [
        { "eq": ["transaction.transaction.to", "0x0000000000000000003456000000008766600000"] },
      ],
    },
  ],
};
```

### More example

```json theme={null}
{
  "eq": [
    "topics.0",
    "0x830d2d700a97af574b186c80d40429385d24241565b08a7c559ba283a964d9b1"
  ]
}

{
  "eq": ["action.input", "0xd55ec697"]
},

```

Can’t find what you’re looking for? Reach out to us, response times \< 1h.

<CardGroup>
  <Card title="Support" icon="Telegram" href="https://t.me/mobuladevelopers?start=Mobula_API_Support_Key">
    Telegram
  </Card>

  <Card title="Support" icon="Slack" href="https://join.slack.com/t/mobulaapi/shared_invite/zt-29zrrpjnl-I0tyD73sy7zKy8q~KLL3Ug">
    Slack
  </Card>

  <Card title="Need help?" icon="envelope" href="mailto:contact@mobulalabs.org">
    Email
  </Card>
</CardGroup>
