1- from typing import Dict
1+ from typing import Dict , Type
22
33import requests
44
@@ -17,165 +17,185 @@ def __init__(self, auth_key: str):
1717 self ._session = requests .Session ()
1818 self ._session .params ["apiKey" ] = self .auth_key
1919
20- def _handle_response (self , response_type : str , endpoint : str , params : Dict [str , str ]) -> models .Definition :
20+ def _handle_response (self , response_type : str , endpoint : str , params : Dict [str , str ]) -> Type [ models .AnyDefinition ] :
2121 resp : requests .Response = self ._session .get (endpoint , params = params )
2222 if resp .status_code == 200 :
2323 return unmarshal .unmarshal_json (response_type , resp .json ())
2424 else :
2525 resp .raise_for_status ()
2626
27- def tickers (self , ** query_params ):
27+ def reference_tickers (self , ** query_params ) -> models . ReferenceTickersApiResponse :
2828 endpoint = f"{ self .url } /v2/reference/tickers"
29- return self ._handle_response ("TickersApiResponse " , endpoint , query_params )
29+ return self ._handle_response ("ReferenceTickersApiResponse " , endpoint , query_params )
3030
31- def ticker_types (self , ** query_params ):
31+ def reference_ticker_types (self , ** query_params ) -> models . ReferenceTickerTypesApiResponse :
3232 endpoint = f"{ self .url } /v2/reference/types"
33- return self ._handle_response ("TickerTypesApiResponse " , endpoint , query_params )
33+ return self ._handle_response ("ReferenceTickerTypesApiResponse " , endpoint , query_params )
3434
35- def ticker_details (self , symbol , ** query_params ):
35+ def reference_ticker_details (self , symbol , ** query_params ) -> models . ReferenceTickerDetailsApiResponse :
3636 endpoint = f"{ self .url } /v1/meta/symbols/{ symbol } /company"
37- return self ._handle_response ("TickerDetailsApiResponse " , endpoint , query_params )
37+ return self ._handle_response ("ReferenceTickerDetailsApiResponse " , endpoint , query_params )
3838
39- def ticker_news (self , symbol , ** query_params ):
39+ def reference_ticker_news (self , symbol , ** query_params ) -> models . ReferenceTickerNewsApiResponse :
4040 endpoint = f"{ self .url } /v1/meta/symbols/{ symbol } /news"
41- return self ._handle_response ("TickerNewsApiResponse " , endpoint , query_params )
41+ return self ._handle_response ("ReferenceTickerNewsApiResponse " , endpoint , query_params )
4242
43- def markets (self , ** query_params ):
43+ def reference_markets (self , ** query_params ) -> models . ReferenceMarketsApiResponse :
4444 endpoint = f"{ self .url } /v2/reference/markets"
45- return self ._handle_response ("MarketsApiResponse " , endpoint , query_params )
45+ return self ._handle_response ("ReferenceMarketsApiResponse " , endpoint , query_params )
4646
47- def locales (self , ** query_params ):
47+ def reference_locales (self , ** query_params ) -> models . ReferenceLocalesApiResponse :
4848 endpoint = f"{ self .url } /v2/reference/locales"
49- return self ._handle_response ("LocalesApiResponse " , endpoint , query_params )
49+ return self ._handle_response ("ReferenceLocalesApiResponse " , endpoint , query_params )
5050
51- def stock_splits (self , symbol , ** query_params ):
51+ def reference_stock_splits (self , symbol , ** query_params ) -> models . ReferenceStockSplitsApiResponse :
5252 endpoint = f"{ self .url } /v2/reference/splits/{ symbol } "
53- return self ._handle_response ("StockSplitsApiResponse " , endpoint , query_params )
53+ return self ._handle_response ("ReferenceStockSplitsApiResponse " , endpoint , query_params )
5454
55- def stock_dividends (self , symbol , ** query_params ):
55+ def reference_stock_dividends (self , symbol , ** query_params ) -> models . ReferenceStockDividendsApiResponse :
5656 endpoint = f"{ self .url } /v2/reference/dividends/{ symbol } "
57- return self ._handle_response ("StockDividendsApiResponse " , endpoint , query_params )
57+ return self ._handle_response ("ReferenceStockDividendsApiResponse " , endpoint , query_params )
5858
59- def stock_financials (self , symbol , ** query_params ):
59+ def reference_stock_financials (self , symbol , ** query_params ) -> models . ReferenceStockFinancialsApiResponse :
6060 endpoint = f"{ self .url } /v2/reference/financials/{ symbol } "
61- return self ._handle_response ("StockFinancialsApiResponse " , endpoint , query_params )
61+ return self ._handle_response ("ReferenceStockFinancialsApiResponse " , endpoint , query_params )
6262
63- def market_status (self , ** query_params ):
63+ def reference_market_status (self , ** query_params ) -> models . ReferenceMarketStatusApiResponse :
6464 endpoint = f"{ self .url } /v1/marketstatus/now"
65- return self ._handle_response ("MarketStatusApiResponse " , endpoint , query_params )
65+ return self ._handle_response ("ReferenceMarketStatusApiResponse " , endpoint , query_params )
6666
67- def market_holidays (self , ** query_params ):
67+ def reference_market_holidays (self , ** query_params ) -> models . ReferenceMarketHolidaysApiResponse :
6868 endpoint = f"{ self .url } /v1/marketstatus/upcoming"
69- return self ._handle_response ("MarketHolidaysApiResponse " , endpoint , query_params )
69+ return self ._handle_response ("ReferenceMarketHolidaysApiResponse " , endpoint , query_params )
7070
71- def exchanges (self , ** query_params ):
71+ def stocks_equities_exchanges (self , ** query_params ) -> models . StocksEquitiesExchangesApiResponse :
7272 endpoint = f"{ self .url } /v1/meta/exchanges"
73- return self ._handle_response ("ExchangesApiResponse " , endpoint , query_params )
73+ return self ._handle_response ("StocksEquitiesExchangesApiResponse " , endpoint , query_params )
7474
75- def historic_trades (self , symbol , date , ** query_params ):
75+ def stocks_equities_historic_trades (self , symbol , date ,
76+ ** query_params ) -> models .StocksEquitiesHistoricTradesApiResponse :
7677 endpoint = f"{ self .url } /v1/historic/trades/{ symbol } /{ date } "
77- return self ._handle_response ("HistoricTradesApiResponse " , endpoint , query_params )
78+ return self ._handle_response ("StocksEquitiesHistoricTradesApiResponse " , endpoint , query_params )
7879
79- def historic_trades_v2 (self , ticker , date , ** query_params ):
80+ def historic_trades_v2 (self , ticker , date , ** query_params ) -> models . HistoricTradesV2ApiResponse :
8081 endpoint = f"{ self .url } /v2/ticks/stocks/trades/{ ticker } /{ date } "
8182 return self ._handle_response ("HistoricTradesV2ApiResponse" , endpoint , query_params )
8283
83- def historic_quotes (self , symbol , date , ** query_params ):
84+ def stocks_equities_historic_quotes (self , symbol , date ,
85+ ** query_params ) -> models .StocksEquitiesHistoricQuotesApiResponse :
8486 endpoint = f"{ self .url } /v1/historic/quotes/{ symbol } /{ date } "
85- return self ._handle_response ("HistoricQuotesApiResponse " , endpoint , query_params )
87+ return self ._handle_response ("StocksEquitiesHistoricQuotesApiResponse " , endpoint , query_params )
8688
87- def historic_n___bbo_quotes_v2 (self , ticker , date , ** query_params ):
89+ def historic_n___bbo_quotes_v2 (self , ticker , date , ** query_params ) -> models . HistoricNBboQuotesV2ApiResponse :
8890 endpoint = f"{ self .url } /v2/ticks/stocks/nbbo/{ ticker } /{ date } "
8991 return self ._handle_response ("HistoricNBboQuotesV2ApiResponse" , endpoint , query_params )
9092
91- def last_trade_for_a_symbol (self , symbol , ** query_params ):
93+ def stocks_equities_last_trade_for_a_symbol (self , symbol ,
94+ ** query_params ) -> models .StocksEquitiesLastTradeForASymbolApiResponse :
9295 endpoint = f"{ self .url } /v1/last/stocks/{ symbol } "
93- return self ._handle_response ("LastTradeForASymbolApiResponse " , endpoint , query_params )
96+ return self ._handle_response ("StocksEquitiesLastTradeForASymbolApiResponse " , endpoint , query_params )
9497
95- def last_quote_for_a_symbol (self , symbol , ** query_params ):
98+ def stocks_equities_last_quote_for_a_symbol (self , symbol ,
99+ ** query_params ) -> models .StocksEquitiesLastQuoteForASymbolApiResponse :
96100 endpoint = f"{ self .url } /v1/last_quote/stocks/{ symbol } "
97- return self ._handle_response ("LastQuoteForASymbolApiResponse " , endpoint , query_params )
101+ return self ._handle_response ("StocksEquitiesLastQuoteForASymbolApiResponse " , endpoint , query_params )
98102
99- def daily_open_close (self , symbol , date , ** query_params ):
103+ def stocks_equities_daily_open_close (self , symbol , date ,
104+ ** query_params ) -> models .StocksEquitiesDailyOpenCloseApiResponse :
100105 endpoint = f"{ self .url } /v1/open-close/{ symbol } /{ date } "
101- return self ._handle_response ("DailyOpenCloseApiResponse " , endpoint , query_params )
106+ return self ._handle_response ("StocksEquitiesDailyOpenCloseApiResponse " , endpoint , query_params )
102107
103- def condition_mappings (self , ticktype , ** query_params ):
108+ def stocks_equities_condition_mappings (self , ticktype ,
109+ ** query_params ) -> models .StocksEquitiesConditionMappingsApiResponse :
104110 endpoint = f"{ self .url } /v1/meta/conditions/{ ticktype } "
105- return self ._handle_response ("ConditionMappingsApiResponse " , endpoint , query_params )
111+ return self ._handle_response ("StocksEquitiesConditionMappingsApiResponse " , endpoint , query_params )
106112
107- def snapshot_all_tickers (self , ** query_params ):
113+ def stocks_equities_snapshot_all_tickers (self ,
114+ ** query_params ) -> models .StocksEquitiesSnapshotAllTickersApiResponse :
108115 endpoint = f"{ self .url } /v2/snapshot/locale/us/markets/stocks/tickers"
109- return self ._handle_response ("SnapshotAllTickersApiResponse " , endpoint , query_params )
116+ return self ._handle_response ("StocksEquitiesSnapshotAllTickersApiResponse " , endpoint , query_params )
110117
111- def snapshot_single_ticker (self , ticker , ** query_params ):
118+ def stocks_equities_snapshot_single_ticker (self , ticker ,
119+ ** query_params ) -> models .StocksEquitiesSnapshotSingleTickerApiResponse :
112120 endpoint = f"{ self .url } /v2/snapshot/locale/us/markets/stocks/tickers/{ ticker } "
113- return self ._handle_response ("SnapshotSingleTickerApiResponse " , endpoint , query_params )
121+ return self ._handle_response ("StocksEquitiesSnapshotSingleTickerApiResponse " , endpoint , query_params )
114122
115- def snapshot_gainers_losers (self , direction , ** query_params ):
123+ def stocks_equities_snapshot_gainers_losers (self , direction ,
124+ ** query_params ) -> models .StocksEquitiesSnapshotGainersLosersApiResponse :
116125 endpoint = f"{ self .url } /v2/snapshot/locale/us/markets/stocks/{ direction } "
117- return self ._handle_response ("SnapshotGainersLosersApiResponse " , endpoint , query_params )
126+ return self ._handle_response ("StocksEquitiesSnapshotGainersLosersApiResponse " , endpoint , query_params )
118127
119- def previous_close (self , ticker , ** query_params ):
128+ def stocks_equities_previous_close (self , ticker , ** query_params ) -> models . StocksEquitiesPreviousCloseApiResponse :
120129 endpoint = f"{ self .url } /v2/aggs/ticker/{ ticker } /prev"
121- return self ._handle_response ("PreviousCloseApiResponse " , endpoint , query_params )
130+ return self ._handle_response ("StocksEquitiesPreviousCloseApiResponse " , endpoint , query_params )
122131
123- def aggregates (self , ticker , multiplier , timespan , from_ , to , ** query_params ):
132+ def stocks_equities_aggregates (self , ticker , multiplier , timespan , from_ , to ,
133+ ** query_params ) -> models .StocksEquitiesAggregatesApiResponse :
124134 endpoint = f"{ self .url } /v2/aggs/ticker/{ ticker } /range/{ multiplier } /{ timespan } /{ from_ } /{ to } "
125- return self ._handle_response ("AggregatesApiResponse " , endpoint , query_params )
135+ return self ._handle_response ("StocksEquitiesAggregatesApiResponse " , endpoint , query_params )
126136
127- def grouped_daily (self , locale , market , date , ** query_params ):
137+ def stocks_equities_grouped_daily (self , locale , market , date ,
138+ ** query_params ) -> models .StocksEquitiesGroupedDailyApiResponse :
128139 endpoint = f"{ self .url } /v2/aggs/grouped/locale/{ locale } /market/{ market } /{ date } "
129- return self ._handle_response ("GroupedDailyApiResponse " , endpoint , query_params )
140+ return self ._handle_response ("StocksEquitiesGroupedDailyApiResponse " , endpoint , query_params )
130141
131- def historic_forex_ticks (self , from_ , to , date , ** query_params ):
142+ def forex_currencies_historic_forex_ticks (self , from_ , to , date ,
143+ ** query_params ) -> models .ForexCurrenciesHistoricForexTicksApiResponse :
132144 endpoint = f"{ self .url } /v1/historic/forex/{ from_ } /{ to } /{ date } "
133- return self ._handle_response ("HistoricForexTicksApiResponse " , endpoint , query_params )
145+ return self ._handle_response ("ForexCurrenciesHistoricForexTicksApiResponse " , endpoint , query_params )
134146
135- def real_time_currency_conversion (self , from_ , to , ** query_params ):
147+ def forex_currencies_real_time_currency_conversion (self , from_ , to ,
148+ ** query_params ) -> models .ForexCurrenciesRealTimeCurrencyConversionApiResponse :
136149 endpoint = f"{ self .url } /v1/conversion/{ from_ } /{ to } "
137- return self ._handle_response ("RealTimeCurrencyConversionApiResponse " , endpoint , query_params )
150+ return self ._handle_response ("ForexCurrenciesRealTimeCurrencyConversionApiResponse " , endpoint , query_params )
138151
139- def last_quote_for_a_currency_pair (self , from_ , to , ** query_params ):
152+ def forex_currencies_last_quote_for_a_currency_pair (self , from_ , to ,
153+ ** query_params ) -> models .ForexCurrenciesLastQuoteForACurrencyPairApiResponse :
140154 endpoint = f"{ self .url } /v1/last_quote/currencies/{ from_ } /{ to } "
141- return self ._handle_response ("LastQuoteForACurrencyPairApiResponse " , endpoint , query_params )
155+ return self ._handle_response ("ForexCurrenciesLastQuoteForACurrencyPairApiResponse " , endpoint , query_params )
142156
143- def snapshot_all_tickers (self , ** query_params ):
157+ def forex_currencies_snapshot_all_tickers (self ,
158+ ** query_params ) -> models .ForexCurrenciesSnapshotAllTickersApiResponse :
144159 endpoint = f"{ self .url } /v2/snapshot/locale/global/markets/forex/tickers"
145- return self ._handle_response ("SnapshotAllTickersApiResponse " , endpoint , query_params )
160+ return self ._handle_response ("ForexCurrenciesSnapshotAllTickersApiResponse " , endpoint , query_params )
146161
147- def snapshot_gainers_losers (self , direction , ** query_params ):
162+ def forex_currencies_snapshot_gainers_losers (self , direction ,
163+ ** query_params ) -> models .ForexCurrenciesSnapshotGainersLosersApiResponse :
148164 endpoint = f"{ self .url } /v2/snapshot/locale/global/markets/forex/{ direction } "
149- return self ._handle_response ("SnapshotGainersLosersApiResponse " , endpoint , query_params )
165+ return self ._handle_response ("ForexCurrenciesSnapshotGainersLosersApiResponse " , endpoint , query_params )
150166
151- def crypto_exchanges (self , ** query_params ):
167+ def crypto_crypto_exchanges (self , ** query_params ) -> models . CryptoCryptoExchangesApiResponse :
152168 endpoint = f"{ self .url } /v1/meta/crypto-exchanges"
153- return self ._handle_response ("CryptoExchangesApiResponse " , endpoint , query_params )
169+ return self ._handle_response ("CryptoCryptoExchangesApiResponse " , endpoint , query_params )
154170
155- def last_trade_for_a_crypto_pair (self , from_ , to , ** query_params ):
171+ def crypto_last_trade_for_a_crypto_pair (self , from_ , to ,
172+ ** query_params ) -> models .CryptoLastTradeForACryptoPairApiResponse :
156173 endpoint = f"{ self .url } /v1/last/crypto/{ from_ } /{ to } "
157- return self ._handle_response ("LastTradeForACryptoPairApiResponse " , endpoint , query_params )
174+ return self ._handle_response ("CryptoLastTradeForACryptoPairApiResponse " , endpoint , query_params )
158175
159- def daily_open_close (self , from_ , to , date , ** query_params ):
176+ def crypto_daily_open_close (self , from_ , to , date , ** query_params ) -> models . CryptoDailyOpenCloseApiResponse :
160177 endpoint = f"{ self .url } /v1/open-close/crypto/{ from_ } /{ to } /{ date } "
161- return self ._handle_response ("DailyOpenCloseApiResponse " , endpoint , query_params )
178+ return self ._handle_response ("CryptoDailyOpenCloseApiResponse " , endpoint , query_params )
162179
163- def historic_crypto_trades (self , from_ , to , date , ** query_params ):
180+ def crypto_historic_crypto_trades (self , from_ , to , date ,
181+ ** query_params ) -> models .CryptoHistoricCryptoTradesApiResponse :
164182 endpoint = f"{ self .url } /v1/historic/crypto/{ from_ } /{ to } /{ date } "
165- return self ._handle_response ("HistoricCryptoTradesApiResponse " , endpoint , query_params )
183+ return self ._handle_response ("CryptoHistoricCryptoTradesApiResponse " , endpoint , query_params )
166184
167- def snapshot_all_tickers (self , ** query_params ):
185+ def crypto_snapshot_all_tickers (self , ** query_params ) -> models . CryptoSnapshotAllTickersApiResponse :
168186 endpoint = f"{ self .url } /v2/snapshot/locale/global/markets/crypto/tickers"
169- return self ._handle_response ("SnapshotAllTickersApiResponse " , endpoint , query_params )
187+ return self ._handle_response ("CryptoSnapshotAllTickersApiResponse " , endpoint , query_params )
170188
171- def snapshot_single_ticker (self , ticker , ** query_params ):
189+ def crypto_snapshot_single_ticker (self , ticker , ** query_params ) -> models . CryptoSnapshotSingleTickerApiResponse :
172190 endpoint = f"{ self .url } /v2/snapshot/locale/global/markets/crypto/tickers/{ ticker } "
173- return self ._handle_response ("SnapshotSingleTickerApiResponse " , endpoint , query_params )
191+ return self ._handle_response ("CryptoSnapshotSingleTickerApiResponse " , endpoint , query_params )
174192
175- def snapshot_single_ticker_full_book (self , ticker , ** query_params ):
193+ def crypto_snapshot_single_ticker_full_book (self , ticker ,
194+ ** query_params ) -> models .CryptoSnapshotSingleTickerFullBookApiResponse :
176195 endpoint = f"{ self .url } /v2/snapshot/locale/global/markets/crypto/tickers/{ ticker } /book"
177- return self ._handle_response ("SnapshotSingleTickerFullBookApiResponse " , endpoint , query_params )
196+ return self ._handle_response ("CryptoSnapshotSingleTickerFullBookApiResponse " , endpoint , query_params )
178197
179- def snapshot_gainers_losers (self , direction , ** query_params ):
198+ def crypto_snapshot_gainers_losers (self , direction ,
199+ ** query_params ) -> models .CryptoSnapshotGainersLosersApiResponse :
180200 endpoint = f"{ self .url } /v2/snapshot/locale/global/markets/crypto/{ direction } "
181- return self ._handle_response ("SnapshotGainersLosersApiResponse " , endpoint , query_params )
201+ return self ._handle_response ("CryptoSnapshotGainersLosersApiResponse " , endpoint , query_params )
0 commit comments