Ankr's JavaScript SDK
This SDK contains a compact JavaScript library to enable you interact with Ankr's Advanced API.
Get started
-
Install the latest package stored on npm.
# with npm npm install @ankr.com/ankr.js # with yarn yarn add @ankr.com/ankr.js
-
Initialize the provider.
import AnkrProvider from '@ankr.com/ankr.js'; const provider = new AnkrProvider(''); // or if you have a premium account const provider = new AnkrProvider('YOUR_API_KEY');
-
Use the provider to call either of the supported methods.
await provider.getNFTsByOwner({ blockchain: 'eth', walletAddress: '0x0E11A192d574b342C51be9e306694C41547185DD', });
Chains supported
ankr.js
supports interaction with the following chains using their aliases:
- Ethereum:
eth
- BSC:
bsc
- Polygon:
polygon
- Fantom:
fantom
- Arbitrum:
arbitrum
- Avalanche:
avalanche
- Syscoin NEVM:
syscoin
Methods available
getLogs
getBlocks
getTransactionsByHash
getAccountBalance
getNFTsByOwner
getTokenHolders
getTokenHoldersCount
getCurrencies
getNFTMetadata
getLogs
Gets the logs matching the filter indicated.
const logs = async () => {
return await provider.getLogs({
blockchain: 'eth',
fromBlock: 1181739,
toBlock: 1181739,
topics: [
[],
['0x000000000000000000000000feb92d30bf01ff9a1901666c5573532bfa07eeec'],
],
address: '0x3589d05a1ec4af9f65b0e5554e645707775ee43c',
decodeLogs: false,
});
};
getBlocks
Gets the data on the blocks within the indicated range.
const blocks = async () => {
return await provider.getBlocks({
blockchain: 'bsc',
fromBlock: 100,
toBlock: 200,
});
};
getTransactionsByHash
Gets transaction details for a transaction specified by hash.
const transactions = async () => {
return await provider.getTransactionsByHash({
transactionHash:
'0x82c13aaac6f0b6471afb94a3a64ae89d45baa3608ad397621dbb0d847f51196f',
decodeTxData: true,
});
};
getAccountBalance
Gets the coin and token balances of a wallet specified.
const balances = async () => {
return await provider.getAccountBalance({
blockchain: 'eth',
walletAddress: '0xfa9019df60d3c710d7d583b2d69e18d412257617',
});
};
getNFTsByOwner
Gets the data on all the NFTs (collectibles) owned by the indicated wallet.
const nfts = async () => {
return await provider.getNFTsByOwner({
blockchain: 'eth',
walletAddress: '0x0E11A192d574b342C51be9e306694C41547185DD',
filter: [
{ '0x700b4b9f39bb1faf5d0d16a20488f2733550bff4': [] },
{ '0xd8682bfa6918b0174f287b888e765b9a1b4dc9c3': ['8937'] },
],
});
};
getTokenHolders
Gets the list of token holders for a given contract address.
const tokenHolders = async () => {
return await provider.getTokenHolders({
blockchain: 'eth',
contractAddress: '0xdac17f958d2ee523a2206206994597c13d831ec7',
});
};
getTokenHoldersCount
Gets current and historical data on the number of token holders for a given contract address.
const tokenHoldersCount = async () => {
return await provider.getTokenHoldersCount({
blockchain: 'eth',
contractAddress: '0xdac17f958d2ee523a2206206994597c13d831ec7',
});
};
getCurrencies
Gets a list of supported currencies for a given blockchain.
const currencies = async () => {
return await provider.getCurrencies({ blockchain: 'fantom' });
};
getNFTMetadata
Gets metadata of a given NFT.