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
configClientConfigYesNoneNone.
config.tigerIdstringYesNoneNone.
config.privateKeystringYesNoneNone.
config.accountstringYesNoneNone.
config.secretKeystring | undefinedNoNoneInstitution secret key for trade authentication (institution accounts only)
config.licensestring | undefinedNoNoneNone.
config.languagestringYesNoneNone.
config.timezonestring | undefinedNoNoneNone.
config.timeoutnumberYesNoneNone.
config.tokenstring | undefinedNoNoneNone.
config.tokenRefreshDurationnumber | undefinedNoNoneNone.
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.serverUrlstringYesNoneNone.
config.quoteServerUrlstringYesNoneQuote server URL for quote-specific requests; falls back to serverUrl
config.deviceIdstringYesNoneDevice identifier (auto-detected MAC address)
config.tigerPublicKeystringYesNoneNone.

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
marketstringYesNoneNone.

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"
  }
]

Rate limit: The base limit is 10 requests per minute.


getTradingCalendar

Signature

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

Purpose

Gets trading calendar.

Parameters, defaults, and constraints

ParameterTypeRequiredSDK defaultConstraints
reqTradingCalendarRequestYesNoneNone.
req.marketstring | undefinedNoNoneNone.
req.beginDatestring | undefinedNoNoneyyyy-MM-dd
req.endDatestring | undefinedNoNoneNone.
req.langstring | undefinedNoNoneNone.

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

Claims market data device access for the current device. This operation does not purchase or grant new market data access.

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
  }
]

Rate limit: The base limit is 10 requests per minute.


getQuotePermission

Signature

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

Purpose

Gets market data permission entries.

Parameters, defaults, and constraints

ParameterTypeRequiredSDK defaultConstraints
reqQuotePermissionRequestYesNoneNone.
req.beginDatestring | undefinedNoNoneNone.
req.endDatestring | undefinedNoNoneNone.
req.langstring | undefinedNoNoneNone.

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
  }
]

Rate limit: The base limit is 10 requests per minute.


getKlineQuota

Signature

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

Purpose

Gets candlestick bar (K-line data) quota.

Parameters, defaults, and constraints

ParameterTypeRequiredSDK defaultConstraints
reqKlineQuotaRequestYesNoneNone.
req.withDetailsboolean | undefinedNoNoneNone.
req.langstring | undefinedNoNoneNone.

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"
    ]
  }
]

Rate limit: The base limit is 10 requests per minute.



Did this page help you?