Сессии и куки работают по разному, если в случае с последними, данные храняться на стороне клиента, то с сессиями наоборот, и по сети "гоняется" лишь её идентификатор, поэтому если не работают куки, то сессии должны работать вроде как всегда.
Попробуйте хранить в сессии, но лучше не надо, т.к. что вы будете делать, когда кол-во уникумов перевалит за ваш лимит в 500 запросов? Переделывать всё?
Я предполагаю, что вы используете бесплатный API с лимитом кол-ва суточных запросов, при этом ключ авторизации для API не используется? Если так - я бы вынес это всё на сторону клиента: обычный ajax запрос на API, который в случае успеха - так же ajax-ом передает готовые данные на ваш php-обработчик, а в нем уже как раз и можно использовать сессии, чтобы после перезагрузки страницы клиент повторно не отправлял запросы на API.