429 Rate Limit Exceeded when creating orders

Hi, today I tested a new way to create orders via async http post, so I don’t have to wait for previous http response in order to create the next order (which is really important because the round-trip time is ~500ms between alpaca and my server).

However, I quickly received 429 {“code”: “42910000”, “message”: “rate limit exceeded”} error. which isn’t documented anywhere.

Could you please clarify the rate limit on create orders (/v2/orders) API? I could still consider alpaca API if that limit isn’t too restrictive.

(I’m a old user of paid alpaca plan, really hope I can continue using it to trade)

Saw another post. Seems there is 200 requests / minute limit. Which is pretty restrictive. I wonder if paid user can increase this limit to support trading large universe (like 1000 stocks). Thank you.

I’m a paid “Unlimited” user and I also have this limit now. So either I have it by mistake, or it applies to all paid users.

@Justin_Coffi @PatL The Trading APIs (eg submit_order, get_account, etc) all have a rate limit of 200 calls/min. This is independent, and completely separate from, the Market Data APIs (eg get_bars, get_quotes, etc) which have a default rate limit of 200 calls/min but is increased to 10,000 calls/min if subscribed to a paid market data subscription. A paid market data subscription does not increase the rate limit for the Trading APIs, only the market data calls.

The 200 call/min rate should be adequate for most applications. Alpaca has many accounts trading tens of thousands of orders a day with this same restriction. About 150 orders can very realistically be placed every minute.