In questa pagina
NoCall

Link, siti ed email

Questa email è autentica?

API · Pro

Copertura: Funziona con email di qualsiasi paese e in qualsiasi lingua: legge il controllo SPF, DKIM e DMARC che il tuo provider (Gmail, Outlook, Yahoo, iCloud e altri) registra nelle intestazioni quando riceve il messaggio, e controlla il nome e il dominio del mittente con le regole sui marchi di NoCall per questa edizione.

Apri lo strumento
In questa pagina

A cosa serve

Incolla le intestazioni di un’email sospetta per controllare se il tuo provider di posta ha verificato il mittente (SPF, DKIM e DMARC), se il nome imita un marchio e dove vanno davvero le risposte.

Requisiti

Chiunque può leggere queste guide, senza account. Alcuni strumenti richiedono Pro, come indicato in ogni guida.

Un’email può mostrare qualsiasi nome nel campo «Da». Quello che è molto più difficile da falsificare sono i controlli che il tuo provider di posta fa quando la riceve. Incolla qui le intestazioni del messaggio e ti diciamo se il mittente è chi dice di essere. Non viene inviato né salvato nulla.

Come usarlo

  1. Gmail: apri l’email, tocca i tre puntini e scegli «Mostra originale». Copia tutto il testo.

  2. Outlook: apri l’email, clicca sui tre puntini, poi su «Visualizza» e «Visualizza origine messaggio» (View message source) o «Visualizza dettagli messaggio».

  3. Apple Mail: apri l’email e scegli «Vista», «Messaggio» e «Formato sorgente».

  4. Yahoo Mail: apri l’email, clicca su «Altre opzioni» e poi su «Visualizza messaggio originale».

  5. Controlla il mittente

Esempio inventato

Nota

Esempio inventato, non una ricerca reale. Non chiamare e non aprire i suoi link.

Esempio inventato
From: "Bank" <[email protected]>

Interpretare il risultato

Non fidarti di questa email: Il tuo provider non è riuscito a confermare il mittente, oppure l’email imita un marchio. Non cliccare sui link, non scaricare gli allegati e non rispondere. Se dice di essere un’azienda, vai sul suo sito o nella sua app scrivendo tu l’indirizzo.

Controlla questa email con attenzione: Il mittente è verificato, ma alcuni dettagli meritano un controllo prima di rispondere o cliccare su un link.

Il mittente è verificato: Il tuo provider di posta ha controllato che l’email arriva dal dominio indicato in «Da». Questo non garantisce che il contenuto sia autentico: resta diffidente se ti chiede dati o pagamenti.

Limiti

Attenzione

Controllato nel tuo browser: le intestazioni non vengono inviate né salvate, e il risultato mostra solo domini, mai indirizzi completi.

Risoluzione dei problemi

Non abbiamo trovato intestazioni email nel testo. Copia il messaggio originale completo, non solo il corpo.

Le intestazioni non hanno un mittente (From). Copia il messaggio originale completo.

Le intestazioni sono troppo lunghe per controllarle (al massimo 64 KB).

Usare con l’API

Attenzione

Richiede una API key e dei crediti. Ogni chiamata completata costa 1 credito, anche quando non ci sono dati. Un account Pro attivo include 20 crediti per mese solare UTC, condivisi da tutte le rotte API e consumati per primi; i crediti mensili non usati non passano al mese successivo. I crediti acquistati nella pagina del tuo account funzionano senza Pro e non scadono mai.

Nota

Gli errori non vengono mai addebitati: 401 invalid_api_key (chiave mancante o non valida), 403 pro_required (nessun credito Pro e nessun credito acquistato), 422 input non valido, 429 quota_exceeded (crediti esauriti), rate_limit_exceeded o ai_busy (l’IA di sms-check è al limite della capacità), 503 tool_warming (i dati sono ancora in preparazione) o tool o provider non disponibile. Dopo un 429 o un 503, riprova quando sono trascorsi i secondi indicati nell’intestazione Retry-After.

Se il provider che ha ricevuto un’email l’ha autenticata (SPF, DKIM e DMARC dall’Authentication-Results più in alto) e gli indizi sul mittente: un marchio nel nome visualizzato, domini di posta gratuita o che ne imitano altri, risposte verso un altro dominio. Solo domini; non viene salvato nulla.

Invia il corpo JSON alla rotta specifica del tool, oppure a POST /v2/tools aggiungendo il campo tool. Entrambe le rotte restituiscono lo stesso risultato.

Endpoint
POST https://api.nocall.io/v2/email-headers
POST https://api.nocall.io/v2/tools  {"tool":"email-headers","headers":"Delivered-To: [email protected]\nReceived: from mail.bank.example (mail.bank.example [192.0.2.10]) by mx.google.com with ESMTPS id x1 for <[email protected]>; Tue, 27 Oct 2026 09:00:00 -0700\nAuthentication-Results: mx.google.com; dkim=pass [email protected] header.s=s1; spf=pass (google.com: domain of [email protected] designates 192.0.2.10 as permitted sender) [email protected]; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=bank.example\nFrom: \"Bank Alerts\" <[email protected]>\nReply-To: [email protected]\nSubject: Your statement is ready\nMessage-ID: <[email protected]>","country":"ES"}

Parametri

