Endpoints

Overview

Welcome to the Covalent API!

The Covalent Unified API can be used to pull token balances, positions and historical granular transaction data from dozens of blockchain networks. This data enables hundreds of end-user use-cases like wallets, investor dashboards, taxation tools and as-of-yet unknown use-cases.

Switching from one blockchain network to another is simply changing the chain_name path parameter. It's really that simple.

One Unified API. One Billion Possibilities.

The Covalent API is RESTful. The API is designed around the main resources that's available through the web interface. Sample API calls are provided next to each method using cURL.

Broadly speaking, there are three classes of APIs:

  • Class A - APIs that return enriched blockchain data applicable to all blockchain networks, eg: token balances, transactions, log events, etc.

  • Class B - APIs maintained by Covalent for a specific protocol on a specific blockchain, eg: Constant Product AMMs (XY=K) on various blockchains.

  • Class C - APIs created and maintained by the community.

URL Patterns

expand_more

Authentication

expand_more

Authentication via Query parameter

Simply append key=API_KEY as a query parameter to all requests. The main advantage of this method is to embed the API endpoints within applications that do not support more sophisticated auth mechanisms, like Google Sheets or as IFrames.

Bash
curl -X GET https://api.covalenthq.com/v1/ENDPOINT/?key=API_KEY

Authentication via Basic Auth

Provide your API key as the basic auth username. You can find your API key in the web interface. You do not need to provide a password.

Bash
curl -X GET https://api.covalenthq.com/v1/ENDPOINT/ \
     -u API_KEY:
     -H 'Content-Type: application/json'
     # The colon prevents curl from asking for a password.

Use of $CQT (Covalent Query Token)

expand_more

Response format

By default, the Covalent API returns JSON responses with the same shape for all endpoints. The main keys are data, error, error_message and error_code.

You can ask for a CSV format by sending the format=csv query parameter.

JavaScript
"data": ...,
    "error": false,
    "error_message": null,
    "error_code": null

Supported Networks

expand_more

Rate limiting & Premium Tier

expand_more

Refresh rate

expand_more

Pagination

expand_more

Error codes

Covalent uses standard HTTP response codes to indicate the success or failure of an API request. In general: codes in the 2xx range indicate success. Codes in the 4xx range indicate an error that failed given the information provided (e.g., a required parameter was omitted, etc.). Codes in the 5xx range indicate an error with Covalent's servers (these are rare).

CodeDescription
200 - OKEverything worked as expected.
400 - Bad RequestThe request could not be accepted, usually due to a missing required parameter.
401 - UnauthorizedNo valid API key was provided.
404 - Not FoundThe request path does not exist.
429 - Too Many RequestsYou are being rate-limited. Please see the rate limiting section for more information.
500, 502, 503 - Server ErrorsSomething went wrong on Covalent's servers. These are rare.

Support channels

Support is available via multiple channels:

Change log

Available here.

Class A

APIs that return enriched blockchain data applicable to all blockchain networks, eg: token balances, transactions, log events, etc.

Get token balances for address

GET/v1/{chainName}/address/{walletAddress}/balances_v2/

Commonly used to fetch the native, fungible (ERC20), and non-fungible (ERC721 & ERC1155) tokens held by an address. Response includes spot prices and other metadata.

Costs:

1.00 Credits

Processing:

Realtime

Path Params

The chain name eg:  eth-mainnet.
menu_openeth-mainnet
The requested address. Passing in an  ENS,  RNS,  Lens Handle, or an  Unstoppable Domain resolves automatically.

Query Params

The currency to convert. Supports  USD,  CAD,  EUR,  SGD,  INR,  JPY,  VND,  CNY,  KRW,  RUB,  TRY,  NGN,  ARS,  AUD,  CHF, and  GBP.
If  true, NFTs will be included in the response.
If  true, only NFTs that have been cached will be included in the response. Helpful for faster response times.
If  true, the suspected spam tokens are removed. Supports  eth-mainnet and  matic-mainnet.
If  true, the response shape is limited to a list of collections and token ids, omitting metadata and asset information. Helpful for faster response times and wallets holding a large number of NFTs.
Show BalancesResponse Object
Show Guides
Installation
npm install @covalenthq/client-sdk
Request
import { CovalentClient } from "@covalenthq/client-sdk";

const ApiServices = async () => {
    const client = new CovalentClient("YOUR_API_KEY");
    const resp = await client.BalanceService.getTokenBalancesForWalletAddress("eth-mainnet");
    console.log(resp.data);
}

Get historical token balances for address

GET/v1/{chainName}/address/{walletAddress}/historical_balances/

Commonly used to fetch the historical native, fungible (ERC20), and non-fungible (ERC721 & ERC1155) tokens held by an address at a given block height or date. Response includes daily prices and other metadata.

Costs:

1.00 Credits

Processing:

Realtime
info

Supports only Ethereum, Binance Smart Chain and Polygon.

Path Params

The chain name eg:  eth-mainnet.
menu_openeth-mainnet
The requested address. Passing in an  ENS,  RNS,  Lens Handle, or an  Unstoppable Domain resolves automatically.

Query Params

The currency to convert. Supports  USD,  CAD,  EUR,  SGD,  INR,  JPY,  VND,  CNY,  KRW,  RUB,  TRY,  NGN,  ARS,  AUD,  CHF, and  GBP.
If  true, NFTs will be included in the response.
If  true, only NFTs that have been cached will be included in the response. Helpful for faster response times.
If  true, the suspected spam tokens are removed. Supports  eth-mainnet and  matic-mainnet.
If  true, the response shape is limited to a list of collections and token ids, omitting metadata and asset information. Helpful for faster response times and wallets holding a large number of NFTs.
Ending block to define a block range. Omitting this parameter defaults to the latest block height.
Ending date to define a block range (YYYY-MM-DD). Omitting this parameter defaults to the current date.
Show HistoricalBalancesResponse Object
Installation
npm install @covalenthq/client-sdk
Request
import { CovalentClient } from "@covalenthq/client-sdk";

const ApiServices = async () => {
    const client = new CovalentClient("YOUR_API_KEY");
    const resp = await client.BalanceService.getHistoricalTokenBalancesForWalletAddress("eth-mainnet");
    console.log(resp.data);
}

Get native token balance for address

GET/v1/{chainName}/address/{walletAddress}/balances_native/

Commonly used to get the native token balance for an address. This endpoint is required because native tokens are usually not ERC20 tokens and sometimes you want something lightweight.

Costs:

0.50 Credits

Processing:

Realtime

Path Params

The chain name eg:  eth-mainnet.
menu_openeth-mainnet
The requested address. Passing in an  ENS,  RNS,  Lens Handle, or an  Unstoppable Domain resolves automatically.

Query Params

The currency to convert. Supports  USD,  CAD,  EUR,  SGD,  INR,  JPY,  VND,  CNY,  KRW,  RUB,  TRY,  NGN,  ARS,  AUD,  CHF, and  GBP.
Ending block to define a block range. Omitting this parameter defaults to the latest block height.
Show TokenBalanceNativeResponse Object
Show Guides
Installation
npm install @covalenthq/client-sdk
Request
import { CovalentClient } from "@covalenthq/client-sdk";

const ApiServices = async () => {
    const client = new CovalentClient("YOUR_API_KEY");
    const resp = await client.BalanceService.getNativeTokenBalance("eth-mainnet");
    console.log(resp.data);
}

Get historical portfolio value over time

GET/v1/{chainName}/address/{walletAddress}/portfolio_v2/

Commonly used to render a daily portfolio balance for an address broken down by the token. The timeframe is user-configurable, defaults to 30 days.

Costs:

2.00 Credits per 30 days

Processing:

Realtime

Path Params

The chain name eg:  eth-mainnet.
menu_openeth-mainnet
The requested address. Passing in an  ENS,  RNS,  Lens Handle, or an  Unstoppable Domain resolves automatically.

Query Params

The currency to convert. Supports  USD,  CAD,  EUR,  SGD,  INR,  JPY,  VND,  CNY,  KRW,  RUB,  TRY,  NGN,  ARS,  AUD,  CHF, and  GBP.
The number of days to return data for. Defaults to 30 days.
Show PortfolioResponse Object
Show Guides
Installation
npm install @covalenthq/client-sdk
Request
import { CovalentClient } from "@covalenthq/client-sdk";

const ApiServices = async () => {
    const client = new CovalentClient("YOUR_API_KEY");
    const resp = await client.BalanceService.getHistoricalPortfolioForWalletAddress("eth-mainnet");
    console.log(resp.data);
}

Get ERC20 token transfers for address

GET/v1/{chainName}/address/{walletAddress}/transfers_v2/

Commonly used to render the transfer-in and transfer-out of a token along with historical prices from an address.

Costs:

0.05 Credits per item

Processing:

Realtime

Path Params

The chain name eg:  eth-mainnet.
menu_openeth-mainnet
The requested address. Passing in an  ENS,  RNS,  Lens Handle, or an  Unstoppable Domain resolves automatically.

Query Params

The currency to convert. Supports  USD,  CAD,  EUR,  SGD,  INR,  JPY,  VND,  CNY,  KRW,  RUB,  TRY,  NGN,  ARS,  AUD,  CHF, and  GBP.
The requested contract address. Passing in an  ENS,  RNS,  Lens Handle, or an  Unstoppable Domain resolves automatically.
The block height to start from, defaults to  0.
The block height to end at, defaults to current block height.
Number of items per page. Omitting this parameter defaults to 100.
0-indexed page number to begin pagination.
Show Erc20TransfersResponse Object
Show Guides
Installation
npm install @covalenthq/client-sdk
Request
import { CovalentClient } from "@covalenthq/client-sdk";

