Resposta direta

Diagnostique em ordem: URL final, header Bearer, model ID, JSON e status; o caso de chave ausente ou inválida tem HTTP 401 no teste registrado.

Pré-requisitos e passos

  1. Compare a URL final com https://api.mandapi.com/v1/chat/completions.
  2. Confirme que Authorization começa por Bearer e que a variável não está vazia.
  3. Compare model e messages com o payload mínimo e capture o status sem vazar segredo.

Exemplo copiável

set -u
test -n "${MANDAPI_API_KEY:-}" || { echo "MANDAPI_API_KEY ausente" >&2; exit 1; }
curl -sS -o response.json -w 'HTTP %{http_code}
' \
  https://api.mandapi.com/v1/chat/completions \
  -H "Authorization: Bearer ${MANDAPI_API_KEY}" \
  -H "Content-Type: application/json" \
  -d '{"model":"deepseek-v4-flash","messages":[{"role":"user","content":"ok"}]}'

Como conferir o resultado

A evidência disponível cobre 401 e um Chat Completions 200; para qualquer outro status, preserve o caso para nova investigação em vez de atribuir uma causa não registrada.

← Voltar para API de IA no Brasil