Bitget V2 Classic JavaScript SDK example: rest-private-futures.ts

Bitget V2 Classic REST private futures JavaScript example for the Siebly Bitget SDK, covering exchange REST API and WebSocket integration, setup, and production SDK docs.

We use environment variables in our examples for API keys. It is your responsibility to manage and secure your keys appropriately.

examples/Bitget/V2 - Classic/Rest/rest-private-futures.ts

What this example covers

  • Bitget REST API JavaScript example.
  • Uses the Siebly Bitget SDK package bitget-api instead of hand-written HTTP request plumbing.
  • Source path: Bitget/V2 - Classic/Rest/rest-private-futures.ts.
  • Example category: V2 Classic.
  • Imports SDK symbols including RestClientV2.
  • Calls SDK methods such as getFuturesAccountBills().

How to use this example

  • Start here for the specific request or stream pattern, then check the matching SDK guide for install, credentials, and operational notes.
  • Open the repository source when you need the latest committed version: GitHub source file.
import { RestClientV2 } from 'bitget-api'; // read from environmental variablesconst API_KEY = process.env.API_KEY_COM;const API_SECRET = process.env.API_SECRET_COM;const API_PASS = process.env.API_PASS_COM; // If running from CLI in unix, you can pass env vars as such:// API_KEY_COM='lkm12n3-2ba3-1mxf-fn13-lkm12n3a' API_SECRET_COM='035B2B9637E1BDFFEE2646BFBDDB8CE4' API_PASSPHRASE_COM='ComplexPa$$!23$5^' ts-node examples/rest-private-futures.ts // note the single quotes, preventing special characters such as $ from being incorrectly passed const client = new RestClientV2({  apiKey: API_KEY,  apiSecret: API_SECRET,  apiPass: API_PASS,  // apiKey: 'apiKeyHere',  // apiSecret: 'apiSecretHere',  // apiPass: 'apiPassHere',}); /** This is a simple script wrapped in a immediately invoked function expression, designed to check for any available BTC balance and immediately sell the full amount for USDT */(async () => {  try {    const now = new Date();    const fromTime = new Date(now.getTime() - 24 * 60 * 60 * 1000);     console.log(      await client.getFuturesAccountBills({        productType: 'USDT-FUTURES',        startTime: fromTime.getTime() + '', // should be sent as a string        endTime: now.getTime() + '', // should be sent as a string        limit: '100',      }),    );  } catch (e) {    console.error('request failed: ', e);  }})(); 

Subscribe on Substack

Complete the Substack form below to join our newsletter. Substack handles all subscriber data directly.