@kaiko-data/sdk-node
v1.37.0
Published
Kaiko Node SDK
Readme
@kaiko-data/sdk-node
Node.js client library for the Kaiko gRPC API. This SDK provides auto-generated gRPC stubs for streaming cryptocurrency market data.
Installation
npm install @kaiko-data/sdk-nodeRequirements
- Node.js 20+
- A valid Kaiko API key
Usage
const grpc = require("@grpc/grpc-js");
const { StreamTradesServiceV1Client } = require("@kaiko-data/sdk-node/sdk/sdk_grpc_pb");
const { StreamTradesRequestV1 } = require("@kaiko-data/sdk-node/sdk/stream/trades_v1/request_pb");
const { InstrumentCriteria } = require("@kaiko-data/sdk-node/sdk/core/instrument_criteria_pb");
const channel = new grpc.ChannelCredentials.createSsl();
const client = new StreamTradesServiceV1Client("gateway-v0-grpc.kaiko.ovh:443", channel);
const metadata = new grpc.Metadata();
metadata.add("authorization", "Bearer <YOUR_API_KEY>");
const criteria = new InstrumentCriteria();
criteria.setExchange("cbse");
criteria.setInstrumentClass("spot");
criteria.setCode("btc-usd");
const request = new StreamTradesRequestV1();
request.setInstrumentCriteria(criteria);
const stream = client.subscribe(request, metadata);
stream.on("data", (response) => {
console.log("Trade:", response.toObject());
});
stream.on("error", (err) => {
console.error("Stream error:", err);
});Available Services
All services expose a subscribe method that returns a server-side stream.
| Service | Description |
|---------|-------------|
| StreamTradesServiceV1 | Real-time trades |
| StreamMarketUpdateServiceV1 | Market updates |
| StreamAggregatedQuoteServiceV2 | Aggregated quotes |
| StreamAggregatedPriceServiceV1 | Aggregated prices |
| StreamAggregatedStatePriceServiceV1 | Aggregated state prices |
| StreamAggregatesOHLCVServiceV1 | OHLCV aggregates |
| StreamAggregatesVWAPServiceV1 | VWAP aggregates |
| StreamAggregatesSpotExchangeRateV2ServiceV1 | Spot exchange rates |
| StreamAggregatesSpotDirectExchangeRateV2ServiceV1 | Direct exchange rates |
| StreamOrderbookL2ServiceV1 | Level 2 order book |
| StreamOrderbookL2ReplayServiceV1 | Level 2 order book replay |
| StreamIndexServiceV1 | Index values |
| StreamIndexMultiAssetsServiceV1 | Multi-asset index values |
| StreamIndexForexRateServiceV1 | Index forex rates |
| StreamCompositeIndicesServiceV1 | Composite indices |
| StreamConstantDurationIndicesServiceV1 | Constant duration indices |
| StreamExoticIndicesServiceV1 | Exotic indices |
| StreamDerivativesInstrumentMetricsServiceV1 | Derivatives instrument metrics |
| StreamIvSviParametersServiceV1 | IV SVI parameters |
| StreamStakingRatesServiceV1 | Staking rates |
| StreamCantonOracleServiceV1 | Signed Canton pull-oracle data (crypto / NAV feeds) |
| StreamCantonOracleServiceV2 | Signed Canton pull-oracle payloads V2 |
| StreamEvmOracleServiceV1 | EVM pull-oracle EIP-712 signed prices |
Examples
For more complete examples, see the kaiko-sdk-examples repository.
