A few questions:
- The documentation is unclear as to the public API methods (i.e. a rate oracle)
- Where are the rate limits documented?only saw the WS connection limit
- Should we use the Exchange time server for REST synchronization?
A few questions:
Update: Looking at Welcome, it seems that two of these questions are answered - still looking for the rate limits
It appears there is a limit, but it’s not clear what that is. Making a call to the /transaction_summary endpoint 150 times at once returns a ‘Rate limit exceeded’ error. Calling it 100 times does not return an error. So it would seem the “in bursts” rate limit is pretty high, at least for that endpoint.
Calling it every 100 milliseconds seems to do fine as well, but any faster and eventually it starts returning that same rate limit error.
Based on that, My guess is it’s roughly the same 10 per second limits that most of the Pro endpoints had.
Edit: right as I posted, I started getting errors with my 10 per second ping. But they stopped in a short time and it started working again, so I think it’s safe to say that was just inconsistencies/lag over the network.
They used a TokenBucket rate limiting algo for Exchange, the Rate limiting says “10,000 requests per hour”, but it is not clear that it applies to the Advanced Trade as well, although somewhere they do mention that we should combine “Advanced Trade” with “Sign-in” APIs
How are you doing the “PING”? Right, it seems that a safety margin is needed on the client side, that’s why I think a “time” sync is needed. It would be great if the rate limit error would say by how much the limit was violated to automatically adjust the client-side throttler
Agreed, I think there’s a need for a few public endpoints. I wonder if it has to do with it being in beta, tho. If you are going to be beta testing, they want you to at least have an account?
I never got into the details of the TokenBucket thing since I mostly just make calls at regular intervals anyway, so I just made sure the intervals were well below the limit. So I don’t really know how the bucket works. I would imagine if it worked well on the old api, they probably used the same algo on the new one.
Hello @MementoMori ! Thank you for taking an interest in trying out Coinbase APIs. For the details regarding your concern, we will check on this for you with our team. We will get back to you once we have more information. Keep in touch!
I see that now in the documentation, it says “Advanced Trade API endpoints are throttled by IP at 10 requests per second”. Is it also by account? As in, if there are two people in my household on the same IP address, do we have to share that 10/second limit, or do we each get our own? It wouldn’t make sense to me if we have to share, but since it’s still in beta I have to check.