Beta privataMailbeam è in beta privata: l'API pubblica non è ancora aperta.Iscriviti alla lista d'attesa

Migrare da NeverBounce

Questa guida spiega come sostituire NeverBounce con Mailbeam. La maggior parte delle migrazioni richiede meno di un'ora.

Perché si cambia

  • Hosting nell'UE: NeverBounce è negli USA (è di ZoomInfo); Mailbeam tratta i dati a Francoforte, in Germania, senza trasferimenti transfrontalieri da risolvere sotto il GDPR
  • Crediti che non scadono: i crediti di NeverBounce scadono dopo 6 mesi; Mailbeam è un abbonamento mensile senza scadenza
  • Piano gratuito in autonomia: Mailbeam dà 1000 verifiche al mese senza carta; NeverBounce richiede di comprare crediti per iniziare
  • Esiti catch-all a punteggio: NeverBounce restituisce una marcatura binaria; Mailbeam assegna agli indirizzi catch-all un punteggio da 0 a 100 con pesi pubblicati, con un limite di 70 perché nessun sondaggio può confermarli, e un campo di motivo spiegabile

Corrispondenza fra endpoint

NeverBounceMailbeamNote
POST /v4/single/checkPOST /v1/verifyVerifica di un'email
POST /v4/jobs/createPOST /v1/verify/batchVerifica di liste in volume
GET /v4/account/infoGET /v1/account/usageInformazioni su quota e consumo

Autenticazione

NeverBounce usa l'autenticazione HTTP Basic con la chiave API come nome utente e senza password. Mailbeam usa token Bearer nell'intestazione Authorization.

NeverBounce (prima):

curl -X POST https://api.neverbounce.com/v4/single/check \
  -H "Authorization: Basic $(echo -n 'YOUR_KEY:' | base64)" \
  -d '{"email": "user@example.com"}'

Mailbeam (adesso):

curl -X POST https://api.mailbeam.dev/v1/verify \
  -H "Authorization: Bearer $MAILBEAM_KEY" \
  -H "Content-Type: application/json" \
  -d '{"email": "user@example.com"}'

Corrispondenza fra risposte

result di NeverBounceEquivalente in Mailbeam
"valid"valid: true, score >= 70
"invalid"valid: false
"catchall"catchAll: true — decidi con lo score
"disposable"disposable: true
"unknown"status: "unknown", con score più basso

Migrazione del codice

NeverBounce (prima):

const res = await fetch("https://api.neverbounce.com/v4/single/check", {
  method: "POST",
  headers: { Authorization: `Basic ${btoa(apiKey + ":")}` },
  body: JSON.stringify({ email }),
});
const { result } = await res.json();
if (result !== "valid") return 422;

Mailbeam (adesso):

// Nessun SDK da installare: vedi /docs/quickstart per questo wrapper di 12 righe.
import { verifyEmail } from "./lib/mailbeam.js";

const { valid, score, reason } = await verifyEmail(email);
if (!valid || score < 60) return 422;

Trattare gli indirizzi catch-all

NeverBounce restituisce result: "catchall" e nient'altro. Mailbeam restituisce catchAll: true insieme a uno score da 0 a 100 e a un reason.

const result = await verifyEmail(email);

if (result.catchAll) {
  // NeverBounce rifiuterebbe tutti i catch-all; Mailbeam ti lascia essere selettivo
  if (result.score >= 70) return 200; // indirizzo aziendale ad alta fiducia
  if (result.score >= 40) return 200; // accetta, ma marcalo per una revisione
  return 422; // fiducia bassa, rifiuta
}

Prossimi passi