Defina o resultado que poderá aceitar
Escolha o processo que utiliza publicações antigas de dataengineering. Anote campos obrigatórios, tratamento de texto ausente e dependência da ordem. Para cada requisito, decida se é atendido diretamente, tratado localmente ou excluído da migração. Assim uma resposta HTTP bem-sucedida comprova uma leitura específica, não a compatibilidade de todo o cliente. Reddit Proxy oferece um arquivo histórico independente, não a API oficial nem o estado atual do Reddit.
Salve uma página com a nova chave
Execute GET https://api.redditproxy.com/v1/posts?subreddit=dataengineering&limit=3 usando X-API-Key: <chave> ou Authorization: Bearer <chave>. Ambos aceitam a chave de arquivo de redditproxy.com, não um token do Reddit OAuth. Conserve parâmetros e resposta para trabalhar localmente e exclua o segredo dos arquivos de diagnóstico.
O leitor de publicações usa /v1/posts; uma lista de comentários corresponde a /v1/comments, a busca a /v1/search e um registro conhecido a /v1/item?id=.... São operações distintas. Uma consulta individual não traz automaticamente uma conversa completa, e o serviço não encaminha qualquer URL do cliente anterior.
Converta campos sem inventar contexto
Valide o array data e os campos de que o relatório precisa. Diferencie valor ausente de string vazia e falha de conversão local de página vazia bem-sucedida. Os registros são planos. parent_id e link_id permitem agrupamento local quando existem, mas não são filtros e não garantem uma discussão completa. Reproduza a transformação com a resposta salva antes de buscar mais páginas.
Traduza o significado de cada filtro
q pesquisa title e text com AND entre termos dentro de um campo correspondente. Dividir as palavras exigidas entre os dois campos não basta para produzir uma correspondência; não se trata de uma linguagem arbitrária de consultas. from e to usam YYYY-MM-DD em UTC, incluindo todo o dia to. min_score aplica somente um limite numérico. A ordem _doc não expressa cronologia, relevância ou pontuação; ordenar localmente só reorganiza os registros recebidos.
Reveja quando o percurso termina
O máximo é 100 registros por pedido e 100 páginas solicitadas separadamente para uma consulta. Leia total com relation: eq indica total exato, gte um limite inferior e unknown um total não confiável, possivelmente null. Desconhecido não significa zero. Atingir o limite ou dividir por datas não comprova cobertura completa nem ausência de duplicatas. Registre as páginas solicitadas e as dúvidas de cobertura.
Teste falhas antes de conectar o relatório
Com HTTP 400 corrija parâmetros; com 401 confira a chave, com 402 o saldo e com 429 reduza a frequência. Uma recuperação bem-sucedida custa um crédito mesmo vazia. Pedidos inválidos não descontam, e falhas da origem devolvem a reserva. Se o cliente perde a resposta, o servidor pode ter cobrado um sucesso; outra tentativa bem-sucedida custa outro crédito.
Compare o relatório final com os requisitos iniciais. Um teste local correto não garante respostas futuras imutáveis. Mantenha operações de escrita e de estado atual fora deste adaptador. /v1/status apresenta apenas o escopo estático e a resposta HTTP do aplicativo, não a saúde da origem. Documentação, preços e página da chave cobrem o contrato, o orçamento e a conta.