The api for the malekai project.
Standard api route is https://api.malekai.network
-
GET /races
- fetches all the racesGET /races/{id}
- fetches a race with the specified id
-
GET /classes
- fetches all the classesGET /classes/{id}
- fetches a class with the specified id
-
GET /disciplines
- fetches all the disciplinesGET /disciplines/{id}
- fetches a discipline with the specified id
-
GET /powers
- fetches all the powers (there's a lot so watch out)GET /powers/{id}
- fetches a power with the specified id
-
GET /changelog
- fetches the most recent changelogs. These are generated by us updating the database with a new batch ofcrowfall-data
s. Url Params:amount
- specify the amount of logs you want to fetch; value is capped between 1 and 50skip
- specify the amount of logs you want to skip
-
GET /changelog/{data_type}/{id}
- fetches the most recent changelog for the specified data type & id. Url Params:amount
- specify the amount of logs you want to fetch; value is capped between 1 and 50skip
- specify the amount of logs you want to skip
-
GET /search
- search all the data in the db-
do params like this:
{field}={value}
, i.e./search?data_type=race&name=Fae
-
Special params:
skip
- skips a certain number of resultslimit
- limits the search; value is capped between 1 and 50
-
strings/numbers are parsed normally, arrays are like so
GET /search?classes=["Knight"]
- this will grab every object with aclasses
field, and one that contains aKnight
value inside of it.
-
important fields you should know about:
data_type
: the data type (i.e.race
/class
/discipline
/power
)
-
-
GET /graphql
- we have graphql support!- Schemas are in /src/data/graphql
graphiql
is enabled so you can have fun exploring!
Install node v6+, start up a rethinkdb server with default ports/etc.
npm install
the project.
npm run load-crowfall-data
downloads and updates the database with new data from git.
npm start
or npm run tsc && node dist/api.js
.
Make sure to clear the dist folder if you want to remove old files (important for building for release!).