Используйте
supervisord.org для поднятия скрипта как демона и в
while (true) {...}
делайте что вам угодно. Supervisord следит за состоянием процесса и если тот умирает, то перезапускает его. Если боитесь переполнения памяти, то можете вырубать сам скрипт через определенное время или если он съел много памяти через exit или die;
Кстати, очень странное апи, если оно реализует события, которые могут возникнуть асинхронно, то ищите описание сокет протокола для этого апи, обычно более грамотно реализовывать серверные события по сокету (или веб сокету), тк они асинхронны.