Rate Limiting
Rate limit works at the tenant level and is the maximum number of requests you can make to webMethods.io Integration in a span of one minute.
Rate limit works at the tenant level and is the maximum number of requests you can make to webMethods.io Integration in a span of one minute.
webMethods.io Integration employs two different rate limiting mechanisms for workflows based on their type:
Sync webhook-enabled workflows are the ones which contain the Return Data on Sync Webhook action. This action is used to send the workflow output in the body of the webhook URL.
The webhook URL for sync webhook-enabled workflows looks similar to the one given below:
Under paid plans, if you send execution requests for more than 1500 sync webhook-enabled workflows within a minute, the first 400 requests will be processed while the rest of the requests will be rejected. In such a case, you will need to send the execution request for the rejected workflows again.
Under paid plans, if you send execution requests for more than 1500 sync webhook-enabled workflows within a minute, the first 400 requests will be processed while the rest of the requests will be rejected. In such a case, you will need to send the execution request for the rejected workflows again.
Under trial/unpaid plans, if you send execution requests for more than 30 sync webhook-enabled workflows within a minute, the first 30 requests will be processed while the rest of the requests will be rejected. In such a case, you will need to send the execution request for the rejected workflows again.
Under trial/unpaid plans, if you send execution requests for more than 30 sync webhook-enabled workflows within a minute, the first 30 requests will be processed while the rest of the requests will be rejected. In such a case, you will need to send the execution request for the rejected workflows again.
When a workflow request is rejected, you will receive the following data in the response header:
"Retry-After": <retry_after_time>
"X-RateLimit-Limit": <total_requests_allowed>
"X-RateLimit-Remaining": <total_requests_remain>
"X-RateLimit-Reset": <next_limit_start_date>
You can use these details to design your APIs accordingly and resend the execution requests.
The rate limiting mechanism for manually run, trigger-enabled, and async webhook-enabled (workflows which don’t contain the Return Data on Sync Webhook action) workflows varies from the sync-webhook enabled workflows.
Under paid plans, if you send execution requests for more than 1500 manually run/trigger-enabled/async webhook-enabled workflows within a minute, the first 1500 requests will be processed while the rest of the requests will be kept on hold. Such workflows will have a Hold status against them in the Monitor > Workflow Execution screen.
Under paid plans, if you send execution requests for more than 1500 manually run/trigger-enabled/async webhook-enabled workflows within a minute, the first 1500 requests will be processed while the rest of the requests will be kept on hold. Such workflows will have a Hold status against them in the Monitor > Workflow Execution screen.
Under trial/unpaid plans, if you send execution requests for more than 30 manually run/trigger-enabled/async webhook-enabled workflows within a minute, the first 30 requests will be processed while the rest of the requests will be kept on hold. Such workflows will have a Hold status against them in the Monitor > Workflow Execution screen.
Under trial/unpaid plans, if you send execution requests for more than 30 manually run/trigger-enabled/async webhook-enabled workflows within a minute, the first 30 requests will be processed while the rest of the requests will be kept on hold. Such workflows will have a Hold status against them in the Monitor > Workflow Execution screen.
Notes:
- All workflow execution requests which are kept on hold will be automatically executed after some time.
- Rate limit for async webhook-enabled workflows is not applicable to tenants which are assigned a dedicated queue.
You can alternatively manually resume the execution of the workflows that didn’t complete execution due to some error and were not automatically re-executed. To do so, click the respective workflow name and then click the Resume button located at the upper-right corner of the execution log screen.
You will also be notified about the workflows which are kept on hold, through the notifications panel.
If you resume a workflow at a time when the rate limit is already reached, you will receive an error message along with the following data in the response header:
"Retry-After": <retry_after_time>
"X-RateLimit-Limit": <total_requests_allowed>
"X-RateLimit-Remaining": <total_requests_remain>
"X-RateLimit-Reset": <next_limit_start_date>
You can use these details to design your APIs accordingly, and resend further execution requests.