var express = require('express'); var router = express.Router(); const api_helper = require('./thirdparty_api') const config = require('./config'); // total coins 13081 // per page coins 100 // max page 131 // last lenth 81 router.get('/coins/markets', function (req, res) { let page = req.query.page || 1; let per_page = req.query.per_page || 100; let url = config.coingecko.api_url + `/coins/markets?vs_currency=usd&order=market_cap_desc&per_page=${per_page}&page=${page}&sparkline=false`; api_helper.REMOTE_API_call(url) .then(response => { console.log("response.length : ", response.length); console.log("response.page : ", page); //console.log("url : ", url); res.json(response); }) .catch(error => { console.log("error: ", error); res.send(error); }) }) router.get('/count', function (req, res) { let url = config.coingecko.api_url + '/global'; console.log("url: ", url); api_helper.REMOTE_API_call(url) .then(response => { res.json({'count': response.data.active_cryptocurrencies}); }) .catch(error => { console.log("error: ", error); res.send(error); }) }) router.get('/coin/:id', function (req, res) { let id = req.params['id']; let url = config.coingecko.api_url + '/coins/' + id; console.log("id: ", id); api_helper.REMOTE_API_call(url) .then(response => { res.json(response); }) .catch(error => { console.log("error: ", error); res.send(error); }) }) router.get('/coin/:id/chart', function (req, res) { let id = req.params['id']; let url = config.coingecko.api_url + '/coins/' + id + '/market_chart?vs_currency=usd&days=max'; console.log("chart url:", url) api_helper.REMOTE_API_call(url) .then(response => { res.json(response); }) .catch(error => { console.log("error: ", error); res.send(error); }) }) router.get('/global', function (req, res) { let url = config.coingecko.api_url + '/global'; api_helper.REMOTE_API_call(url) .then(response => { res.json(response.data); }) .catch(error => { console.log("error: ", error); res.send(error); }) }) module.exports = router;