const ApiServices = async () => {
    const client = new CovalentClient("YOUR_API_KEY");
    try {
        for await (const resp of client.BalanceService.getErc20TransfersForWalletAddress("eth-mainnet")) {
            console.log(resp);
        }
    } catch (error) {
        console.log(error.message);
    }
}

Get token holders as of any block height (v2)

GET/v1/{chainName}/tokens/{tokenAddress}/token_holders_v2/

Commonly used to get a list of all the token holders for a specified ERC20 or ERC721 token. Returns historic token holders when block-height is set (defaults to latest). Useful for building pie charts of token holders.

Costs:

0.02 Credits per item

Processing:

Realtime

Path Params

The chain name eg:  eth-mainnet.
menu_openeth-mainnet
The requested address. Passing in an  ENS,  RNS,  Lens Handle, or an  Unstoppable Domain resolves automatically.

Query Params

Ending block to define a block range. Omitting this parameter defaults to the latest block height.
Ending date to define a block range (YYYY-MM-DD). Omitting this parameter defaults to the current date.
Number of items per page. Note: Currently, only values of  100 and  1000 are supported. Omitting this parameter defaults to 100.
0-indexed page number to begin pagination.
Show TokenHoldersResponse Object
Show Guides
Installation
npm install @covalenthq/client-sdk
Request
import { CovalentClient } from "@covalenthq/client-sdk";

const ApiServices = async () => {
    const client = new CovalentClient("YOUR_API_KEY");
    try {
        for await (const resp of client.BalanceService.getTokenHoldersV2ForTokenAddress("eth-mainnet")) {
            console.log(resp);
        }
    } catch (error) {
        console.log(error.message);
    }
}

Get NFTs for address

GET/v1/{chainName}/address/{walletAddress}/balances_nft/

Commonly used to render the NFTs (including ERC721 and ERC1155) held by an address.

Costs:

1.00 Credits

Processing:

Realtime

Path Params

The chain name eg:  eth-mainnet.
menu_openeth-mainnet
The requested address. Passing in an  ENS,  RNS,  Lens Handle, or an  Unstoppable Domain resolves automatically.

Query Params

If  true, the suspected spam tokens are removed. Supports  eth-mainnet and  matic-mainnet.
If  true, the response shape is limited to a list of collections and token ids, omitting metadata and asset information. Helpful for faster response times and wallets holding a large number of NFTs.
By default, this endpoint only works on chains where we've cached the assets and the metadata. When set to  true, the API will fetch metadata from upstream servers even if it's not cached - the downside being that the upstream server can block or rate limit the call and therefore resulting in time outs or slow response times on the Covalent side.
Show NftAddressBalanceNftResponse Object
Show Guides
Installation
npm install @covalenthq/client-sdk
Request
import { CovalentClient } from "@covalenthq/client-sdk";

const ApiServices = async () => {
    const client = new CovalentClient("YOUR_API_KEY");
    const resp = await client.NftService.getNftsForAddress("eth-mainnet");
    console.log(resp.data);
}

Get NFTs from contract with metadata

GET/v1/{chainName}/nft/{contractAddress}/metadata/

Commonly used to get NFT token IDs with metadata from a collection. Useful for building NFT card displays.

Costs:

15.00 Credits

Processing:

Realtime

Path Params

The chain name eg:  eth-mainnet.
menu_openeth-mainnet
The requested contract address. Passing in an  ENS,  RNS,  Lens Handle, or an  Unstoppable Domain resolves automatically.

Query Params

Omit metadata.
Number of items per page. Omitting this parameter defaults to 100.
0-indexed page number to begin pagination.
Filters NFTs based on a specific trait. If this filter is used, the API will return all NFTs with the specified trait. Accepts comma-separated values, is case-sensitive, and requires proper URL encoding.
Filters NFTs based on a specific trait value. If this filter is used, the API will return all NFTs with the specified trait value. If used with "traits-filter", only NFTs matching both filters will be returned. Accepts comma-separated values, is case-sensitive, and requires proper URL encoding.
By default, this endpoint only works on chains where we've cached the assets and the metadata. When set to  true, the API will fetch metadata from upstream servers even if it's not cached - the downside being that the upstream server can block or rate limit the call and therefore resulting in time outs or slow response times on the Covalent side.
Show NftMetadataResponse Object
Installation
npm install @covalenthq/client-sdk
Request
import { CovalentClient } from "@covalenthq/client-sdk";

const ApiServices = async () => {
    const client = new CovalentClient("YOUR_API_KEY");
    try {
        for await (const resp of client.NftService.getTokenIdsForContractWithMetadata("eth-mainnet")) {
            console.log(resp);
        }
    } catch (error) {
        console.log(error.message);
    }
}

Get single NFT with cached metadata from contract

GET/v1/{chainName}/nft/{contractAddress}/metadata/{tokenId}/

Commonly used to get a single NFT metadata by token ID from a collection. Useful for building NFT card displays.

Costs:

2.00 Credits

Processing:

Realtime
info

This endpoint defaults to serving cached metadata for certain chains. If attempted on a non-cached chain, it issues a warning, advising the setting of with-uncached=true.

For any given asset, if it's cached, the asset_cached field on the response returns true, providing the URL and other related data. If not cached yet, asset_cached shows false, with null values for the URL and other fields.

Path Params

The chain name eg:  eth-mainnet.
menu_openeth-mainnet
The requested contract address. Passing in an  ENS,  RNS,  Lens Handle, or an  Unstoppable Domain resolves automatically.
The requested token ID.

Query Params

Omit metadata.
By default, this endpoint only works on chains where we've cached the assets and the metadata. When set to  true, the API will fetch metadata from upstream servers even if it's not cached - the downside being that the upstream server can block or rate limit the call and therefore resulting in time outs or slow response times on the Covalent side.
Show NftMetadataResponse Object
Installation
npm install @covalenthq/client-sdk
Request
import { CovalentClient } from "@covalenthq/client-sdk";

const ApiServices = async () => {
    const client = new CovalentClient("YOUR_API_KEY");
    const resp = await client.NftService.getNftMetadataForGivenTokenIdForContract("eth-mainnet");
    console.log(resp.data);
}

Get NFT transactions for contract

GET/v1/{chainName}/tokens/{contractAddress}/nft_transactions/{tokenId}/

Commonly used to get all transactions of an NFT token. Useful for building a transaction history table or price chart.

Costs:

0.10 Credits per item

Processing:

Realtime

Path Params

The chain name eg:  eth-mainnet.
menu_openeth-mainnet
The requested contract address. Passing in an  ENS,  RNS,  Lens Handle, or an  Unstoppable Domain resolves automatically.
The requested token ID.

Query Params

If  true, the suspected spam tokens are removed. Supports  eth-mainnet and  matic-mainnet.
Show NftTransactionsResponse Object
Installation
npm install @covalenthq/client-sdk
Request
import { CovalentClient } from "@covalenthq/client-sdk";

const ApiServices = async () => {
    const client = new CovalentClient("YOUR_API_KEY");
    const resp = await client.NftService.getNftTransactionsForContractTokenId("eth-mainnet");
    console.log(resp.data);
}

Get traits for a collection

GET/v1/{chainName}/nft/{collectionContract}/traits/

Commonly used to fetch and render the traits of a collection as seen in rarity calculators.

Costs:

2.00 Credits

Processing:

Batch

Path Params

The chain name eg:  eth-mainnet.
menu_openeth-mainnet
The requested collection address. Passing in an  ENS,  RNS,  Lens Handle, or an  Unstoppable Domain resolves automatically.
Show NftCollectionTraitsResponse Object
Show Guides
Installation
npm install @covalenthq/client-sdk
Request
import { CovalentClient } from "@covalenthq/client-sdk";

const ApiServices = async () => {
    const client = new CovalentClient("YOUR_API_KEY");
    const resp = await client.NftService.getTraitsForCollection("eth-mainnet");
    console.log(resp.data);
}

Get trait summary for collection

GET/v1/{chainName}/nft/{collectionContract}/traits_summary/

Commonly used to calculate rarity scores for a collection based on its traits.

Costs:

5.00 Credits

Processing:

Batch

Path Params

The chain name eg:  eth-mainnet.
menu_openeth-mainnet
The requested collection address. Passing in an  ENS,  RNS,  Lens Handle, or an  Unstoppable Domain resolves automatically.
Show NftCollectionTraitSummaryResponse Object
Show Guides
Installation
npm install @covalenthq/client-sdk
Request
import { CovalentClient } from "@covalenthq/client-sdk";

const ApiServices = async () => {
    const client = new CovalentClient("YOUR_API_KEY");
    const resp = await client.NftService.getCollectionTraitsSummary("eth-mainnet");
    console.log(resp.data);
}

Get attributes for a collection trait

GET/v1/{chainName}/nft/{collectionContract}/traits/{trait}/attributes/

Commonly used to get the count of unique values for traits within an NFT collection.

Costs:

2.00 Credits

Processing:

Batch

Path Params

The chain name eg:  eth-mainnet.
menu_openeth-mainnet
The requested collection address. Passing in an  ENS,  RNS,  Lens Handle, or an  Unstoppable Domain resolves automatically.
The requested trait.
Show NftCollectionAttributesForTraitResponse Object
Show Guides
Installation
npm install @covalenthq/client-sdk
Request
import { CovalentClient } from "@covalenthq/client-sdk";

const ApiServices = async () => {
    const client = new CovalentClient("YOUR_API_KEY");
    const resp = await client.NftService.getAttributesForTraitInCollection("eth-mainnet");
    console.log(resp.data);
}

Get chain collections

GET/v1/{chainName}/nft/collections/

Commonly used to fetch the list of NFT collections with downloaded and cached off chain data like token metadata and asset files.

Costs:

0.01 Credits

Processing:

Batch

Path Params

