Query Reference

Query Syntax

query [<op-name>] {
    <object-name> (
        where: bool_exp
        order: [order_by_exp!]
        limit: Integer
        offset: Integer
    ) {
        object-fields
    }

    <object-name>_by_pk (key_column: value) {
        object-fields
    }
}

Example

query GetRecords {
    record(
        where: { stars: {_gt: 4} },
        order_by: { release_date: asc },
        limit: 10,
        offset: 100,
    ) {
        name
        stars
        release_date

        artist {
            name
        }

        album {
            name
            year
        }
    }
}

query GetArtist {
    artist_by_pk(id: 5231) {
        name
    }
}

bool_exp

type <object-name>_bool_exp {
    _and: [bool_exp]
    _or: [bool_exp]
    _not: bool_exp
    field1: comparison_exp
    field2: comparison_exp
}

comparison_exp

type <type>_comparison_exp {
    operator: <type>
}

order_by_exp

type <object-name>_order_by {
    field1: order_by
    field2: order_by
}

Operators

Common

Name

SQL

_eq

=

_neq

<>

_lt

<

_lte

<=

_gt

>

_gte

>=

_in

IN

_nin

NOT IN

_is_null

IS NULL

Strings

Name

SQL

_like

LIKE

_nlike

NOT LIKE

Enums

order_by

enum order_by {
    desc
    asc
}