@covalenthq/client-viem-sdk
v0.1.0
Published
<p align="center"> <a href="https://www.npmjs.com/package/@covalenthq/client-viem-sdk"> <img src="https://img.shields.io/npm/v/@covalenthq/client-viem-sdk" alt="NPM"> </a> <a href="https://www.npmjs.com/package/@covalenthq/client-viem-sdk">
Downloads
38
Keywords
Readme
Covalent's Viem Compatible SDK
The Covalent Viem SDK, developed in TypeScript, leverages the viem framework to offer a seamless integration path with the Covalent Unified API, facilitating efficient access to blockchain data. Designed to support a broad array of blockchain networks, including both Mainnets and Testnets, this SDK ensures comprehensive coverage and utility for developers working across the supported chains, making it an essential tool for blockchain application development.
Features
The Covalent SDK provides comprehensive support for all Class A, Class B, and Pricing endpoints that are grouped under the following Service namespaces:
SecurityService
: Access to the token approvals endpointsBalanceService
: Access to the balances endpointsBaseService
: Access to the address activity, log events, chain status, and block retrieval endpointsNftService
: Access to the NFT endpointsPricingService
: Access to the historical token prices endpointTransactionService
: Access to the transactions endpointsXykService
: Access to the XY=K suite of endpoints
The SDK internally utilizes the Covalent TypeScript SDK, offering a robust foundation for interacting with blockchain data. For detailed insights into the SDK's comprehensive capabilities and the extensive range of functionalities it provides, we highly recommend consulting the README documentation. This will equip you with a thorough understanding of the various features and the potential applications of the SDK in your projects.
Installation
npm install viem @covalenthq/client-viem-sdk
or
yarn add viem @covalenthq/client-viem-sdk
Getting an API Key
To get your own Covalent API key, sign up here and create your key from the API Keys tab.
Example
// Import the required modules.
import { publicActionCovalent } from "@covalenthq/client-viem-sdk"
import { mainnet } from "viem/chains"
import { http, createClient } from "viem"
// Create the required clients.
const client = createClient({
chain: mainnet,
transport: http("RPC_URL") // use your RPC provider or bundler
}).extend(publicActionCovalent("YOUR_API_KEY"));
// Returns token balances for a specific wallet address
const tokenBalances = await client.BalanceService.getTokenBalancesForWalletAddress("eth-mainnet", "demo.eth");
console.log(tokenBalances.data)