The chain name eg:  eth-mainnet.
menu_openeth-mainnet

Query Params

Number of items per page. Omitting this parameter defaults to 100.
0-indexed page number to begin pagination.
If  true, the suspected spam tokens are removed. Supports  eth-mainnet and  matic-mainnet.
Show ChainCollectionResponse Object
Show Guides
Installation
npm install @covalenthq/client-sdk
Request
import { CovalentClient } from "@covalenthq/client-sdk";

const ApiServices = async () => {
    const client = new CovalentClient("YOUR_API_KEY");
    try {
        for await (const resp of client.NftService.getChainCollections("eth-mainnet")) {
            console.log(resp);
        }
    } catch (error) {
        console.log(error.message);
    }
}

Get historical floor prices for a collection

GET/v1/{chainName}/nft_market/{contractAddress}/floor_price/

Commonly used to render a price floor chart for an NFT collection.

Costs:

2.00 Credits

Processing:

Batch

Path Params

The chain name eg:  eth-mainnet.
menu_openeth-mainnet
The requested contract address. Passing in an  ENS,  RNS,  Lens Handle, or an  Unstoppable Domain resolves automatically.

Query Params

The number of days to return data for. Request up 365 days. Defaults to 30 days.
The currency to convert. Supports  USD,  CAD,  EUR,  SGD,  INR,  JPY,  VND,  CNY,  KRW,  RUB,  TRY,  NGN,  ARS,  AUD,  CHF, and  GBP.
Show NftMarketFloorPriceResponse Object
Show Guides
Installation
npm install @covalenthq/client-sdk
Request
import { CovalentClient } from "@covalenthq/client-sdk";

const ApiServices = async () => {
    const client = new CovalentClient("YOUR_API_KEY");
    const resp = await client.NftService.getNftMarketFloorPrice("eth-mainnet");
    console.log(resp.data);
}

Get historical volume for a collection

GET/v1/{chainName}/nft_market/{contractAddress}/volume/

Commonly used to build a time-series chart of the transaction volume of an NFT collection.

Costs:

2.00 Credits

Processing:

Batch

Path Params

The chain name eg:  eth-mainnet.
menu_openeth-mainnet
The requested contract address. Passing in an  ENS,  RNS,  Lens Handle, or an  Unstoppable Domain resolves automatically.

Query Params

The number of days to return data for. Request up 365 days. Defaults to 30 days.
The currency to convert. Supports  USD,  CAD,  EUR,  SGD,  INR,  JPY,  VND,  CNY,  KRW,  RUB,  TRY,  NGN,  ARS,  AUD,  CHF, and  GBP.
Show NftMarketVolumeResponse Object
Show Guides
Installation
npm install @covalenthq/client-sdk
Request
import { CovalentClient } from "@covalenthq/client-sdk";

const ApiServices = async () => {
    const client = new CovalentClient("YOUR_API_KEY");
    const resp = await client.NftService.getNftMarketVolume("eth-mainnet");
    console.log(resp.data);
}

Get historical sales count for a collection

GET/v1/{chainName}/nft_market/{contractAddress}/sale_count/

Commonly used to build a time-series chart of the sales count of an NFT collection.

Costs:

2.00 Credits

Processing:

Batch

Path Params

The chain name eg:  eth-mainnet.
menu_openeth-mainnet
The requested contract address. Passing in an  ENS,  RNS,  Lens Handle, or an  Unstoppable Domain resolves automatically.

Query Params

The number of days to return data for. Request up 365 days. Defaults to 30 days.
The currency to convert. Supports  USD,  CAD,  EUR,  SGD,  INR,  JPY,  VND,  CNY,  KRW,  RUB,  TRY,  NGN,  ARS,  AUD,  CHF, and  GBP.
Show NftMarketSaleCountResponse Object
Show Guides
Installation
npm install @covalenthq/client-sdk
Request
import { CovalentClient } from "@covalenthq/client-sdk";

const ApiServices = async () => {
    const client = new CovalentClient("YOUR_API_KEY");
    const resp = await client.NftService.getNftMarketSaleCount("eth-mainnet");
    console.log(resp.data);
}

Check ownership in NFT collection

GET/v1/{chainName}/address/{walletAddress}/collection/{collectionContract}/

Commonly used to verify ownership of NFTs (including ERC-721 and ERC-1155) within a collection.

Costs:

1.00 Credits

Processing:

Batch

Path Params

The chain name eg:  eth-mainnet.
menu_openeth-mainnet
The requested address. Passing in an  ENS,  RNS,  Lens Handle, or an  Unstoppable Domain resolves automatically.
The requested collection address.
Show NftOwnershipForCollectionResponse Object
Show Guides
Installation
npm install @covalenthq/client-sdk
Request
import { CovalentClient } from "@covalenthq/client-sdk";

const ApiServices = async () => {
    const client = new CovalentClient("YOUR_API_KEY");
    const resp = await client.NftService.checkOwnershipInNft("eth-mainnet");
    console.log(resp.data);
}

Check ownership in NFT collection for specific token

GET/v1/{chainName}/address/{walletAddress}/collection/{collectionContract}/token/{tokenId}/

Commonly used to verify ownership of a specific token (ERC-721 or ERC-1155) within a collection.

Costs:

1.00 Credits

Processing:

Batch

Path Params

The chain name eg:  eth-mainnet.
menu_openeth-mainnet
The requested address. Passing in an  ENS,  RNS,  Lens Handle, or an  Unstoppable Domain resolves automatically.
The requested collection address. Passing in an  ENS,  RNS,  Lens Handle, or an  Unstoppable Domain resolves automatically.
The requested token ID.
Show NftOwnershipForCollectionResponse Object
Show Guides
Installation
npm install @covalenthq/client-sdk
Request
import { CovalentClient } from "@covalenthq/client-sdk";

const ApiServices = async () => {
    const client = new CovalentClient("YOUR_API_KEY");
    const resp = await client.NftService.checkOwnershipInNftForSpecificTokenId("eth-mainnet");
    console.log(resp.data);
}

Get token approvals for address

GET/v1/{chainName}/approvals/{walletAddress}/

Commonly used to get a list of approvals across all token contracts categorized by spenders for a wallet’s assets.

Costs:

2.00 Credits

Processing:

Realtime

Path Params

The chain name eg:  eth-mainnet.
menu_openeth-mainnet
The requested address. Passing in an  ENS,  RNS,  Lens Handle, or an  Unstoppable Domain resolves automatically.
Show ApprovalsResponse Object
Show Guides
Installation
npm install @covalenthq/client-sdk
Request
import { CovalentClient } from "@covalenthq/client-sdk";

const ApiServices = async () => {
    const client = new CovalentClient("YOUR_API_KEY");
    const resp = await client.SecurityService.getApprovals("eth-mainnet");
    console.log(resp.data);
}

Get NFT approvals for address

GET/v1/{chainName}/nft/approvals/{walletAddress}/

Commonly used to get a list of NFT approvals across all token contracts categorized by spenders for a wallet’s assets.

Costs:

2.00 Credits

Processing:

Realtime

Path Params

The chain name eg:  eth-mainnet.
menu_openeth-mainnet
The requested address. Passing in an  ENS,  RNS,  Lens Handle, or an  Unstoppable Domain resolves automatically.
Show NftApprovalsResponse Object
Installation
npm install @covalenthq/client-sdk
Request
import { CovalentClient } from "@covalenthq/client-sdk";

const ApiServices = async () => {
    const client = new CovalentClient("YOUR_API_KEY");
    const resp = await client.SecurityService.getNftApprovals("eth-mainnet");
    console.log(resp.data);
}

Get a transaction

GET/v1/{chainName}/transaction_v2/{txHash}/

Commonly used to fetch and render a single transaction including its decoded log events. Additionally return semantically decoded information for DEX trades, lending and NFT sales.

Costs:

0.10 Credits

Processing:

Realtime
info

Enriched data when using with-dex, with-lending and with-nft-sales is currently behind by ~40mins.

Safe data for L2 chains is currently available by using with-safe. L1 data is coming soon.

Path Params

The chain name eg:  eth-mainnet.
menu_openeth-mainnet
The transaction hash.

Query Params

The currency to convert. Supports  USD,  CAD,  EUR,  SGD,  INR,  JPY,  VND,  CNY,  KRW,  RUB,  TRY,  NGN,  ARS,  AUD,  CHF, and  GBP.
Omit log events.
Decoded DEX details including protocol (e.g. Uniswap), event (e.g 'add_liquidity') and tokens involved with historical prices. Additional 0.05 credits charged if data available.
Decoded NFT sales details including marketplace (e.g. Opensea) and cached media links. Additional 0.05 credits charged if data available.
Decoded lending details including protocol (e.g. Aave), event (e.g. 'deposit') and tokens involved with prices. Additional 0.05 credits charged if data available.
Include safe details.
Show TransactionResponse Object
Show Guides
Installation
npm install @covalenthq/client-sdk
Request
import { CovalentClient } from "@covalenthq/client-sdk";

const ApiServices = async () => {
    const client = new CovalentClient("YOUR_API_KEY");
    const resp = await client.TransactionService.getTransaction("eth-mainnet");
    console.log(resp.data);
}

Get transaction summary for address

GET/v1/{chainName}/address/{walletAddress}/transactions_summary/

Commonly used to fetch the earliest and latest transactions, and the transaction count for a wallet. Calculate the age of the wallet and the time it has been idle and quickly gain insights into their engagement with web3.

Costs:

1.00 Credits

Processing:

Batch

Path Params

The chain name eg:  eth-mainnet.
menu_openeth-mainnet
The requested address. Passing in an  ENS,  RNS,  Lens Handle, or an  Unstoppable Domain resolves automatically.

Query Params

