403 ERROR: The request could not be satisfied

Q: Why am I getting the following error?

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<HTML>

<HEAD>
    <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
    <TITLE>ERROR: The request could not be satisfied</TITLE>
</HEAD>

<BODY>
    <H1>403 ERROR</H1>
    <H2>The request could not be satisfied.</H2>
    <HR noshade size="1px">
    Bad request.
    We can't connect to the server for this app or website at this time. There might be too much traffic or a
    configuration error. Try again later, or contact the app or website owner.
    <BR clear="all">
If you provide content to customers through CloudFront, you can find steps to troubleshoot and help prevent this error by reviewing the CloudFront documentation.
    <BR clear="all">
    <HR noshade size="1px">
    <PRE>
Generated by cloudfront (CloudFront)
Request ID: SsirOPcHxxxyhVVJIb5q1jFIPBdmAaz9QXEUniaqdJnYuYE9LbsCYQ==
</PRE>
    <ADDRESS>
    </ADDRESS>
</BODY>

</HTML>

Possible reasons:

1 ) Notice the “403 ERROR”, which is mentioned in the API documentation:

HTTP 403 return code is used when the WAF Limit (Web Application Firewall) has been violated.

WAF limitation is mentioned in this FAQ article:

Web Application Firewall Limits:
While we do not provide exact details on our WAF rules, if you are receiving an HTTP 403 error, you have broken a rule. Most likely, it will be a result of excessive requests within a duration of 5 minutes. However, if you are sending a request that could be perceived as malicious, it could also result in a ban of a longer duration.

For Spot, check /api/v3/exchangeInfo -> RAW_REQUESTS to know the allowed number of requests over X minutes regardless of weight.

Extra: Head over to this article to learn more about the error code status process until 403 error.

2 ) Sending request with payload as body instead of full request as query-string, example:

curl -X GET 'https://api.binance.com/api/v3/depth' -d 'symbol=LTCBTC'

query-string (without error):
curl -X GET 'https://api.binance.com/api/v3/depth?symbol=LTCBTC'

1 Like


What is the solution to this problem?

1 Like

You’re probably sending “excessive requests within a duration of 5 minutes.”, try to reduce and test again.

1 Like

403 error was