layerzero-stargate-api
Version:
API for Stargate and LayerZero
80 lines (69 loc) • 3.5 kB
JavaScript
var axios = require('axios');
var endpoint = "https://0m5dei56df.execute-api.us-east-1.amazonaws.com/stargateAPI?";
function getChainID(uid) {
switch(uid) {
case 1 : var chainid = 1; break;
case 2 : var chainid = 2; break;
case 6 : var chainid = 6; break;
case 9 : var chainid = 9; break;
case 10 : var chainid = 10; break;
case 11 : var chainid = 11; break;
case 12 : var chainid = 12; break;
case "ethereum" : var chainid = 1; break;
case "eth" : var chainid = 1; break;
case "binance" : var chainid = 2; break;
case "bsc" : var chainid = 2; break;
case "avalanche" : var chainid = 6; break;
case "avax" : var chainid = 6; break;
case "polygon" : var chainid = 9; break;
case "matic" : var chainid = 9; break;
case "arbitrum" : var chainid = 10; break;
case "optimism" : var chainid = 11; break;
case "fantom" : var chainid = 12; break;
case "ftm" : var chainid = 12; break;
default : var chainid = 1; break; // ETH
}
return chainid;
}
exports.getTransfers = async function(chainID, srcPoolID, dstChainID, dstPoolID, startDate, endDate, page) {
var chainid = getChainID(chainID);
var url = endpoint+'action=getTransfers&chainID='+Number(chainid)+'&srcPoolID='+Number(srcPoolID)+'&dstChainID='+Number(dstChainID)+'&dstPoolID='+Number(dstPoolID)+'&startDate='+Number(startDate)+'&endDate='+Number(endDate)+'&page='+Number(page)+'';
var promise = axios.get(url)
var dataPromise = promise.then((response) => response.data)
return dataPromise;
}
exports.getFarmsActions = async function(chainID, poolID, type, startDate, endDate, user, page) {
var chainid = getChainID(chainID);
var url = endpoint+'action=getFarmsActions&chainID='+Number(chainID)+'&poolID='+Number(poolID)+'&type='+Number(type)+'&startDate='+Number(startDate)+'&endDate='+Number(endDate)+'&user='+user+'&page='+Number(page)+'';
var promise = axios.get(url)
var dataPromise = promise.then((response) => response.data)
return dataPromise;
}
exports.getPoolsActions = async function(chainID, poolID, type, startDate, endDate, user, page) {
var chainid = getChainID(chainID);
var url = endpoint+'action=getPoolsActions&chainID='+Number(chainID)+'&poolID='+Number(poolID)+'&type='+Number(type)+'&startDate='+Number(startDate)+'&endDate='+Number(endDate)+'&user='+user+'&page='+Number(page)+'';
var promise = axios.get(url)
var dataPromise = promise.then((response) => response.data)
return dataPromise;
}
exports.getChains = async function(chainID) {
var chainid = getChainID(chainID);
var url = endpoint+'action=getChains&chainID='+Number(chainID)+'';
var promise = axios.get(url)
var dataPromise = promise.then((response) => response.data)
return dataPromise;
}
exports.getContracts = async function(chainID) {
var chainid = getChainID(chainID);
var url = endpoint+'action=getContracts&chainID='+Number(chainID)+'';
var promise = axios.get(url)
var dataPromise = promise.then((response) => response.data)
return dataPromise;
}
exports.getHourlyData = async function(chainID, poolID, startDate, endDate, page) {
var chainid = getChainID(chainID);
var url = endpoint+'action=getHourlyData&chainID='+Number(chainID)+'&poolID='+Number(poolID)+'&startDate='+Number(startDate)+'&endDate='+Number(endDate)+'&page='+Number(page)+'';
var promise = axios.get(url)
var dataPromise = promise.then((response) => response.data)
return dataPromise;
}