Allows you to get an information about the crypto and its real-time prices! Ex: crypto BTC
const lib = require('lib')({token: process.env.STDLIB_SECRET_TOKEN});
const commafy = require('commafy');
const event = context.params.event;
const { channel_id, } = event;
const { API_Token } = process.env;
const crypto = event.content.split(' ')[1].toUpperCase();
if (!crypto) return lib.discord.channels['@release'].messages.create({
channel_id,
content: `Please provide any valid crypto acronym's. For example: BTC, ETH or BNB`
});
try {
const result = await lib.http.request['@1.1.6'].get({
url: `https://api.nomics.com/v1/currencies/ticker?key=${API_Token}&ids=${(crypto)}&interval=1h,1d&convert=USD&per-page=100&page=1`,
});
const getDate = result.data[0].price_timestamp.split('T')[0].split('-').join('/');
const getHighDate = result.data[0].high_timestamp.split('T')[0].split('-').join('/');
await lib.discord.channels['@release'].messages.create({
channel_id, content: '',
embeds: [{
type: 'rich',
title: `${result.data[0].name} - [${result.data[0].id}]`,
description: [
`Rank: **${!result.data[0]?.rank ? 'None' : commafy(result.data[0].rank)}**`,
`Price: **$${commafy(Math.round(parseInt(result.data[0].price)).toFixed(2))}** - ${getDate}`,
`Highest Price: **$${commafy(Math.round(parseInt(result.data[0].high)).toFixed(2))}** - ${getHighDate}`,
`Status: **${result.data[0].status}**`,
`Circulating Supply: **${!result.data[0]?.circulating_supply ? 'None' : commafy(result.data[0].circulating_supply) }**`,
`Number of Exchanges: **${commafy(result.data[0].num_exchanges)}**`,
`${!result.data[0]['1h'] ? '[ 1h ]: None' : `[ 1h ]\nVolume: **${JSON.stringify(result.data[0]['1h'].volume).split('"')[1]}**\nPrice Rate PCT: **${JSON.stringify(result.data[0]['1h'].price_change).split('"')[1]}**\nMarket Cap Change: **${JSON.stringify(result.data[0]['1h'].market_cap_change).split('"')[1]}**`}`,
`${!result.data[0]['1d'] ? '[ 1d ]: None' : `[ 1d ]\nVolume: **${JSON.stringify(result.data[0]['1d'].volume).split('"')[1]}**\nPrice Rate PCT: **${JSON.stringify(result.data[0]['1d'].price_change).split('"')[1]}**\nMarket Cap Change: **${JSON.stringify(result.data[0]['1d'].market_cap_change).split('"')[1]}**`}`,
`${!result.data[0]['30d'] ? '[ 30d ]: None' : `[ 30d ]\nVolume: **${JSON.stringify(result.data[0]['30d'].volume).split('"')[1]}**\nPrice Rate PCT: **${JSON.stringify(result.data[0]['30d'].price_change).split('"')[1]}**\nMarket Cap Change: **${JSON.stringify(result.data[0]['30d'].market_cap_change).split('"')[1]}**`}`,
].join('\n'),
color: 0xFFF000,
"thumbnail": { "url": `${result.data[0]?.logo_url}` }
}
]
});
} catch (e) {
return lib.discord.channels['@release'].messages.create({
channel_id,
content: `Error... can't retrieve **${crypto}**. Please try it again.`
});
}