The currency to convert. Supports  USD,  CAD,  EUR,  SGD,  INR,  JPY,  VND,  CNY,  KRW,  RUB,  TRY,  NGN,  ARS,  AUD,  CHF, and  GBP.
Include gas summary details. Additional charge of 1 credit when true. Response times may be impacted for wallets with millions of transactions.
Show TransactionsSummaryResponse Object
Show Guides
Installation
npm install @covalenthq/client-sdk
Request
import { CovalentClient } from "@covalenthq/client-sdk";

const ApiServices = async () => {
    const client = new CovalentClient("YOUR_API_KEY");
    const resp = await client.TransactionService.getTransactionSummary("eth-mainnet");
    console.log(resp.data);
}

Get earliest transactions for address (v3)

GET/v1/{chainName}/bulk/transactions/{walletAddress}/

Commonly used to fetch and render the earliest transactions involving an address. Frequently seen in wallet applications.

Costs:

0.10 Credits per item

Processing:

Realtime
info

Returns the same results as the first timebucket for an address in the Get recent transactions endpoint.

Path Params

The chain name eg:  eth-mainnet.
menu_openeth-mainnet
The requested address. Passing in an  ENS,  RNS,  Lens Handle, or an  Unstoppable Domain resolves automatically.

Query Params

The currency to convert. Supports  USD,  CAD,  EUR,  SGD,  INR,  JPY,  VND,  CNY,  KRW,  RUB,  TRY,  NGN,  ARS,  AUD,  CHF, and  GBP.
Omit log events.
Include safe details.
Show TransactionsTimeBucketResponse Object
Show Guides
Request
curl -X GET https://api.covalenthq.com/v1/eth-mainnet/bulk/transactions/{walletAddress}/? \
    -H 'Content-Type: application/json' \
    -u YOUR_API_KEY: \
     # The colon prevents curl from asking for a password

Get recent transactions for address (v3)

GET/v1/{chainName}/address/{walletAddress}/transactions_v3/

Commonly used to fetch and render the most recent transactions involving an address. Frequently seen in wallet applications.

Costs:

0.10 Credits per item

Processing:

Realtime
info

Safe data for L2 chains is currently available by using with-safe. L1 data is coming soon.

Path Params

The chain name eg:  eth-mainnet.
menu_openeth-mainnet
The requested address. Passing in an  ENS,  RNS,  Lens Handle, or an  Unstoppable Domain resolves automatically.

Query Params

The currency to convert. Supports  USD,  CAD,  EUR,  SGD,  INR,  JPY,  VND,  CNY,  KRW,  RUB,  TRY,  NGN,  ARS,  AUD,  CHF, and  GBP.
Omit log events.
Sort the transactions in ascending chronological order. By default, it's set to  false and returns transactions in descending chronological order.
Include safe details.
Show RecentTransactionsResponse Object
Show Guides
Installation
npm install @covalenthq/client-sdk
Request
import { CovalentClient } from "@covalenthq/client-sdk";

const ApiServices = async () => {
    const client = new CovalentClient("YOUR_API_KEY");
    try {
        for await (const resp of client.TransactionService.getAllTransactionsForAddress("eth-mainnet")) {
            console.log(resp);
        }
    } catch (error) {
        console.log(error.message);
    }
}

Get paginated transactions for address (v3)

GET/v1/{chainName}/address/{walletAddress}/transactions_v3/page/{page}/

Commonly used to fetch the transactions involving an address including the decoded log events in a paginated fashion.

Costs:

0.10 Credits per item

Processing:

Realtime
info

This endpoint returns paginated transactions, starting with the earliest transactions on page 0. For the most recent transactions, refer to the Get recent transactions for address (v3) endpoint.

Safe data for L2 chains is currently available by using with-safe. L1 data is coming soon.

Path Params

The chain name eg:  eth-mainnet.
menu_openeth-mainnet
The requested address. Passing in an  ENS,  RNS,  Lens Handle, or an  Unstoppable Domain resolves automatically.
The requested page, 0-indexed.

Query Params

The currency to convert. Supports  USD,  CAD,  EUR,  SGD,  INR,  JPY,  VND,  CNY,  KRW,  RUB,  TRY,  NGN,  ARS,  AUD,  CHF, and  GBP.
Omit log events.
Sort the transactions in ascending chronological order. By default, it's set to  false and returns transactions in descending chronological order.
Include safe details.
Show TransactionsResponse Object
Show Guides
Request
curl -X GET https://api.covalenthq.com/v1/eth-mainnet/address/{walletAddress}/transactions_v3/page/{page}/? \
    -H 'Content-Type: application/json' \
    -u YOUR_API_KEY: \
     # The colon prevents curl from asking for a password

Get bulk time bucket transactions for address (v3)

GET/v1/{chainName}/bulk/transactions/{walletAddress}/{timeBucket}/

Commonly used to fetch all transactions including their decoded log events in a 15-minute time bucket interval.

Costs:

0.10 Credits per item

Processing:

Realtime
info

Safe data for L2 chains is currently available by using with-safe. L1 data is coming soon.

Path Params

The chain name eg:  eth-mainnet.
menu_openeth-mainnet
The requested address. Passing in an  ENS,  RNS,  Lens Handle, or an  Unstoppable Domain resolves automatically.
The 0-indexed 15-minute time bucket. E.g. 27 Feb 2023 05:23 GMT = 1677475383 (Unix time). 1677475383/900=1863861 timeBucket.

Query Params

The currency to convert. Supports  USD,  CAD,  EUR,  SGD,  INR,  JPY,  VND,  CNY,  KRW,  RUB,  TRY,  NGN,  ARS,  AUD,  CHF, and  GBP.
Omit log events.
Include safe details.
Show TransactionsTimeBucketResponse Object
Show Guides
Request
curl -X GET https://api.covalenthq.com/v1/eth-mainnet/bulk/transactions/{walletAddress}/{timeBucket}/? \
    -H 'Content-Type: application/json' \
    -u YOUR_API_KEY: \
     # The colon prevents curl from asking for a password

Get all transactions in a block (v3)

GET/v1/{chainName}/block/{blockHeight}/transactions_v3/

Commonly used to fetch all transactions including their decoded log events in a block and further flag interesting wallets or transactions.

Costs:

0.10 Credits per item

Processing:

Realtime

Path Params

The chain name eg:  eth-mainnet.
menu_openeth-mainnet
The requested block height.

Query Params

The currency to convert. Supports  USD,  CAD,  EUR,  SGD,  INR,  JPY,  VND,  CNY,  KRW,  RUB,  TRY,  NGN,  ARS,  AUD,  CHF, and  GBP.
Omit log events.
Include safe details.
Show TransactionsBlockResponse Object
Show Guides
Installation
npm install @covalenthq/client-sdk
Request
import { CovalentClient } from "@covalenthq/client-sdk";

const ApiServices = async () => {
    const client = new CovalentClient("YOUR_API_KEY");
    const resp = await client.TransactionService.getTransactionsForBlock("eth-mainnet");
    console.log(resp.data);
}

Get all transactions in a block by page (v3)

GET/v1/{chainName}/block/{blockHeight}/transactions_v3/page/{page}/

Commonly used to fetch all transactions including their decoded log events in a block and further flag interesting wallets or transactions.

Costs:

0.10 Credits per item

Processing:

Realtime

Path Params

The chain name eg:  eth-mainnet.
menu_openeth-mainnet
The requested block height. Also accepts  latest to get latest block.
The requested 0-indexed page number.

Query Params

The currency to convert. Supports  USD,  CAD,  EUR,  SGD,  INR,  JPY,  VND,  CNY,  KRW,  RUB,  TRY,  NGN,  ARS,  AUD,  CHF, and  GBP.
Omit log events.
Include safe details.
Show TransactionsBlockPageResponse Object
Request
curl -X GET https://api.covalenthq.com/v1/eth-mainnet/block/{blockHeight}/transactions_v3/page/{page}/? \
    -H 'Content-Type: application/json' \
    -u YOUR_API_KEY: \
     # The colon prevents curl from asking for a password

Get a block

GET/v1/{chainName}/block_v2/{blockHeight}/

Commonly used to fetch and render a single block for a block explorer.

Costs:

1.00 Credits

Processing:

Realtime

Path Params

The chain name eg:  eth-mainnet.
menu_openeth-mainnet
The block height or  latest for the latest block available.
Show BlockResponse Object
Installation
npm install @covalenthq/client-sdk
Request
import { CovalentClient } from "@covalenthq/client-sdk";

const ApiServices = async () => {
    const client = new CovalentClient("YOUR_API_KEY");
    const resp = await client.BaseService.getBlock("eth-mainnet");
    console.log(resp.data);
}

Get block heights

GET/v1/{chainName}/block_v2/{startDate}/{endDate}/

Commonly used to get all the block heights within a particular date range. Useful for rendering a display where you sort blocks by day.

Costs:

1.00 Credits

Processing:

Realtime

Path Params

The chain name eg:  eth-mainnet.
menu_openeth-mainnet
The start date in YYYY-MM-DD format.
The end date in YYYY-MM-DD format.

Query Params

Number of items per page. Omitting this parameter defaults to 100.
0-indexed page number to begin pagination.
Show BlockHeightsResponse Object
Installation
npm install @covalenthq/client-sdk
Request
import { CovalentClient } from "@covalenthq/client-sdk";

const ApiServices = async () => {
    const client = new CovalentClient("YOUR_API_KEY");
    try {
        for await (const resp of client.BaseService.getBlockHeights("eth-mainnet")) {
            console.log(resp);
        }
    } catch (error) {
        console.log(error.message);
    }
}

Get logs

GET/v1/{chainName}/events/

Commonly used to get all the event logs of the latest block, or for a range of blocks. Includes sender contract metadata as well as decoded logs.

