website/helpers/api.js
2018-11-23 23:47:51 -05:00

66 lines
1.1 KiB
JavaScript

/*
api.js -
common api returns
*/
// use for any api return. it has basic layout used for every return.
function sendReturn(response, data, errors) {
response.status(200).json(
// combine 2 objects
Object.assign({
code: 200,
success: true,
errors: [] + (errors ? errors : [])
}, data)
);
}
// use if api endpoint doesnt exist
function sendApi404(response) {
response.status(404).json({
code: 404,
errors: [
'Endpoint not in use'
]
});
}
// use if not logged in and is required (handled with middleware)
function sendApiAuthError(response) {
response.status(401).json({
code: 401,
errors: [
'Not authenticated'
]
});
}
// use for completely broken requests
function sendApiGenericError(response) {
response.status(400).json({
code: 400,
success: false,
errors: [
'Bad request'
]
});
}
// use for any api not successfull
function sendApiError(response, code, errors) {
response.status(code).json({
code,
success: false,
errors
});
}
module.exports = {
sendReturn,
sendApi404,
sendApiGenericError,
sendApiError,
sendApiAuthError
};