- Install docker
- Install node.js
npm ci
cp secret_key.default.js secret_key.js
- Enter secret key hash into
secret_key.js
cp pg_settings.default.js pg_settings.js
- Enter postgres password into
pg_settings.js
- export POSTGRES_PASSWORD=examplepassword123 (has to be same password as in pg_settings)
npm run db:start
npm run db:stop
Option 1: npm start
Option 2: npm run forever:start
// To keep the server running
npm run forever:list
// List forever processes
npm run forever:stop
// Stop forever process with ID 0. WARNING! This is not necessarily the correct forever process
There is a request limiter in place set to allow 10 requests per 10 seconds.
To use any endpoint you need to include an API key in your headers:
headers['api-key'] = 'abcd1234'
Each API key gets some sample data upon first usage.
GET /api/item
Query options:
offset: Integer,
limit: Integer // 1-128
Example: GET /api/item?offset=96&limit=32
GET /api/item/<ID>
POST /api/item
Payload options:
{
description: String,
do_before: Integer
}
PUT /api/item/<ID>
Payload options:
{
description: String,
do_before: Integer,
done: Boolean
}
DELETE /api/item/<ID>
Requires a special api-key set. Its hash should match the value in file src/secret_key.js
POST /api/session/new
Payload options:
{
count: Integer // Default: 1
}