diff --git a/examples/query_insights.ts b/examples/query_insights.ts index dd63dd94..d4598422 100644 --- a/examples/query_insights.ts +++ b/examples/query_insights.ts @@ -1,11 +1,12 @@ import { PositionViewOptions } from "../lib/insights"; import * as BIP39 from "bip39"; import { CarbonSDK } from "./_sdk"; +import dayjs from "dayjs"; (async () => { const mnemonics = process.env.MNEMONICS ?? BIP39.generateMnemonic(); const sdk = await CarbonSDK.instance({ - network: CarbonSDK.Network.DevNet, + network: CarbonSDK.Network.MainNet, config: { tmRpcUrl: process.env.TRPC_ENDPOINT, }, @@ -118,4 +119,9 @@ import { CarbonSDK } from "./_sdk"; const fundingHistoryGraphData = await sdk.insights.FundingHistoryGraphData({ market: 'cmkt/117' }) console.log("fundingHistoryGraphData", fundingHistoryGraphData) + // Crosschain Volumes Data + const twoWeeksAgoUnix = dayjs().subtract(2, 'weeks').unix().toString() + const crosschainVolumesData = await sdk.insights.CrosschainVolumes({ from: twoWeeksAgoUnix }) + console.log("crosschainVolumesData", crosschainVolumesData) + })().catch(console.error).finally(() => process.exit(0)); \ No newline at end of file diff --git a/package.json b/package.json index d8cd4c18..6818aa41 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "carbon-js-sdk", - "version": "0.11.39", + "version": "0.11.40-beta.1", "description": "TypeScript SDK for Carbon blockchain", "main": "lib/index.js", "types": "lib/index.d.ts", diff --git a/src/clients/InsightsQueryClient.ts b/src/clients/InsightsQueryClient.ts index fff0401e..a3488588 100644 --- a/src/clients/InsightsQueryClient.ts +++ b/src/clients/InsightsQueryClient.ts @@ -1,6 +1,6 @@ import { NetworkConfig } from "@carbon-sdk/constant"; import { Insights } from "@carbon-sdk/index"; -import { ConnectedWalletParams, ConnectedWalletResponse, InsightsQueryResponse } from "@carbon-sdk/insights"; +import { ConnectedWalletParams, ConnectedWalletResponse, CrossChainVolume, InsightsQueryResponse } from "@carbon-sdk/insights"; import { APIUtils } from "@carbon-sdk/util"; import BigNumber from "bignumber.js"; import dayjs from "dayjs"; @@ -621,6 +621,12 @@ class InsightsQueryClient { const response = await request.get(); return response.data as Insights.InsightsQueryResponse; } + + async CrosschainVolumes(req: Insights.QueryCrosschainVolumeRequest = {}): Promise> { + const request = this.apiManager.path("crosschain/volume", {}, req) + const response = await request.get() + return response.data as Insights.InsightsQueryResponse + } } export default InsightsQueryClient; diff --git a/src/insights/common.ts b/src/insights/common.ts index 092e631e..eedb5947 100644 --- a/src/insights/common.ts +++ b/src/insights/common.ts @@ -82,6 +82,9 @@ export const InsightsEndpoints = { "alliances/stake": "/alliances/stake", "alliances/rewards": "/alliances/rewards", + // Crosschain api + "crosschain/volume": "/crosschain/volume", + "reward/epoch": "/reward/epoch/:epoch/:unixStart", "reward/leaderboard": "/reward/:unixStart/:unixEnd/leaderboard", }; diff --git a/src/insights/crosschain.ts b/src/insights/crosschain.ts new file mode 100644 index 00000000..674719a4 --- /dev/null +++ b/src/insights/crosschain.ts @@ -0,0 +1,12 @@ +import { QueryByTimeRequest } from "./common"; + + +export interface QueryCrosschainVolumeRequest extends QueryByTimeRequest { } + +export interface CrossChainVolume { + absoluteVolume: string + netVolume: string + inflow: string + outflow: string + denom: string +} diff --git a/src/insights/index.ts b/src/insights/index.ts index f0ca3239..b8acfd74 100644 --- a/src/insights/index.ts +++ b/src/insights/index.ts @@ -1,5 +1,6 @@ export * from "./balance"; export * from "./common"; +export * from "./crosschain"; export * from "./node"; export * from "./pool"; export * from "./position";