ÚvodPlatformaCeníkOtázkyNápovědaKontakt Kivea FlexiKivea PohodaKivea účetnictvíKivea fakturace Vyzkoušet zdarma

What is this?

Admin note: This guide covers the basic “building blocks” of searching for data in your e-shop. It explains how to find items based on names, prices, or simple status flags (like “active” or “visible”).

Who is this for? Administrators should read this to learn the most common ways to search for products or orders. It’s the best place to start if you want to build your own filters in the application interface.

Key benefits for the e-shop:

  • Easy Product Finding: Quickly locate products by exact name, price range, or category.
  • Status Monitoring: Find all your “hidden” or “inactive” products to ensure your storefront is clean.
  • Smart Text Search: Use patterns to find items even if you don’t know the exact name (e.g., “all items ending in ‘Pro’”).
  • Combined Rules: Use “and/or” logic to create specific lists, like “all active products priced under $50.”

Basic Filtering

Our Filter System provides a powerful, human-readable language for filtering your data. You can use the same syntax in the application UI, the query system, and REST APIs.

Overview

A filter condition consists of a field name, an operator, and a value. You can combine multiple conditions using logical operators like and or or.

[navigate:where-advanced.md|Advanced Filters|database] [navigate:where-functions.md|Functions & Aggregation|zap]


Simple Filter Examples

Equality and Numeric Comparisons

Filter by exact values or numeric ranges. Use these to find products with specific names or prices.

Simple Equality

name = "MacBook Pro"

[badge:Basic|secondary|right]

Double Equals

Double equals automatically converts to single equals for convenience.

name == "MacBook Pro"

[badge:Basic|secondary|right]

Not Equals

Multiple ways to express that a field should not match a value.

name != "iPhone" or code <> "X100" or ean ne "123"

[badge:Basic|secondary|right]

Numeric Comparisons

Find products within a price range.

priceWithVat > 500 and priceWithVat <= 1500

[badge:Numeric|secondary|right]

Boolean Checks

Check for boolean field values like blocked or emailVerified.

blocked is false and emailVerified is true

[badge:Boolean|secondary|right]


Null and Empty Checks

Verify if fields have values or are empty.

Null and Empty Validations

ean is null and name is not empty

[badge:Null|secondary|right]

Empty vs Null Distinction

Understanding empty (null or “”) vs null.

description is empty or internalNote is not null

[badge:Null|secondary|right]


Pattern Matching

Use patterns to find text that starts, ends, or contains specific characters.

Case-Insensitive Patterns

name like "iphone" and code ends "-XL"

[badge:Pattern|secondary|right]

Case-Insensitive Matching (iLike)

name ilike "iPhone" or shortDescription begins "TEST"

[badge:Pattern|secondary|right]

Negated Pattern Matching

name not like "temp" and code not ends ".test"

[badge:Pattern|secondary|right]


Set Membership and Ranges

Check if a value belongs to a list or a range.

Set Membership

code in ("A1", "A2", "A3")

[badge:Set|secondary|right]

Between and Range

priceWithVat between 100 and 500

[badge:Range|secondary|right]


Logical Operators

Combine multiple conditions for complex filtering.

and

Both conditions must be true.

name = "iPhone" and priceWithVat > 800

[badge:Logic|outline|right]

or

At least one condition must be true.

name = "iPhone" or name = "iPad"

[badge:Logic|outline|right]

not

Negates the condition.

not (name = "iPhone")

[badge:Logic|outline|right]


Operators Reference

Operator Aliases Description Example
= ==, eq, ~eq~ Equal name = “iPhone”
!= <>, ne, ~ne~ Not equal name != “iPhone”
> gt, ~gt~ Greater than weight > 30
>= gte, ~gte~ Greater than or equal weight >= 18
< lt, ~lt~ Less than weight < 65
<= lte, ~lte~ Less than or equal weight <= 65
is null - Field is null ean is null
is not null - Field is not null ean is not null
is empty - Field is null or empty string description is empty
is not empty - Field is not null and not empty name is not empty
is true - Field is true isAccounted is true
is false - Field is false isAccounted is false
in - Value in set code in (“A1”, “A2”, “A3”)
not in - Value not in set code not in (“A1”, “A2”)
between … and … - Value in range weight between 18 and 65
not between … and … - Value not in range weight not between 18 and 65
like - Case-insensitive contains name like “test”
begins - Starts with name begins “iPhone”
ends - Ends with name ends “Pro”

Using Filters in the Application

The same filter syntax works throughout the entire platform.

Application UI

  • Double-click any filter text to edit the raw syntax.
  • Use AI Chat to help design complex filters.
  • Visual filter builder converts to this syntax.

API Integration

  • Query System: Use in the where parameter.
  • REST API: Use as a filter query parameter.
  • Changesets: Correctly handles historical data and point-in-time queries.