General

Example context

import { createClientConfig, QuoteClient } from '@tigeropenapi/tigeropen';

const config = createClientConfig();
const quoteClient = QuoteClient.fromConfig(config);

fromConfig

Signature

static fromConfig(config: ClientConfig): QuoteClient

Purpose

Creates a client from ClientConfig.

Parameters, defaults, and constraints

ParameterTypeRequiredSDK defaultConstraints
configClientConfigYesNoneNo client-side validation is declared.
config.tigerIdstringYesNoneNo client-side validation is declared.
config.privateKeystringYesNoneNo client-side validation is declared.
config.accountstringYesNoneNo client-side validation is declared.
config.secretKeystring | undefinedNoNoneInstitution secret key for trade authentication (institution accounts only)
config.licensestring | undefinedNoNoneNo client-side validation is declared.
config.languagestringYesNoneNo client-side validation is declared.
config.timezonestring | undefinedNoNoneNo client-side validation is declared.
config.timeoutnumberYesNoneNo client-side validation is declared.
config.tokenstring | undefinedNoNoneNo client-side validation is declared.
config.tokenRefreshDurationnumber | undefinedNoNoneNo client-side validation is declared.
config.tokenCheckIntervalnumber | undefinedNoNoneBackground token check interval in milliseconds; active only when tokenRefreshDuration > 0; default 5 minutes
config.tokenLoaderOptional function returning a string or a string PromiseNoNoneCustom token loader replacing default file loading; see ClientConfig in the signature above for the exact type
config.tokenWriter((token: string) => void) | undefinedNoNoneOptional callback after writing a refreshed token
config.serverUrlstringYesNoneNo client-side validation is declared.
config.quoteServerUrlstringYesNoneQuote server URL for quote-specific requests; falls back to serverUrl
config.deviceIdstringYesNoneDevice identifier (auto-detected MAC address)
config.tigerPublicKeystringYesNoneNo client-side validation is declared.

Returns

QuoteClient

Type-checked example

const result = await QuoteClient.fromConfig(config);
console.log(result);

Response example

"QuoteClient instance (not an API response payload)"

getMarketState

Signature

async getMarketState(market: string): Promise<MarketState[]>

Purpose

Gets market state.

Parameters, defaults, and constraints

ParameterTypeRequiredSDK defaultConstraints
marketstringYesNoneNo client-side validation is declared.

Returns

Promise<MarketState[]>

FieldTypeDescription
marketstringMarket
marketStatusstringMarket status
statusstringTrading status
openTimestringOpen time

Type-checked example

const result = await quoteClient.getMarketState('US');
console.log(result);

Response example

[
  {
    "market": "string",
    "marketStatus": "string",
    "status": "string",
    "openTime": "string"
  }
]

getTradingCalendar

Signature

async getTradingCalendar(req: TradingCalendarRequest): Promise<TradingCalendarItem[]>

Purpose

Gets trading calendar.

Parameters, defaults, and constraints

ParameterTypeRequiredSDK defaultConstraints
reqTradingCalendarRequestYesNoneNo client-side validation is declared.
req.marketstring | undefinedNoNoneNo client-side validation is declared.
req.beginDatestring | undefinedNoNoneyyyy-MM-dd
req.endDatestring | undefinedNoNoneNo client-side validation is declared.
req.langstring | undefinedNoNoneNo client-side validation is declared.

Returns

Promise<TradingCalendarItem[]>

FieldTypeDescription
marketstringMarket
datestringDate
isTradingbooleanWhether trading day
sessionTypestringSession type

Type-checked example

const result = await quoteClient.getTradingCalendar({ market: 'US', beginDate: '2026-01-01', endDate: '2026-01-31' });
console.log(result);

Response example

[
  {
    "market": "string",
    "date": "string",
    "isTrading": true,
    "sessionType": "string"
  }
]

grabQuotePermission

Signature

async grabQuotePermission(): Promise<QuotePermission[]>

Purpose

Requests market-data access for the current device.

Parameters, defaults, and constraints

No parameters.

Returns

Promise<QuotePermission[]>

FieldTypeDescription
namestringName
expireAtnumberExpiration timestamp

Type-checked example

const result = await quoteClient.grabQuotePermission();
console.log(result);

Response example

[
  {
    "name": "string",
    "expireAt": 0
  }
]

getQuotePermission

Signature

async getQuotePermission(req: QuotePermissionRequest): Promise<QuotePermission[]>

Purpose

Gets quote permission.

Parameters, defaults, and constraints

ParameterTypeRequiredSDK defaultConstraints
reqQuotePermissionRequestYesNoneNo client-side validation is declared.
req.beginDatestring | undefinedNoNoneNo client-side validation is declared.
req.endDatestring | undefinedNoNoneNo client-side validation is declared.
req.langstring | undefinedNoNoneNo client-side validation is declared.

Returns

Promise<QuotePermission[]>

FieldTypeDescription
namestringName
expireAtnumberExpiration timestamp

Type-checked example

const result = await quoteClient.getQuotePermission({ beginDate: '20260101', endDate: '20260131' });
console.log(result);

Response example

[
  {
    "name": "string",
    "expireAt": 0
  }
]

getKlineQuota

Signature

async getKlineQuota(req: KlineQuotaRequest): Promise<KlineQuota[]>

Purpose

Gets kline quota.

Parameters, defaults, and constraints

ParameterTypeRequiredSDK defaultConstraints
reqKlineQuotaRequestYesNoneNo client-side validation is declared.
req.withDetailsboolean | undefinedNoNoneNo client-side validation is declared.
req.langstring | undefinedNoNoneNo client-side validation is declared.

Returns

Promise<KlineQuota[]>

FieldTypeDescription
methodstringAPI method
usednumberUsed quota
quotanumberTotal quota
detailKlineQuotaDetail[]Quota detail

Type-checked example

const result = await quoteClient.getKlineQuota({ withDetails: true });
console.log(result);

Response example

[
  {
    "method": "string",
    "used": 0,
    "quota": 0,
    "detail": [
      "KlineQuotaDetail"
    ]
  }
]


Did this page help you?