Vou tentar explicar a lógica e depois você vem dizer se deu certo! Então, imagina o seguinte: pelo que estou percebendo, você vai fazer o seguinte. Dependendo da linguagem de programação que está utilizando, que pelo jeito é TypeScript, você vai precisar criar uma classe com uma função responsável por salvar o conteúdo em um arquivo, permitindo a leitura posterior. Essa função deve embutir a informação de conteúdo e a data de expiração. Pode ser no estilo 'timestamp'.
Depois disso, você vai precisar de uma função chamada 'verificar validade'. Se a validade estiver dentro do período de verificação, aquele arquivo continuará sendo usado, ou seja, será lido. Caso ele perca a validade, você deve eliminá-lo ou sobrescrevê-lo com o conteúdo atualizado, salvando-o no seu servidor para fácil leitura.
Em seguida, você irá integrar isso em uma página ou recurso que será responsável por entrar em contato com a API, que possui um limite de cerca de trinta requisições por minuto. Você fará a checagem da validade do conteúdo. Se o conteúdo já salvo estiver desatualizado, você permitirá uma nova requisição em tempo real, que pode ocorrer até quatro vezes por segundo. Depois que o primeiro resultado for salvo, dependendo da validade do conteúdo, ele será lido a partir de um cache.
Por fim, basta colocar o seu front-end para comunicar com a interface que faz a gestão do conteúdo. Qualquer dúvida, mande mensagem aqui que tentaremos ajudar. Lembrando que minha especialidade é PHP, que é a linguagem que trabalho, mas essa lógica pode ser aplicada em outras linguagens. Utilize o ChatGPT para te ajudar na implementação mínima possível. Mas lembre-se: nunca confie de primeira na resposta retornada, pois pode haver erros. E, para deixar claro, você está armazenando os dados no seu servidor web, e não em um tipo S3 da Amazon. tá baum?