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

Migrare da ZeroBounce

Questa guida spiega come passare da ZeroBounce a Mailbeam. La maggior parte delle migrazioni richiede meno di un'ora.

Perché si cambia

  • Hosting nell'UE: ZeroBounce è negli USA; Mailbeam tratta i dati a Francoforte
  • Attenzione al tempo reale: ZeroBounce è fatto per pulire liste in volume; Mailbeam per i flussi di registrazione
  • Prezzi: Mailbeam addebita a verifica, senza moltiplicatori di crediti
  • Schema della risposta: Mailbeam dà un campo reason spiegabile; ZeroBounce usa stringhe di stato opache

Corrispondenza fra endpoint

ZeroBounceMailbeamNote
POST /v1/validatePOST /v1/verifyValidazione principale
GET /v1/getapiusageGET /v1/account/usageMonitoraggio della quota
POST /v2/validatebatchPOST /v1/verify/batchVerifica in volume

Autenticazione

ZeroBounce usa un parametro api_key nell'URL. Mailbeam usa token Bearer nell'intestazione.

ZeroBounce (prima):

curl "https://api.zerobounce.net/v2/validate?api_key=YOUR_KEY&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

ZeroBounce restituisce una stringa status. Mailbeam restituisce un booleano valid più score e reason.

status di ZeroBounceEquivalente in Mailbeam
"Valid"valid: true, score >= 80
"Invalid"valid: false
"Catch-All"catchAll: true (guarda lo score)
"Spamtrap"valid: false, reason: "disposable_domain"
"Abuse"Incluso come segnale nel punteggio
"DoNotMail"roleAddress: true oppure disposable: true
"Unknown"valid: true con uno score più basso

Migrazione del codice

ZeroBounce (prima):

const response = await fetch(
  `https://api.zerobounce.net/v2/validate?api_key=${apiKey}&email=${email}`
);
const { status, sub_status } = await response.json();

if (status !== "Valid") {
  return res.status(422).json({ error: "Email non valida" });
}

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 res.status(422).json({
    error: "Email non valida",
    reason, // leggibile dalla macchina: "disposable_domain", "no_mx_records", eccetera
  });
}

Prossimi passi