Costs:

5.00 Credits per block

Processing:

Batch

Path Params

The chain name eg:  eth-mainnet.
menu_openeth-mainnet

Query Params

The first block to retrieve log events with. Accepts decimals, hexadecimals, or the strings  earliest and  latest.
The last block to retrieve log events with. Accepts decimals, hexadecimals, or the strings  earliest and  latest.
The address of the log events sender contract.
The topic hash(es) to retrieve logs with.
The block hash to retrieve logs for.
Omit decoded log events.
Show GetLogsResponse Object
Show Guides
Installation
npm install @covalenthq/client-sdk
Request
import { CovalentClient } from "@covalenthq/client-sdk";

const ApiServices = async () => {
    const client = new CovalentClient("YOUR_API_KEY");
    const resp = await client.BaseService.getLogs("eth-mainnet");
    console.log(resp.data);
}

Get log events by contract address

GET/v1/{chainName}/events/address/{contractAddress}/

Commonly used to get all the event logs emitted from a particular contract address. Useful for building dashboards that examine on-chain interactions.

Costs:

0.01 Credits per item

Processing:

Realtime

Path Params

The chain name eg:  eth-mainnet.
menu_openeth-mainnet
The requested contract address. Passing in an  ENS,  RNS,  Lens Handle, or an  Unstoppable Domain resolves automatically.

Query Params

The first block to retrieve log events with. Accepts decimals, hexadecimals, or the strings  earliest and  latest.
The last block to retrieve log events with. Accepts decimals, hexadecimals, or the strings  earliest and  latest.
Number of items per page. Omitting this parameter defaults to 100.
0-indexed page number to begin pagination.
Show LogEventsByAddressResponse Object
Installation
npm install @covalenthq/client-sdk
Request
import { CovalentClient } from "@covalenthq/client-sdk";

const ApiServices = async () => {
    const client = new CovalentClient("YOUR_API_KEY");
    try {
        for await (const resp of client.BaseService.getLogEventsByAddress("eth-mainnet")) {
            console.log(resp);
        }
    } catch (error) {
        console.log(error.message);
    }
}

Get log events by topic hash(es)

GET/v1/{chainName}/events/topics/{topicHash}/

Commonly used to get all event logs of the same topic hash across all contracts within a particular chain. Useful for cross-sectional analysis of event logs that are emitted on-chain.

Costs:

0.01 Credits per item

Processing:

Realtime

Path Params

The chain name eg:  eth-mainnet.
menu_openeth-mainnet
The endpoint will return event logs that contain this topic hash.

Query Params

The first block to retrieve log events with. Accepts decimals, hexadecimals, or the strings  earliest and  latest.
The last block to retrieve log events with. Accepts decimals, hexadecimals, or the strings  earliest and  latest.
Additional topic hash(es) to filter on - padded & unpadded address fields are supported. Separate multiple topics with a comma.
Number of items per page. Omitting this parameter defaults to 100.
0-indexed page number to begin pagination.
Show LogEventsByTopicHashResponse Object
Show Guides
Installation
npm install @covalenthq/client-sdk
Request
import { CovalentClient } from "@covalenthq/client-sdk";

const ApiServices = async () => {
    const client = new CovalentClient("YOUR_API_KEY");
    try {
        for await (const resp of client.BaseService.getLogEventsByTopicHash("eth-mainnet")) {
            console.log(resp);
        }
    } catch (error) {
        console.log(error.message);
    }
}

Get resolved address for registered address

GET/v1/{chainName}/address/{walletAddress}/resolve_address/

Commonly used to resolve ENS, RNS and Unstoppable Domains addresses.

Costs:

1.00 Credits

Processing:

Realtime

Note: all our endpoints support address resolution natively allowing an ENS, RNS or Unstoppable Domains address to be passed in directly.

Path Params

The chain name eg:  eth-mainnet.
menu_openeth-mainnet
The requested address. Passing in an  ENS,  RNS,  Lens Handle, or an  Unstoppable Domain resolves automatically.
Show ResolvedAddress Object
Installation
npm install @covalenthq/client-sdk
Request
import { CovalentClient } from "@covalenthq/client-sdk";

const ApiServices = async () => {
    const client = new CovalentClient("YOUR_API_KEY");
    const resp = await client.BaseService.getResolvedAddress("eth-mainnet");
    console.log(resp.data);
}

Get all chains

GET/v1/chains/

Commonly used to build internal dashboards for all supported chains on Covalent.

Costs:

0.01 Credits

Processing:

Realtime
Show AllChainsResponse Object
Installation
npm install @covalenthq/client-sdk
Request
import { CovalentClient } from "@covalenthq/client-sdk";

const ApiServices = async () => {
    const client = new CovalentClient("YOUR_API_KEY");
    const resp = await client.BaseService.getAllChains();
    console.log(resp.data);
}

Get all chain statuses

GET/v1/chains/status/

Commonly used to build internal status dashboards of all supported chains.

Costs:

1.00 Credits

Processing:

Realtime
Show AllChainsStatusResponse Object
Installation
npm install @covalenthq/client-sdk
Request
import { CovalentClient } from "@covalenthq/client-sdk";

const ApiServices = async () => {
    const client = new CovalentClient("YOUR_API_KEY");
    const resp = await client.BaseService.getAllChainStatus();
    console.log(resp.data);
}

Get gas prices

GET/v1/{chainName}/event/{eventType}/gas_prices/

Get real-time gas estimates for different transaction speeds on a specific network, enabling users to optimize transaction costs and confirmation times.

Costs:

1.00 Credits

Processing:

Batch
info

Currently support these event types: erc20 token transfers, nativetokens transfer, and uniswapv3 swap events.

Path Params

The chain name eg:  eth-mainnet.
menu_openeth-mainnet
The desired event type to retrieve gas prices for. Supports  erc20 transfer events,  uniswapv3 swap events and  nativetokens transfers.

Query Params

The currency to convert. Supports  USD,  CAD,  EUR,  SGD,  INR,  JPY,  VND,  CNY,  KRW,  RUB,  TRY,  NGN,  ARS,  AUD,  CHF, and  GBP.
Show GasPricesResponse Object
Installation
npm install @covalenthq/client-sdk
Request
import { CovalentClient } from "@covalenthq/client-sdk";

const ApiServices = async () => {
    const client = new CovalentClient("YOUR_API_KEY");
    const resp = await client.BaseService.getGasPrices("eth-mainnet");
    console.log(resp.data);
}

Get cross-chain activity for address

GET/v1/address/{walletAddress}/activity/

Commonly used to locate chains which an address is active on with a single API call.

Costs:

0.50 Credits

Processing:

Realtime

Path Params

The requested wallet address. Passing in an  ENS,  RNS,  Lens Handle, or an  Unstoppable Domain resolves automatically.

Query Params

Set to true to include testnets with activity in the response. By default, it's set to  false and only returns mainnet activity.
Show ChainActivityResponse Object
Show Guides
Installation
npm install @covalenthq/client-sdk
Request
import { CovalentClient } from "@covalenthq/client-sdk";

const ApiServices = async () => {
    const client = new CovalentClient("YOUR_API_KEY");
    const resp = await client.BaseService.getAddressActivity();
    console.log(resp.data);
}

Class B

APIs maintained by Covalent for a specific protocol on a specific blockchain, eg: Constant Product AMMs (XY=K) on various blockchains.

Get XY=K pools

GET/v1/{chainName}/xy=k/{dexName}/pools/

Commonly used to get all the pools of a particular DEX. Supports most common DEXs (Uniswap, SushiSwap, etc), and returns detailed trading data (volume, liquidity, swap counts, fees, LP token prices).

Costs:

1.00 Credits

Processing:

Batch

The returned list of pools only contains the active ones and we define active as pools that have had atleast one swap in the last days.

Path Params

The chain name eg:  eth-mainnet.
menu_openeth-mainnet
The DEX name eg:  uniswap_v2.

Query Params

Ending date to define a block range (YYYY-MM-DD). Omitting this parameter defaults to the current date.
Number of items per page. Omitting this parameter defaults to 100.
0-indexed page number to begin pagination.
Show PoolResponse Object
Show Guides
Installation
npm install @covalenthq/client-sdk
Request
import { CovalentClient } from "@covalenthq/client-sdk";

const ApiServices = async () => {
    const client = new CovalentClient("YOUR_API_KEY");
    const resp = await client.XykService.getPools("eth-mainnet");
    console.log(resp.data);
}

Get XY=K pool by address

GET/v1/{chainName}/xy=k/{dexName}/pools/address/{poolAddress}/

Commonly used to get the 7 day and 30 day time-series data (volume, liquidity, price) of a particular liquidity pool in a DEX. Useful for building time-series charts on DEX trading activity.

Costs:

1.00 Credits

Processing:

Batch

Path Params

The chain name eg:  eth-mainnet.
menu_openeth-mainnet
The DEX name eg:  uniswap_v2.
The pool contract address. Passing in an  ENS,  RNS,  Lens Handle, or an  Unstoppable Domain resolves automatically.
Show PoolByAddressResponse Object
Installation
npm install @covalenthq/client-sdk
Request
import { CovalentClient } from "@covalenthq/client-sdk";

const ApiServices = async () => {
    const client = new CovalentClient("YOUR_API_KEY");
    const resp = await client.XykService.getPoolByAddress("eth-mainnet");
    console.log(resp.data);
}

Get XY=K pools for ERC20 token address

GET/v1/{chainName}/xy=k/tokens/address/{tokenAddress}/pools/page/{page}/

Commonly used to get all pools and the supported DEX for a token. Useful for building a table of top pairs across all supported DEXes that the token is trading on.

Costs:

1.00 Credits

Processing:

Batch

Path Params

