What Does “Request Was Throttled” on Robinhood Mean and How to Solve It
There are times you are unable to log into your Robinhood account via web version. ”Request was throttled” is the only response you get. This can be frustrating and you might not be able to transact or monitor your assets. Having an understanding of why this happens may reduce your frustration you have on Robinhood. Companies do throttling to limit the number of service users that pass via an IPA Getaway. This IPA Gateway ensures a certain number of requests are received at a specific time. This helps avoid flooding which can put the security of the brokerage in jeopardy. So what does “request was throttled” mean in Robinhood?
“Request was throttled” on Robinhood is a process whereby Robinhood limits the requests you or authorized developers submit to a specific operation at a specific period. Your request can be submitting an inventory or making an order for a report. The reason for this is to protect the web from being flooded with requests to give every service user a chance to access the web service.
The process is achieved using throttling filters. The filters do the whole process of configuring the number of times a specific client has done on specific applications. When a client exceeds the fixed number of times on application for a specific request, the filter fails for the messages that exceed the limit hence ending up with a “request was throttled” response.
What does “request was throttled” mean on Robinhood
“Request was throttled” on the Robinhood algorithm can be well illustrated with a bucket that has a specified number of holes. The water leaks out of the bucket at a constant rate. When the water is added to the bucket intermittently, the water will continue to flow without any issue. Now imagine water being added at once to the bucket at a rate that is not constant, the water will end up exceeding the bucket’s capacity.
Throttling works the same way permissions work. If you are asking for permission, a determination is usually made before authorization. The state of throttles are temporary and clients make requests through the API controlled throttles. API can inflict throttles for requests that are unauthenticated and fewer restrictions can be applied to the requests that are authenticated.
Another instance where you may need to apply multiple throttles is when you want to inflict different restrictions on various parts of the API as some services are resource-intensive. Multiple throttlers may also be used when imposing both burst and sustained throttling rates. For instance, you can limit users to the utmost 60 requests per minute and 1000 in 24 hours.
Throttlers do not only perform rate-limiting requests function. They can also be used by storage service to prevent bandwidth. Data service may also use the throttle to restrict certain records from being accessed.
The API Gateway works the same way as the bucket and water in Robinhood. When the limits are breached, the API Gateway behaves in line with the next policy failure path configured in the throttling filter. Robinhood manually controls the number of signals you are sending. They do this because there are too many people sending similar signals and they all need to be attended to. To ensure smooth and efficient service delivery and to secure customer’s assets, Robinhood receives signals in bits. This explains why sometimes you find it hard to log into your Robinhood account.
How to solve “request was throttled” on Robinhood
There are various ways to ensure your submissions and feeds are processed successfully at Robinhood.
Know the throttling limit of the specific request you are submitting
Different requests have different throttling limits. When you understand the throttling limit of a specific request, you will not go ahead in sending many messages as filters will be there to make sure you do not exceed the limit. When you send requests within the limit your submissions will be submitted successfully.
You can also automate your request system. This will help you save time. The system will know what time and how many requests to submit at a particular period. If there are requests that were throttled out, you will be able to when it is appropriate to resubmit them. Automation also helps you to know the number of request quotas remaining and you can be able to plan well.
If “request was throttled” persists, contacting Robinhood directly can be the best idea. There are different paths you can reach Robinhood through. You can visit their website at “contact us | Robinhood”. Click on “Help Center” and you will be ushered into a new page and the first thing you will see is “Hello! How can I help you”. Type and submit the “request was throttled” problem and you will be helped. Robinhood has verified accounts on both Twitter (@RobinhoodApp) and Facebook (Robihod). You can DM them or post the problem you are having and tag them so that they will be able to see your post. They help people with issues by sending them a direct message on different messaging platforms.
You can also use email(@robinhood.com) to communicate with Robinhood. Emails are taken seriously by most enterprises and channeling your problem through email can be more effective than some channels.
Distribute your request
Distributing requests maximizes the availability of services. You should submit requests at different times of the day. Avoid submitting all requests in the same hour. Distribution of requests gives high chances of successful submissions. You should also take advantage of low traffic hours. Submitting your request during the day when everyone is submitting their requests gives you little chance or no chance for your requests to be accepted. This is because of traffic caused by requests being sent. Early morning hours or early evening is the best time for sending your requests. At this time, there is low traffic as most people who are serviced by Robinhood are asleep, doing evening chores, or in traffic jams.
The request was throttled expected available in X seconds
Throttling filters include:
- A protective beck-end service to handle messages that exceeds 20 requests per client in per second.
- Enforcement of a specified message rate that allows a customer to purchase a maximum of 100 requests per client in one hour.
API Gateway introduced an improved version that is used to handle high traffic levels. The version is named Smooth Rate Limiting. The Existing algorithm has received a new name Floating Time Window which offers backward compatibility using previous versions.
The smooth Rate Limiting algorithm in API Algorithm is used to make a smooth way out for traffic through the division of per second limits into per millisecond intervals. Robinhood can set 500 messages per second and divide them into 1 request being received every 2-3 millisecond. If you exceed the set limit the service will not be available for you and you will be told when it will be available. Smooth Rate Limiting helps to aid in distributing rate limits evenly among the running API Gateways.
Floating Time Window which is renamed after the existing API Gateway versions are best for low traffic levels. It does not offer traffic smoothing hence works well over longer intervals for low traffic levels. For instance, Robinhood can set 10 transactions per minute or 100 per hour. This means that 100 requests are received per minute and all can only be received in the first 10 seconds and served. Any request sent after the first 10 seconds will be rejected and you will receive a notice that the “request was throttled” and service will be available after 50 seconds.
An example of how these ideas apply
Let’s assume that you are using the SubmitFeed operation to send update feeds of 25 inventory in number. The operation has a restore rate of two minutes for every 15 quotas. Your request will be throttled after requests exceed 15 if you send all at once. You will therefore need to wait until the request quota is restored for you to resubmit the remaining 10 requests. It will take you 20 minutes to resubmit the remaining ten since the restore rate is every two minutes for one request.
Automation allows you to submit all requests at once. The process can be automated to allow you to submit your requests incrementally. Using the 25 requests, we can show you how this process is better. You can submit 10 requests first and you will be left with 5 requests chances. Wait for ten minutes and after ten minutes is over the request quota will increase to 10. This is because only one request can be submitted after every ten minutes hence ten minutes will give five new requests. You can submit the remaining ten requests and wait for another ten minutes to submit the remaining. If all things remain constant it will take only 20 minutes to make the full submission.
You can opt to automate your requests for a fallback process. In this process, if throttling occurs it indicates that you have exceeded a maximum quota or there is high traffic in the web service. To avoid this. You can slow down the requests you make or resubmit.