UNPKG

@master-chief/alpaca-ts

Version:

A TypeScript Node.js library for the https://alpaca.markets REST API and WebSocket streams.

34 lines 1.6 kB
import services from "./services/index.js"; import { prewrap } from "./rest/prewrap.js"; import { AxiosHttpRequest } from "./rest/AxiosHttpRequest.js"; export class Client { constructor(options, HttpRequest = AxiosHttpRequest) { const { paper, credentials } = options !== null && options !== void 0 ? options : {}; // base request object for all requests // changes based on paper/live mode and/or data endpoints this.baseHttpRequest = new HttpRequest({ BASE: paper === true || paper === undefined ? "https://paper-api.alpaca.markets" : "https://api.alpaca.markets", HEADERS: !!credentials ? { "APCA-API-KEY-ID": credentials.key, "APCA-API-SECRET-KEY": credentials.secret, } : undefined, }); } get v2() { const { account, stocks, assets, clock, calendar, orders, positions, watchlists, } = services; return prewrap(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, account), assets), clock), calendar), orders), stocks), positions), watchlists), this.baseHttpRequest); } get v1beta3() { const { crypto } = services; return prewrap(crypto, this.baseHttpRequest); } get v1beta1() { const { news, screener, logos } = services; return prewrap(Object.assign(Object.assign(Object.assign({}, news), screener), logos), this.baseHttpRequest); } } //# sourceMappingURL=Client.js.map