I have a requirement where I need to send a custom object to an external system. The records are usually created in bulk so I have a queueable apex class called from a trigger that loops through the create record and sends each one to the endpoint, when the callout limit is reach I enqueue another job with the remaining.
This is working perfectly well, in fact too well as it is sending more than 250 requests per minute to the other system which is creating a problem.
The system needs to receive a maximum of 100 requests per minute and there is no option for bulk integration, it has to be one at a time.
Is there any way, other than building a middleware where I can space out the queued jobs? I thought of scheduling a job for a minute in the future that calls the queueable class again but I'm not sure if there is a better scenario.
Any input will be appreciated.
Thanks