You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Jun 17, 2026. It is now read-only.
Repository navigation
This repository was archived by the owner on Jun 17, 2026. It is now read-only.
Please use a billing/subscription-related exception type #756
Is your feature request related to a problem? Please describe.
I noticed when attempting to pull prices at 1 minute intervals between two dates that I did not have a functional API issue, but actually had a subscription limitation.
File "/home/phanes/development/internal/proteus/proteus.py", line 28, in main
data = api.get_bars(symbol, '1Min', start=start_date.isoformat(), end=end_date.isoformat()).df
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/phanes/development/internal/proteus/.venv/lib/python3.12/site-packages/alpaca_trade_api/rest.py", line 735, in get_bars
bars = list(self.get_bars_iter(symbol,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/phanes/development/internal/proteus/.venv/lib/python3.12/site-packages/alpaca_trade_api/rest.py", line 718, in get_bars_iter
for bar in bars:
File "/home/phanes/development/internal/proteus/.venv/lib/python3.12/site-packages/alpaca_trade_api/rest.py", line 594, in _data_get
resp = self.data_get(path, data=data, feed=feed,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/phanes/development/internal/proteus/.venv/lib/python3.12/site-packages/alpaca_trade_api/rest.py", line 274, in data_get
return self._request(
^^^^^^^^^^^^^^
File "/home/phanes/development/internal/proteus/.venv/lib/python3.12/site-packages/alpaca_trade_api/rest.py", line 222, in _request
return self._one_request(method, url, opts, retry)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/phanes/development/internal/proteus/.venv/lib/python3.12/site-packages/alpaca_trade_api/rest.py", line 248, in _one_request
raise_api_error(resp, http_error)
File "/home/phanes/development/internal/proteus/.venv/lib/python3.12/site-packages/alpaca_trade_api/rest.py", line 83, in raise_api_error
raise APIError(error, http_error) from None
alpaca_trade_api.rest.APIError: subscription does not permit querying recent SIP data
It would be more readable if a special exception type for billing/account/access type errors were raised instead of a generic alpaca_trade_api.rest.APIError. This would also add more room for nuance in error handling in consuming applications.
Describe the solution you'd like.
Can an exception type of alpaca_trade_api.rest.APISubscriptionLimitation or similar be created?
Activity