restQL-clojure allows to run restQL queries, making easy to fetch information from multiple services in the most efficient manner
Add restQL dependency to your project
Lein
[b2wdigital/restql-core "3.4.1"]
NPM
npm i @b2wdigital/restql
Clojure
(require '[restql.core.api.restql :as restql])
(restql/execute-query :mappings { :user "http://your.api.url/users/:name" } :query "from user with name = $name" :params { :name "Duke Nukem" } )
Node
var restql = require('@b2wdigital/restql')
// executeQuery(mappings, query, params, options) => <Promise>
restql
.executeQuery(
{user: "http://your.api.url/users/:name"},
"from user with name = $name",
{ name: "Duke Nukem" })
.then(response => console.log(response))
.catch(error => console.log(error))
In the example above restQL will call user API passing "Duke Nukem" in the name param.
The clause order matters when making restQL queries. The following is a full reference to the query syntax, available clauses and order.
[ [ use modifier = value ] ]
METHOD resource-name [as some-alias] [in some-resource]
[ headers HEADERS ]
[ timeout INTEGER_VALUE ]
[ with WITH_CLAUSES ]
[ [only FILTERS] OR [hidden] ]
[ [ignore-errors] ]
e.g:
from search
with
role = "hero"
from hero as heroList
with
name = search.results.name
Learn more about restQL query language
Copyright © 2016-2019 B2W Digital
Distributed under the MIT License.
Can you improve this documentation? These fine people already did:
ricardoekm, Iago Oliveira, Thúlio Costa, Lucas Barros, Ricardo Mayerhofer, Iago Oliveira da Silva, Jeferson Leao, Jeferson Sanches, sio-iago, Caio Ferreira, André Claudino & Jabes ReisEdit on GitHub
cljdoc is a website building & hosting documentation for Clojure/Script libraries
× close