Cron - лучшее решение.
Другие варианты - писать свой вариант крона. То есть пишете программу на чем угодно, которая постоянно запущена, и периодически опрашивает ваш API.
В некоторых случаях отдельная программа может оказаться быстрее (потому что она уже запущена, не нужно ее запускать), но она должна быть надежной, и естественно нужно проверять, что она не слетела.
А cron - решение проверенное десятилетиями.