NomeTipoObbligatorioDescrizione
headersstring (1–65536)SìLe intestazioni originali dell’email («Mostra originale»), fino a 64 KB; tutto ciò che segue la prima riga vuota viene ignorato.
countrystring (enum, 55)No (predefinito: "ES")Paese di cui si usa il set di regole SMS.
bash
REQUEST_ID="$(uuidgen)" && [ -n "$REQUEST_ID" ] &&
curl --request POST 'https://api.nocall.io/v2/email-headers' \
  --header "Authorization: Bearer $NOCALL_API_KEY" \
  --header 'Content-Type: application/json' \
  --header "Idempotency-Key: $REQUEST_ID" \
  --data '{"headers":"Delivered-To: [email protected]\nReceived: from mail.bank.example (mail.bank.example [192.0.2.10]) by mx.google.com with ESMTPS id x1 for <[email protected]>; Tue, 27 Oct 2026 09:00:00 -0700\nAuthentication-Results: mx.google.com; dkim=pass [email protected] header.s=s1; spf=pass (google.com: domain of [email protected] designates 192.0.2.10 as permitted sender) [email protected]; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=bank.example\nFrom: \"Bank Alerts\" <[email protected]>\nReply-To: [email protected]\nSubject: Your statement is ready\nMessage-ID: <[email protected]>","country":"ES"}'

Esempio di risposta (200)

Questo è l’esempio documentato nel riferimento API. Le ricerche usano un numero fittizio, mentre aggregati e risposte dell’IA mostrano la struttura del risultato, non dati reali.

JSON
{
  "data": {
    "tool": "email-headers",
    "result": {
      "fromDomain": "bank.example",
      "fromDomainAscii": "bank.example",
      "displayName": "Bank Alerts",
      "replyToDomain": "other.example",
      "returnPathDomain": null,
      "senderDomain": null,
      "subject": "Your statement is ready",
      "auth": {
        "provider": "mx.google.com",
        "source": "authentication_results",
        "spf": "pass",
        "spfDomain": "bank.example",
        "dkim": "pass",
        "dkimDomains": [
          "bank.example"
        ],
        "dmarc": "pass",
        "dmarcDomain": "bank.example",
        "compauth": null,
        "aligned": true
      },
      "authenticated": true,
      "brand": null,
      "official": false,
      "freeMail": false,
      "signals": [
        "reply_to_mismatch"
      ],
      "attention": true
    }
  },
  "meta": {
    "requestId": "req_example",
    "unitsCharged": 1,
    "usage": {
      "periodStart": "2026-10-01",
      "unitLimit": 20,
      "unitsUsed": 3,
      "unitsRemaining": 17
    }
  }
}

Campi del risultato (data.result)

CampoTipoDescrizione
fromDomainstringIl dominio di From in Unicode; mai un indirizzo completo.
fromDomainAsciistringIl dominio di From come lo vedono i sistemi di posta (punycode).
displayNamestring | nullIl nome visualizzato, con qualsiasi parte locale di un indirizzo email e qualsiasi indirizzo IP sostituiti da …, o null.
replyToDomainstring | nullIl dominio a cui vanno le risposte, o null.
returnPathDomainstring | nullIl dominio a cui vanno gli avvisi di consegna, o null.
senderDomainstring | nullIl dominio del campo Sender, o null.
subjectstring | nullL’oggetto decodificato, con le parti locali e gli indirizzi IP sostituiti da …, o null.
authobjectI risultati del provider: provider, source, spf, dkim e dmarc (pass, fail, softfail, neutral, none, temperror, permerror o policy) con i loro domini, compauth e se sono allineati con il dominio di From.
authenticatedbooleanSe il provider ha verificato che l’email arriva dal dominio di From (DMARC pass o un DKIM pass allineato).
brandstring | nullIl marchio citato nel nome visualizzato o nell’oggetto, o null.
officialbooleanSe l’host è un dominio ufficiale di un marchio o di un ente pubblico.
freeMailbooleanSe il dominio di From è un servizio di posta gratuito a cui chiunque può iscriversi.
signalsarray<string (enum, 15)>no_auth_results, dmarc_fail, dmarc_none, spf_fail, dkim_fail, dkim_unaligned, return_path_mismatch, reply_to_mismatch, display_name_brand, display_name_address, free_mail_brand, lookalike_domain, suspicious_domain, risky_tld o multiple_from.
attentionbooleanSe il contenuto merita un controllo più attento.

Domande frequenti

Cosa sono SPF, DKIM e DMARC?

Sono i controlli che il tuo provider di posta esegue quando riceve un’email: SPF verifica se il server che l’ha inviata è autorizzato, DKIM verifica una firma del dominio e DMARC conferma che tutto corrisponde al dominio che vedi in «Da». Se DMARC non viene superato, il mittente è falso.

Se il mittente è verificato, l’email è sicura?

Non sempre. Verificato significa che arriva da quel dominio, ma un truffatore può usare un dominio suo simile a quello di un marchio, oppure un account violato. Guarda anche il dominio indicato e diffida di qualsiasi richiesta di dati o pagamenti.

Perché il nome del mittente non basta?

Perché il nome visualizzato lo scrive chi invia l’email e può dire qualsiasi cosa, perfino il nome della tua banca o un indirizzo falso tra virgolette. Quello che conta è il dominio verificato.