The chain name eg:  eth-mainnet.
menu_openeth-mainnet
The token contract address. Passing in an  ENS,  RNS,  Lens Handle, or an  Unstoppable Domain resolves automatically.
The requested 0-indexed page number.

Query Params

The currency to convert. Supports  USD,  CAD,  EUR,  SGD,  INR,  JPY,  VND,  CNY,  KRW,  RUB,  TRY,  NGN,  ARS,  AUD,  CHF, and  GBP.
The DEX name eg:  uniswap_v2.
Number of items per page. Omitting this parameter defaults to 100.
Show PoolsDexDataResponse Object
Installation
npm install @covalenthq/client-sdk
Request
import { CovalentClient } from "@covalenthq/client-sdk";

const ApiServices = async () => {
    const client = new CovalentClient("YOUR_API_KEY");
    const resp = await client.XykService.getPoolsForTokenAddress("eth-mainnet");
    console.log(resp.data);
}

Get XY=K pools for wallet address

GET/v1/{chainName}/xy=k/address/{walletAddress}/pools/page/{page}/

Commonly used to get all pools and supported DEX for a wallet. Useful for building a personal DEX UI showcasing pairs and supported DEXes associated to the wallet.

Costs:

1.00 Credits

Processing:

Batch
info

Supports only Ethereum, Binance Smart Chain and Polygon.

Path Params

The chain name eg:  eth-mainnet.
menu_openeth-mainnet
The account address.
The requested 0-indexed page number.

Query Params

The token contract address. Passing in an  ENS,  RNS,  Lens Handle, or an  Unstoppable Domain resolves automatically.
The currency to convert. Supports  USD,  CAD,  EUR,  SGD,  INR,  JPY,  VND,  CNY,  KRW,  RUB,  TRY,  NGN,  ARS,  AUD,  CHF, and  GBP.
The DEX name eg:  uniswap_v2.
Number of items per page. Omitting this parameter defaults to 100.
Show PoolsDexDataResponse Object
Show Guides
Installation
npm install @covalenthq/client-sdk
Request
import { CovalentClient } from "@covalenthq/client-sdk";

const ApiServices = async () => {
    const client = new CovalentClient("YOUR_API_KEY");
    const resp = await client.XykService.getPoolsForWalletAddress("eth-mainnet");
    console.log(resp.data);
}

Get XY=K address exchange balances

GET/v1/{chainName}/xy=k/{dexName}/address/{accountAddress}/balances/

Commonly used to return balance of a wallet/contract address on a specific DEX.

Costs:

1.00 Credits

Processing:

Batch

Path Params

The chain name eg:  eth-mainnet.
menu_openeth-mainnet
The DEX name eg:  uniswap_v2.
The account address.
Show AddressExchangeBalancesResponse Object
Installation
npm install @covalenthq/client-sdk
Request
import { CovalentClient } from "@covalenthq/client-sdk";

const ApiServices = async () => {
    const client = new CovalentClient("YOUR_API_KEY");
    const resp = await client.XykService.getAddressExchangeBalances("eth-mainnet");
    console.log(resp.data);
}

Get XY=K network exchange tokens

GET/v1/{chainName}/xy=k/{dexName}/tokens/

Commonly used to retrieve all network exchange tokens for a specific DEX. Useful for building a top tokens table by total liquidity within a particular DEX.

Costs:

1.00 Credits

Processing:

Batch

Path Params

The chain name eg:  eth-mainnet.
menu_openeth-mainnet
The DEX name eg:  uniswap_v2.

Query Params

Number of items per page. Omitting this parameter defaults to 100.
0-indexed page number to begin pagination.
Show NetworkExchangeTokensResponse Object
Show Guides
Installation
npm install @covalenthq/client-sdk
Request
import { CovalentClient } from "@covalenthq/client-sdk";

const ApiServices = async () => {
    const client = new CovalentClient("YOUR_API_KEY");
    const resp = await client.XykService.getNetworkExchangeTokens("eth-mainnet");
    console.log(resp.data);
}

Get XY=K supported DEXes

GET/v1/xy=k/supported_dexes/

Commonly used to get all the supported DEXs available for the xy=k endpoints, along with the swap fees and factory addresses.

Costs:

0.01 Credits

Processing:

Realtime
Show SupportedDexesResponse Object
Installation
npm install @covalenthq/client-sdk
Request
import { CovalentClient } from "@covalenthq/client-sdk";

const ApiServices = async () => {
    const client = new CovalentClient("YOUR_API_KEY");
    const resp = await client.XykService.getSupportedDEXes("eth-mainnet");
    console.log(resp.data);
}

Get XY=K DEX for pool address

GET/v1/{chainName}/xy=k/address/{poolAddress}/dex_name/

Commonly used to get the corresponding supported DEX given a pool address, along with the swap fees, DEX's logo url, and factory addresses. Useful to identifying the specific DEX to which a pair address is associated.

Costs:

1.00 Credits

Processing:

Batch

Path Params

The chain name eg:  eth-mainnet.
menu_openeth-mainnet
The requested pool address.
Show PoolToDexResponse Object
Installation
npm install @covalenthq/client-sdk
Request
import { CovalentClient } from "@covalenthq/client-sdk";

const ApiServices = async () => {
    const client = new CovalentClient("YOUR_API_KEY");
    const resp = await client.XykService.getDexForPoolAddress("eth-mainnet");
    console.log(resp.data);
}

Get XY=K swap count for exchange token

GET/v1/{chainName}/xy=k/{dexName}/tokens/address/{tokenAddress}/

Commonly used to get historical daily swap count for a single network exchange token.

Costs:

1.00 Credits

Processing:

Batch

Path Params

The chain name eg:  eth-mainnet.
menu_openeth-mainnet
The DEX name eg:  uniswap_v2.
The token contract address. Passing in an  ENS,  RNS,  Lens Handle, or an  Unstoppable Domain resolves automatically.

Query Params

Number of items per page. Omitting this parameter defaults to 100.
0-indexed page number to begin pagination.
Show SingleNetworkExchangeTokenResponse Object
Installation
npm install @covalenthq/client-sdk
Request
import { CovalentClient } from "@covalenthq/client-sdk";

const ApiServices = async () => {
    const client = new CovalentClient("YOUR_API_KEY");
    const resp = await client.XykService.getSingleNetworkExchangeToken("eth-mainnet");
    console.log(resp.data);
}

Get XY=K network liquidity pool token details

GET/v1/{chainName}/xy=k/{dexName}/tokens/address/{tokenAddress}/view/

Commonly used to get a detailed view for a single liquidity pool token. Includes time series data.

Costs:

1.00 Credits

Processing:

Batch

Path Params

The chain name eg:  eth-mainnet.
menu_openeth-mainnet
The DEX name eg:  uniswap_v2.
The token contract address. Passing in an  ENS,  RNS,  Lens Handle, or an  Unstoppable Domain resolves automatically.

Query Params

The currency to convert. Supports  USD,  CAD,  EUR,  SGD,  INR,  JPY,  VND,  CNY,  KRW,  RUB,  TRY,  NGN,  ARS,  AUD,  CHF, and  GBP.
Show NetworkExchangeTokenViewResponse Object
Installation
npm install @covalenthq/client-sdk
Request
import { CovalentClient } from "@covalenthq/client-sdk";

const ApiServices = async () => {
    const client = new CovalentClient("YOUR_API_KEY");
    const resp = await client.XykService.getLpTokenView("eth-mainnet");
    console.log(resp.data);
}

Get XY=K transactions for account address

GET/v1/{chainName}/xy=k/{dexName}/address/{accountAddress}/transactions/

Commonly used to get all the DEX transactions of a wallet. Useful for building tables of DEX activity segmented by wallet.

Costs:

1.00 Credits

Processing:

Batch

Path Params

The chain name eg:  eth-mainnet.
menu_openeth-mainnet
The DEX name eg:  uniswap_v2.
The account address. Passing in an  ENS or  RNS resolves automatically.
Show TransactionsForAccountAddressResponse Object
Show Guides
Installation
npm install @covalenthq/client-sdk
Request
import { CovalentClient } from "@covalenthq/client-sdk";

const ApiServices = async () => {
    const client = new CovalentClient("YOUR_API_KEY");
    const resp = await client.XykService.getTransactionsForAccountAddress("eth-mainnet");
    console.log(resp.data);
}

Get XY=K transactions for token address

GET/v1/{chainName}/xy=k/{dexName}/tokens/address/{tokenAddress}/transactions/

Commonly used to get all the transactions of a token within a particular DEX. Useful for getting a per-token view of DEX activity.

Costs:

1.00 Credits

Processing:

Batch

Path Params

The chain name eg:  eth-mainnet.
menu_openeth-mainnet
The DEX name eg:  uniswap_v2.
The token contract address. Passing in an  ENS,  RNS,  Lens Handle, or an  Unstoppable Domain resolves automatically.

Query Params

Number of items per page. Omitting this parameter defaults to 100.
0-indexed page number to begin pagination.
Show TransactionsForTokenAddressResponse Object
Installation
npm install @covalenthq/client-sdk
Request
import { CovalentClient } from "@covalenthq/client-sdk";

const ApiServices = async () => {
    const client = new CovalentClient("YOUR_API_KEY");
    const resp = await client.XykService.getTransactionsForTokenAddress("eth-mainnet");
    console.log(resp.data);
}

Get XY=K transactions for DEX

GET/v1/{chainName}/xy=k/{dexName}/transactions/

Commonly used to get all the the transactions for a given DEX. Useful for building DEX activity views.

Costs:

1.00 Credits

Processing:

Batch

Path Params

The chain name eg:  eth-mainnet.
menu_openeth-mainnet
The DEX name eg:  uniswap_v2.

Query Params

