Netlify Scheduled Functions - Cron executing at 31-29-31-29... intervals instead of 31 min intervals

Ok basic overview:

I am making requests to an API endpoint every 31 min. It has to be more than 30 min (The API accepts requests at least 30 min after the last request), and optimally it will be 30 min and 1 second, for lag, but since that is not possible, I am going with 31 min. The higher the interval the less happy I will be since it will be pinging the API less efficiently and fewer times each day.

I am doing this using a scheduled netlify function:

export default exported
export const config = {
  schedule: "*/32 * * * *"

However, I get this problem:

From the times on the logs, I see it executing every hour at X:00 and X:32, effectively making it run every 32 min then 28 min then 32 min so on. However, the API does not like it when I ping 2 min early, and tells me the bonus is not unlocked. Then, it waits 32 min (wasting 30 min). Therefore, it is currently pinging at half efficiency. How can I get it to ping every 32 min, so like it runs:

Since it will be much better efficiency-wise to ping the API.

As noted here and here scheduling with cron isn’t designed for situations like this.

There is no single expression that would accommodate this.

Is there still any way to implement this? I tried using node-cron with vercel, but that tends to cancel after a while. I can also just use 2 or 3 cron jobs if that makes it possible.

Possibly but…

It would require a lot more than 2 or 3 cron jobs and more likely a half to a dozen (I haven’t done the math to work it out, I’ll leave that fun task to you.)