Как закешировать токен на определенное время для доступа к API?
Записать в БД токен и срок его годности. Перед использованием проверять, если он истек - запрашивать новый.
Как реализовать кеширование этого токена на время его жизниСами же и написали - кэшировать. Кэш по определению данные, хранимые определенное время. Что использовать в качестве кэша - чисто ваш выбор - бд, редис, мемкеэш, файлы... Имхо редис вообще самое то, так как время жизни проверять не нужно, достаточно задать его при создании записи.