Olá, Luidi! Como vai?
Essa é uma questão interessante e depende muito do comportamento que você deseja para sua aplicação. Vou te apresentar duas abordagens, e você pode escolher a que melhor se adapta às suas necessidades:
Deletar apenas os registros existentes: Neste caso, você deletaria os registros que existem no banco de dados, mesmo que alguns dos IDs fornecidos não existam. Isso pode ser mais eficiente, especialmente em casos onde a lista de IDs é longa e você não quer sobrecarregar a resposta com uma lista de IDs inexistentes. Você pode retornar uma mensagem simples informando quantos registros foram deletados com sucesso.
Exemplo de resposta:
{
"message": "Deleção concluída. 2 registros foram deletados com sucesso."
}
Não deletar nada se algum ID não existir: Esta abordagem é mais restritiva e garante que a operação só seja realizada se todos os IDs existirem. Isso pode ser útil em situações onde a consistência dos dados é crítica. Neste caso, você pode retornar uma mensagem de erro informando que a operação não foi realizada porque um ou mais IDs não foram encontrados.
Exemplo de resposta:
{
"error": "Deleção não realizada. Os seguintes IDs não foram encontrados: 5."
}
Para a questão de mensagens muito grandes, uma solução seria limitar a quantidade de IDs ausentes que você reporta na resposta, ou simplesmente informar que alguns IDs não foram encontrados sem listar todos.
Espero ter ajudado e bons estudos!
Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓.