Guida rapida API

Versione 2: guida introduttiva

/ email-validazione-api-quickstart / v2-getting-started /

Collezione postino

Per testare la versione 2 dell'API in Postino , salva il contenuto della raccolta Postman come file .json oppure puoi ottenere il file dal nostro GitHub repository.

In Postman, nel menu in alto, fai clic su File, quindi scegli Importa. Quindi scegli il file JSON che hai salvato o scaricato da GitHub per importarlo.

File JSON raccolta postino:

{
  "informazioni": {
    "_postman_id": "948780 e4-bf36- 4 c9c-bb29- 2 c32c9053091",
    "nome": "zerobounce api v2",
    "schema": "https://schema.getpostman.com/json/collection/v2.0.0/collection.json"
  },
  "articolo": [
    {
      "nome": "Convalida email",
      "richiesta": {
        "metodo": "OTTENERE",
        "intestazione": [],
        "corpo": {
          "modalità": "crudo",
          "crudo": ""
        },
        "url": {
          "crudo": "https://api.zerobounce.net/v2/validate?api_key=replacewithyours&email=replacewithyours&ip_address=",
          "protocollo": "https",
          "ospite": [
            "api",
            "zerobounce",
            "netto"
          ],
          "sentiero": [
            "v2",
            "convalidare"
          ],
          "query": [
            {
              "chiave": "api_key",
              "valore": "replacewithyours",
              "descrizione": "La tua chiave API, trovata nel tuo account."
            },
            {
              "chiave": "e-mail",
              "valore": "replacewithyours",
              "descrizione": "L'indirizzo email che desideri convalidare"
            },
            {
              "chiave": "indirizzo ip",
              "valore": "",
              "descrizione": "L'indirizzo IP da cui l'email è stata registrata (può essere vuoto, ma il parametro è obbligatorio)"
            }
          ]
        },
        "descrizione": "API per la convalida di un singolo indirizzo email."
      },
      "risposta": []
    },
    {
      "nome": "Ottieni saldo credito",
      "richiesta": {
        "metodo": "OTTENERE",
        "intestazione": [],
        "corpo": {
          "modalità": "crudo",
          "crudo": ""
        },
        "url": {
          "crudo": "https://api.zerobounce.net/v2/getcredits?api_key=replacewithyours",
          "protocollo": "https",
          "ospite": [
            "api",
            "zerobounce",
            "netto"
          ],
          "sentiero": [
            "v2",
            "getcredits"
          ],
          "query": [
            {
              "chiave": "api_key",
              "valore": "replacewithyours",
              "descrizione": "La tua chiave API, trovata nel tuo account."
            }
          ]
        },
        "descrizione": "Questa API ti dirà quanti crediti hai lasciato sul tuo account."
      },
      "risposta": []
    },
    {
      "nome": "Inviare file",
      "richiesta": {
        "metodo": "INVIARE",
        "intestazione": [],
        "corpo": {
          "modalità": "formdata",
          "formdata": [
            {
              "chiave": "file",
              "descrizione": "file csv o txt",
              "genere": "file",
              "src": ""
            },
            {
              "chiave": "api_key",
              "valore": "replacewithyours",
              "descrizione": "La tua chiave API, trovata nel tuo account. (Obbligatorio)",
              "genere": "testo"
            },
            {
              "chiave": "return_url",
              "valore": "",
              "descrizione": "L'URL verrà utilizzato per richiamare al termine della convalida. (Facoltativo)",
              "genere": "testo",
              "disabilitato": Vero
            },
            {
              "chiave": "email_address_column",
              "valore": "replacewithyours",
              "descrizione": "L'indice della colonna dell'indirizzo email nel file. L'indice inizia da 1. (Obbligatorio, numero)",
              "genere": "testo"
            },
            {
              "chiave": "first_name_column",
              "valore": "",
              "descrizione": "L'indice della colonna del nome. (Facoltativo, numero)",
              "genere": "testo",
              "disabilitato": Vero
            },
            {
              "chiave": "last_name_column",
              "valore": "",
              "descrizione": "L'indice della colonna del cognome. (Facoltativo, numero)",
              "genere": "testo",
              "disabilitato": Vero
            },
            {
              "chiave": "gender_column",
              "valore": "",
              "descrizione": "L'indice della colonna della colonna sesso. (Facoltativo, numero)",
              "genere": "testo",
              "disabilitato": Vero
            },
            {
              "chiave": "ip_address_column",
              "valore": "",
              "descrizione": "L'indirizzo IP da cui l'email è stata registrata. (Facoltativo, numero)",
              "genere": "testo",
              "disabilitato": Vero
            },
            {
              "chiave": "has_header_row",
              "valore": "",
              "descrizione": "Se la prima riga del file inviato è una riga di intestazione. (Facoltativo, vero / falso)",
              "genere": "testo",
              "disabilitato": Vero
            }
          ]
        },
        "url": "https://bulkapi.zerobounce.net/v2/sendfile",
        "descrizione": "Questa API consente all'utente di inviare un file per la convalida di posta elettronica in blocco."
      },
      "risposta": []
    },
    {
      "nome": "Stato file",
      "richiesta": {
        "metodo": "OTTENERE",
        "intestazione": [],
        "corpo": {
          "modalità": "crudo",
          "crudo": ""
        },
        "url": {
          "crudo": "https://bulkapi.zerobounce.net/v2/filestatus?api_key=replacewithyours&file_id=replacewithyours",
          "protocollo": "https",
          "ospite": [
            "bulkapi",
            "zerobounce",
            "netto"
          ],
          "sentiero": [
            "v2",
            "filestatus"
          ],
          "query": [
            {
              "chiave": "api_key",
              "valore": "replacewithyours",
              "descrizione": "La tua chiave API, trovata nel tuo account."
            },
            {
              "chiave": "file_id",
              "valore": "replacewithyours",
              "descrizione": "L'ID file restituito durante la chiamata all'API sendfile."
            }
          ]
        },
        "descrizione": "L'API restituisce lo stato di elaborazione del file per il file inviato utilizzando l'API sendfile."
      },
      "risposta": []
    },
    {
      "nome": "Prendi il file",
      "richiesta": {
        "metodo": "OTTENERE",
        "intestazione": [],
        "corpo": {
          "modalità": "crudo",
          "crudo": ""
        },
        "url": {
          "crudo": "https://bulkapi.zerobounce.net/v2/getfile?api_key=replacewithyours&file_id=replacewithyours",
          "protocollo": "https",
          "ospite": [
            "bulkapi",
            "zerobounce",
            "netto"
          ],
          "sentiero": [
            "v2",
            "prendi il file"
          ],
          "query": [
            {
              "chiave": "api_key",
              "valore": "replacewithyours",
              "descrizione": "La tua chiave API, trovata nel tuo account."
            },
            {
              "chiave": "file_id",
              "valore": "replacewithyours",
              "descrizione": "L'ID file restituito durante la chiamata all'API sendfile."
            }
          ]
        },
        "descrizione": "L'API consente agli utenti di ottenere il file dei risultati della convalida per il file inviato utilizzando l'API sendfile."
      },
      "risposta": []
    },
    {
      "nome": "Cancella il file",
      "richiesta": {
        "metodo": "OTTENERE",
        "intestazione": [],
        "corpo": {
          "modalità": "crudo",
          "crudo": ""
        },
        "url": {
          "crudo": "https://bulkapi.zerobounce.net/v2/deletefile?api_key=replacewithyours&file_id=replacewithyours",
          "protocollo": "https",
          "ospite": [
            "bulkapi",
            "zerobounce",
            "netto"
          ],
          "sentiero": [
            "v2",
            "cancella il file"
          ],
          "query": [
            {
              "chiave": "api_key",
              "valore": "replacewithyours",
              "descrizione": "La tua chiave API, trovata nel tuo account."
            },
            {
              "chiave": "file_id",
              "valore": "replacewithyours",
              "descrizione": "L'ID file restituito durante la chiamata all'API sendfile."
            }
          ]
        },
        "descrizione": "L'API restituisce lo stato di elaborazione del file per il file inviato utilizzando l'API sendfile."
      },
      "risposta": []
    }
  ]
}

Ottieni saldo credito (v2)

/ email-validazione-api-quickstart / v2-credit-equilibrio /

Questa API ti dirà quanti crediti hai lasciato sul tuo account. È semplice, veloce e facile da usare.

Ecco alcuni scenari per i quali le aziende utilizzeranno questa API.

  • Utilizzi la nostra API per convalidare le e-mail e devi controllare entro un certo periodo di tempo quando il saldo del tuo credito è troppo basso, in modo da poter effettuare un pagamento.
  • Desideri tenere traccia di quanti crediti di convalida della posta elettronica stai utilizzando per il periodo di tempo definito per generare informazioni statistiche utili.
  • Desideri automatizzare e integrare le informazioni nella dashboard dell'applicazione che ti mostrano il saldo del credito attualmente residuo.

Di seguito troverai le istruzioni su come utilizzare la nostra API. È molto facile da usare e richiede SSL.

GET / v2 / getcredits

URL API: https://api.zerobounce.net/v2/getcredits

Di seguito troverai le istruzioni su come utilizzare la nostra API, è molto facile da usare e richiede SSL. L'API richiede che tu abbia un saldo attivo e non consumerà mai un credito per nessun risultato sconosciuto.

Parametri URL

  • Parametro
    Descrizione
  • api_key
    La tua chiave API, che si trova nel tuo account.

Ottieni esempi di codice del saldo del credito

  • Visual Basic
  • C#
  • PHP
  • Giava
  • Pitone
  • Veloce
  • Obiettivo C
  • Android Java
      
    'Librerie API complete e wrapper sono disponibili qui: 
    ' https://www.zerobounce.net/docs/zerobounce-api-wrappers/#api_wrappers__v2__dot_net
    
      PROVARE
        Fioco apiKey = "La tua chiave segreta"
        Fioco apiURL = "https://api.zerobounce.net/v2/getcredits?api_key=" & apiKey

        Fioco request Come HttpWebRequest = Directcast(WebRequest.Create(apiURL), HttpWebRequest)
        request.Tempo scaduto = 150000
        request.Method = "OTTENERE"

        Utilizzando response Come WebResponse = request.GetResponse()
            response.GetResponseStream().ReadTimeout = 20000
            Utilizzando ostream Come Nuovo StreamReader(response.GetResponseStream())
                responseString = ostream.ReadToEnd()
            Fine Utilizzando
        Fine Utilizzando
      Catturare ex Come exception
        'Eccezione di cattura - Tutti gli errori verranno visualizzati qui - se ci sono problemi con l'API
      Fine PROVARE
    

    // Le librerie e i wrapper API completi sono disponibili qui: 
    // https://www.zerobounce.net/docs/zerobounce-api-wrappers/#api_wrappers__v2__dot_net
    // https://www.zerobounce.net/docs/zerobounce-api-wrappers/#api_wrappers__v2__c-sharp

    PROVARE {
      Corda apiKey = "La tua chiave segreta";
      Corda apiURL = "https://api.zerobounce.net/v2/getcredits?api_key=" + apiKey; 
    
      Httpwebrequest request = (HttpWebRequest)WebRequest.creare(apiURL);
      request.Timeout = 150000;
      request.Method = "OTTENERE";
    
      Utilizzando (Webresponse response = request.GetResponse()) {
         response.Getresponsestream().ReadTimeout = 20000;
         Utilizzando (Streamreader ostream = Nuovo Streamreader(response.Getresponsestream())) {
         responseString = ostream.Readtoend();
         }
      }
      } Catturare (exception ex) {
      // Eccezione di cattura: qui verranno visualizzati tutti gli errori, in caso di problemi con l'API
      }
    

    <?php
    // Le librerie e i wrapper API completi sono disponibili qui: 
    // https://www.zerobounce.net/docs/zerobounce-api-wrappers/#api_wrappers__v2__php

    // imposta la chiave api e l'e-mail da convalidare
    $ apiKey = "La tua chiave segreta";
    // usa curl per fare la richiesta
    $ url = 'https://api.zerobounce.net/v2/getcredits?api_key='.$ apiKey;
    
    $ ch = curl_init($ url);
    curl_setopt($ ch, CURLOPT_RETURNTRANSFER, Vero);
    curl_setopt($ ch, CURLOPT_CONNECTTIMEOUT, 15); 
    curl_setopt($ ch, CURLOPT_TIMEOUT, 150); 
    $ risposta = curl_exec($ ch);
    curl_close($ ch);
    
    // decodifica la risposta json
    $ json = json_decode($ risposta, Vero);
    ?>
    


  // Le librerie e i wrapper API completi sono disponibili qui: 
  //https://www.zerobounce.net/docs/zerobounce-api-wrappers/#api_wrappers__v2__java

importare Giava.io.Bufferedreader;
importare Giava.io.Inputstreamreader;
importare Giava.netto.Httpurlconnection;
importare Giava.netto.URL;

Pubblico Classe La mia classe {

    Pubblico statico vuoto principale(Corda[] args){

        Corda key = "La tua chiave segreta";
        Corda targetURL = "https://api.zerobounce.net/v2/getcredits?api_key="+key;

        Httpurlconnection connection = nullo;
        finale Corda USER_AGENT = "Mozilla / 5.0";

        PROVARE {
            url url = Nuovo url(targetURL);
            connection = (Httpurlconnection) url.connessione aperta();
            connection.setrequestmethod("OTTENERE");
            connection.addrequestproperty("user-agent", USER_AGENT);


            connection.setusecaches(Falso);
            connection.setdooutput(Vero);

            Bufferedreader in = Nuovo Bufferedreader(
                    Nuovo Inputstreamreader(connection.getinputstream()));
            Corda inputLine;
            Stringbuffer response = Nuovo Stringbuffer();

            mentre ((inputLine = in.linea di lettura()) != nullo) {
                response.aggiungere(inputLine);
            }
            in.vicino();

            // stampa il risultato
            Sistema.out.println(response.toString());

        } Catturare (Eccezione e) {
            e.printstacktrace();
        } finalmente {
            Se (connection != nullo) {
                connection.disconnect();
            }
        }

    }
}
    

    # Librerie e wrapper API completi sono disponibili qui: 
    # https://www.zerobounce.net/docs/zerobounce-api-wrappers/#api_wrappers__v2__python
    
importare requests
importare json

target_url = "https://api.zerobounce.net/v2/getcredits?api_key="
secret_key = "La tua chiave segreta"

api_response = requests.get("%s%s" % (target_url, secret_key))
data = json.loads(api_response.content)

# stampa il numero di crediti
stampare data["Crediti"]

    


    // Le librerie e i wrapper API completi sono disponibili qui: 
    // https://www.zerobounce.net/docs/zerobounce-api-wrappers/#api_wrappers__v2__IOS

