Search Query
API's basic search query specifications which implements search over regex, etc.
Basic Query format
query: query includes following options items below for conditional select
NO
KEY
TYPE
REQUIRED
DESC
1
filter
list
❌
filter out within operator
2
filter_or
list
❌
filter out within operator
3
page
dict
❌
set number of selected list to express pages or other reasons
4
sort
dict
❌
sorting a list with given keys
5
minimal
boolean
❌
display every item in search or minimize its results
6
count_only
boolean
❌
display only number of items in the list
7
only
list
❌
display only given items in the list
8
keyword
string
❌
global search any string
{ 
    "query": {
                "filter": [],
                "filter_or": [],  
                "page": {},
                "sort": {},
                "minimal": false,
                "count_only": false,
                "only": []
    }
}{
    "query": {
        "filter": [
            {
                "key": "name",
                "value": [
                    "stark",
                    "nick"
                ],
                "operator": "in"
            }
        ]
    }
}NOTE: 
filter and filter_or input simultaneously, it performs 👉 AND 👈 condition between them.
NO
KEY
TYPE
REQUIRED
DESC
1
key
string
✅
any key that to filter out
2
value
list or any
❌
3
operator
string
✅
refer to operator below
Operator refers to Filter Operators
{ 
    "query": {
                "filter_or": [
                    {
                        "key": "name",
                        "value": ["stark", "admin"],
                        "operator": "in"
                    },
                    {
                        "key": "user_id",
                        "value": ["ua-abcdefg"],
                        "operator": "not_in"
                    }
                ]
    }
}NOTE: 
filter and filter_or input simultaneously, it performs 👉 AND 👈 condition between them.
KEY
TYPE
REQUIRED
DESC
key
string
✅
any key that to filter out
value
list or any
❌
operator
string
✅
refer to operator below
Operator refers to Filter Operators
{
    "query": {
        "page": {
            "start": 1,
            "limit": 3
        }
    }
}KEY
TYPE
REQUIRED
DESC
start
integer
❌
start number
limit
integer
❌
number of limit on selected
{
    "query": {
        "sort": {
            "key": "name",
            "desc": true
        }
    }
}KEY
TYPE
REQUIRED
DESC
key
string
✅
string sorting priority
desc
boolean
❌
ascending or descending order Y/N
{
    "query": {
        "minimal": false
    }
}Key
TYPE
Required
description
minimal
boolean
❌
displays only minimized summary of list
{
    "query": {
        "count_only": false
    }
}KEY
TYPE
REQUIRED
DESC
count_only
boolean
❌
displays only counts on search list
{
    "query": {
        "only": [
            "name",
            "tags"
        ]
    }
}KEY
TYPE
REQUIRED
DESC
only
list
❌
column keys that user wants to expect on the results
{
    "query": {
        "keyword": "any_string"
    }
}{
    "query": {
        "filter": [
            {
                "key": "name",
                "value": [
                    "stark",
                    "nick"
                ],
                "operator": "in"
            }
        ],
        "filter_or": [
            {
                "key": "name",
                "value": [
                    "stark",
                    "admin"
                ],
                "operator": "in"
            },
            {
                "key": "user_id",
                "value": [
                    "ua-abcdefg"
                ],
                "operator": "not_in"
            }
        ],
        "page": {
            "start": 1,
            "limit": 3
        },
        "sort": {
            "key": "name",
            "desc": true
        },
        "minimal": false,
        "count_only": false,
        "only": [
            "name",
            "tag"
        ]
    }
}Last updated
Was this helpful?