What are the _functions call quota?

I’ve built an API endpoint on a Wix store website so a third party can download the list of Wix store 's orders. I know the Store/Orders collection limits query to returns 100 items at the time.

So in order to retrieve the last 5000 orders, the API needs to be called 50.

My question is what the quota on API call for an endpoint defined in _functions call?

I remember having read something about 300 requests per minutes but I could find that information anymore. But what is defined as a request? any page view? any database query? Do web module call counts as requests?

  1. If the limit is 300 can I do 299 request every minute?

  2. What error should the API consumer be expecting if the 300 requests limit has been overpass?

  3. If minute 1, 350 requests have been made, can we query 50 items at minute 2? Or is there a penalty/cooldown time?

Hey Quentin,

Sorry for the delay… I’ll try to find the right dev contacts and send this question on.

@Yisrael do you got news by any chance? :slight_smile:

I haven’t forgotten about this. I think I found the right address for help.

Hey Quentin, so it’s like this…

From what I was told, 50 a minute should be OK. You just have to keep in mind that these are shared resources. So, if you encounter a problem with this, you should let us know and we can look into the issue.

This is not the answer I was looking for. I ask 3 specific questions and I got a vague reply that does not address any of those 3…

We can’t start a project then realize in production that Wix can’t handle the load and that nothing can be done about that.

The problem is: I don’t want to encounter the issue in the first place
I can’t ask a client $5000 to build an app then realize that Corvid was not designed to support its use case…

If Corvid does not scale for large operations that’s totally ok. But we’ve got to know! I’m well aware that those are shared resources and that’s the reason why I’m asking the questions.

We need proper documentation if we want to push Wix/Corvid forward. I understand what I’m asking is a bit technical and won’t be an issue for most users but I believe this forum is a place where that information would be valuable

@Yisrael : do you think you can find more detailed answers? :slight_smile:

PS: here are some examples of what I would like to see on corvid’s documentation:
https://shopify.dev/concepts/about-apis/rate-limits
https://developers.squarespace.com/commerce-apis/rate-limits
https://developer.twitter.com/en/docs/basics/rate-limiting#:~:text=Rate%20limiting%20of%20the%20standard,per%20window%20per%20access%20token.
https://support.twilio.com/hc/en-us/articles/115002943027-Understanding-Twilio-Rate-Limits-and-Message-Queues#:~:text=We%20will%20process%20your%20requests,last%20message%20to%20be%20delivered.

Here’s what I was able to find out:

A safe limit is about 1000 requests every minute, with a cooldown of 2 minutes in case of traffic going over the limit.

Basically it is safe to use with 250 requests per minute (functions, web methods) and 250 data operations (queries, inserts), etc. We don’t advise going over 250 operations per minute, yet the system will probably support 1000 per minute burst. If the limit is exceeded it will result in a 502 http error and there will be a 1-2 minute cooldown.

Great, thanks for the clarification :slight_smile:

@yisrael-wix @plomteuxquentin So just to be sure: when you say 1000 requests per minute is it 1000 requests to the server per minute universally?

For example I have 2 wix data query on the page and if I get 500 visitors on my page within the 1 minute mark it will amount to 1000 requests to the server, so will visitor 501 get a timeout?

Or are we just talking about 1000 rpm for _functions?