The currency to convert. Supports  USD,  CAD,  EUR,  SGD,  INR,  JPY,  VND,  CNY,  KRW,  RUB,  TRY,  NGN,  ARS,  AUD,  CHF, and  GBP.
Number of items per page. Omitting this parameter defaults to 100.
0-indexed page number to begin pagination.
Show NetworkTransactionsResponse Object
Installation
npm install @covalenthq/client-sdk
Request
import { CovalentClient } from "@covalenthq/client-sdk";

const ApiServices = async () => {
    const client = new CovalentClient("YOUR_API_KEY");
    const resp = await client.XykService.getTransactionsForDex("eth-mainnet");
    console.log(resp.data);
}

Get XY=K transactions for exchange pool

GET/v1/{chainName}/xy=k/{dexName}/pools/address/{poolAddress}/transactions/

Commonly used for getting all the transactions of a particular DEX liquidity pool. Useful for building a transactions history table for an individual pool.

Costs:

1.00 Credits

Processing:

Batch

Path Params

The chain name eg:  eth-mainnet.
menu_openeth-mainnet
The DEX name eg:  uniswap_v2.
The pool contract address. Passing in an  ENS,  RNS,  Lens Handle, or an  Unstoppable Domain resolves automatically.

Query Params

Number of items per page. Omitting this parameter defaults to 100.
0-indexed page number to begin pagination.
Show TransactionsForExchangeResponse Object
Installation
npm install @covalenthq/client-sdk
Request
import { CovalentClient } from "@covalenthq/client-sdk";

const ApiServices = async () => {
    const client = new CovalentClient("YOUR_API_KEY");
    const resp = await client.XykService.getTransactionsForExchange("eth-mainnet");
    console.log(resp.data);
}

Get XY=K ecosystem chart data

GET/v1/{chainName}/xy=k/{dexName}/ecosystem/

Commonly used to get a 7d and 30d time-series chart of DEX activity. Includes volume and swap count.

Costs:

1.00 Credits

Processing:

Batch

Path Params

The chain name eg:  eth-mainnet.
menu_openeth-mainnet
The DEX name eg:  uniswap_v2.
Show EcosystemChartDataResponse Object
Installation
npm install @covalenthq/client-sdk
Request
import { CovalentClient } from "@covalenthq/client-sdk";

const ApiServices = async () => {
    const client = new CovalentClient("YOUR_API_KEY");
    const resp = await client.XykService.getEcosystemChartData("eth-mainnet");
    console.log(resp.data);
}

Get XY=K health data

GET/v1/{chainName}/xy=k/{dexName}/health/

Commonly used to ping the health of xy=k endpoints to get the synced block height per chain.

Costs:

1.00 Credits

Processing:

Realtime

Path Params

The chain name eg:  eth-mainnet.
menu_openeth-mainnet
The DEX name eg:  uniswap_v2.
Show HealthDataResponse Object
Installation
npm install @covalenthq/client-sdk
Request
import { CovalentClient } from "@covalenthq/client-sdk";

const ApiServices = async () => {
    const client = new CovalentClient("YOUR_API_KEY");
    const resp = await client.XykService.getHealthData("eth-mainnet");
    console.log(resp.data);
}

Pricing

Get historical token prices

GET/v1/pricing/historical_by_addresses_v2/{chainName}/{quoteCurrency}/{contractAddress}/

Commonly used to get historic prices of a token between date ranges. Supports native tokens.

Costs:

1.00 Credits

Processing:

Batch

Path Params

The chain name eg:  eth-mainnet.
menu_openeth-mainnet
The currency to convert. Supports  USD,  CAD,  EUR,  SGD,  INR,  JPY,  VND,  CNY,  KRW,  RUB,  TRY,  NGN,  ARS,  AUD,  CHF, and  GBP.
Contract address for the token. Passing in an  ENS,  RNS,  Lens Handle, or an  Unstoppable Domain resolves automatically. Supports multiple contract addresses separated by commas.

Query Params

The start day of the historical price range (YYYY-MM-DD).
The end day of the historical price range (YYYY-MM-DD).
Sort the prices in chronological ascending order. By default, it's set to  false and returns prices in chronological descending order.
Show TokenPricesResponse Object
Installation
npm install @covalenthq/client-sdk
Request
import { CovalentClient } from "@covalenthq/client-sdk";

const ApiServices = async () => {
    const client = new CovalentClient("YOUR_API_KEY");
    const resp = await client.PricingService.getTokenPrices("eth-mainnet");
    console.log(resp.data);
}

Class C

APIs created and maintained by the community.

Get market data by address

GET/v1/cq/covalent/app/aave/market_data/

Processing:

Batch

Get market data for a specific Aave lending pool.

Query Params

Request
curl -X GET https://api.covalenthq.com/v1/cq/covalent/app/aave/market_data/? \
    -H 'Content-Type: application/json' \
    -u YOUR_API_KEY: \
     # The colon prevents curl from asking for a password

Get all markets

GET/v1/cq/covalent/app/aave/markets/

Processing:

Batch

Get all markets for Aave including TVL, Supply and Borrow rates.

Request
curl -X GET https://api.covalenthq.com/v1/cq/covalent/app/aave/markets/? \
    -H 'Content-Type: application/json' \
    -u YOUR_API_KEY: \
     # The colon prevents curl from asking for a password

Get balances for a wallet address

GET/v1/cq/covalent/app/aave/balances/

Processing:

Batch

Get balances for a Aave wallet.

Query Params

Request
curl -X GET https://api.covalenthq.com/v1/cq/covalent/app/aave/balances/? \
    -H 'Content-Type: application/json' \
    -u YOUR_API_KEY: \
     # The colon prevents curl from asking for a password

Get transactions by wallet address

GET/v1/cq/covalent/app/aave/transactions/

Processing:

Batch

Get transactions for a Aave wallet.

Query Params

Request
curl -X GET https://api.covalenthq.com/v1/cq/covalent/app/aave/transactions/? \
    -H 'Content-Type: application/json' \
    -u YOUR_API_KEY: \
     # The colon prevents curl from asking for a password

Get redeemable token balance

GET/v1/cq/covalent/app/balancer/tokens/

Processing:

Batch

Get underlying tokens for a wallet's LP tokens.

Query Params

Request
curl -X GET https://api.covalenthq.com/v1/cq/covalent/app/balancer/tokens/? \
    -H 'Content-Type: application/json' \
    -u YOUR_API_KEY: \
     # The colon prevents curl from asking for a password

Get market data by address

GET/v1/cq/covalent/app/balancer/market_data/

Processing:

Batch

Get market data for a specific Balancer pool.

Query Params

Request
curl -X GET https://api.covalenthq.com/v1/cq/covalent/app/balancer/market_data/? \
    -H 'Content-Type: application/json' \
    -u YOUR_API_KEY: \
     # The colon prevents curl from asking for a password

Get all markets

GET/v1/cq/covalent/app/balancer/markets/

Processing:

Batch

Get all markets for Balancer including TVL, Supply and Borrow rates.

Request
curl -X GET https://api.covalenthq.com/v1/cq/covalent/app/balancer/markets/? \
    -H 'Content-Type: application/json' \
    -u YOUR_API_KEY: \
     # The colon prevents curl from asking for a password

Get transactions by wallet address

GET/v1/cq/covalent/app/balancer/transactions/

Processing:

Batch

Get transactions for a Balancer wallet.

Query Params

Request
curl -X GET https://api.covalenthq.com/v1/cq/covalent/app/balancer/transactions/? \
    -H 'Content-Type: application/json' \
    -u YOUR_API_KEY: \
     # The colon prevents curl from asking for a password

Get balances for a wallet address

GET/v1/cq/covalent/app/balancer/balances/

Processing:

Batch

Get balances for a Balancer wallet.

Query Params

Request
curl -X GET https://api.covalenthq.com/v1/cq/covalent/app/balancer/balances/? \
    -H 'Content-Type: application/json' \
    -u YOUR_API_KEY: \
     # The colon prevents curl from asking for a password

Get transactions by wallet address

GET/v1/cq/covalent/app/bitcoin/transactions/

Processing:

Batch

Get transactions for a Bitcoin wallet.

Query Params

Request
curl -X GET https://api.covalenthq.com/v1/cq/covalent/app/bitcoin/transactions/? \
    -H 'Content-Type: application/json' \
    -u YOUR_API_KEY: \
     # The colon prevents curl from asking for a password

Get market data by address

GET/v1/cq/covalent/app/compound/market_data/

Processing:

Batch

Get market data for a specific Compound lending pool.

Query Params

Request
curl -X GET https://api.covalenthq.com/v1/cq/covalent/app/compound/market_data/? \
    -H 'Content-Type: application/json' \
    -u YOUR_API_KEY: \
     # The colon prevents curl from asking for a password

Get all markets

GET/v1/cq/covalent/app/compound/markets/

Processing:

Batch

Get all markets for Compound including TVL, Supply and Borrow rates.

Request
curl -X GET https://api.covalenthq.com/v1/cq/covalent/app/compound/markets/? \
    -H 'Content-Type: application/json' \
    -u YOUR_API_KEY: \
     # The colon prevents curl from asking for a password

Get balances for a wallet address

GET/v1/cq/covalent/app/compound/balances/

Processing:

Batch

Get balances for a Compound wallet.

Query Params

Request
curl -X GET https://api.covalenthq.com/v1/cq/covalent/app/compound/balances/? \
    -H 'Content-Type: application/json' \
    -u YOUR_API_KEY: \
     # The colon prevents curl from asking for a password

Get transactions by wallet address

GET/v1/cq/covalent/app/compound/transactions/

Processing:

Batch

Get transactions for a Compound wallet.

Query Params

