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
FILTER:
filter performs within AND condition
👉
<filter> and <filter> and <filter> ...
FILTER_OR:
filter_or performs within OR condition
👉
<filter> or <filter> or <filter> ...
SKELETON
Filter
Filter_or
Page
Sort
Minimal
Count_only
Only
Keyword
Sample
{
"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"
]
}
}