Compact JavaScript library for interacting with Klarda's Advanced APIs.
# with npm
npm i klarda-sdk
# with yarn
yarn add klarda-sdk
Note: to use Advanced API for free starting from 19.06.2024 you have to register on the platform.
Get your individual endpoint here https://docs.klarda.com/reference.
import { KlardaSDK } from 'klarda-sdk';
const klardaSdk = new KlardaSDK('YOUR_API_KEY');
klarda
supports the following chains at this time:
Mainnet
- Ethereum:
"eth"
- BNB Smart Chain:
"bsc"
- Polygon:
"polygon"
- Fantom:
"fantom"
- Arbitrum:
"arbitrum"
- Avalanche:
"avalanche"
- Syscoin NEVM:
"syscoin"
- Optimism:
"optimism"
- Polygon zkEVM:
"polygon_zkevm"
- Rollux:
"rollux"
- Base:
"base"
- Flare:
"flare"
- Gnosis Chain:
"gnosis"
- Scroll:
"scroll"
- Linea:
"linea"
Testnet
- Ethereum Goerli:
"eth_goerli"
- Avalanche Fuji:
"avalanche_fuji"
- Polygon Mumbai:
"polygon_mumbai"
- Optimism Testnet:
"optimism_testnet"
Appchain
- META Apes:
"bas_metaapes"
Appchain Testnet
- META Apes Testnet:
"bas_metaapes_testnet"
klarda
supports the following methods:
getTokenList
getNewTokenList
getTopGainerLoser
getFundraising
getPrivateFundraising
getTokenCategory
getProtocolList
getGlobalData
getEconomicCalendar
getIndicesFuture
getCommodities
getSearchByQueries
getTrendingSearch
getTokenTechnicalIndicators
getTokenSignal
getTokenLiquidityById
getTokenOnchainSummary
getTokenOnchainBurnCounts
getTokenOnchainSwapCounts
getTokenOnchainSmartMoneyData
getTokenOnchainCEXFlow
getSuspiciousVolume
getDEXGainers
getTokenHolderHistory
getTokenHolderCounts
getTokenHolderDistribution
getTokenPriceExchangeTrade
getTokenPriceInformation
getTokenPrice
getTokenPriceHistory
getTokenPriceHistoryTimeRange
getTokenPriceOHLCV
getTokenMetadataWithOnchain
getTokenMetadataProfile
getTokenMetadataFundraising
getTokenMetadataTokenomics
getNftMetadata
getNftHolders
getExchangeListWithMetadata
getExchangeBalanceDistribution
getExchangeTokenAmount
getWalletNativeBalance
getWalletNativeTransaction
getWalletTransferTransaction
getWalletTokenBalance
Get a list of tokens.
const tokenList = async () => { return await klardaSdk.getTokenList({ category: 'all', sort_by: 'market_cap', sort_order: 'desc', page: 1, limit: 50, }); };
Get a list of new tokens.
const newTokenList = async () => { return await klardaSdk.getNewTokenList({ category: 'all', page: 1, limit: 50, }); };
Get top gainers or losers.
const topGainersLosers = async () => { return await klardaSdk.getTopGainerLoser({ type: 'gainers', limit: 10, }); };
Get fundraising data.
const fundraising = async () => { return await klardaSdk.getFundraising({ page: 1, limit: 50, }); };
Get private fundraising data.
const privateFundraising = async () => { return await klardaSdk.getPrivateFundraising({ page: 1, limit: 50, }); };
Get token categories.
const tokenCategories = async () => { return await klardaSdk.getTokenCategory(); };
Get a list of protocols.
const protocolList = async () => { return await klardaSdk.getProtocolList({ page: 1, limit: 50, }); };
Get global data.
const globalData = async () => { return await klardaSdk.getGlobalData(); };
Get economic calendar events.
const economicCalendar = async () => { return await klardaSdk.getEconomicCalendar({ start_date: '2023-01-01', end_date: '2023-12-31', country: 'US', }); };
Get indices future data.
const indicesFuture = async () => { return await klardaSdk.getIndicesFuture(); };
Get commodities data.
const commodities = async () => { return await klardaSdk.getCommodities(); };
Search by queries.
const searchResults = async () => { return await klardaSdk.getSearchByQueries({ q: 'bitcoin', type: 'token', page: 1, limit: 50, }); };
Get trending search data.
const trendingSearch = async () => { return await klardaSdk.getTrendingSearch({ page: 1, limit: 50, }); };
Get token technical indicators.
const technicalIndicators = async () => { return await klardaSdk.getTokenTechnicalIndicators({ duration: '1d', token_id: 'bitcoin', }); };
Get token signal data.
const tokenSignal = async () => { return await klardaSdk.getTokenSignal({ duration: '1d', token_id: 'bitcoin', }); };
Get token liquidity by ID.
const tokenLiquidity = async () => { return await klardaSdk.getTokenLiquidityById({ address: '0x1234567890abcdef', chain_id: 'ethereum', }); };
Get token onchain summary.
const onchainSummary = async () => { return await klardaSdk.getTokenOnchainSummary({ token_id: 'bitcoin', }); };
Get token onchain burn counts.
const burnCounts = async () => { return await klardaSdk.getTokenOnchainBurnCounts({ token_id: 'bitcoin', }); };
Get token onchain swap counts.
const swapCounts = async () => { return await klardaSdk.getTokenOnchainSwapCounts({ token_id: 'bitcoin', address: '0x1234567890abcdef', chain_id: 'ethereum', }); };
Get token onchain smart money data.
const smartMoneyData = async () => { return await klardaSdk.getTokenOnchainSmartMoneyData({ token_id: 'bitcoin', duration: '1d', chain_id: 'ethereum', sort_by: 'volume', sort_order: 'desc', page: 1, limit: 50, }); };
Get token onchain CEX flow.
const cexFlow = async () => { return await klardaSdk.getTokenOnchainCEXFlow({ duration: '1d', sort_by: 'volume', sort_order: 'desc', page: 1, limit: 50, }); };
Get suspicious volume data.
const suspiciousVolume = async () => { return await klardaSdk.getSuspiciousVolume({ duration: '1d', chain_id: 'ethereum', page: 1, limit: 50, }); };
Get DEX gainers data.
const dexGainers = async () => { return await klardaSdk.getDEXGainers({ duration: '1d', chain_id: 'ethereum', page: 1, limit: 50, }); };
Get historical data about token holders for a given token ID.
const tokenHolderHistory = async () => { return await klardaSdk.getTokenHolderHistory({ token_id: '0xdac17f958d2ee523a2206206994597c13d831ec7', chain_id: 'eth', duration: '30d', // Specify the duration (e.g., '30d' for 30 days) }); };
Get the count of token holders for a given token ID.
const tokenHolderCounts = async () => { return await klardaSdk.getTokenHolderCounts({ token_id: '0xdac17f958d2ee523a2206206994597c13d831ec7', chain_id: 'eth', }); };
Get the distribution of token holders for a given token ID.
const tokenHolderDistribution = async () => { return await klardaSdk.getTokenHolderDistribution({ token_id: '0xdac17f958d2ee523a2206206994597c13d831ec7', chain_id: 'eth', }); };
Get the exchange trade price for a given token ID.
const tokenPriceExchangeTrade = async () => { return await klardaSdk.getTokenPriceExchangeTrade({ token_id: '0xdac17f958d2ee523a2206206994597c13d831ec7', }); };
Get price information for a given token ID.
const tokenPriceInformation = async () => { return await klardaSdk.getTokenPriceInformation({ token_id: '0xdac17f958d2ee523a2206206994597c13d831ec7', }); };
Get the current price for a given token ID.
const tokenPrice = async () => { return await klardaSdk.getTokenPrice({ token_id: '0xdac17f958d2ee523a2206206994597c13d831ec7', }); };
Get the historical price for a given token ID at a specified timestamp.
const tokenPriceHistory = async () => { return await klardaSdk.getTokenPriceHistory({ timestamp: '1625097600', // Unix timestamp token_id: '0xdac17f958d2ee523a2206206994597c13d831ec7', }); };
Get the historical price for a given token ID within a specified time range.
const tokenPriceHistoryTimeRange = async () => { return await klardaSdk.getTokenPriceHistoryTimeRange({ start_timestamp: '1625097600', // Unix timestamp end_timestamp: '1627689600', // Unix timestamp token_id: '0xdac17f958d2ee523a2206206994597c13d831ec7', }); };
Get the OHLCV (Open, High, Low, Close, Volume) data for a given token ID.
const tokenPriceOHLCV = async () => { return await klardaSdk.getTokenPriceOHLCV({ token_id: '0xdac17f958d2ee523a2206206994597c13d831ec7', duration: '30d', // Specify the duration (e.g., '30d' for 30 days) limit: 100, // Number of data points to return }); };
Get metadata with on-chain data for a given token ID.
const tokenMetadataWithOnchain = async () => { return await klardaSdk.getTokenMetadataWithOnchain({ token_id: '0xdac17f958d2ee523a2206206994597c13d831ec7', }); };
Get profile metadata for a given token ID.
const tokenMetadataProfile = async () => { return await klardaSdk.getTokenMetadataProfile({ token_id: '0xdac17f958d2ee523a2206206994597c13d831ec7', }); };
Get fundraising metadata for a given token ID.
const tokenMetadataFundraising = async () => { return await klardaSdk.getTokenMetadataFundraising({ token_id: '0xdac17f958d2ee523a2206206994597c13d831ec7', }); };
Get tokenomics metadata for a given token ID.
const tokenMetadataTokenomics = async () => { return await klardaSdk.getTokenMetadataTokenomics({ token_id: '0xdac17f958d2ee523a2206206994597c13d831ec7', }); };
Get metadata for a specific NFT.
const nftMetadata = async () => { return await klardaSdk.getNftMetadata({ token_id: '1', // NFT token ID address: '0xabefbc9fd2f806065b4f3c237d4b59d9a97bcac7', // NFT contract address chain_id: 'eth', // Blockchain network }); };
Get the holders of a specific NFT.
const nftHolders = async () => { return await klardaSdk.getNftHolders({ token_id: '1', // NFT token ID address: '0xabefbc9fd2f806065b4f3c237d4b59d9a97bcac7', // NFT contract address chain_id: 'eth', // Blockchain network }); };
Get a list of exchanges with metadata.
const exchangeListWithMetadata = async () => { return await klardaSdk.getExchangeListWithMetadata({}); };
Get the balance distribution of an exchange.
const exchangeBalanceDistribution = async () => { return await klardaSdk.getExchangeBalanceDistribution({}); };
Get the amount of a specific token on an exchange.
const exchangeTokenAmount = async () => { return await klardaSdk.getExchangeTokenAmount({ token_id: '0xdac17f958d2ee523a2206206994597c13d831ec7', exchange_id: 'binance', chain_id: 'eth', }); };
Get the native balance of a wallet.
const walletNativeBalance = async () => { return await klardaSdk.getWalletNativeBalance({ chain_id: 'eth', address: '0x1234567890abcdef1234567890abcdef12345678', }); };
Get native transactions of a wallet.
const walletNativeTransaction = async () => { return await klardaSdk.getWalletNativeTransaction({ chain_id: 'eth', address: '0x1234567890abcdef1234567890abcdef12345678', page: 1, limit: 50, }); };
Get transfer transactions of a wallet.
const walletTransferTransaction = async () => { return await klardaSdk.getWalletTransferTransaction({ chain_id: 'eth', address: '0x1234567890abcdef1234567890abcdef12345678', page: 1, limit: 50, }); };
Get the token balance of a wallet.
const walletTokenBalance = async () => { return await klardaSdk.getWalletTokenBalance({ chain_id: 'eth', address: '0x1234567890abcdef1234567890abcdef12345678', }); };
Get the list of supported blockchain networks.
const listChains = async () => { return await klardaSdk.getListChains(); };
Get the DeFi growth chart for a specific chain and duration.
const deFiGrowthChart = async () => { return await klardaSdk.getDeFiGrowthChart({ duration: '30d', // Specify the duration (e.g., '30d' for 30 days) chain_id: 'eth', }); };
Get the market capitalization chart for a specific chain and duration.
const marketCapitalizationChart = async () => { return await klardaSdk.getMarketCapitalizationChart({ duration: '30d', // Specify the duration (e.g., '30d' for 30 days) chain_id: 'eth', }); };
Get the daily active address count for a specific chain and duration.
const dailyActiveAddress = async () => { return await klardaSdk.getDailyActiveAddress({ duration: '30d', // Specify the duration (e.g., '30d' for 30 days) chain_id: 'eth', }); };
Get the transaction details by signature hash.
const transactionSignature = async () => { return await klardaSdk.getTransactionSignature({ signature_hash: '0xabcdef1234567890abcdef1234567890abcdef1234567890abcdef1234567890', }); };
Get the closest timestamp to a block number for a specific chain.
const closestTimestampToBlockNumber = async () => { return await klardaSdk.getClosetTimestampToBlockNumber({ chain: 'eth', timestamp: '1625097600', // Unix timestamp }); };
Get research reports.
const researchReport = async () => { return await klardaSdk.getResearchReport({ page: 1, limit: 10, }); };
Klarda is offering free access to Advanced API, however you have to register on Klarda platform to access it. Get your individual endpoint here https://docs.klarda.com/reference.