Request
curl -X GET https://api.covalenthq.com/v1/cq/covalent/app/compound/transactions/? \
    -H 'Content-Type: application/json' \
    -u YOUR_API_KEY: \
     # The colon prevents curl from asking for a password

Get redeemable token balance

GET/v1/cq/covalent/app/curve/tokens/

Processing:

Batch

Get underlying tokens for a wallet's LP tokens.

Query Params

Request
curl -X GET https://api.covalenthq.com/v1/cq/covalent/app/curve/tokens/? \
    -H 'Content-Type: application/json' \
    -u YOUR_API_KEY: \
     # The colon prevents curl from asking for a password

Get market data by address

GET/v1/cq/covalent/app/curve/market_data/

Processing:

Batch

Get market data for all Curve pools.

Request
curl -X GET https://api.covalenthq.com/v1/cq/covalent/app/curve/market_data/? \
    -H 'Content-Type: application/json' \
    -u YOUR_API_KEY: \
     # The colon prevents curl from asking for a password

Get all markets

GET/v1/cq/covalent/app/curve/markets/

Processing:

Batch

Get all markets for Curve including TVL, Supply and Borrow rates.

Request
curl -X GET https://api.covalenthq.com/v1/cq/covalent/app/curve/markets/? \
    -H 'Content-Type: application/json' \
    -u YOUR_API_KEY: \
     # The colon prevents curl from asking for a password

Get transactions by wallet address

GET/v1/cq/covalent/app/curve/transactions/

Processing:

Batch

Get transactions for a Curve wallet.

Query Params

Request
curl -X GET https://api.covalenthq.com/v1/cq/covalent/app/curve/transactions/? \
    -H 'Content-Type: application/json' \
    -u YOUR_API_KEY: \
     # The colon prevents curl from asking for a password

Get balances for a wallet address

GET/v1/cq/covalent/app/curve/balances/

Processing:

Batch

Get balances for a Curve wallet.

Query Params

Request
curl -X GET https://api.covalenthq.com/v1/cq/covalent/app/curve/balances/? \
    -H 'Content-Type: application/json' \
    -u YOUR_API_KEY: \
     # The colon prevents curl from asking for a password

Get market data by address

GET/v1/cq/covalent/app/dodo/market_data/

Processing:

Batch

Get market data for a specific Dodo pool.

Query Params

Request
curl -X GET https://api.covalenthq.com/v1/cq/covalent/app/dodo/market_data/? \
    -H 'Content-Type: application/json' \
    -u YOUR_API_KEY: \
     # The colon prevents curl from asking for a password

Get all markets

GET/v1/cq/covalent/app/dodo/markets/

Processing:

Batch

Get all markets for Dodo.

Request
curl -X GET https://api.covalenthq.com/v1/cq/covalent/app/dodo/markets/? \
    -H 'Content-Type: application/json' \
    -u YOUR_API_KEY: \
     # The colon prevents curl from asking for a password

Get transactions by wallet address

GET/v1/cq/covalent/app/dodo/transactions/

Processing:

Batch

Get transactions for a Dodo wallet.

Query Params

Request
curl -X GET https://api.covalenthq.com/v1/cq/covalent/app/dodo/transactions/? \
    -H 'Content-Type: application/json' \
    -u YOUR_API_KEY: \
     # The colon prevents curl from asking for a password

Get balances for a wallet address

GET/v1/cq/covalent/app/dodo/balances/

Processing:

Batch

Get balances for a Dodo wallet.

Query Params

Request
curl -X GET https://api.covalenthq.com/v1/cq/covalent/app/dodo/balances/? \
    -H 'Content-Type: application/json' \
    -u YOUR_API_KEY: \
     # The colon prevents curl from asking for a password

Get redeemable token balance

GET/v1/cq/covalent/app/frax/tokens/

Processing:

Batch

Get underlying tokens for a wallet's LP tokens.

Query Params

Request
curl -X GET https://api.covalenthq.com/v1/cq/covalent/app/frax/tokens/? \
    -H 'Content-Type: application/json' \
    -u YOUR_API_KEY: \
     # The colon prevents curl from asking for a password

Get market data by address

GET/v1/cq/covalent/app/frax/market_data/

Processing:

Batch

Get market data for a specific Frax lending pool.

Query Params

Request
curl -X GET https://api.covalenthq.com/v1/cq/covalent/app/frax/market_data/? \
    -H 'Content-Type: application/json' \
    -u YOUR_API_KEY: \
     # The colon prevents curl from asking for a password

Get all markets

GET/v1/cq/covalent/app/frax/markets/

Processing:

Batch

Get all markets for Frax including TVL, Supply and Borrow rates.

Request
curl -X GET https://api.covalenthq.com/v1/cq/covalent/app/frax/markets/? \
    -H 'Content-Type: application/json' \
    -u YOUR_API_KEY: \
     # The colon prevents curl from asking for a password

Get balances for a wallet address

GET/v1/cq/covalent/app/frax/balances/

Processing:

Batch

Get balances for a Frax wallet.

Query Params

Request
curl -X GET https://api.covalenthq.com/v1/cq/covalent/app/frax/balances/? \
    -H 'Content-Type: application/json' \
    -u YOUR_API_KEY: \
     # The colon prevents curl from asking for a password

Get transactions by wallet address

GET/v1/cq/covalent/app/frax/transactions/

Processing:

Batch

Get transactions for a Frax wallet.

Query Params

Request
curl -X GET https://api.covalenthq.com/v1/cq/covalent/app/frax/transactions/? \
    -H 'Content-Type: application/json' \
    -u YOUR_API_KEY: \
     # The colon prevents curl from asking for a password

Get all markets

GET/v1/cq/covalent/app/instadapp/markets/

Processing:

Batch

Get all markets for InstaDapp.

Request
curl -X GET https://api.covalenthq.com/v1/cq/covalent/app/instadapp/markets/? \
    -H 'Content-Type: application/json' \
    -u YOUR_API_KEY: \
     # The colon prevents curl from asking for a password

Get market data by address

GET/v1/cq/covalent/app/instadapp/market_data/

Processing:

Batch

Get market data for all InstaDapp vaults.

Request
curl -X GET https://api.covalenthq.com/v1/cq/covalent/app/instadapp/market_data/? \
    -H 'Content-Type: application/json' \
    -u YOUR_API_KEY: \
     # The colon prevents curl from asking for a password

Get transactions by wallet address

GET/v1/cq/covalent/app/instadapp/transactions/

Processing:

Batch

Get transactions for a InstaDapp wallet.

Query Params

Request
curl -X GET https://api.covalenthq.com/v1/cq/covalent/app/instadapp/transactions/? \
    -H 'Content-Type: application/json' \
    -u YOUR_API_KEY: \
     # The colon prevents curl from asking for a password

Get balances for a wallet address

GET/v1/cq/covalent/app/instadapp/balances/

Processing:

Batch

Get balances for a InstaDapp wallet.

Query Params

Request
curl -X GET https://api.covalenthq.com/v1/cq/covalent/app/instadapp/balances/? \
    -H 'Content-Type: application/json' \
    -u YOUR_API_KEY: \
     # The colon prevents curl from asking for a password

Get market data by address

GET/v1/cq/covalent/app/lido/market_data/

Processing:

Batch

Get market data for a specific Lido lending pool.

Query Params

Request
curl -X GET https://api.covalenthq.com/v1/cq/covalent/app/lido/market_data/? \
    -H 'Content-Type: application/json' \
    -u YOUR_API_KEY: \
     # The colon prevents curl from asking for a password

Get balances for a wallet address

GET/v1/cq/covalent/app/lido/balances/

Processing:

Batch

Get balances for a Lido wallet.

Query Params

Request
curl -X GET https://api.covalenthq.com/v1/cq/covalent/app/lido/balances/? \
    -H 'Content-Type: application/json' \
    -u YOUR_API_KEY: \
     # The colon prevents curl from asking for a password

Get transactions by wallet address

GET/v1/cq/covalent/app/lido/transactions/

Processing:

Batch

Get transactions for a Lido wallet.

Query Params

Request
curl -X GET https://api.covalenthq.com/v1/cq/covalent/app/lido/transactions/? \
    -H 'Content-Type: application/json' \
    -u YOUR_API_KEY: \
     # The colon prevents curl from asking for a password

Get market data by address

GET/v1/cq/covalent/app/yearn/market_data/

Processing:

Batch

Get market data for all Yearn vaults.

Request
curl -X GET https://api.covalenthq.com/v1/cq/covalent/app/yearn/market_data/? \
    -H 'Content-Type: application/json' \
    -u YOUR_API_KEY: \
     # The colon prevents curl from asking for a password

Get all markets

GET/v1/cq/covalent/app/yearn/markets/

Processing:

Batch

Get all markets for Yearn including TVL, Supply and Borrow rates.

Request
curl -X GET https://api.covalenthq.com/v1/cq/covalent/app/yearn/markets/? \
    -H 'Content-Type: application/json' \
    -u YOUR_API_KEY: \
     # The colon prevents curl from asking for a password

Get transactions by wallet address

GET/v1/cq/covalent/app/yearn/transactions/

Processing:

Batch

Get transactions for a Yearn wallet.

Query Params

Request
curl -X GET https://api.covalenthq.com/v1/cq/covalent/app/yearn/transactions/? \
    -H 'Content-Type: application/json' \
    -u YOUR_API_KEY: \
     # The colon prevents curl from asking for a password

Get balances for a wallet address

GET/v1/cq/covalent/app/yearn/balances/

Processing:

Batch

Get balances for a Yearn wallet.

Query Params

Request
curl -X GET https://api.covalenthq.com/v1/cq/covalent/app/yearn/balances/? \
    -H 'Content-Type: application/json' \
    -u YOUR_API_KEY: \
     # The colon prevents curl from asking for a password
menu