permettere key = "La tua chiave segreta"
permettere url = url(string: Corda(format: "https://api.zerobounce.net/v2/getcredits?api_key=%@", key))
permettere task = Urlsession.shared.datatask(with: url!) { (data, response, error) in
    Se error != zero {
        NSLog("Errore (stringa (che descrive: errore))")
    } altro {
        fare {
            permettere parsedData = PROVARE Jsonserialization.jsonobject(with: data!) Come! [Corda:Qualunque]
            per (key, value) in parsedData {
                NSLog("(chiave) = (valore)")
            }
        } Catturare {
            stampare("Errore durante la deserializzazione di JSON: (errore)")
        }
    }
}
task.curriculum vitae()
    

  NSString *key = @ "La tua chiave segreta";
  NSString *urlString = [NSString stringWithFormat:@"https://api.zerobounce.net/v2/getcredits?api_key=%@", key];
  
  __block NSURL *url = [NSURL URLWithString:urlString];
  
  dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
  
      NSData *response = [NSData dataWithContentsOfURL:url];
      NSDictionary *arrResponse = nil;
      Se(response!=nil)
      {
          arrResponse = [NSJSONSerialization JSONObjectWithData: response options:kNilOptions error:nil];
      }
      dispatch_async(dispatch_get_main_queue(), ^(vuoto) {
          per(NSString *key in [arrResponse allKeys]) {
              NSLog(@"%@: %@",key,[arrResponse objectForKey:key]);
          }
  // callback (nil, arr);
      });
  });
    


  // Le librerie e i wrapper API completi sono disponibili qui: 
  // https://www.zerobounce.net/docs/zerobounce-api-wrappers/#api_wrappers__v2__android

  // Aggiungi a build.gradle (App) nella parentesi "android":
  useLibrary "org.apache.http.legacy"

  Esempio:

  android {
      compileSdkVersion 25
      useLibrary "org.apache.http.legacy"
  }
  //------------------------------------------
  // Nome file: JsonParser.java

  importare androide.os.Asynctask;
  importare org.json.jsonobject;
  importare Giava.util.Iteratore;

  Pubblico Classe Attività principale si estende Appcompatactivity {

      @Oltrepassare
      protetto vuoto oncreate(Impacchettare savedInstanceState) {
          super.oncreate(savedInstanceState);

          Nuovo Asynctaskparsejson().eseguire();
      }
  }

  Pubblico Classe Asynctaskparsejson si estende Asynctask<Corda, Corda, Corda> {

      Corda key = "La tua chiave segreta";
      Corda url = "https://api.zerobounce.net/v2/getcredits?api_key="+key;

      @Oltrepassare
      protetto vuoto onpreexecute() {
      }

      @Oltrepassare
      protetto Corda doinbackground(Corda... arg0) {

          Jsonparser jParser = Nuovo Jsonparser();
          jsonobject json = jParser.getjsonfromurl(url);
          Iteratore keys = json.chiavi();
          mentre( keys.hasnext() ) {
              Corda key = (Corda)keys.il prossimo();
              PROVARE {
                  Sistema.out.println("ZeroBounce:"+key+" = " +json.ottenere(key).toString());
              }
              Catturare (Eccezione e){}
          }

          Ritorno nullo;
      }
      @Oltrepassare
      protetto vuoto onpostexecute(Corda strFromDoInBg) {}
  }

  //---------------------------------------------------
  // Nome file: MainActivity.java

  pacchetto com.Zerobounce.zbapiandroid;

  importare Giava.io.Bufferedreader;
  importare Giava.io.Ioexception;
  importare Giava.io.Inputstream;
  importare Giava.io.Inputstreamreader;
  importare Giava.io.Eccezione di codifica non supportata;

  importare org.apache.http.Httpentity;
  importare org.apache.http.Http: //presponse;
  importare org.apache.http.cliente.Clientprotocolexception;
  importare org.apache.http.cliente.metodi.Httpget;
  importare org.apache.http.impl.cliente.Defaulthttpclient;
  importare org.json.Jsonexception;
  importare org.json.jsonobject;

  importare androide.util.Ceppo;

  Pubblico Classe Jsonparser {

      finale Corda TAG = "jsonparser.java";

      statico Inputstream is = nullo;
      statico jsonobject jObj = nullo;
      statico Corda json = "";

      Pubblico jsonobject getjsonfromurl(Corda url) {

          PROVARE {

              Defaulthttpclient httpClient = Nuovo Defaulthttpclient();
              Httpget httpGet = Nuovo Httpget(url);

              Http: //presponse httpResponse = httpClient.eseguire(httpGet);
              Httpentity httpEntity = httpResponse.getentity();
              is = httpEntity.getcontent();

          } Catturare (Eccezione di codifica non supportata e) {
              e.printstacktrace();
          } Catturare (Clientprotocolexception e) {
              e.printstacktrace();
          } Catturare (Ioexception e) {
              e.printstacktrace();
          }

          PROVARE {

              Bufferedreader reader = Nuovo Bufferedreader(Nuovo Inputstreamreader(is, "iso- 8859-1"), 8);
              Stringbuilder sb = Nuovo Stringbuilder();
              Corda line = nullo;
              mentre ((line = reader.linea di lettura()) != nullo) {
                  sb.aggiungere(line + "
");
              }
              is.vicino();
              json = sb.toString();

          } Catturare (Eccezione e) {
              Ceppo.e(TAG, "Errore durante la conversione del risultato" + e.toString());
          }

          PROVARE {
              jObj = Nuovo jsonobject(json);
          } Catturare (Jsonexception e) {
              Ceppo.e(TAG, "Errore durante l'analisi dei dati" + e.toString());
          }

          Ritorno jObj;
      }
  }
    

Questa API ti dirà quanti crediti hai lasciato sul tuo account. È semplice, veloce e facile da usare.

Se vuoi chiamare l'API dal tuo browser per testarla, tutto ciò che devi fare è sostituire l'API KEY con la tua chiave:

https://api.zerobounce.net/v2/getcredits?api_key=[replacewithyours]

Questa API ti dirà quanti crediti hai lasciato sul tuo account.

L'API restituirà questi risultati in un formato JSON utilizzando il metodo "getcredits". crediti - La quantità di crediti che hai lasciato nel tuo account per le convalide e-mail. Se viene restituito un - 1, significa che la tua chiave API non è valida.

Risposta dell'endpoint

Questa API ti dirà quanti crediti hai lasciato sul tuo account. È semplice, veloce e facile da usare.

Risposta riuscita

      
  {"Crediti":2375323}
    

Risposta all'errore

      
  {"Crediti":-1}
    

Ottieni utilizzo API (v2)

/ email-validazione-api-quickstart / v2-get-api-utilizzo /

GET / v2 / getapiusage

URL API: https://bulkapi.zerobounce.net/v2/getapiusage

Parametri URL

  • Parametro
    Descrizione
  • api_key
    La tua chiave API, che si trova nel tuo account.
  • data d'inizio
    La data di inizio in cui desideri visualizzare l'utilizzo dell'API. (formato: aaaa / mm / gg)
  • data di fine
    La data di fine in cui desideri visualizzare l'utilizzo dell'API. (formato: aaaa / mm / gg)
  • https://api.zerobounce.net/v2/getapiusage?api_key=your-api-key&start_date=2018-01-01&end_date=2019-12-12

L'API restituirà questi risultati in un formato JSON utilizzando il metodo "getapiusage".

L'API restituirà questi risultati in un formato JSON utilizzando il metodo "getapiusage".

  • Parametro
    Descrizione
  • Totale
    Numero totale di volte in cui l'API è stata chiamata
  • STATUS_VALID
    Indirizzi email validi totali restituiti dall'API
  • STATUS_INVALID
    Totale indirizzi email non validi restituiti dall'API
  • STATUS_CATCH_ALL
    Indirizzi email catch-all totali restituiti dall'API
  • STATUS_DO_NOT_MAIL
    Totale non inviare indirizzi di posta elettronica restituiti dall'API
  • STATUS_SPAMTRAP
    Indirizzi email spamtrap totali restituiti dall'API
  • STATUS SCONOSCIUTO
    Indirizzi email sconosciuti totali restituiti dall'API
  • sub_status_toxic
    Numero totale di volte in cui l'API ha uno stato secondario "tossico"
  • sub_status_disposable
    Numero totale di volte in cui l'API ha uno stato secondario "usa e getta"
  • sub_status_role_based
    Numero totale di volte in cui l'API ha uno stato secondario "role_based"
  • sub_status_possible_trap
    Numero totale di volte in cui l'API ha uno stato secondario "possible_trap"
  • sub_status_global_suppression
    Numero totale di volte in cui l'API ha uno stato secondario "global_suppression"
  • sub_status_timeout_exceeded
    Numero totale di volte in cui l'API ha uno stato secondario "timeout_exceeded"
  • sub_status_mail_server_temporary_error
    Numero totale di volte in cui l'API ha uno stato secondario "mail_server_temporary_error"
  • sub_status_mail_server_did_not_respond
    Numero totale di volte in cui l'API ha uno stato secondario "mail_server_did_not_respond"
  • sub_status_greylisted
    Numero totale di volte in cui l'API ha uno stato secondario "greylisted"
  • sub_status_antispam_system
    Numero totale di volte in cui l'API ha uno stato secondario "antispam_system"
  • sub_status_does_not_accept_mail
    Numero totale di volte in cui l'API ha uno stato secondario "does_not_accept_mail"
  • sub_status_exception_occurred
    Numero totale di volte in cui l'API ha uno stato secondario "exception_occurred"
  • sub_status_failed_syntax_check
    Numero totale di volte in cui l'API ha uno stato secondario "failed_syntax_check"
  • sub_status_mailbox_not_found
    Numero totale di volte in cui l'API ha uno stato secondario "mailbox_not_found"
  • sub_status_unroutable_ip_address
    Numero totale di volte in cui l'API ha uno stato secondario "unroutable_ip_address"
  • sub_status_possible_typo
    Numero totale di volte in cui l'API ha uno stato secondario "possible_typo"
  • sub_status_no_dns_entries
    Numero totale di volte in cui l'API ha uno stato secondario "no_dns_entries"
  • sub_status_role_based_catch_all
    Tutti i rilevamenti basati sui ruoli, l'API ha uno stato secondario "role_based_catch_all"
  • sub_status_mailbox_quota_exceeded
    Numero totale di volte in cui l'API ha uno stato secondario "mailbox_quota_exceeded"
  • sub_status_forcible_disconnect
    Totale disconnessioni forzate l'API ha uno stato secondario "forcible_disconnect"
  • sub_status_failed_smtp_connection
    Totale connessioni SMTP non riuscite l'API ha uno stato secondario di "failed_smtp_connection"
  • data d'inizio
    Data di inizio della query. (formato: aaaa / mm / gg)
  • data di fine
    Data di fine della query. (formato: aaaa / mm / gg)

Ottieni esempi di codice di utilizzo API

  • Visual Basic
  • C#
  • PHP
  • Giava
  • Pitone
  • Veloce
  • Obiettivo C
  • Android Java
      
'Librerie API complete e wrapper sono disponibili qui: 
' https://www.zerobounce.net/docs/zerobounce-api-wrappers/#api_wrappers__v2__dot_net

  PROVARE
  Fioco api_key Come Corda = "La tua chiave segreta"
  Fioco start_date Come Corda = "2018-01-01"
  Fioco end_date  Come Corda = "2019-12-12" 
  Fioco responseString Come Corda = ""

Fioco apiURL Come Corda = "https://api.zerobounce.net/v2/getapiusage?api_key=" & api_key & "& data_inizio =" &  start_date & "& end_date =" & end_date

  Fioco request Come HttpWebRequest = Directcast(WebRequest.Create(apiURL), HttpWebRequest)
  request.Tempo scaduto = 150000
  request.Method = "OTTENERE"

  Utilizzando response Come WebResponse = request.GetResponse()
      response.GetResponseStream().ReadTimeout = 20000
      Utilizzando ostream Come Nuovo StreamReader(response.GetResponseStream())
          responseString = ostream.ReadToEnd()
      Fine Utilizzando
  Fine Utilizzando
Catturare ex Come exception
'Eccezione di cattura - Tutti gli errori verranno visualizzati qui - se ci sono problemi con l'API
Fine PROVARE
    

// Le librerie e i wrapper API completi sono disponibili qui: 
// https://www.zerobounce.net/docs/zerobounce-api-wrappers/#api_wrappers__v2__dot_net
// https://www.zerobounce.net/docs/zerobounce-api-wrappers/#api_wrappers__v2__c-sharp

PROVARE {
  Corda api_key = "La tua chiave segreta";
  Corda start_date = "2018-01-01";
  Corda end_date = "2019-12-12";
  
  Corda responseString = "";
  
  Corda apiURL = "https://api.zerobounce.net/v2/getapiusage?api_key=" + api_key + "& data_inizio =" +  start_date + "& end_date =" + end_date;
  
  
      Httpwebrequest request = (HttpWebRequest)WebRequest.creare(apiURL);
      request.Timeout = 150000;
      request.Method = "OTTENERE";
  
      Utilizzando (Webresponse response = request.GetResponse()) {
          response.Getresponsestream().ReadTimeout = 20000;
          Utilizzando (Streamreader ostream = Nuovo Streamreader(response.Getresponsestream())) {
              responseString = ostream.Readtoend();
          }
      }
      } Catturare (exception ex) {
  // Eccezione di cattura: qui verranno visualizzati tutti gli errori, in caso di problemi con l'API
  }
    

  <?php
  // Le librerie e i wrapper API completi sono disponibili qui: 
  // https://www.zerobounce.net/docs/zerobounce-api-wrappers/#api_wrappers__v2__php

  // imposta la chiave api e l'e-mail da convalidare
  $ api_key = "La tua chiave segreta";
  $ data_inizio = '2018-01-01';
  $ end_date = '2019-12-12';
  // usa curl per fare la richiesta
  $ url = 'https://api.zerobounce.net/v2/getapiusage?api_key='.$ api_key."& start_date =".$ data_inizio."& end_date =".$ end_date;
  
  $ ch = curl_init($ url);
  //PHP 5.5.19 e versioni successive supportano TLS  1.2
  curl_setopt($ ch, CURLOPT_SSLVERSION, 6);
  curl_setopt($ ch, CURLOPT_RETURNTRANSFER, Vero);
  curl_setopt($ ch, CURLOPT_CONNECTTIMEOUT, 15); 
  curl_setopt($ ch, CURLOPT_TIMEOUT, 150); 
  $ risposta = curl_exec($ ch);
  curl_close($ ch);
  
  // decodifica la risposta json
  $ json = json_decode($ risposta, Vero);
  ?>
    


  // Le librerie e i wrapper API completi sono disponibili qui: 
  //https://www.zerobounce.net/docs/zerobounce-api-wrappers/#api_wrappers__v2__java

importare Giava.io.Bufferedreader;
importare Giava.io.Inputstreamreader;
importare Giava.netto.Httpurlconnection;
importare Giava.netto.URL;

Pubblico Classe La mia classe {

    Pubblico statico vuoto principale(Corda[] args){

        Corda key = "La tua chiave segreta";
        Corda start_date = "2018-01-01";
        Corda end_date = "2019-12-12"; 
        Corda targetURL = "https://api.zerobounce.net/v2/getapiusage?api_key="+key+"& data_inizio ="+start_date+"& end_date ="+end_date;


        Httpurlconnection connection = nullo;
        finale Corda USER_AGENT = "Mozilla / 5.0";

        PROVARE {
            url url = Nuovo url(targetURL);
            connection = (Httpurlconnection) url.connessione aperta();
            connection.setrequestmethod("OTTENERE");
            connection.addrequestproperty("user-agent", USER_AGENT);
            connection.setusecaches(Falso);
            connection.setdooutput(Vero);

            Bufferedreader in = Nuovo Bufferedreader(
                    Nuovo Inputstreamreader(connection.getinputstream()));
            Corda inputLine;
            Stringbuffer response = Nuovo Stringbuffer();

            mentre ((inputLine = in.linea di lettura()) != nullo) {
                response.aggiungere(inputLine);
            }
            in.vicino();

            // stampa il risultato
            Sistema.out.println(response.toString());

        } Catturare (Eccezione e) {
            e.printstacktrace();
        } finalmente {
            Se (connection != nullo) {
                connection.disconnect();
            }
        }

    }
}
    

    # Librerie e wrapper API completi sono disponibili qui: 
    # https://www.zerobounce.net/docs/zerobounce-api-wrappers/#api_wrappers__v2__python
  
    
  url = "https://api.zerobounce.net/v2/getapiusage"
  api_key = "La tua chiave segreta"
  start_date = "2018-01-01" 
  end_date = "2019-12-12"
  
  
  params = {"api_key": api_key, "data d'inizio": start_date, "data di fine":end_date}
  
  response = requests.get(url, params=params)
  
  # Stampa il json restituito
  stampare json.loads(response.content)
    
    


  // Le librerie e i wrapper API completi sono disponibili qui: 
  // https://www.zerobounce.net/docs/zerobounce-api-wrappers/#api_wrappers__v2__IOS

permettere key = "La tua chiave segreta"
permettere start_date = "2018-01-01"
permettere end_date = "2019-12-12" // l'indirizzo ip può essere vuoto
permettere url = url(string: Corda(format: "https://api.zerobounce.net/v2/getapiusage?api_key=%@&start_date=%@&end_date=%@", key, start_date, end_date))
permettere task = Urlsession.shared.datatask(with: url!) { (data, response, error) in
    Se error != zero {
        NSLog("Errore (stringa (che descrive: errore))")
    } altro {
        fare {
            permettere parsedData = PROVARE Jsonserialization.jsonobject(with: data!) Come! [Corda:Qualunque]
            per (key, value) in parsedData {
                NSLog("(chiave) = (valore)")
            }
        } Catturare {
            stampare("Errore durante la deserializzazione di JSON: (errore)")
        }
    }
}
task.curriculum vitae()
    


  // Le librerie e i wrapper API completi sono disponibili qui: 
  // https://www.zerobounce.net/docs/zerobounce-api-wrappers/#api_wrappers__v2__IOS


  NSString *key = @ "La tua chiave segreta";
  NSString *start_date = @"2018-01-01";
  NSString *end_date = @"2019-12-12"; 
  
  NSString *urlString = [NSString stringWithFormat:@"https://api.zerobounce.net/v2/getapiusage?api_key=%@&start_date=%@&end_date=%@", key, start_date, end_date];
  
  __block NSURL *url = [NSURL URLWithString:urlString];
  
  dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
  
      NSData *response = [NSData dataWithContentsOfURL:url];
      NSDictionary *arrResponse = nil;
      Se(response!=nil)
      {
          arrResponse = [NSJSONSerialization JSONObjectWithData: response options:kNilOptions error:nil];
      }
      dispatch_async(dispatch_get_main_queue(), ^(vuoto) {
          per(NSString *key in [arrResponse allKeys]) {
              NSLog(@"%@: %@",key,[arrResponse objectForKey:key]);
          }
  // callback (nil, arr);
      });
  });
    


  // Le librerie e i wrapper API completi sono disponibili qui: 
  // https://www.zerobounce.net/docs/zerobounce-api-wrappers/#api_wrappers__v2__android

  // Aggiungi a build.gradle (App) nella parentesi "android":
  useLibrary "org.apache.http.legacy"
  
  Esempio:
  
  android {
      compileSdkVersion 25
      useLibrary "org.apache.http.legacy"
  }
  
  //-----------------------------------
  // Nome file: JsonParser.java
  
  
  importare androide.os.Asynctask;
  importare org.json.jsonobject;
  importare Giava.util.Iteratore;
  
  Pubblico Classe Attività principale si estende Appcompatactivity {
  
      @Oltrepassare
      protetto vuoto oncreate(Impacchettare savedInstanceState) {
          super.oncreate(savedInstanceState);
  
          Nuovo Asynctaskparsejson().eseguire();
      }
  }
  
  Pubblico Classe Asynctaskparsejson si estende Asynctask<Corda, Corda, Corda> {
  
      Corda key = "La tua chiave segreta";
      Corda start_date = "2018-01-01";
      Corda end_date = "2019-12-12";
      Corda url = "https://api.zerobounce.net/v2/getapiusage?api_key="+key+"& data_inizio ="+start_date+"& end_date ="+end_date;
  
      @Oltrepassare
      protetto vuoto onpreexecute() {
      }
  
      @Oltrepassare
      protetto Corda doinbackground(Corda... arg0) {
  
          Jsonparser jParser = Nuovo Jsonparser();
          jsonobject json = jParser.getjsonfromurl(url);
          Iteratore keys = json.chiavi();
          mentre( keys.hasnext() ) {
              Corda key = (Corda)keys.il prossimo();
              PROVARE {
                  Sistema.out.println("ZeroBounce:"+key+" = " +json.ottenere(key).toString());
              }
              Catturare (Eccezione e){}
          }
  
          Ritorno nullo;
      }
      @Oltrepassare
      protetto vuoto onpostexecute(Corda strFromDoInBg) {}
  }
  
  //----------------------------------
  // Nome file: MainActivity.java
  
  pacchetto com.Zerobounce.zbapiandroid;
  
  importare Giava.io.Bufferedreader;
  importare Giava.io.Ioexception;
  importare Giava.io.Inputstream;
  importare Giava.io.Inputstreamreader;
  importare Giava.io.Eccezione di codifica non supportata;
  
  importare org.apache.http.Httpentity;
  importare org.apache.http.Http: //presponse;
  importare org.apache.http.cliente.Clientprotocolexception;
  importare org.apache.http.cliente.metodi.Httpget;
  importare org.apache.http.impl.cliente.Defaulthttpclient;
  importare org.json.Jsonexception;
  importare org.json.jsonobject;
  
  importare androide.util.Ceppo;
  
  Pubblico Classe Jsonparser {
  
      finale Corda TAG = "jsonparser.java";
  
      statico Inputstream is = nullo;
      statico jsonobject jObj = nullo;
      statico Corda json = "";
  
      Pubblico jsonobject getjsonfromurl(Corda url) {
  
          PROVARE {
  
              Defaulthttpclient httpClient = Nuovo Defaulthttpclient();
              Httpget httpGet = Nuovo Httpget(url);
  
              Http: //presponse httpResponse = httpClient.eseguire(httpGet);
              Httpentity httpEntity = httpResponse.getentity();
              is = httpEntity.getcontent();
  
          } Catturare (Eccezione di codifica non supportata e) {
              e.printstacktrace();
          } Catturare (Clientprotocolexception e) {
              e.printstacktrace();
          } Catturare (Ioexception e) {
              e.printstacktrace();
          }
  
          PROVARE {
  
              Bufferedreader reader = Nuovo Bufferedreader(Nuovo Inputstreamreader(is, "iso- 8859-1"), 8);
              Stringbuilder sb = Nuovo Stringbuilder();
              Corda line = nullo;
              mentre ((line = reader.linea di lettura()) != nullo) {
                  sb.aggiungere(line + "
");
              }
              is.vicino();
              json = sb.toString();
  
          } Catturare (Eccezione e) {
              Ceppo.e(TAG, "Errore durante la conversione del risultato" + e.toString());
          }
  
          PROVARE {
              jObj = Nuovo jsonobject(json);
          } Catturare (Jsonexception e) {
              Ceppo.e(TAG, "Errore durante l'analisi dei dati" + e.toString());
          }
  
          Ritorno jObj;
      }
  }
    

Risposta dell'endpoint

Risposta riuscita

      
    {
      "totale": 3,
      "status_valid": 1,
      "status_invalid": 2,
      "status_catch_all": 0,
      "status_do_not_mail": 0,
      "status_spamtrap": 0,
      "status sconosciuto": 0,
      "sub_status_toxic": 0,
      "sub_status_disposable": 0,
      "sub_status_role_based": 0,
      "sub_status_possible_trap": 0,
      "sub_status_global_suppression": 0,
      "sub_status_timeout_exceeded": 0,
      "sub_status_mail_server_temporary_error": 0,
      "sub_status_mail_server_did_not_respond": 0,
      "sub_status_greylisted": 0,
      "sub_status_antispam_system": 0,
      "sub_status_does_not_accept_mail": 0,
      "sub_status_exception_occurred": 0,
      "sub_status_failed_syntax_check": 0,
      "sub_status_mailbox_not_found": 2,
      "sub_status_unroutable_ip_address": 0,
      "sub_status_possible_typo": 0,
      "sub_status_no_dns_entries": 0,
      "sub_status_role_based_catch_all": 0,
      "sub_status_mailbox_quota_exceeded": 0,
      "sub_status_forcible_disconnect": 0,
      "sub_status_failed_smtp_connection": 0,
      "data d'inizio": "1/1/2018",
      "data di fine": "12/12/2019"
    }
    

Risposta di errore - Chiave API

      
    {"errore":"Chiave API non valida"}
    

Risposta di errore - Data

      
    {"errore":"Data non valida"}

    

Validatore e-mail singolo - Tempo reale (v2)

/ email-validazione-api-quickstart / v2-validate-email /

Di seguito troverai le istruzioni su come utilizzare la nostra API, è molto facile da usare e richiede SSL. L'API richiede che tu abbia un saldo attivo e non consumerà mai un credito per nessun risultato sconosciuto. Questo endpoint può essere chiamato in modo asincrono e attualmente non è limitato in velocità.

Per testare o API senza utilizzare crediti: utilizzare le e-mail fornite nel nostro Modalità sandbox (v2)

Il tempo di risposta per la nostra API è compreso tra un secondo e 70 secondi. Poiché le API sono pensate per essere veloci per natura, limitiamo la quantità di tempo che dedichiamo alla convalida di un indirizzo email. Quindi, se incontriamo un server di posta lento o un server di posta con un algoritmo di greylisting, otterrai un risultato sconosciuto. Puoi sempre riconvalidare tali condizioni, caricando un file nel file validatore di email in blocco .

In media il 96-98% di tutti i domini tornerà tra 1 e 5 secondi, ci sono una manciata di domini che eseguono Postfix / Dovecot che hanno un tempo di connessione di 20 secondo per le convalide in tempo reale e un piccola percentuale frazionaria di altri domini che sono molto lenti a rispondere alle richieste SMTP. Tutti i principali ISP torneranno tra 1 e 3 secondi, che di solito è la maggior parte della distribuzione della posta elettronica.

- GET / v2 / validate

URL API: https://api.zerobounce.net/v2/validate

Di seguito troverai le istruzioni su come utilizzare la nostra API, è molto facile da usare e richiede SSL. L'API richiede che tu abbia un saldo attivo e non consumerà mai un credito per nessun risultato sconosciuto. Questo endpoint può essere chiamato in modo asincrono e attualmente non è limitato in velocità.

Parametri URL

  • Parametro
    Descrizione
  • E-MAIL
    L'indirizzo e-mail che desideri convalidare
  • indirizzo ip
    L'indirizzo IP da cui l'email è stata registrata (può essere vuoto, ma il parametro è richiesto)
  • api_key
    La tua chiave API, che si trova nel tuo account.

Se vuoi chiamare l'API dal tuo browser per testarla, tutto ciò che devi fare è sostituire l'API KEY con la tua chiave:

  • https://api.zerobounce.net/v2/validate?api_key=replacewithyours&email=valid@example.com&ip_address=156.124.12.145

Per verificare un indirizzo e-mail, utilizza i seguenti codici per le seguenti lingue:

  • Visual Basic
  • C#
  • PHP
  • Giava
  • Pitone
  • Veloce
  • Obiettivo C
  • Android Java

        
  'Librerie API complete e wrapper sono disponibili qui: 
  ' https://www.zerobounce.net/docs/zerobounce-api-wrappers/#api_wrappers__v2__dot_net

  PROVARE
    Fioco api_key Come Corda = "La tua chiave segreta"
    Fioco emailToValidate Come Corda = "example@example.com"
    Fioco ip_address = "" "Può essere vuoto, ma è necessario un parametro nella chiamata API
    Fioco responseString Come Corda = ""
  
    Fioco apiURL Come Corda = "https://api.zerobounce.net/v2/validate?api_key=" & api_key & "& email =" &  HttpUtility.UrlEncode(emailToValidate) & "& indirizzo_ip =" & Sistema.Net.WebUtility.UrlEncode(ip_address)
  
    Fioco request Come HttpWebRequest = Directcast(WebRequest.Create(apiURL), HttpWebRequest)
    request.Tempo scaduto = 150000
    request.Method = "OTTENERE"
  
    Utilizzando response Come WebResponse = request.GetResponse()
        response.GetResponseStream().ReadTimeout = 20000
        Utilizzando ostream Come Nuovo StreamReader(response.GetResponseStream())
            responseString = ostream.ReadToEnd()
        Fine Utilizzando
    Fine Utilizzando
  Catturare ex Come exception
  'Eccezione di cattura - Tutti gli errori verranno visualizzati qui - se ci sono problemi con l'API
  Fine PROVARE
      

// Le librerie e i wrapper API completi sono disponibili qui: 
// https://www.zerobounce.net/docs/zerobounce-api-wrappers/#api_wrappers__v2__dot_net
// https://www.zerobounce.net/docs/zerobounce-api-wrappers/#api_wrappers__v2__c-sharp

PROVARE {
  Corda api_key = "La tua chiave segreta";
  Corda emailToValidate = "example@example.com";
  Corda ip_address = "" // Può essere vuoto, ma il parametro è richiesto nella chiamata API
  
  Corda responseString = "";
  
  Corda apiURL = "https://api.zerobounce.net/v2/validate?api_key=" + api_key + "& email =" +  HttpUtility.Urlencode(emailToValidate) + "& indirizzo_ip =" + HttpUtility.Urlencode(ip_address);
  
  
      Httpwebrequest request = (HttpWebRequest)WebRequest.creare(apiURL);
      request.Timeout = 150000;
      request.Method = "OTTENERE";
  
      Utilizzando (Webresponse response = request.GetResponse()) {
          response.Getresponsestream().ReadTimeout = 20000;
          Utilizzando (Streamreader ostream = Nuovo Streamreader(response.Getresponsestream())) {
              responseString = ostream.Readtoend();
          }
      }
      } Catturare (exception ex) {
  // Eccezione di cattura: qui verranno visualizzati tutti gli errori, in caso di problemi con l'API
  }
      

  <?php

  // Le librerie e i wrapper API completi sono disponibili qui: 
  // https://www.zerobounce.net/docs/zerobounce-api-wrappers/#api_wrappers__v2__php

  // imposta la chiave api e l'e-mail da convalidare
  $ api_key = "La tua chiave segreta";
  $ emailToValidate = 'example@example.com';
  $ IPToValidate = '99.123.12.122';
  // usa curl per fare la richiesta
  $ url = 'https://api.zerobounce.net/v2/validate?api_key='.$ api_key."& email =".Urlencode($ emailToValidate)."& ip_address =".Urlencode($ IPToValidate);

  $ ch = curl_init($ url);
  //PHP 5.5.19 e versioni successive supportano TLS  1.2
  curl_setopt($ ch, CURLOPT_SSLVERSION, 6);
  curl_setopt($ ch, CURLOPT_RETURNTRANSFER, Vero);
  curl_setopt($ ch, CURLOPT_CONNECTTIMEOUT, 15); 
  curl_setopt($ ch, CURLOPT_TIMEOUT, 150); 
  $ risposta = curl_exec($ ch);
  curl_close($ ch);

  // decodifica la risposta json
  $ json = json_decode($ risposta, Vero);
  ?>
      
      


  // Le librerie e i wrapper API completi sono disponibili qui: 
  //https://www.zerobounce.net/docs/zerobounce-api-wrappers/#api_wrappers__v2__java

  importare Giava.io.Bufferedreader;
  importare Giava.io.Inputstreamreader;
  importare Giava.netto.Httpurlconnection;
  importare Giava.netto.URL;

  Pubblico Classe La mia classe {

      Pubblico statico vuoto principale(Corda[] args){

          Corda key = "La tua chiave segreta";
          Corda email = "example@example.com";
          Corda ip = "99.123.12.122"; // l'indirizzo ip può essere vuoto
          Corda targetURL = "https://api.zerobounce.net/v2/validate?api_key="+key+"& email ="+email+"& indirizzo_ip ="+ip;


          Httpurlconnection connection = nullo;
          finale Corda USER_AGENT = "Mozilla / 5.0";

          PROVARE {
              url url = Nuovo url(targetURL);
              connection = (Httpurlconnection) url.connessione aperta();
              connection.setrequestmethod("OTTENERE");
              connection.addrequestproperty("user-agent", USER_AGENT);
              connection.setusecaches(Falso);
              connection.setdooutput(Vero);

              Bufferedreader in = Nuovo Bufferedreader(
                      Nuovo Inputstreamreader(connection.getinputstream()));
              Corda inputLine;
              Stringbuffer response = Nuovo Stringbuffer();

              mentre ((inputLine = in.linea di lettura()) != nullo) {
                  response.aggiungere(inputLine);
              }
              in.vicino();

              // stampa il risultato
              Sistema.out.println(response.toString());

          } Catturare (Eccezione e) {
              e.printstacktrace();
          } finalmente {
              Se (connection != nullo) {
                  connection.disconnect();
              }
          }

      }
  }
      

  # Librerie e wrapper API completi sono disponibili qui: 
  # https://www.zerobounce.net/docs/zerobounce-api-wrappers/#api_wrappers__v2__python
  
  url = "https://api.zerobounce.net/v2/validate"
  api_key = "La tua chiave segreta"
  email = "example@example.com"
  ip_address = "99.123.12.122" #ip_address può essere vuoto
  
  params = {"e-mail": email, "api_key": api_key, "indirizzo ip":ip_address}
  
  response = requests.get(url, params=params)
  
  # Stampa il json restituito
  stampare json.loads(response.content)
  
      


  // Le librerie e i wrapper API completi sono disponibili qui: 
  // https://www.zerobounce.net/docs/zerobounce-api-wrappers/#api_wrappers__v2__IOS

  permettere key = "La tua chiave segreta"
  permettere email = "example@example.com"
  permettere ip = "99.123.12.122" // l'indirizzo ip può essere vuoto
  permettere url = url(string: Corda(format: "https://api.zerobounce.net/v2/validate?api_key=%@&email=%@&ip_address=%@", key, email, ip))
  permettere task = Urlsession.shared.datatask(with: url!) { (data, response, error) in
      Se error != zero {
          NSLog("Errore (stringa (che descrive: errore))")
      } altro {
          fare {
              permettere parsedData = PROVARE Jsonserialization.jsonobject(with: data!) Come! [Corda:Qualunque]
              per (key, value) in parsedData {
                  NSLog("(chiave) = (valore)")
              }
          } Catturare {
              stampare("Errore durante la deserializzazione di JSON: (errore)")
          }
      }
  }
  task.curriculum vitae()      
      


  // Le librerie e i wrapper API completi sono disponibili qui: 
  // https://www.zerobounce.net/docs/zerobounce-api-wrappers/#api_wrappers__v2__IOS

  NSString *key = @ "La tua chiave segreta";
  NSString *email = @"example@example.com";
  NSString *ip = @"99.123.12.122"; // l'indirizzo ip può essere vuoto
  
  NSString *urlString = [NSString stringWithFormat:@"https://api.zerobounce.net/v2/validate?api_key=%@&email=%@&ip_address=%@", key, email, ip];
  
  __block NSURL *url = [NSURL URLWithString:urlString];
  
  dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
  
      NSData *response = [NSData dataWithContentsOfURL:url];
      NSDictionary *arrResponse = nil;
      Se(response!=nil)
      {
          arrResponse = [NSJSONSerialization JSONObjectWithData: response options:kNilOptions error:nil];
      }
      dispatch_async(dispatch_get_main_queue(), ^(vuoto) {
          per(NSString *key in [arrResponse allKeys]) {
              NSLog(@"%@: %@",key,[arrResponse objectForKey:key]);
          }
  // callback (nil, arr);
      });
  });
      



  // Le librerie e i wrapper API completi sono disponibili qui: 
  // https://www.zerobounce.net/docs/zerobounce-api-wrappers/#api_wrappers__v2__android

  // Aggiungi a build.gradle (App) nella parentesi "android":
  useLibrary "org.apache.http.legacy"
  
  Esempio:
  
  android {
      compileSdkVersion 25
      useLibrary "org.apache.http.legacy"
  }
  
  //-----------------------------------
  // Nome file: JsonParser.java
  
  
  importare androide.os.Asynctask;
  importare org.json.jsonobject;
  importare Giava.util.Iteratore;
  
  Pubblico Classe Attività principale si estende Appcompatactivity {
  
      @Oltrepassare
      protetto vuoto oncreate(Impacchettare savedInstanceState) {
          super.oncreate(savedInstanceState);
  
          Nuovo Asynctaskparsejson().eseguire();
      }
  }
  
  Pubblico Classe Asynctaskparsejson si estende Asynctask<Corda, Corda, Corda> {
  
      Corda key = "La tua chiave segreta";
      Corda email = "example@example.com";
      Corda ip = "99.123.12.122"; // l'indirizzo ip può essere vuoto
      Corda url = "https://api.zerobounce.net/v2/validate?api_key="+key+"& email ="+email+"& indirizzo_ip ="+ip;
  
      @Oltrepassare
      protetto vuoto onpreexecute() {
      }
  
      @Oltrepassare
      protetto Corda doinbackground(Corda... arg0) {
  
          Jsonparser jParser = Nuovo Jsonparser();
          jsonobject json = jParser.getjsonfromurl(url);
          Iteratore keys = json.chiavi();
          mentre( keys.hasnext() ) {
              Corda key = (Corda)keys.il prossimo();
              PROVARE {
                  Sistema.out.println("ZeroBounce:"+key+" = " +json.ottenere(key).toString());
              }
              Catturare (Eccezione e){}
          }
  
          Ritorno nullo;
      }
      @Oltrepassare
      protetto vuoto onpostexecute(Corda strFromDoInBg) {}
  }
  
  //----------------------------------
  // Nome file: MainActivity.java
  
  pacchetto com.Zerobounce.zbapiandroid;
  
  importare Giava.io.Bufferedreader;
  importare Giava.io.Ioexception;
  importare Giava.io.Inputstream;
  importare Giava.io.Inputstreamreader;
  importare Giava.io.Eccezione di codifica non supportata;
  
  importare org.apache.http.Httpentity;
  importare org.apache.http.Http: //presponse;
  importare org.apache.http.cliente.Clientprotocolexception;
  importare org.apache.http.cliente.metodi.Httpget;
  importare org.apache.http.impl.cliente.Defaulthttpclient;
  importare org.json.Jsonexception;
  importare org.json.jsonobject;
  
  importare androide.util.Ceppo;
  
  Pubblico Classe Jsonparser {
  
      finale Corda TAG = "jsonparser.java";
  
      statico Inputstream is = nullo;
      statico jsonobject jObj = nullo;
      statico Corda json = "";
  
      Pubblico jsonobject getjsonfromurl(Corda url) {
  
          PROVARE {
  
              Defaulthttpclient httpClient = Nuovo Defaulthttpclient();
              Httpget httpGet = Nuovo Httpget(url);
  
              Http: //presponse httpResponse = httpClient.eseguire(httpGet);
              Httpentity httpEntity = httpResponse.getentity();
              is = httpEntity.getcontent();
  
          } Catturare (Eccezione di codifica non supportata e) {
              e.printstacktrace();
          } Catturare (Clientprotocolexception e) {
              e.printstacktrace();
          } Catturare (Ioexception e) {
              e.printstacktrace();
          }
  
          PROVARE {
  
              Bufferedreader reader = Nuovo Bufferedreader(Nuovo Inputstreamreader(is, "iso- 8859-1"), 8);
              Stringbuilder sb = Nuovo Stringbuilder();
              Corda line = nullo;
              mentre ((line = reader.linea di lettura()) != nullo) {
                  sb.aggiungere(line + "
");
              }
              is.vicino();
              json = sb.toString();
  
          } Catturare (Eccezione e) {
              Ceppo.e(TAG, "Errore durante la conversione del risultato" + e.toString());
          }
  
          PROVARE {
              jObj = Nuovo jsonobject(json);
          } Catturare (Jsonexception e) {
              Ceppo.e(TAG, "Errore durante l'analisi dei dati" + e.toString());
          }
  
          Ritorno jObj;
      }
    }
      

Risposta riuscita

      
  {
    "indirizzo":"flowerjill@aol.com",
    "stato":"valido",
    "sub_status":"",
    "free_email":Vero,
    "intendevi":nullo,
    "account":"flowerjill",
    "dominio":"aol.com",
    "domain_age_days": "8426",
    "smtp_provider":"yahoo",
    "mx_record":"mx-aol.mail.gm0.yahoodns.net",
    "mx_found": Vero,
    "nome di battesimo":"jill",
    "cognome":"boccale",
    "genere":"femmina",
    "nazione":"Stati Uniti",
    "regione":"Florida",
    "città":"west palm beach",
    "cap":"33401",
    "processed_at":"2017-04-01 02:48:02.592"
    }
      

Risposta all'errore

      
      {"errore":"Chiave API non valida o il tuo account ha esaurito i crediti"}
      // Esempio di risposta in caso di errore utilizzando l'API con uno dei metodi Get
      

L'API restituirà questi risultati in un formato JSON utilizzando il metodo "Validate".

Proprietà JSON

  • Proprietà
    Descrizione
  • indirizzo
    L'indirizzo email che stai convalidando.
  • stato
    [valido, non valido, generico, sconosciuto, spamtrap, abuso, do_not_mail]
  • sub_status
    [antispam_system,
    greylist, mail_server_temporary_error, forcible_disconnect, mail_server_did_not_respond, timeout_exceeded, failed_smtp_connection, mailbox_quota_exceeded, exception_occurred, possible_traps, role_based, global_suppression, mailbox_not_found, no_dns_entries, failed_syntax_check, possible_typo, unroutable_ip_address, leading_period_removed, does_not_accept_mail, alias_address, role_based_catch_all, monouso, tossico]
  • account
    La parte dell'indirizzo e-mail prima del simbolo "@".
  • Dominio
    La parte dell'indirizzo e-mail dopo il simbolo "@".
  • intendevi
    Correzione suggestiva per un errore di battitura e-mail
  • domain_age_days
    Età del dominio di posta elettronica in giorni o [null].
  • free_email
    [vero / falso] Se l'email proviene da un provider gratuito.
  • mx_found
    [true / false] Il dominio ha un record MX.
  • mx_record
    Il record MX preferito del dominio
  • smtp_provider
    Il provider SMTP dell'email o [null] [BETA].
  • nome di battesimo
    Il nome del proprietario dell'email se disponibile o [null].
  • cognome
    Il cognome del proprietario dell'email se disponibile o [null].
  • genere
    Il sesso del proprietario dell'email se disponibile o [null].
  • città
    La città dell'IP è passata o [null]
  • regione
    La regione / stato dell'IP trasmesso o [null]
  • cap
    Il codice postale dell'IP passato o [null]
  • nazione
    Il paese dell'IP trasmesso o [null]
  • processed_at
    L'ora UTC in cui è stata convalidata l'email.

Convalida e-mail batch - Tempo reale (v2)

/ email-validation-api-quickstart / v2-batch-validate-emails /

Questo endpoint ti consente di inviarci batch fino a 100 email alla volta. È una tariffa limitata a 5 utilizzi al minuto, se superi il limite di frequenza, sarai bloccato per 10 minuti. Se stai cercando di eseguire convalide singole e-mail, utilizza il nostro unico validatore email endpoint.

Se stai cercando di caricare file con email maggiori di 100 alla volta senza limitazioni di velocità, utilizza il nostro Endpoint per la gestione di file in blocco che include anche anti-greylisting come ulteriore vantaggio.

Questo endpoint può impiegare fino a 70 secondi per restituire i risultati dell'intero batch. Al momento non abbiamo un SDK per questo endpoint, ma gli SDK sono disponibili per gli altri nostri endpoint.

- POST / v2 / validatebatch

URL API: https://bulkapi.zerobounce.net/v2/validatebatch

Di seguito troverai le istruzioni su come utilizzare la nostra API, è molto facile da usare e richiede SSL. L'API richiede che tu abbia un saldo attivo e non consumerà mai un credito per nessun risultato sconosciuto.

Parametri URL

  • Parametro
    Descrizione
  • E-MAIL
    L'indirizzo e-mail che desideri convalidare
  • email_batch
    [Array of Objects], formato: {"email_address": "valid@example.com", "ip_address": "1.1. 1.1"}

Esempio di richiesta post


    {
        "api_key":"La tua chiave API",
            "email_batch":[
                {"indirizzo email": "valid@example.com","indirizzo ip": "1.1.1.1"},
                {"indirizzo email": "invalid@example.com","indirizzo ip": "1.1.1.1"},
                {"indirizzo email": "disposable@example.com","indirizzo ip": nullo}
            ]
    }
                

Per utilizzare questo endpoint, utilizza gli esempi di codice seguenti per la lingua desiderata:

  • Visual Basic
  • C#
  • PHP
  • Pitone
  • Veloce
  • ARRICCIARE
          
    Fioco apiURL = "https://bulkapi.zerobounce.net/v2/validatebatch"
    Fioco apiKey = "La tua chiave API"
    Fioco formData = "{""api_key"":"" "& apiKey &" "","& vbCrLf &" " & """email_batch"":[" & vbCrLf &
        "{""email_address"": ""valid@example.com"",""ip_address"": ""1.1.1.1""}," & vbCrLf &
        "{""email_address"": ""invalid@example.com"",""ip_address"": ""1.1.1.1""}," & vbCrLf &
        "{""email_address"": ""disposable@example.com"",""ip_address"": null}"& vbCrLf &"]"& vbCrLf &"}"

    Fioco request Come HttpWebRequest = Ctype(WebRequest.Create(apiURL), HttpWebRequest)
    request.Method = "INVIARE"
    request.ContentType = "applicazione / json"
    request.ContentLength = formData.Lunghezza
    Fioco formLookupDataBytes Come Byte() = Encoding.UTF8.GetBytes(formData)

    Utilizzando postStream Come Ruscello = request.GetRequestStream()
        postStream.Scrivi(formLookupDataBytes, 0, formLookupDataBytes.Lunghezza)
    Fine Utilizzando

    Utilizzando response = Ctype(request.GetResponse(), HttpWebResponse)

        Utilizzando sr = Nuovo StreamReader(response.GetResponseStream())
            Fioco responseString = sr.ReadToEnd()
        Fine Utilizzando
    Fine Utilizzando
        

    var apiURL = "https://bulkapi.zerobounce.net/v2/validatebatch";
    var apiKey = "La tua chiave API";

    var formData = "{"api_key":""+ apiKey +"", " +
        ""email_batch":[" +
        "{"email_address": "valid@example.com","ip_address": "1.1.1.1"}," +
        "{"email_address": "invalid@example.com","ip_address": "1.1.1.1"}," +
        "{"email_address": "disposable@example.com","ip_address": nullo}]}";

    Httpwebrequest request = (HttpWebRequest)WebRequest.creare(apiURL);
    request.Method = "INVIARE";
    request.ContentType = "applicazione / json";
    request.ContentLength = formData.Length;

    Byte[] formLookupDataBytes = UTF8Encoding.UTF8.Getbytes(formData);

    Utilizzando (Ruscello postStream = request.Getrequeststream())
    {
        postStream.Scrivi(formLookupDataBytes, 0, formLookupDataBytes.Length);
    }

    Utilizzando (var response = (HttpWebResponse)request.GetResponse())
    {
        Utilizzando (var sr = Nuovo Streamreader(response.Getresponsestream()))
        {
            var responseString = sr.Readtoend();
        }
    }
        

<?php

$ ricciolo = curl_init();
curl_setopt_array($ ricciolo, vettore(
  CURLOPT_URL => "https://bulkapi.zerobounce.net/v2/validatebatch",
  CURLOPT_RETURNTRANSFER => Vero,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => Vero,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "INVIARE",
  CURLOPT_POSTFIELDS =>"{"api_key":"Il tuo API CHIAVE", "email_batch":[{"indirizzo email": "valido @ esempio.com","indirizzo ip": "1.1.1.1"},{"indirizzo email": "esempio @ non valido.com","indirizzo ip": "1.1.1.1"},{"indirizzo email": "usa e getta @ esempio.com","indirizzo ip": nullo}]}",
  CURLOPT_HTTPHEADER => vettore(
    "x-token: eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VybmFtZSI6ImhlbnJ5QHplcm9ib3VuY2UubmV0IiwiZXhwIjoxNTk1NzEzNTI1fQ.nzOT-bJ8_tvnrNy3t1DeIDNMXxS-YEvlCbZye-9vpr4",
    "Content-Type: application / json",
    "Cookie: __cfduid=db977bdba3d06a8c9c19b45a92d6221b41572452483"
  ),
));

$ risposta = curl_exec($ ricciolo);

curl_close($ ricciolo);
eco $ risposta;
?>
      
        

    importare http.client
    importare mimetypes
    conn = http.client.HTTPSConnection("bulkapi.zerobounce.net")
    payload = '{
      "api_key":"La tua chiave API",
      "email_batch":[
          {
            "indirizzo email": "valid@example.com",
            "indirizzo ip": "1.1.1.1"
          },
          {
            "indirizzo email": "invalid@example.com",
            "indirizzo ip": "1.1.1.1"
          },
          {
            "indirizzo email": "disposable@example.com",
            "indirizzo ip": null
          }
        ]
    }'
    headers = {
      "x-token": 'eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VybmFtZSI6ImhlbnJ5QHplcm9ib3VuY2UubmV0IiwiZXhwIjoxNTk1NzEzNTI1fQ.nzOT-bJ8_tvnrNy3t1DeIDNMXxS-YEvlCbZye-9vpr4',
      'tipo di contenuto': "applicazione / json",
      "Cookie": '__cfduid=db977bdba3d06a8c9c19b45a92d6221b41572452483'
    }
    conn.request("INVIARE", "/ v2 / validatebatch", payload, headers)
    res = conn.getresponse()
    data = res.read()
    stampare(data.decode("utf- 8"))
        
     
    importare FONDAZIONE

    var semaphore = Dispatchsemaphore (value: 0)
    
    permettere parameters = "{"api_key":"Il tuo API CHIAVE", "email_batch":[{"email_address": "valid@example.com","ip_address": "1.1.1.1"},{"email_address": "invalid@example.com","ip_address": "1.1.1.1"},{"email_address": "disposable@example.com","ip_address": nullo}]}"
    permettere postData = parameters.Dati(using: .utf8)
    
    var request = URLRequest(url: url(string: "https://bulkapi.zerobounce.net/v2/validatebatch")!,timeoutInterval: Doppio.infinity)
    request.aggiungere valore("eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VybmFtZSI6ImhlbnJ5QHplcm9ib3VuY2UubmV0IiwiZXhwIjoxNTk1NzEzNTI1fQ.nzOT-bJ8_tvnrNy3t1DeIDNMXxS-YEvlCbZye-9vpr4", forHTTPHeaderField: "x-token")
    request.aggiungere valore("applicazione / json", forHTTPHeaderField: "Tipo di contenuto")
    request.aggiungere valore("__cfduid=db977bdba3d06a8c9c19b45a92d6221b41572452483", forHTTPHeaderField: "cookie")
    
    request.httpMethod = "INVIARE"
    request.httpBody = postData
    
    permettere task = Urlsession.shared.datatask(with: request) { data, response, error in 
      guardia permettere data = data altro {
        stampare(Corda(describing: error))
        Ritorno
      }
      stampare(Corda(data: data, encoding: .utf8)!)
      semaphore.segnale()
    }
    
    task.curriculum vitae()
    semaphore.aspettare()   
        

curl --location --request POST 'https://bulkapi.zerobounce.net/v2/validatebatch' --header 'x-token: eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VybmFtZSI6ImhlbnJ5QHplcm9ib3VuY2UubmV0IiwiZXhwIjoxNTk1NzEzNTI1fQ.nzOT-bJ8_tvnrNy3t1DeIDNMXxS-YEvlCbZye-9vpr4' --header 'Content-Type: application/json' --header 'Cookie: __cfduid=db977bdba3d06a8c9c19b45a92d6221b41572452483' --data-raw '{"api_key":"Your API KEY",
 "email_batch":[
{"email_address": "valid@example.com","ip_address": "1.1.1.1"},
{"email_address": "invalid@example.com","ip_address": "1.1.1.1"},
{"email_address": "disposable@example.com","ip_address": null}
]
}'
        

Risposta riuscita

      
	 
        {
          "email_batch": [
              {
                  "indirizzo": "valid@example.com",
                  "stato": "valido",
                  "sub_status": "",
                  "free_email": Falso,
                  "intendevi": nullo,
                  "account": nullo,
                  "dominio": nullo,
                  "domain_age_days": "9692",
                  "smtp_provider": "esempio",
                  "mx_found": "vero",
                  "mx_record": "mx.example.com",
                  "nome di battesimo": "zero",
                  "cognome": "rimbalzo",
                  "genere": "maschio",
                  "nazione": nullo,
                  "regione": nullo,
                  "città": nullo,
                  "cap": nullo,
                  "processed_at": "2020-09-17 17:43:11.829"
              },
              {
                  "indirizzo": "invalid@example.com",
                  "stato": "non valido",
                  "sub_status": "mailbox_not_found",
                  "free_email": Falso,
                  "intendevi": nullo,
                  "account": nullo,
                  "dominio": nullo,
                  "domain_age_days": "9692",
                  "smtp_provider": "esempio",
                  "mx_found": "vero",
                  "mx_record": "mx.example.com",
                  "nome di battesimo": "zero",
                  "cognome": "rimbalzo",
                  "genere": "maschio",
                  "nazione": nullo,
                  "regione": nullo,
                  "città": nullo,
                  "cap": nullo,
                  "processed_at": "2020-09-17 17:43:11.830"
              },
              {
                  "indirizzo": "disposable@example.com",
                  "stato": "do_not_mail",
                  "sub_status": "monouso",
                  "free_email": Falso,
                  "intendevi": nullo,
                  "account": nullo,
                  "dominio": nullo,
                  "domain_age_days": "9692",
                  "smtp_provider": "esempio",
                  "mx_found": "vero",
                  "mx_record": "mx.example.com",
                  "nome di battesimo": "zero",
                  "cognome": "rimbalzo",
                  "genere": "maschio",
                  "nazione": nullo,
                  "regione": nullo,
                  "città": nullo,
                  "cap": nullo,
                  "processed_at": "2020-09-17 17:43:11.830"
              }
          ],
          "errori": []
      }
        

Risposta all'errore

      
        {
          "email_batch": [],
          "errori": [
              {
                  "errore": "Chiave API non valida o il tuo account ha esaurito i crediti",
                  "indirizzo email": "tutti"
              }
          ]
        }
      
        

L'API restituirà un oggetto JSON con 2 valori di matrice, "email_batch" ed "errori" utilizzando il metodo "BatchValidate".

La proprietà email_batch sarà un array di risultati convalidati e l'array degli errori sarà un array di errori riscontrati durante la convalida in batch, se presenti.

Proprietà JSON

  • Proprietà
    Descrizione
  • email_batch
    [Array] Un array di messaggi di posta elettronica convalidati
  • errori
    [Array] Un array di errori protetti, se presenti

proprietà email_batch

  • Proprietà
    Descrizione
  • indirizzo
    L'indirizzo email che stai convalidando.
  • stato
    [valido, non valido, generico, sconosciuto, spamtrap, abuso, do_not_mail]
  • sub_status
    [antispam_system,
    greylist, mail_server_temporary_error, forcible_disconnect, mail_server_did_not_respond, timeout_exceeded, failed_smtp_connection, mailbox_quota_exceeded, exception_occurred, possible_traps, role_based, global_suppression, mailbox_not_found, no_dns_entries, failed_syntax_check, possible_typo, unroutable_ip_address, leading_period_removed, does_not_accept_mail, alias_address, role_based_catch_all, monouso, tossico]
  • account
    La parte dell'indirizzo e-mail prima del simbolo "@".
  • Dominio
    La parte dell'indirizzo e-mail dopo il simbolo "@".
  • intendevi
    Correzione suggestiva per un errore di battitura e-mail
  • domain_age_days
    Età del dominio di posta elettronica in giorni o [null].
  • free_email
    [vero / falso] Se l'email proviene da un provider gratuito.
  • mx_found
    [true / false] Il dominio ha un record MX.
  • mx_record
    Il record MX preferito del dominio
  • smtp_provider
    Il provider SMTP dell'email o [null] [BETA].
  • nome di battesimo
    Il nome del proprietario dell'email se disponibile o [null].
  • cognome
    Il cognome del proprietario dell'email se disponibile o [null].
  • genere
    Il sesso del proprietario dell'email se disponibile o [null].
  • città
    La città dell'IP è passata o [null]
  • regione
    La regione / stato dell'IP trasmesso o [null]
  • cap
    Il codice postale dell'IP passato o [null]
  • nazione
    Il paese dell'IP trasmesso o [null]
  • processed_at
    L'ora UTC in cui è stata convalidata l'email.

Modalità sandbox (v2)

/ email-validazione-api-quickstart / v2-sandbox-mode /

Per aiutarti a testare ogni scenario di codici di stato e sub_status con l'API, abbiamo messo insieme un elenco di email che restituiranno risultati specifici se utilizzati con l'API a scopo di test. Il test con queste e-mail non utilizzerà nessuno dei tuoi crediti.

Inoltre, forniamo anche un indirizzo IP con cui testare per ottenere risultati GEO-Location.

Dovrai comunque utilizzare la tua API KEY con questi indirizzi email di prova.

  • disposable@example.com

  • invalid@example.com

  • valid@example.com

  • toxic@example.com

  • donotmail@example.com

  • spamtrap@example.com

  • abuse@example.com

  • unknown@example.com

  • catch_all@example.com

  • antispam_system@example.com

  • does_not_accept_mail@example.com

  • exception_occurred@example.com

  • failed_smtp_connection@example.com

  • failed_syntax_check@example.com

  • forcible_disconnect@example.com

  • global_suppression@example.com

  • greylisted@example.com

  • leading_period_removed@example.com

  • mail_server_did_not_respond@example.com

  • mail_server_temporary_error@example.com

  • mailbox_quota_exceeded@example.com

  • mailbox_not_found@example.com

  • no_dns_entries@example.com

  • possible_trap@example.com

  • possible_typo@example.com

  • role_based@example.com

  • timeout_exceeded@example.com

  • unroutable_ip_address@example.com

  • free_email@example.com

  • role_based_catch_all@example.com

Puoi utilizzare questo IP per testare la posizione GEO nell'API.

99.110.204.1

Si prega di visualizzare il nostro documentazione dei codici di stato per saperne di più su ogni stato.

Codici di stato (v2)

/ email-validazione-api-quickstart / v2-stato-codes /

Spiegazione dello stato di consegna

  • valido - Queste sono le email che abbiamo ritenuto valide e sicure da inviare tramite email, avranno una frequenza di rimbalzo molto bassa, inferiore al 2%. Se ricevi bounce può essere perché il tuo IP potrebbe essere nella lista nera dove il nostro IP non era. A volte gli account di posta elettronica esistono, ma accettano solo posta da persone nei loro elenchi di contatti. A volte avrai un limite al numero di email che puoi inviare a un dominio specifico all'ora. È importante esaminare i codici di rimbalzo SMTP per determinare il motivo.
  • non valido - Queste sono e-mail che abbiamo ritenuto non valide, eliminale dalla tua mailing list. I risultati sono accurati al 99.999%.
  • catturare -all: è impossibile convalidare queste e-mail senza inviare una vera e-mail e attendere un rimbalzo. Il termine catch-all significa che il server di posta ti dice che l'e-mail è valida, sia che sia valida o non valida. Se desideri inviare un'email a questi indirizzi, ti suggerisco di segmentarli in un gruppo catch-all e di sapere che alcuni di questi probabilmente rimbalzeranno.
  • spamtrap - Si ritiene che queste e-mail lo siano spamtraps e non deve essere spedito. Abbiamo una tecnologia in atto per determinare se determinate e-mail devono essere classificate come spamtrap. Non conosciamo tutti gli indirizzi email spamtrap, ma ne conosciamo molti. Leggi la nostra guida alle trappole antispam per saperne di più.
  • abuso - Queste e-mail sono di persone note per fare clic sui collegamenti di abuso nelle e-mail, quindi autori di abusi o denuncianti. Si consiglia di non inviare e-mail a questi indirizzi.
  • do_not_mail - Queste e-mail sono di aziende, basate su ruoli o persone a cui vuoi semplicemente evitare di inviare e-mail. Sono suddivisi in 6 sottocategorie "usa e getta", "tossico", "role_based", "role_based_catch_all", "global_suppression" e "possible_trap". Esamina questo file e determina se desideri inviare un messaggio di posta elettronica a questi indirizzi. Sono indirizzi e-mail validi, ma nella maggior parte dei casi non devono essere inviati per posta.
  • sconosciuto - Queste email non siamo stati in grado di convalidare per un motivo o per l'altro. I casi tipici sono "Il loro server di posta era inattivo" o "il sistema anti-spam ci sta bloccando". Nella maggior parte dei casi, 80% sconosciuti sono indirizzi email non validi / non validi. Abbiamo le "incognite" più basse di qualsiasi validatore di posta elettronica e non prendiamo alla leggera questa affermazione. Abbiamo pagato e testato elenchi di email in oltre 50 diverse società di convalida per confrontare i risultati. Se incontri un gran numero di incognite, inviale per la riconvalida. Ricorda che non ti vengono addebitati i risultati sconosciuti, i crediti verranno riaccreditati. Se hai ancora un numero elevato, contattaci e daremo un'occhiata e verificheremo.

Forniamo anche un codice sub_status per aiutare a spiegare alcuni dei risultati sconosciuti e non validi, non tutti gli unknown e i non validi avranno codici sub_status.

Spiegazione dello stato secondario

  • alias_address - (valido) Questi indirizzi email fungono da mittenti / alias e non sono vere caselle di posta, ad esempio se invii un'email a forward@example.com e poi l'email viene inoltrata a realinbox@example.com. È un indirizzo email valido e puoi inviarglielo, sono solo un po 'più di informazioni sull'indirizzo email. A volte possiamo rilevare indirizzi email alias e quando lo facciamo ti informiamo.
  • antispam_system - (sconosciuto) Queste e-mail hanno sistemi anti-spam distribuiti che ci impediscono di convalidare queste e-mail. Puoi inviarceli tramite la schermata Contattaci per esaminarli.
  • does_not_accept_mail - (non valido) Questi domini inviano solo posta e non la accettano.
  • eccezioni_occorse - (sconosciuto) Queste e-mail hanno causato un'eccezione durante la convalida. Se questo accade ripetutamente, faccelo sapere.
  • fail_smtp_connection - (sconosciuto) Queste e-mail appartengono a un server di posta che non consente una connessione SMTP. Il più delle volte, queste e-mail finiranno per non essere valide.
  • fail_syntax_check - (Non valido) E-mail che non superano i protocolli di sintassi RFC
  • forcible_disconnect - (Sconosciuto) Queste e-mail appartengono a un server di posta che si disconnette immediatamente dopo la connessione. Il più delle volte, queste e-mail finiranno per non essere valide.
  • global_suppression - (do_not_mail) Queste e-mail si trovano in molti popolari elenchi di soppressione globale (GSL), sono costituiti da noti autori di reclami ISP, reclami diretti, indirizzi acquistati, domini che non inviano posta e controversie note.
  • greylisted - (Sconosciuto) Email in cui non siamo temporaneamente in grado di convalidarli. Molte volte, se invii nuovamente queste email, verranno convalidate in un secondo passaggio.
  • leading_period_removed - (valido) Se un indirizzo email gmail.com valido inizia con un punto "." lo rimuoveremo, quindi l'indirizzo e-mail è compatibile con tutti i sistemi di posta.
  • mail_server_did_not_respond - (sconosciuto) Queste e-mail appartengono a un server di posta che non risponde ai comandi di posta. Il più delle volte, queste e-mail finiranno per non essere valide.
  • mail_server_temporary_error - (sconosciuto) Queste e-mail appartengono a un server di posta che restituisce un errore temporaneo. Il più delle volte, queste e-mail finiranno per non essere valide.
  • Quota Mailbox superata - (non valido) Queste e-mail hanno superato la loro quota di spazio e non accettano e-mail. Queste email sono contrassegnate come non valide.
  • mailbox_not_found - (non valido) Questi indirizzi e-mail sono validi nella sintassi, ma non esistono. Queste email sono contrassegnate come non valide.
  • no_dns_entries - (non valido) Queste e-mail sono valide in sintassi, ma il dominio non ha record nel DNS o ha record DNS incompleti. Pertanto, i programmi di posta non saranno in grado o avranno difficoltà a inviarli. Queste email sono contrassegnate come non valide.
  • possible_trap - (do_not_mail) Queste e-mail contengono parole chiave che potrebbero essere correlate a possibili trappole di spam come spam @ o @ spamtrap.com. Esaminali prima di decidere se inviare loro delle e-mail o meno.
  • possibile_tipo - (non valido) Queste sono e-mail di domini popolari con errori di ortografia comuni. Queste email sono contrassegnate come non valide.
  • role_based - (do_not_mail) Queste e-mail appartengono a una posizione o a un gruppo di persone, come sales @ info @ e contact @. Le e-mail basate sui ruoli hanno una forte correlazione con le persone che segnalano le e-mail inviate loro come spam e abuso.
  • role_based_catch_all - (do_not_mail) Queste email sono basate sui ruoli e appartengono anche a un dominio catch_all.
  • timeout_exceeded - (sconosciuto) Queste e-mail appartengono a un server di posta che risponde in modo estremamente lento. Il più delle volte, queste e-mail finiranno per non essere valide.
  • unroutable_ip_address - (non valido) Questi domini di posta elettronica puntano a un indirizzo IP non instradabile, questi sono contrassegnati come non validi.
  • monouso - (do_not_mail) Si tratta di email temporanee create al solo scopo di iscriversi a siti web senza fornire il loro vero indirizzo email. Queste email durano poco, da 15 minuti a circa 6 mesi. Sono presenti solo 2 valori (True e False). Se hai email valide con questo flag impostato su TRUE, non dovresti inviarle tramite email.
  • tossico - (do_not_mail) Questi indirizzi e-mail sono noti per essere abusi, spam o e-mail create da bot. Se hai email valide con questo flag impostato su TRUE, non dovresti inviarle tramite email.

Forniamo anche altri campi aggiuntivi che dovresti prendere in considerazione prima di inviare un'email. Se una delle tue email valide ha il flag usa e getta o tossico impostato su true, ti consigliamo di non inviarle tramite email.

Altri campi

  • free_email - [vero / falso] Se l'email proviene da un provider gratuito.
  • mx_found - [true / false] Il dominio ha un record MX.
  • mx_record - Il record MX preferito del dominio.
  • smtp_provider - Il provider SMTP dell'email o [null] (BETA).

Modifiche V2

/ email-validazione-api-avvio rapido / v2-modifiche /

Questi sono gli elementi che sono cambiati tra v1 e v2.

  1. Le e-mail usa e getta e tossiche sono state spostate nello stato do_not_mail con il sub_status appropriato (tossico, usa e getta)

  2. Lo stato "DoNotMail" è stato modificato in "do_not_mail"

  3. Tutti gli stati sono ora in minuscolo, anziché in maiuscolo.

  4. Abbiamo aggiunto una proprietà free_email per indicare se il dominio di posta elettronica è un provider di posta elettronica gratuito che può essere utilizzato per [prevenzione delle frodi].

  5. Abbiamo aggiunto una proprietà domain_age_days per farti sapere quanti anni ha il dominio [prevenzione delle frodi].

  6. Abbiamo aggiunto la proprietà smtp_provider per il dominio di posta elettronica, questa funzione è in beta.

  7. Abbiamo aggiunto la proprietà mx_found per farti sapere se il dominio ha un record MX

  8. Abbiamo aggiunto la proprietà mx_record, per dirti il record MX preferito del dominio.

  9. Abbiamo aggiunto la proprietà did_you_mean, che verrà popolata se viene rilevato un errore di battitura con una correzione suggerita.

  10. La proprietà apiKey è stata modificata in api_key

  11. La proprietà IPAddress è stata modificata in ip_address

  12. Il metodo validatewithip è stato rimosso, ora fa parte del metodo validate

  13. La proprietà location è stata rimossa (non veniva utilizzata)

  14. La proprietà creation_date è stata rimossa (non veniva utilizzata)

  15. la proprietà processat è ora process_at

  16. Abbiamo aggiunto un nuovo sub_status chiamato "role_based_catch_all"

  17. Abbiamo aggiunto tre nuove API, sendfile, filestatus e getfile per la convalida di email in blocco.

Invia file (v2)

/ email-validazione-api-quickstart / v2-send-file /

L'API sendfile consente all'utente di inviare un file per la convalida e-mail in blocco. Il tipo di contenuto deve essere multipart / form-data. Fare riferimento all'esempio C # per i dettagli.

Non ci sono limitazioni alla dimensione del file, al numero di email o al numero di file che puoi inviare utilizzando questo endpoint, a condizione che tu abbia i crediti nel tuo account per coprire il numero di email inviate nel file, sarà accettato.

POST / v2 / sendfile

URL API: https://bulkapi.zerobounce.net/v2/sendfile

Parametri URL

  • Parametro
    Descrizione
  • file
    file CSV o txt. Contenuti dell'array di byte per il file inviato. L'intestazione del contenuto è di tipo "testo / csv".
  • api_key
    La tua chiave API, trovata nel tuo account. (Necessario)
  • return_url
    L'URL verrà utilizzato per richiamare al termine della convalida. (Opzionale)
  • email_address_column
    L'indice di colonna dell'indirizzo e-mail nel file. L'indice inizia da 1. (Necessario)
  • first_name_column
    L'indice di colonna della colonna del nome. (Opzionale)
  • last_name_column
    L'indice di colonna della colonna del cognome. (Opzionale)
  • gender_column
    L'indice di colonna della colonna di genere. (Opzionale)
  • ip_address_column
    L'indirizzo IP da cui l'email è stata registrata. (Opzionale)
  • has_header_row
    Se la prima riga del file inviato è una riga di intestazione. vero o falso (opzionale)

Se durante la richiesta di invio del file è stato specificato return_url nei Dati modulo multipart, al termine del processo di convalida POST i seguenti dati.


                {
                  file_id": "aaaaaaaa-zzzz-xxxx-yyyy-5003727fffff",
                  "nome del file": "Il tuo nome file.csv", 
                  "data di caricamento": "10/20/2018 4:35: 58 PM" 
                }
                

Invia esempi di codice file

  • Visual Basic
  • C#
  • PHP
  • Giava
  • Pitone
  • Veloce
  • Obiettivo C
  • Android Java
      
'Librerie API complete e wrapper sono disponibili qui: 
' https://www.zerobounce.net/docs/zerobounce-api-wrappers/#api_wrappers__v2__dot_net

'Invia esempio di file in VB.net

Pubblico Classe SendFileStatus
    Pubblico Proprietà success Come Booleano
    Pubblico Proprietà message Come Corda
    Pubblico Proprietà file_name Come Corda
    Pubblico Proprietà file_id Come Corda
Fine Classe

Privato Condivisa Sub SendFileAPITest()
    Fioco fileFullPath Come Corda = $"percorso completo del file di un file csv o txt"  ' necessario
    Fioco apiKey Come Corda = "sostituisci con la tua chiave api qui"              ' necessario
    Fioco emailAddressColumn Come Numero intero = 2  ' necessario
    Fioco firstNameColumn Come Numero intero? = 5    'facoltativo
    Fioco lastNameColumn Come Numero intero? = 6     'facoltativo
    Fioco genderColumn Come Numero intero? = Niente 'facoltativo
    Fioco ipAddressColumn Come Numero intero? = 11   'facoltativo
    Fioco hasHeaderRow Come Booleano? = Vero    'facoltativo
    Fioco returnUrl Come Corda = Niente      'facoltativo

    PROVARE
        Fioco sendFileStatus Come SendFileStatus = SendFile(fileFullPath, apiKey, emailAddressColumn, firstNameColumn, lastNameColumn, genderColumn, ipAddressColumn, hasHeaderRow, returnUrl).Result
        Console.Scrivi(JsonConvert.SerializeObject(sendFileStatus, Formatting.Indented))
    Catturare ex Come Exception
        Console.Scrivi(ex.InnerException.Message)
    Fine PROVARE

    Console.ReadKey()
Fine Sub

Pubblico Condivisa Async Funzione SendFile(
      ByVal fileFullPath Come Corda, 
      ByVal apiKey Come Corda, 
      ByVal emailAddressColumn Come Numero intero, 
      ByVal Opzionale firstNameColumn Come Numero intero? = Niente, 
      ByVal Opzionale lastNameColumn Come Numero intero? = Niente, 
      ByVal Opzionale genderColumn Come Numero intero? = Niente, 
      ByVal Opzionale ipAddressColumn Come Numero intero? = Niente, 
      ByVal Opzionale hasHeaderRow Come Booleano? = Niente, 
      ByVal Opzionale returnUrl Come Corda = Niente
    ) Come Task(Di SendFileStatus)

    Se Corda.IsNullOrEmpty(fileFullPath) Poi Gettare Nuovo Exception("Errore: fileFullPath è richiesto")
    Se Corda.IsNullOrEmpty(apiKey) Poi Gettare Nuovo Exception("Errore: è richiesto apiKey")
    Fioco fi = Nuovo FileInfo(fileFullPath)
    Fioco fileContents = File.ReadAllBytes(fi.FullName)
    Fioco fileName = fi.Nome
    Fioco uri Come Uri = Nuovo Uri("https://bulkapi.zerobounce.net/v2/sendfile")

    Utilizzando client = Nuovo HttpClient()

        Utilizzando request = Nuovo HttpRequestMessage(HttpMethod.Post, uri)
            Fioco multiPartContent Come MultipartFormDataContent = Nuovo MultipartFormDataContent()
            Fioco byteArrayContent Come ByteArrayContent = Nuovo ByteArrayContent(fileContents)
            byteArrayContent.Headers.Add("Tipo di contenuto", "text / csv")
            multiPartContent.Add(byteArrayContent, "file", fileName)
            multiPartContent.Add(Nuovo StringContent(apiKey), "api_key")
            multiPartContent.Add(Nuovo StringContent(emailAddressColumn.ToString()), "email_address_column")
            Se firstNameColumn Non è Niente Poi multiPartContent.Add(Nuovo StringContent(firstNameColumn.ToString()), "first_name_column")
            Se lastNameColumn Non è Niente Poi multiPartContent.Add(Nuovo StringContent(lastNameColumn.ToString()), "last_name_column")
            Se genderColumn Non è Niente Poi multiPartContent.Add(Nuovo StringContent(genderColumn.ToString()), "gender_column")
            Se ipAddressColumn Non è Niente Poi multiPartContent.Add(Nuovo StringContent(ipAddressColumn.ToString()), "ip_address_column")
            Se hasHeaderRow Non è Niente Poi multiPartContent.Add(Nuovo StringContent(Se((hasHeaderRow = Vero), "vero", "false")), "has_header_row")
            Se returnUrl Non è Niente Poi multiPartContent.Add(Nuovo StringContent(returnUrl.ToString()), "return_url")
            request.Content = multiPartContent

            Utilizzando response = Await client.SendAsync(request, HttpCompletionOption.ResponseContentRead, CancellationToken.None).ConfigureAwait(Falso)
                Fioco content = Await response.Content.ReadAsStringAsync()

                Se response.IsSuccessStatusCode = Falso Poi
                    Fioco errore Come Corda = $"StatusCode = {CInt(response.StatusCode)}, Content = {content}"
                    Gettare Nuovo Exception(errore)
                Fine Se

                Ritorno JsonConvert.DeserializeObject(Di SendFileStatus)(content)
            Fine Utilizzando
        Fine Utilizzando
    Fine Utilizzando
Fine Funzione
    

// Le librerie e i wrapper API completi sono disponibili qui: 
// https://www.zerobounce.net/docs/zerobounce-api-wrappers/#api_wrappers__v2__dot_net
// https://www.zerobounce.net/docs/zerobounce-api-wrappers/#api_wrappers__v2__c-sharp

// Invia esempio di file in C #

Pubblico Classe Sendfilestatus
{
    Pubblico bool success { ottenere; impostato; }
    Pubblico Corda message { ottenere; impostato; }
    Pubblico Corda file_name { ottenere; impostato; }
    Pubblico Corda file_id { ottenere; impostato; }
}

Privato statico vuoto Sendfileapitest()
{
    Corda fileFullPath = $"percorso completo del file di un file csv o txt";  //necessario
    Corda apiKey = "sostituisci con la tua chiave api qui";  //necessario       
    int emailAddressColumn = 2;  //necessario
    int? firstNameColumn = 5;  //Opzionale
    int? lastNameColumn = 6;  //Opzionale
    int? genderColumn = nullo;  //Opzionale
    int? ipAddressColumn = 11;  //Opzionale
    bool? hasHeaderRow = Vero;  //Opzionale
    Corda returnUrl = nullo;  //Opzionale

    PROVARE
    {
        Sendfilestatus sendFileStatus = Inviare file(fileFullPath, apiKey, emailAddressColumn, firstNameColumn, lastNameColumn, genderColumn, ipAddressColumn, hasHeaderRow, returnUrl).Result;
        Console.Scrivi(JsonConvert.Serializeobject(sendFileStatus, Formatting.Indented));
    }
    Catturare (Eccezione ex)
    {
        Console.Scrivi(ex.InnerException.Message);
    }

    Console.ReadKey();

}

Pubblico statico async Task<SendFileStatus> Inviare file(Corda fileFullPath, Corda apiKey, int emailAddressColumn, 
    int? firstNameColumn = nullo, int? lastNameColumn = nullo, int? genderColumn = nullo, 
    int? ipAddressColumn = nullo, bool? hasHeaderRow = nullo, Corda returnUrl = nullo)
{
    Se (Corda.IsNullOrEmpty(fileFullPath))
        Gettare Nuovo Eccezione("Errore: fileFullPath è richiesto");
    Se (Corda.IsNullOrEmpty(apiKey))
        Gettare Nuovo Eccezione("Errore: è richiesto apiKey");

    var fi = Nuovo Fileinfo(fileFullPath);
    var fileContents = File.Readallbytes(fi.FullName);
    var fileName = fi.Name;

    Uri uri = Nuovo Uri(@"https://bulkapi.zerobounce.net/v2/sendfile");

    Utilizzando (var client = Nuovo HttpClient())
    Utilizzando (var request = Nuovo Httprequestmessage(HttpMethod.Post, uri))
    {
        Multipartformdatacontent multiPartContent = Nuovo Multipartformdatacontent();
        Bytearraycontent byteArrayContent = Nuovo Bytearraycontent(fileContents);
        byteArrayContent.Headers.INSERISCI("Tipo di contenuto", "text / csv");
        multiPartContent.INSERISCI(byteArrayContent, "file", fileName);
        multiPartContent.INSERISCI(Nuovo Stringcontent(apiKey), "api_key");
        multiPartContent.INSERISCI(Nuovo Stringcontent(emailAddressColumn.ToString()), "email_address_column");
        Se (firstNameColumn != nullo)
            multiPartContent.INSERISCI(Nuovo Stringcontent(firstNameColumn.ToString()), "first_name_column");
        Se (lastNameColumn != nullo)
            multiPartContent.INSERISCI(Nuovo Stringcontent(lastNameColumn.ToString()), "last_name_column");
        Se (genderColumn != nullo)
            multiPartContent.INSERISCI(Nuovo Stringcontent(genderColumn.ToString()), "gender_column");
        Se (ipAddressColumn != nullo)
            multiPartContent.INSERISCI(Nuovo Stringcontent(ipAddressColumn.ToString()), "ip_address_column");
        Se (hasHeaderRow != nullo)
            multiPartContent.INSERISCI(Nuovo Stringcontent((hasHeaderRow == Vero) ? "vero" : "false"), "has_header_row");
        Se (returnUrl != nullo)
            multiPartContent.INSERISCI(Nuovo Stringcontent(returnUrl.ToString()), "return_url");

        request.Content = multiPartContent;

        Utilizzando (var response = await client.SendAsync(request, HttpCompletionOption.ResponseContentRead, CancellationToken.None).Configureawait(Falso))
        {
            var content = await response.Content.Readasstringasync();

            Se (response.IsSuccessStatusCode == Falso)
            {
                var error = $"StatusCode = {(int) response.StatusCode}, Content = {content}";
                Gettare Nuovo Eccezione(error);
            }

            Ritorno JsonConvert.Deserializeobject<Sendfilestatus>(content);
        }
    }
}
    

  <?php
// Le librerie e i wrapper API completi sono disponibili qui: 
// https://www.zerobounce.net/docs/zerobounce-api-wrappers/#api_wrappers__v2__php

$ ricciolo = curl_init();

curl_setopt_array($ ricciolo, vettore(
  CURLOPT_URL => "https://bulkapi.zerobounce.net/v2/sendfile",
  CURLOPT_RETURNTRANSFER => Vero,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "INVIARE",
  CURLOPT_POSTFIELDS => "------WebKitFormBoundary7MA4YWxkTrZu0gWContent-Disposition: form-data; name="api_key"replacewithyours------WebKitFormBoundary7MA4YWxkTrZu0gWContent-Disposition: form-data; name="email_address_column"replacewithyours------WebKitFormBoundary7MA4YWxkTrZu0gW--",
  CURLOPT_HTTPHEADER => vettore(
    "Postino-token: fae6714d-dc09- 4 e08-b50d-c97030603b61",
    "controllo cache: no-cache",
    "content-type: multipart / form-data; boundary = ---- WebKitFormBoundary7MA4YWxkTrZu0gW"
  ),
));

$ risposta = curl_exec($ ricciolo);
$ err = curl_error($ ricciolo);

curl_close($ ricciolo);

Se ($ err) {
  eco "Errore cURL #:" . $ err;
} altro {
  eco $ risposta;
}
?>
    


  // Le librerie e i wrapper API completi sono disponibili qui: 
  //https://www.zerobounce.net/docs/zerobounce-api-wrappers/#api_wrappers__v2__java

  Okhttpclient client = Nuovo Okhttpclient();

  Tipo di supporto mediaType = Tipo di supporto.parse("multipart / form-data; boundary = ---- WebKitFormBoundary7MA4YWxkTrZu0gW");
  Requestbody body = Requestbody.creare(mediaType, "------WebKitFormBoundary7MA4YWxkTrZu0gWContent-Disposition: form-data; name="api_key"replacewithyours------WebKitFormBoundary7MA4YWxkTrZu0gWContent-Disposition: form-data; name="email_address_column"replacewithyours------WebKitFormBoundary7MA4YWxkTrZu0gW--");
  Richiesta request = Nuovo Richiesta.Costruttore()
    .url("https://bulkapi.zerobounce.net/v2/sendfile")
    .inviare(body)
    .AddHeader("Tipo di contenuto", "multipart / form-data; boundary = ---- WebKitFormBoundary7MA4YWxkTrZu0gW")
    .AddHeader("cache-control", "no-cache")
    .AddHeader("Postino-token", "25 6 d608ba- cb5- 4 88 c8c- d7-d47276c67d8e")
    .costruire();
  
  Risposta response = client.nuova chiamata(request).eseguire();
    

  # Librerie e wrapper API completi sono disponibili qui: 
  # https://www.zerobounce.net/docs/zerobounce-api-wrappers/#api_wrappers__v2__python

  importare http.client

  conn = http.client.HTTPConnection("bulkapi, zerobounce netti")
  
  payload = "------WebKitFormBoundary7MA4YWxkTrZu0gWContent-Disposition: form-data; name="api_key"replacewithyours------WebKitFormBoundary7MA4YWxkTrZu0gWContent-Disposition: form-data; name="email_address_column"replacewithyours------WebKitFormBoundary7MA4YWxkTrZu0gW--"
  
  headers = {
      'tipo di contenuto': "multipart / form-data; boundary = ---- WebKitFormBoundary7MA4YWxkTrZu0gW",
      'cache-control': "no-cache",
      'Postino-token': "bc455eda- 9884-417 e-b16f- 3 a5fef3f7540"
      }
  
  conn.request("INVIARE", "v2, sendfile", payload, headers)
  
  res = conn.getresponse()
  data = res.read()
  
  stampare(data.decode("utf- 8"))
    
    


  // Le librerie e i wrapper API completi sono disponibili qui: 
  // https://www.zerobounce.net/docs/zerobounce-api-wrappers/#api_wrappers__v2__IOS

  importare FONDAZIONE

  permettere headers = [
    "Tipo di contenuto": "multipart / form-data; boundary = ---- WebKitFormBoundary7MA4YWxkTrZu0gW",
    "cache-control": "no-cache",
    "Postino-token": "2 f68fcc3-d9b6- 458 b-b613- 56 f6a03e6617"
  ]
  permettere parameters = [
    [
      "nome": "api_key",
      "valore": "replacewithyours"
    ],
    [
      "nome": "email_address_column",
      "valore": "replacewithyours"
    ]
  ]
  
  permettere boundary = "---- WebKitFormBoundary7MA4YWxkTrZu0gW"
  
  var body = ""
  var error: NSError? = zero
  per param in parameters {
    permettere paramName = param["nome"]!
    body += "--(confine)"
    body += "Disposizione del contenuto: form-data; name ="(paramName)""
    Se permettere filename = param["nome del file"] {
      permettere contentType = param["Tipo di contenuto"]!
      permettere fileContent = Corda(contentsOfFile: filename, encoding: Corda.Codifica.utf8)
      Se (error != zero) {
        stampare(error)
      }
      body += "; nomefile ="(filename)""
      body += "Tipo di contenuto: (contentType)"
      body += fileContent
    } altro Se permettere paramValue = param["valore"] {
      body += "(paramvalue)"
    }
  }
  
  permettere request = Nsmutableurlrequest(url: NSURL(string: "https://bulkapi.zerobounce.net/v2/sendfile")! Come url,
                                          cachePolicy: .useProtocolCachePolicy,
                                      timeoutInterval: 10.0)
  request.httpMethod = "INVIARE"
  request.allHTTPHeaderFields = headers
  request.httpBody = postData Come Dati
  
  permettere session = Urlsession.shared
  permettere dataTask = session.datatask(with: request Come URLRequest, completionHandler: { (data, response, error) -> vuoto in
    Se (error != zero) {
      stampare(error)
    } altro {
      permettere httpResponse = response Come? Httpurlresponse
      stampare(httpResponse)
    }
  })
  
  dataTask.curriculum vitae()
    


  // Le librerie e i wrapper API completi sono disponibili qui: 
  // https://www.zerobounce.net/docs/zerobounce-api-wrappers/#api_wrappers__v2__IOS


// Seleziona la lingua VB o C # per l'importazione del file # esempio campione #  <Foundation/Foundation.h>

NSDictionary *headers = @{ @"tipo di contenuto": @ "multipart / form-data; boundary = ---- WebKitFormBoundary7MA4YWxkTrZu0gW",
                            @ "cache-control": @ "no-cache",
                            @ "Postino-token": @ "92 624 c5b06e- f- 44 e5-bd86-f537bc6cef67" };
NSArray *parameters = @[ @{ @"nome": @ "api_key", @"valore": @ "replacewithyours" },
                          @{ @"nome": @ "email_address_column", @"valore": @ "replacewithyours" } ];
NSString *boundary = @ "---- WebKitFormBoundary7MA4YWxkTrZu0gW";

NSError *error;
NSMutableString *body = [NSMutableString string];
per (NSDictionary *param in parameters) {
    [body appendFormat:@"--%@", boundary];
    Se (param[@"nome del file"]) {
        [body appendFormat:@ "Disposizione dei contenuti: form-data; name ="%@ "; nome file ="%@"", param[@"nome"], param[@"nome del file"]];
        [body appendFormat:@"Tipo di contenuto: %@", param[@"tipo di contenuto"]];
        [body appendFormat:@"%@", [NSString stringWithContentsOfFile:param[@"nome del file"] encoding:NSUTF8StringEncoding error:&error]];
        Se (error) {
            NSLog(@"%@", error);
        }
    } altro {
        [body appendFormat:@ "Disposizione dei contenuti: form-data; name ="%@"", param[@"nome"]];
        [body appendFormat:@"%@", param[@"valore"]];
    }
}
[body appendFormat:@"--%@--", boundary];
NSData *postData = [body dataUsingEncoding:NSUTF8StringEncoding];

NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:@"https://bulkapi.zerobounce.net/v2/sendfile"]
  cachePolicy:NSURLRequestUseProtocolCachePolicy
  timeoutInterval:10.0];

[request setHTTPMethod:@"INVIARE"];
[request setAllHTTPHeaderFields:headers];
[request setHTTPBody:postData];

NSURLSession *session = [NSURLSession sharedSession];
NSURLSessionDataTask *dataTask = [session dataTaskWithRequest:request
    completionHandler:^(NSData *data, NSURLResponse *response, NSError *error) {
        Se (error) {
            NSLog(@"%@", error);
        } altro {
            NSHTTPURLResponse *httpResponse = (NSHTTPURLResponse *) response;
            NSLog(@"%@", httpResponse);
        }
    }];
[dataTask resume];
    


  // Le librerie e i wrapper API completi sono disponibili qui: 
  // https://www.zerobounce.net/docs/zerobounce-api-wrappers/#api_wrappers__v2__android

//N/A
    

Risposta dell'endpoint

Risposta riuscita

      
{
  "successo": Vero,
  "messaggio": "File accettato",
  "nome del file": "Il tuo nome file.csv",
  "file_id": "aaaaaaaa-zzzz-xxxx-yyyy 5003727 fffff"
}
    

Risposta all'errore

      
    {
      "successo": Falso,
      "messaggio": [
          "Messaggio di errore"
      ]
  }
    

Stato file (v2)

/ email-validazione-api-quickstart / v2-file-stato /

L'API filestatus restituisce lo stato di elaborazione del file per il file inviato utilizzando l'API sendfile. Fare riferimento all'esempio C # per i dettagli.

GET / v2 / filestatus

URL API: https://bulkapi.zerobounce.net/v2/filestatus

Parametri URL

  • Parametro
    Descrizione
  • api_key
    La tua chiave API, che si trova nel tuo account.
  • file_id
    L'ID file restituito durante la chiamata all'API sendfile.

Se vuoi chiamare l'API dal tuo browser per testarla, tutto ciò che devi fare è sostituire l'API KEY con la tua chiave e l'ID FILE con l'ID file restituito dall'API sendfile:

https://bulkapi.zerobounce.net/v2/filestatus?api_key=[replacewithyours]&file_id=[replacewithyours]

Esempi di codice di stato del file

  • Visual Basic
  • C#
  • PHP
  • Giava
  • Pitone
  • Veloce
  • Obiettivo C
  • Android Java
      

'Librerie API complete e wrapper sono disponibili qui: 
' https://www.zerobounce.net/docs/zerobounce-api-wrappers/#api_wrappers__v2__dot_net

'Esempio di stato del file in VB.net

Pubblico Classe FileStatus
    Pubblico Proprietà success Come Booleano
    Pubblico Proprietà file_id Come Corda
    Pubblico Proprietà file_name Come Corda
    Pubblico Proprietà upload_date Come Corda
    Pubblico Proprietà file_status Come Corda
    Pubblico Proprietà complete_percentage Come Corda
    Pubblico Proprietà return_url Come Corda
Fine Classe

Privato Condivisa Sub FileStatusAPITest()
    Fioco apiKey Come Corda = "sostituisci con la tua chiave api qui"
    Fioco fileID Come Corda = "sostituisci con l'ID file restituito quando chiami l'API sendfile"

    PROVARE
        Fioco fileStatus Come FileStatus = FileStatusAsync(apiKey, fileID).Result
        Console.Scrivi(JsonConvert.SerializeObject(fileStatus, Formatting.Indented))
    Catturare ex Come Exception
        Console.Scrivi(ex.InnerException.Message)
    Fine PROVARE

    Console.ReadKey()
Fine Sub

Pubblico Condivisa Async Funzione FileStatusAsync(ByVal apiKey Come Corda, ByVal fileID Come Corda) Come Task(Di FileStatus)
    Se Corda.IsNullOrEmpty(apiKey) Poi Gettare Nuovo Exception("Errore: è richiesto apiKey")
    Se Corda.IsNullOrEmpty(fileID) Poi Gettare Nuovo Exception("Errore: fileID è richiesto")
    Fioco uri Come Uri = Nuovo Uri($"https://bulkapi.zerobounce.net/v2/filestatus?api_key={apiKey}&file_id={fileID}")

    Utilizzando client = Nuovo HttpClient()
        Utilizzando request = Nuovo HttpRequestMessage(HttpMethod.ottenere, uri)
            Utilizzando response = Await client.SendAsync(request).ConfigureAwait(Falso)
                Fioco content = Await response.Content.ReadAsStringAsync()

                Se response.IsSuccessStatusCode = Falso Poi
                    Fioco errore Come Corda = $"StatusCode = {CInt(response.StatusCode)}, Content = {content}"
                    Gettare Nuovo Exception(errore)
                Fine Se

                Ritorno JsonConvert.DeserializeObject(Di FileStatus)(content)
            Fine Utilizzando
        Fine Utilizzando
    Fine Utilizzando
Fine Funzione
    

// Le librerie e i wrapper API completi sono disponibili qui: 
// https://www.zerobounce.net/docs/zerobounce-api-wrappers/#api_wrappers__v2__dot_net
// https://www.zerobounce.net/docs/zerobounce-api-wrappers/#api_wrappers__v2__c-sharp

// Esempio di stato del file in C #

Pubblico Classe Filestatus
{
    Pubblico bool success { ottenere; impostato; }
    Pubblico Corda file_id { ottenere; impostato; }
    Pubblico Corda file_name { ottenere; impostato; }
    Pubblico Corda upload_date { ottenere; impostato; }
    Pubblico Corda file_status { ottenere; impostato; }
    Pubblico Corda complete_percentage { ottenere; impostato; }
    Pubblico Corda return_url { ottenere; impostato; }
}

Privato statico vuoto Filestatusapitest()
{
    Corda apiKey = "sostituisci con la tua chiave api qui";
    Corda fileID = "sostituisci con l'ID file restituito quando chiami l'API sendfile";

    PROVARE
    {
        Filestatus fileStatus = Filestatusasync(apiKey, fileID).Result;
        Console.Scrivi(JsonConvert.Serializeobject(fileStatus, Formatting.Indented));
    }
    Catturare (Eccezione ex)
    {
        Console.Scrivi(ex.InnerException.Message);
    }
    Console.ReadKey();
}

Pubblico statico async Task<FileStatus> Filestatusasync(Corda apiKey, Corda fileID)
{
    Se (Corda.IsNullOrEmpty(apiKey))
        Gettare Nuovo Eccezione("Errore: è richiesto apiKey");
    Se (Corda.IsNullOrEmpty(fileID))
        Gettare Nuovo Eccezione("Errore: fileID è richiesto");

    Uri uri = Nuovo Uri($"https://bulkapi.zerobounce.net/v2/filestatus?api_key={apiKey}&file_id={fileID}");

    Utilizzando (var client = Nuovo HttpClient())
    Utilizzando (var request = Nuovo Httprequestmessage(HttpMethod.Get, uri))
    Utilizzando (var response = await client.SendAsync(request).Configureawait(Falso))
    {
        var content = await response.Content.Readasstringasync();

        Se (response.IsSuccessStatusCode == Falso)
        {
            var error = $"StatusCode = {(int) response.StatusCode}, Content = {content}";
            Gettare Nuovo Eccezione(error);
        }

        Ritorno JsonConvert.Deserializeobject<Filestatus>(content);
    }
}
    

    <?php
    // Le librerie e i wrapper API completi sono disponibili qui: 
    // https://www.zerobounce.net/docs/zerobounce-api-wrappers/#api_wrappers__v2__php

    $ ricciolo = curl_init();
    
    curl_setopt_array($ ricciolo, vettore(
      CURLOPT_URL => "https://bulkapi.zerobounce.net/v2/filestatus?api_key=replacewithyours&file_id=replacewithyours",
      CURLOPT_RETURNTRANSFER => Vero,
      CURLOPT_ENCODING => "",
      CURLOPT_MAXREDIRS => 10,
      CURLOPT_TIMEOUT => 30,
      CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
      CURLOPT_CUSTOMREQUEST => "OTTENERE",
      CURLOPT_POSTFIELDS => "",
      CURLOPT_HTTPHEADER => vettore(
        "Postino-token: 91504 cea-f92f- 46 b0- 97 a4- 338167072887",
        "controllo cache: no-cache"
      ),
    ));
    
    $ risposta = curl_exec($ ricciolo);
    $ err = curl_error($ ricciolo);
    
    curl_close($ ricciolo);
    
    Se ($ err) {
      eco "Errore cURL #:" . $ err;
    } altro {
      eco $ risposta;
    }
    ?>
    


  // Le librerie e i wrapper API completi sono disponibili qui: 
  //https://www.zerobounce.net/docs/zerobounce-api-wrappers/#api_wrappers__v2__java

    Okhttpclient client = Nuovo Okhttpclient();

    Richiesta request = Nuovo Richiesta.Costruttore()
      .url("https://bulkapi.zerobounce.net/v2/filestatus?api_key=replacewithyours&file_id=replacewithyours")
      .ottenere()
      .AddHeader("cache-control", "no-cache")
      .AddHeader("Postino-token", "7 fffd7a4-b2fd- 4 e8b-ac85- 4099411 f27ce")
      .costruire();
    
    Risposta response = client.nuova chiamata(request).eseguire();
    

    # Librerie e wrapper API completi sono disponibili qui: 
    # https://www.zerobounce.net/docs/zerobounce-api-wrappers/#api_wrappers__v2__python
  
    
    importare http.client

    conn = http.client.HTTPConnection("bulkapi, zerobounce netti")
    
    payload = ""
    
    headers = {
        'cache-control': "no-cache",
        'Postino-token': "caa917fe- 45 45 ce- ae 9456-2 b039b999dcb"
        }
    
    conn.request("OTTENERE", "v2, filestatus", payload, headers)
    
    res = conn.getresponse()
    data = res.read()
    
    stampare(data.decode("utf- 8"))
    
    


  // Le librerie e i wrapper API completi sono disponibili qui: 
  // https://www.zerobounce.net/docs/zerobounce-api-wrappers/#api_wrappers__v2__IOS

    // Seleziona la lingua VB o C # per Stato file Sampleimport Foundation

    permettere headers = [
      "cache-control": "no-cache",
      "Postino-token": "4 034 f1b92e2- f- 4 94 fa0- d9-b097d768668a"
    ]
    
    permettere request = Nsmutableurlrequest(url: NSURL(string: "https://bulkapi.zerobounce.net/v2/filestatus?api_key=replacewithyours&file_id=replacewithyours")! Come url,
                                            cachePolicy: .useProtocolCachePolicy,
                                        timeoutInterval: 10.0)
    request.httpMethod = "OTTENERE"
    request.allHTTPHeaderFields = headers
    
    permettere session = Urlsession.shared
    permettere dataTask = session.datatask(with: request Come URLRequest, completionHandler: { (data, response, error) -> vuoto in
      Se (error != zero) {
        stampare(error)
      } altro {
        permettere httpResponse = response Come? Httpurlresponse
        stampare(httpResponse)
      }
    })
    
    dataTask.curriculum vitae()
    


  // Le librerie e i wrapper API completi sono disponibili qui: 
  // https://www.zerobounce.net/docs/zerobounce-api-wrappers/#api_wrappers__v2__IOS


    #importare <Foundation/Foundation.h>

    NSDictionary *headers = @{ @ "cache-control": @ "no-cache",
                               @ "Postino-token": @"5e9c24ae-b577-4e33-8748-83f14e151ae9" };
    
    NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:@"https://bulkapi.zerobounce.net/v2/filestatus?api_key=replacewithyours&file_id=replacewithyours"]
                                                           cachePolicy:NSURLRequestUseProtocolCachePolicy
                                                       timeoutInterval:10.0];
    [request setHTTPMethod:@"OTTENERE"];
    [request setAllHTTPHeaderFields:headers];
    
    NSURLSession *session = [NSURLSession sharedSession];
    NSURLSessionDataTask *dataTask = [session dataTaskWithRequest:request
                                                completionHandler:^(NSData *data, NSURLResponse *response, NSError *error) {
                                                    Se (error) {
                                                        NSLog(@"%@", error);
                                                    } altro {
                                                        NSHTTPURLResponse *httpResponse = (NSHTTPURLResponse *) response;
                                                        NSLog(@"%@", httpResponse);
                                                    }
                                                }];
    [dataTask resume];
    



  // Le librerie e i wrapper API completi sono disponibili qui: 
  // https://www.zerobounce.net/docs/zerobounce-api-wrappers/#api_wrappers__v2__android
// N/A
    

Risposta dell'endpoint

Risposta riuscita

      
{
  "successo": Vero,
  "file_id": "aaaaaaaa-zzzz-xxxx-yyyy 5003727 fffff",
  "nome del file": "Il tuo nome file.csv",
  "data di caricamento": "10/20/2018 4:35: 58 PM",
  "file_status": "Completare",
  "complete_percentage": "100%",
  "return_url": "L'URL di ritorno se fornito quando si chiama l'API sendfile"
}
    

Risposta all'errore


    {      
      "successo": Falso,
      "messaggio": "Messaggio di errore"
    }
    

Ottieni file (v2)

/ email-validazione-api-quickstart / v2-get-file /

L'API getfile consente agli utenti di ottenere il file dei risultati della convalida per il file inviato utilizzando l'API sendfile. Fare riferimento all'esempio C # per i dettagli.

GET / v2 / getfile

URL API: https://bulkapi.zerobounce.net/v2/getfile

Parametri URL

  • Parametro
    Descrizione
  • api_key
    La tua chiave API, che si trova nel tuo account.
  • file_id
    L'ID file restituito durante la chiamata all'API sendfile.

Se vuoi chiamare l'API dal tuo browser per testarla, tutto ciò che devi fare è sostituire l'API KEY con la tua chiave e l'ID FILE con l'ID file restituito da inviare file API:

https://bulkapi.zerobounce.net/v2/getfile?api_key=replacewithyours&file_id=[replacewithyours]

Esempi di codice GetFile

  • Visual Basic
  • C#
  • PHP
  • Giava
  • Pitone
  • Veloce
      
'Librerie API complete e wrapper sono disponibili qui: 
' https://www.zerobounce.net/docs/zerobounce-api-wrappers/#api_wrappers__v2__dot_net

'Ottieni esempio di file in VB.net

Privato Condivisa Sub GetFileAPITest()
  Fioco apiKey Come Corda = "sostituisci con la tua chiave api qui"
  Fioco fileID Come Corda = "sostituisci con l'ID file restituito quando chiami l'API sendfile"
  Fioco dir Come Corda = "C:	emp"

    PROVARE
        Fioco filePath = GetFileAsync(apiKey, fileID, dir).Result
        Console.Scrivi($"File {filePath} retrieved successfully.")
    Catturare ex Come Exception
        Console.Scrivi(ex.InnerException.Message)
    Fine PROVARE

    Console.ReadKey()
Fine Sub

Pubblico Condivisa Async Funzione GetFileAsync(ByVal apiKey Come Corda, ByVal fileID Come Corda, ByVal dir Come Corda) Come Task(Di Corda)
    Se Corda.IsNullOrEmpty(apiKey) Poi Gettare Nuovo Exception("Errore: è richiesto apiKey")
    Se Corda.IsNullOrEmpty(fileID) Poi Gettare Nuovo Exception("Errore: fileID è richiesto")
    Fioco uri Come Uri = Nuovo Uri($"https://bulkapi.zerobounce.net/v2/getfile?api_key={apiKey}&file_id={fileID}")

    Utilizzando client = Nuovo HttpClient()
        Utilizzando request = Nuovo HttpRequestMessage(HttpMethod.ottenere, uri)
            Utilizzando response = Await client.SendAsync(request, HttpCompletionOption.ResponseHeadersRead).ConfigureAwait(Falso)
                Utilizzando streamToReadFrom Come Ruscello = Await response.Content.ReadAsStreamAsync()

                    Se response.IsSuccessStatusCode = Falso Poi
                        Fioco [errore] = $"StatusCode = {CInt(response.StatusCode)}, Content = {response.Content.ReadAsStringAsync().Result}"
                        Gettare Nuovo Exception([errore])
                    Fine Se

                    Fioco filePath = Path.Combine(dir, response.Content.Headers.ContentDisposition.FileName)

                    Utilizzando streamToWriteTo Come Ruscello = File.Aperto(filePath, FileMode.Create)
                        Await streamToReadFrom.CopyToAsync(streamToWriteTo)
                    Fine Utilizzando

                    Ritorno filePath
                Fine Utilizzando
            Fine Utilizzando
        Fine Utilizzando
    Fine Utilizzando
Fine Funzione
    

// Le librerie e i wrapper API completi sono disponibili qui: 
// https://www.zerobounce.net/docs/zerobounce-api-wrappers/#api_wrappers__v2__dot_net
// https://www.zerobounce.net/docs/zerobounce-api-wrappers/#api_wrappers__v2__c-sharp

// Ottieni un esempio di file in C #

Privato statico vuoto Getfileapitest()
{
    Corda apiKey = "sostituisci con la tua chiave api qui";
    Corda fileID = "sostituisci con l'ID file restituito quando chiami l'API sendfile";
    Corda dir = @ "C: emp";  // specifica la directory in cui vuoi salvare il file dei risultati

    PROVARE
    {              
        var filePath = Getfileasync(apiKey, fileID, dir).Result;
        Console.Scrivi($"File {filePath} recuperato correttamente.");
    }
    Catturare (Eccezione ex)
    {
        Console.Scrivi(ex.InnerException.Message);
    }
    Console.ReadKey();
}

Pubblico statico async Task<Corda> Getfileasync(Corda apiKey, Corda fileID, Corda dir)
{
    Se (Corda.IsNullOrEmpty(apiKey))
        Gettare Nuovo Eccezione("Errore: è richiesto apiKey");
    Se (Corda.IsNullOrEmpty(fileID))
        Gettare Nuovo Eccezione("Errore: fileID è richiesto");

    Uri uri = Nuovo Uri($"https://bulkapi.zerobounce.net/v2/getfile?api_key={apiKey}&file_id={fileID}");

    Utilizzando (var client = Nuovo HttpClient())
    Utilizzando (var request = Nuovo Httprequestmessage(HttpMethod.Get, uri))
    Utilizzando (var response = await client.SendAsync(request, HttpCompletionOption.ResponseHeadersRead).Configureawait(Falso))
    Utilizzando (Ruscello streamToReadFrom = await response.Content.Readasstreamasync())
    {
        Se (response.IsSuccessStatusCode == Falso)
        {
            var error = $"StatusCode = {(int) response.StatusCode}, Content = {response.Content.ReadAsStringAsync (). Result}";
            Gettare Nuovo Eccezione(error);
        }

        var filePath = Path.Combina(dir, response.Content.Headers.ContentDisposition.FileName);
        Utilizzando (Ruscello streamToWriteTo = File.Aperto(filePath, FileMode.Create))
        {
            await streamToReadFrom.Copytoasync(streamToWriteTo);
        }
        Ritorno filePath;
    }
}
    

  <?php
  // Le librerie e i wrapper API completi sono disponibili qui: 
  // https://www.zerobounce.net/docs/zerobounce-api-wrappers/#api_wrappers__v2__php

  $ richiesta = Nuovo Httprequest();
  $ richiesta->seturl('https://bulkapi.zerobounce.net/v2/getfile');
  $ richiesta->setmethod(HTTP_METH_GET);
  
  $ richiesta->setquerydata(vettore(
    "api_key" => "sostituire con il tuo",
    "file_id" => "sostituire con il tuo"
  ));
  
  $ richiesta->setheaders(vettore(
    'Postino-token' => "0 a6c40b8- 0 cd4- 4 dbb-a57e- 422558 e7ab6a",
    'cache-control' => "no-cache"
  ));
  
  PROVARE {
    $ risposta = $ richiesta->inviare();
  
    eco $ risposta->getbody();
  } Catturare (HTTPpexception $ ex) {
    eco $ ex;
  }
  ?>
    


  // Le librerie e i wrapper API completi sono disponibili qui: 
  //https://www.zerobounce.net/docs/zerobounce-api-wrappers/#api_wrappers__v2__java

  Okhttpclient client = Nuovo Okhttpclient();

  Richiesta request = Nuovo Richiesta.Costruttore()
    .url("https://bulkapi.zerobounce.net/v2/getfile?api_key=replacewithyours&file_id=replacewithyours")
    .ottenere()
    .AddHeader("cache-control", "no-cache")
    .AddHeader("Postino-token", "d0b7d318-f3f6- 47 fb- 842 d- 5622 b26592c1")
    .costruire();
  
  Risposta response = client.nuova chiamata(request).eseguire();
    

    # Librerie e wrapper API completi sono disponibili qui: 
    # https://www.zerobounce.net/docs/zerobounce-api-wrappers/#api_wrappers__v2__python
  
    
  importare http.client

  conn = http.client.HTTPConnection("bulkapi, zerobounce netti")
  
  payload = ""
  
  headers = {
      'cache-control': "no-cache",
      'Postino-token': "9 f615d7e- 60 af- 4746-9 bcc- 317 b1f80a6bb"
      }
  
  conn.request("OTTENERE", "v2, getfile", payload, headers)
  
  res = conn.getresponse()
  data = res.read()
  
  stampare(data.decode("utf- 8"))
  
    
    


  // Le librerie e i wrapper API completi sono disponibili qui: 
  // https://www.zerobounce.net/docs/zerobounce-api-wrappers/#api_wrappers__v2__IOS

importare FONDAZIONE

permettere headers = [
  "cache-control": "no-cache",
  "Postino-token": "6 c8cb1cb- 25 ed- 4 e56-b4cb- 65 e949b8bdd1"
]

permettere request = Nsmutableurlrequest(url: NSURL(string: "https://bulkapi.zerobounce.net/v2/getfile?api_key=replacewithyours&file_id=replacewithyours")! Come url,
                                        cachePolicy: .useProtocolCachePolicy,
                                    timeoutInterval: 10.0)
request.httpMethod = "OTTENERE"
request.allHTTPHeaderFields = headers

permettere session = Urlsession.shared
permettere dataTask = session.datatask(with: request Come URLRequest, completionHandler: { (data, response, error) -> vuoto in
  Se (error != zero) {
    stampare(error)
  } altro {
    permettere httpResponse = response Come? Httpurlresponse
    stampare(httpResponse)
  }
})

dataTask.curriculum vitae()
    

Risposta dell'endpoint

Risposta riuscita

      
    //N/A
    

L'API getfile restituisce il file dei risultati della convalida. Il tipo di contenuto restituito è "application / octet-stream". È possibile ottenere il nome del file da response.Content.Headers.ContentDisposition.FileName. Se stai chiamando l'API direttamente dal browser, puoi salvare o aprire il file dei risultati dal browser.

Risposta all'errore

      
  {
      "successo": Falso,
      "messaggio": "Messaggio di errore"
  }
    

Elimina file (v2)

/ email-validazione-api-quickstart / v2-delete-file /

L'API deletefile elimina il file che è stato inviato utilizzando inviare file API. Il file può essere eliminato solo quando il suo stato è Completo.

POST / v2 / deletefile

URL API: https://bulkapi.zerobounce.net/v2/deletefile

Parametri URL

  • Parametro
    Descrizione
  • api_key
    La tua chiave API, che si trova nel tuo account.
  • file_id
    L'ID file restituito durante la chiamata all'API sendfile.

Elimina esempi di codice file

  • Visual Basic
  • C#
  • PHP
  • Giava
  • Pitone
  • Veloce
  • Obiettivo C
      
'Librerie API complete e wrapper sono disponibili qui: 
' https://www.zerobounce.net/docs/zerobounce-api-wrappers/#api_wrappers__v2__dot_net

'Elimina esempio di file in VB.net

Pubblico Classe ResponseResult
    Pubblico Proprietà success Come Booleano
    Pubblico Proprietà message Come Corda
    Pubblico Proprietà file_id Come Corda
    Pubblico Proprietà file_name Come Corda
Fine Classe

Privato Condivisa Sub DeleteFileAPITest()
    Fioco apiKey Come Corda = "sostituisci con la tua chiave api qui"
    Fioco fileID Come Corda = "sostituisci con l'ID file restituito quando chiami l'API sendfile"

    PROVARE
        Fioco responseResult Come ResponseResult = DeleteFileAsync(apiKey, fileID).Result
        Console.Scrivi(JsonConvert.SerializeObject(responseResult, Formatting.Indented))
    Catturare ex Come Exception
        Console.Scrivi(ex.InnerException.Message)
    Fine PROVARE

    Console.ReadKey()
Fine Sub

Pubblico Condivisa Async Funzione DeleteFileAsync(ByVal apiKey Come Corda, ByVal fileID Come Corda) Come Task(Di ResponseResult)
    Se Corda.IsNullOrEmpty(apiKey) Poi Gettare Nuovo Exception("Errore: è richiesto apiKey")
    Se Corda.IsNullOrEmpty(fileID) Poi Gettare Nuovo Exception("Errore: fileID è richiesto")
    Fioco uri Come Uri = Nuovo Uri($"https://bulkapi.zerobounce.net/v2/deletefile?api_key={apiKey}&file_id={fileID}")

    Utilizzando client = Nuovo HttpClient()

        Utilizzando request = Nuovo HttpRequestMessage(HttpMethod.[ottenere], uri)

            Utilizzando response = Await client.SendAsync(request).ConfigureAwait(Falso)
                Fioco content = Await response.Content.ReadAsStringAsync()

                Se response.IsSuccessStatusCode = Falso Poi
                    Fioco [errore] = $"StatusCode = {CInt(response.StatusCode)}, Content = {content}"
                    Gettare Nuovo Exception([errore])
                Fine Se

                Ritorno JsonConvert.DeserializeObject(Di ResponseResult)(content)
            Fine Utilizzando
        Fine Utilizzando
    Fine Utilizzando
Fine Funzione
    

// Le librerie e i wrapper API completi sono disponibili qui: 
// https://www.zerobounce.net/docs/zerobounce-api-wrappers/#api_wrappers__v2__dot_net
// https://www.zerobounce.net/docs/zerobounce-api-wrappers/#api_wrappers__v2__c-sharp

// Elimina esempio di file in C #

Pubblico Classe ResponseResult
{
    Pubblico bool success { ottenere; impostato; }
    Pubblico Corda message { ottenere; impostato; }
    Pubblico Corda file_id { ottenere; impostato; }
    Pubblico Corda file_name { ottenere; impostato; }
}

Privato statico vuoto Deletefileapitest()
{
    Corda apiKey = "sostituisci con la tua chiave api qui";
    Corda fileID = "sostituisci con l'ID file restituito quando chiami l'API sendfile";

    PROVARE
    {
        ResponseResult responseResult = DeleteFileAsync(apiKey, fileID).Result;
        Console.Scrivi(JsonConvert.Serializeobject(responseResult, Formatting.Indented));
    }
    Catturare (Eccezione ex)
    {
        Console.Scrivi(ex.InnerException.Message);
    }
    Console.ReadKey();
}

Pubblico statico async Task<ResponseResult> DeleteFileAsync(Corda apiKey, Corda fileID)
{
    Se (Corda.IsNullOrEmpty(apiKey))
        Gettare Nuovo Eccezione("Errore: è richiesto apiKey");
    Se (Corda.IsNullOrEmpty(fileID))
        Gettare Nuovo Eccezione("Errore: fileID è richiesto");

    Uri uri = Nuovo Uri($"https://bulkapi.zerobounce.net/v2/deletefile?api_key={apiKey}&file_id={fileID}");

    Utilizzando (var client = Nuovo HttpClient())
    Utilizzando (var request = Nuovo Httprequestmessage(HttpMethod.Get, uri))
    Utilizzando (var response = await client.SendAsync(request).Configureawait(Falso))
    {
        var content = await response.Content.Readasstringasync();

        Se (response.IsSuccessStatusCode == Falso)
        {
            var error = $"StatusCode = {(int) response.StatusCode}, Content = {content}";
            Gettare Nuovo Eccezione(error);
        }

        Ritorno JsonConvert.Deserializeobject<ResponseResult>(content);
    }
}
    

  <?php
  // Le librerie e i wrapper API completi sono disponibili qui: 
  // https://www.zerobounce.net/docs/zerobounce-api-wrappers/#api_wrappers__v2__php

  $ ricciolo = curl_init();
  
  curl_setopt_array($ ricciolo, vettore(
    CURLOPT_URL => "https://bulkapi.zerobounce.net/v2/deletefile?api_key=replacewithyours&file_id=replacewithyours",
    CURLOPT_RETURNTRANSFER => Vero,
    CURLOPT_ENCODING => "",
    CURLOPT_MAXREDIRS => 10,
    CURLOPT_TIMEOUT => 30,
    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
    CURLOPT_CUSTOMREQUEST => "OTTENERE",
    CURLOPT_POSTFIELDS => "",
    CURLOPT_HTTPHEADER => vettore(
      "Postino-token: 91504 cea-f92f- 46 b0- 97 a4- 338167072887",
      "controllo cache: no-cache"
    ),
  ));
  
  $ risposta = curl_exec($ ricciolo);
  $ err = curl_error($ ricciolo);
  
  curl_close($ ricciolo);
  
  Se ($ err) {
    eco "Errore cURL #:" . $ err;
  } altro {
    eco $ risposta;
  }
  ?>
    


  // Le librerie e i wrapper API completi sono disponibili qui: 
  //https://www.zerobounce.net/docs/zerobounce-api-wrappers/#api_wrappers__v2__java

Okhttpclient client = Nuovo Okhttpclient();

Richiesta request = Nuovo Richiesta.Costruttore()
  .url("https://bulkapi.zerobounce.net/v2/deletefile?api_key=replacewithyours&file_id=replacewithyours")
  .ottenere()
  .AddHeader("cache-control", "no-cache")
  .AddHeader("Postino-token", "7 fffd7a4-b2fd- 4 e8b-ac85- 4099411 f27ce")
  .costruire();

Risposta response = client.nuova chiamata(request).eseguire();
    

    # Librerie e wrapper API completi sono disponibili qui: 
    # https://www.zerobounce.net/docs/zerobounce-api-wrappers/#api_wrappers__v2__python
  
    
importare http.client

conn = http.client.HTTPConnection("bulkapi, zerobounce netti")

payload = ""

headers = {
    'cache-control': "no-cache",
    'Postino-token': "caa917fe- 45 45 ce- ae 9456-2 b039b999dcb"
    }

conn.request("OTTENERE", "v2, deletefile", payload, headers)

res = conn.getresponse()
data = res.read()

stampare(data.decode("utf- 8"))
    
    


  // Le librerie e i wrapper API completi sono disponibili qui: 
  // https://www.zerobounce.net/docs/zerobounce-api-wrappers/#api_wrappers__v2__IOS

// Seleziona la lingua VB o C # per Stato file Sampleimport Foundation

permettere headers = [
  "cache-control": "no-cache",
  "Postino-token": "4 034 f1b92e2- f- 4 94 fa0- d9-b097d768668a"
]

permettere request = Nsmutableurlrequest(url: NSURL(string: "https://bulkapi.zerobounce.net/v2/deletefile?api_key=replacewithyours&file_id=replacewithyours")! Come url,
                                        cachePolicy: .useProtocolCachePolicy,
                                    timeoutInterval: 10.0)
request.httpMethod = "OTTENERE"
request.allHTTPHeaderFields = headers

permettere session = Urlsession.shared
permettere dataTask = session.datatask(with: request Come URLRequest, completionHandler: { (data, response, error) -> vuoto in
  Se (error != zero) {
    stampare(error)
  } altro {
    permettere httpResponse = response Come? Httpurlresponse
    stampare(httpResponse)
  }
})

dataTask.curriculum vitae()
    


  // Le librerie e i wrapper API completi sono disponibili qui: 
  // https://www.zerobounce.net/docs/zerobounce-api-wrappers/#api_wrappers__v2__IOS

#importare <Foundation/Foundation.h>

NSDictionary *headers = @{ @ "cache-control": @ "no-cache",
                            @ "Postino-token": @"5e9c24ae-b577-4e33-8748-83f14e151ae9" };

NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:@"https://bulkapi.zerobounce.net/v2/deletefile?api_key=replacewithyours&file_id=replacewithyours"]
                                                        cachePolicy:NSURLRequestUseProtocolCachePolicy
                                                    timeoutInterval:10.0];
[request setHTTPMethod:@"OTTENERE"];
[request setAllHTTPHeaderFields:headers];

NSURLSession *session = [NSURLSession sharedSession];
NSURLSessionDataTask *dataTask = [session dataTaskWithRequest:request
        completionHandler:^(NSData *data, NSURLResponse *response, NSError *error) {
            Se (error) {
                NSLog(@"%@", error);
            } altro {
                NSHTTPURLResponse *httpResponse = (NSHTTPURLResponse *) response;
                NSLog(@"%@", httpResponse);
            }
        }];
[dataTask resume];
    

Risposta dell'endpoint

Risposta riuscita

      
  {
    "successo": Vero,
    "messaggio": "File eliminato",
    "nome del file": "test2",
    "file_id": "b222a0fd- 90 416 d5- c- 8 9 f1a- cc3851fc823"
  }
    

Risposta all'errore

      
{
  "successo": Falso,
  "messaggio": "Impossibile trovare il file."
}