Remova Resultados Indesejados do Algolia: Guia Completo com cURL e Postman

Removendo Resultados de Pesquisa Indesejados do Algolia: Um Guia Prático

Ao utilizar o Algolia para a funcionalidade de busca no etechpt.com, deparei-me com uma situação inesperada durante a fase de testes com o Polylang, um plugin de tradução. Artigos traduzidos passaram a ser exibidos nos resultados da pesquisa, o que não era desejado.

Esta ocorrência gerou a necessidade de encontrar uma solução eficaz para excluir essas entradas da pesquisa no Algolia.

Ao analisar o painel do Algolia, constatei que as postagens traduzidas apresentavam taxonomias específicas, como “Francais”.

Entretanto, o painel não oferecia uma opção direta para excluir registros. O Algolia possui um painel minimalista e recomenda o uso da sua API para o gerenciamento dos registros.

Após algumas pesquisas, encontrei uma maneira de remover essas entradas. É possível realizar essa ação através do cURL ou de um cliente HTTP como o Postman.

Para prosseguir, você precisará dos seguintes dados:

  • ID do aplicativo Algolia
  • Chave de API de administrador
  • Nome do índice

Essas informações podem ser encontradas em Configurações >> Chaves API no painel do Algolia.

Inicialmente, faremos uma consulta para confirmar que estamos obtendo os registros corretos e evitar a exclusão de dados indesejados.

curl -X POST \
     -H "X-Algolia-API-Key: ADMIN_API_KEY" \
     -H "X-Algolia-Application-Id: APPLICATION_ID" \
     "https://APPLICATION_ID.algolia.net/1/indexes/INDEX_NAME/query" \
     --data '{"query": "", "filters": "taxonomies.language: Français"}'
  

Lembre-se de substituir ADMIN_API_KEY, APPLICATION_ID e INDEX_NAME pelas informações correspondentes.

Com a consulta acima, obtivemos os registros desejados. Agora, podemos prosseguir com a exclusão utilizando a seguinte consulta:

curl -X POST \
     -H "X-Algolia-API-Key: ADMIN_API_KEY" \
     -H "X-Algolia-Application-Id: APPLICATION_ID" \
     "https://APPLICATION_ID.algolia.net/1/indexes/INDEX_NAME/deleteByQuery" \
     --data '{"query": "", "filters": "taxonomies.language: Français"}'
   

Caso prefira utilizar o Postman, insira os seguintes cabeçalhos:

  • X-Algolia-Application-Id
  • X-Algolia-API-Key

E aqui está o resultado da operação, indicando sucesso na exclusão:

Meu objetivo era excluir taxonomias específicas, mas a API do Algolia oferece a flexibilidade de gerenciar praticamente qualquer aspecto do seu índice. Para explorar outras possibilidades, consulte a documentação oficial da API de exclusão de registros.