Skip to content

MaravelQL

macropay-solutions edited this page Aug 6, 2025 · 5 revisions

maravel-rest-wizard

1. Filters

2. Aggregations

3. Multi sorts

4. Retrieving columns

5. Streamed responses

6. Pagination

Here are some examples for the paid version:

1. Filters

that can be applied on the resource and also on its relations

starts with: ?column=example or ?relationsFilters[rel][column]=example

in: ?column[in][]=example1 or ?relationsFilters[rel][column][in][]=example1

notIn: ?column[notIn][]=example1 or ?relationsFilters[rel][column][notIn][]=example1

from (inclusive): ?column[from]=10 or ?relationsFilters[rel][column][from]=10

to (inclusive): ?column[to]=20 or ?relationsFilters[rel][column][to]=20

isNull: ?column[o]=isNull or ?relationsFilters[rel][column][o]=isNull

isNullOr: ?column[o]=isNull&column[v][]=5 or ?relationsFilters[rel][column][o]=isNull&relationsFilters[rel][column][v][]=5

isNotNull: ?column[o]=isNotNull or ?relationsFilters[rel][column][o]=isNotNull

contains: ?column[o]=contains&column[v]=value or ?relationsFilters[rel][column][o]=contains&relationsFilters[rel][column][v]=value

notContains: ?column[o]=notContains&column[v]=value or ?relationsFilters[rel][column][o]=notContains&relationsFilters[rel][column][v]=value

2. Aggregations

Aggregations on resource and relations

sums: ?sums[]=column or ?withRelationsSums[rel][]=col1

avgs: ?avgs[]=column or ?withRelationsAvgs[rel][]=col1

mins: ?mins[]=column or ?withRelationsMins[rel][]=col1

maxs: ?maxs[]=column or ?withRelationsMaxs[rel][]=col1

Aggregations on resource

groupBys: ?aggregates[groupBys][]=column

havings: ?aggregates[havings][aggregatedColumn]=5 or ?aggregates[havings][aggregatedColumn][from]=5&ggregates[havings][aggregatedColumn][to]=10

subtotals: ?aggregates[subtotals][]=column

subavgs: ?aggregates[subavgs][]=column

submins: ?aggregates[submins][]=column

submaxs: ?aggregates[submaxs][]=column

3. Multi sorts

on resource

sort: ?sort[0][by]=column&sort[0][dir]=DESC

4. Retrieving columns

distincts: ?distincts[]=col1&distincts[]=col2 or ?withDistinctRelations[rel][]=col1

columns: ?c=col1,col2 (for decorated version only)

5. Streamed responses

(downloads)

CSV: Accept: text/csv

JSONL: Accept: application/json + ?limit=-1

6. Pagination

Simple: ?simplePaginate=1&limit=10

Cursor: ?cursor=1&limit=10

With Count: ?limit=10

Only Count: ?limit=0

Streamed JSON Lines: ?limit=-1

More can be discovered in the demo pages for not decorated resources and decorated resources (which differ slightly).