Как использовать API ZeroBounce

Подтвердить электронную почту (v1)

Below you will find the instructions on how to use our API, it's very easy to use and requires SSL. The API requires that you have an active credit balance and will never consume a credit for any unknown result. This endpoint can be called asynchronously and is currently not rate limited.

Чтобы протестировать API или API без использования кредитов - используйте электронные письма, указанные в нашей документации по песочнице.

Время ответа для нашего API составляет от одной секунды до 70 секунд. Поскольку API по своей природе должны быть быстрыми, мы ограничиваем время, которое мы тратим на проверку адреса электронной почты. Поэтому, если мы столкнемся с медленным почтовым сервером или почтовым сервером с алгоритмом серого списка, вы получите неизвестный результат. Вы всегда можете повторно проверить эти условия, загрузив файл в валидатор массовой рассылки.

В среднем 96-98% всех доменов вернется через 1 к 5 секундам, есть несколько доменов, на которых запущен Postfix / Dovecot, которые имеют 20 секундное время соединения для проверки в реальном времени и очень небольшой процент других доменов, которые очень медленно отвечают на запросы SMTP. Все основные интернет-провайдеры вернутся через 1 - 3 секунд, что обычно составляет большинство рассылок по электронной почте.

GET / v1 / проверить

URL API: https://bulkapi.zerobounce.net/v1/validate

URL-адрес API (с приложением GEO): https://bulkapi.zerobounce.net/v1/validatewithip

Параметры URL

  • ПАРАМЕТР
    Описание
  • ЭЛЕКТРОННОЕ ПИСЬМО
    Электронный адрес, который вы хотите подтвердить
  • ipaddress
    IP-адрес, с которого была подписана электронная почта (может быть пустым, но параметр обязателен)
  • apikey
    Ваш ключ API, найденный в вашем аккаунте

Если вы хотите вызвать API из своего браузера, чтобы протестировать его, все, что вам нужно сделать, это заменить API KEY своим ключом:

https://api.zerobounce.net/v1/validatewithip?apikey=replacewithyours&email=valid@example.com&ipAddress=156.124.12.145

или, если вам не нужно GEO Append, просто вызовите метод проверки.

https://api.zerobounce.net/v1/validate?apikey=replacewithyours&email=valid@example.com

API вернет эти результаты в формате JSON с помощью метода «Validate».

  • Свойства
    Описание
  • адрес
    Адрес электронной почты, который вы проверяете.
  • положение дел
    [действительный, недействительный, универсальный, неизвестный, spamtrap, злоупотребление, do_not_mail]
  • sub_status
    [antispam_system, серый список, 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]
  • счет
    Часть адреса электронной почты перед символом «@».
  • Домен
    Часть адреса электронной почты после символа «@».
  • одноразовый
    [true, false] Если домен электронной почты одноразовый, обычно это временные адреса электронной почты.
  • токсичный
    [true, false] Известно, что эти адреса электронной почты предназначены для злоупотреблений, спама или создания ботов.
  • имя
    Имя владельца электронного письма, когда доступно или [null].
  • фамилия
    Фамилия владельца электронного письма, если оно доступно, или [null].
  • пол
    Пол владельца электронной почты, если он доступен, или [null].
  • Дата создания
    Дата создания электронного письма, если оно доступно, или [null] [Устарело].
  • место нахождения
    Местоположение владельца электронной почты, если доступно, или [null] [Устарело].
  • обработано
    Время UTC электронная почта была подтверждена.

API вернет эти дополнительные поля, используя «validatewithip», вернет эти дополнительные поля, используя метод validatewithip:

  • Свойства
    Описание
  • город
    Город IP прошел в.
  • область, край
    Регион / состояние IP, переданного в.
  • почтовый индекс
    Почтовый индекс переданного IP-адреса.
  • страна
    Страна, в которой был передан IP.

Проверка образцов кода электронной почты

  • Visual Basic
  • C#
  • PHP
  • Ява
  • Питон
  • СВИФТ
  • Цель С
  • Android Java
      
Полные библиотеки API и оболочки могут быть найдены здесь: 
' https://www.zerobounce.net/docs/zerobounce-api-wrappers/#api_wrappers__v2__dot_net

  Пытаться
  Тусклый apiKey Как Строка = «Твой секретный ключ»
  Тусклый emailToValidate Как Строка = "example@example.ком"
  Тусклый responseString Как Строка = ""
  Тусклый apiURL Как Строка = "https://api.zerobounce.net/v1/validate?apikey=" & apiKey & "& email =" &  HttpUtility.UrlEncode(emailToValidate)
  'Раскомментируйте, чтобы использовать дополнительный API с IP Lookup
  'Dim apiURL as string = "https://api.zerobounce.net/v1/validatewithip?apikey=" & apiKey &" & email = "& HttpUtility.UrlEncode (emailToValidate) &" & ipaddress = "& HttpUtility.UrlEncode (" 99.123.12.122 ")


  Тусклый request Как HttpWebRequest = Прямая трансляция(WebRequest.Create(apiURL), HttpWebRequest)
  request.Тайм-аут = 150000
  request.Method = "ПОЛУЧИТЬ"

  С помощью response Как WebResponse = request.GetResponse()
      response.GetResponseStream().ReadTimeout = 20000
      С помощью ostream Как Новый StreamReader(response.GetResponseStream())
          responseString = ostream.ReadToEnd()
      Конец С помощью
  Конец С помощью
Поймать ex Как exception
'Catch Exception - здесь будут показаны все ошибки - если есть проблемы с API
Конец Пытаться

    

    // Полные библиотеки API и оболочки могут быть найдены здесь: 
    // 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

    Пытаться {
      Строка apiKey = «Твой секретный ключ»;
      Строка emailToValidate = "example@example.com";
      Строка responseString = "";
          Строка apiURL = "https://api.zerobounce.net/v1/validate?apikey=" + apiKey + "& email =" +  HttpUtility.UrlEncode(emailToValidate);
      
              // Раскомментируйте, чтобы использовать дополнительный API с IP Lookup
              // строка apiURL = "https://api.zerobounce.net/v1/validatewithip?apikey=" + apiKey +" & email = "+ HttpUility.UrlEncode (emailToValidate); +" & ipaddress = "+ HttpUtility.UrlEncode (" 99.123.12.122 ")
      
          Httpwebrequest request = (HttpWebRequest)WebRequest.создайте(apiURL);
          request.Timeout = 150000;
          request.Method = "ПОЛУЧИТЬ";
      
          С помощью (Веб-ответ response = request.GetResponse()) {
              response.Getresponsestream().ReadTimeout = 20000;
              С помощью (StreamReader ostream = Новый StreamReader(response.Getresponsestream())) {
                  responseString = ostream.До конца();
              }
          }
          } Поймать (exception ex) {
      // Catch Exception - все ошибки будут показаны здесь - если есть проблемы с API
      }
    

    <?php
    // Полные библиотеки API и оболочки могут быть найдены здесь: 
    // https://www.zerobounce.net/docs/zerobounce-api-wrappers/#api_wrappers__v2__php

    
    // установить ключ api и адрес электронной почты для проверки
    $ apiKey = «Твой секретный ключ»;
    $ emailToValidate = 'example@example.com';
    $ IPToValidate = '99.123.12.122';
    // используем curl для выполнения запроса
    $ url = 'https://api.zerobounce.net/v1/validate?apikey='.$ apiKey.'& электронная почта ='.UrlEncode($ emailToValidate);
    // Раскомментируйте, чтобы использовать дополнительный API с IP Lookup
    // $ url = 'https://api.zerobounce.net/v1/validatewithip?apikey='.$apiKey.'&email='.urlencode($emailToValidate).'&ipaddress='.urlencode($IPToValidate);
    
    $ ch = curl_init($ url);
    //PHP‹0 Event.ndom1} и выше имеет поддержку TLS  1.2
    curl_setopt($ ch, CURLOPT_SSLVERSION, 6);
    curl_setopt($ ch, CURLOPT_RETURNTRANSFER, Правда);
    curl_setopt($ ch, CURLOPT_CONNECTTIMEOUT, 15); 
    curl_setopt($ ch, CURLOPT_TIMEOUT, 150); 
    $ ответ = curl_exec($ ch);
    curl_close($ ch);
    
    // декодировать ответ json
    $ json = json_decode($ ответ, Правда);
    ?>
    


  // Полные библиотеки API и оболочки могут быть найдены здесь: 
  //https://www.zerobounce.net/docs/zerobounce-api-wrappers/#api_wrappers__v2__java

    импортировать Ява.и.о..Буфер чтения;
    импортировать Ява.и.о..Inputstreamreader;
    импортировать Ява.сеть.HttpURLConnection;
    импортировать Ява.сеть.URL;
    
    Общественности Класс Мой класс {
    
        Общественности статический пустота главный(Строка[] args){
    
            Строка key = «Твой секретный ключ»;
            Строка email = "example@example.com";
            Строка ip = "99.123.12.122";
            Строка targetURL = "https://api.zerobounce.net/v1/validate?apikey="+key+"& email ="+email;
    // Раскомментируйте, чтобы исползовать дополнительный API с IP Lookup
    // Строка targetURL = "https://api.zerobounce.net/v1/validatewithip?apikey="+key+"&email="+email+"&ipaddress="+ip;
    
            HttpURLConnection connection = ноль;
            окончательный Строка USER_AGENT = "Mozilla / 5.0";
    
            Пытаться {
                url url = Новый url(targetURL);
                connection = (HttpURLConnection) url.OpenConnection();
                connection.setrequestmethod("ПОЛУЧИТЬ");
                connection.addrequestproperty(«Пользователь-агент», USER_AGENT);
                connection.setusecaches(Ложь);
                connection.setdooutput(Правда);
    
                Буфер чтения in = Новый Буфер чтения(
                        Новый Inputstreamreader(connection.getinputstream()));
                Строка inputLine;
                Струнный буфер response = Новый Струнный буфер();
    
                пока ((inputLine = in.ReadLine()) != ноль) {
                    response.append(inputLine);
                }
                in.близко();
    
                // распечатать результат
                Система.out.println(response.toString());
    
            } Поймать (Исключение e) {
                e.printstacktrace();
            } в конце концов {
                Если (connection != ноль) {
                    connection.отключить();
                }
            }
    
        }
    }
    

    # Полные библиотеки API и оболочки могут быть найдены здесь: 
    # https://www.zerobounce.net/docs/zerobounce-api-wrappers/#api_wrappers__v2__python
    
    url = "https://api.zerobounce.net/v1/validate"
    apikey = «Твой секретный ключ»
    email = "example@example.com"
    ipaddress = "99.123.12.122"
    
    params = {"эл. адрес": email, "апики": apikey}
    
    # Раскомментируйте, чтобы использовать дополнительный API с IP Lookup
    # params ["ipaddress"] = ipaddress
    
    response = requests.get(url, params=params)
    
    # Распечатать возвращенный json
    распечатать json.loads(response.content)
    
    


  // Полные библиотеки API и оболочки могут быть найдены здесь: 
  // https://www.zerobounce.net/docs/zerobounce-api-wrappers/#api_wrappers__v2__IOS

    позволяь key = «Твой секретный ключ»
    позволяь email = "example@example.com"
    позволяь url = url(string: Строка(format: "https://api.zerobounce.net/v1/validate?apikey=%@&email=%@", key, email))
    позволяь ip = "99.123.12.122"
    // Раскомментируйте, чтобы исползовать дополнительный API с IP Lookup
    // let url = URL (string: String (format: "https://api.zerobounce.net/v1/validatewithip?apikey=%@&email=%@&ipaddress=%@", key, email, ip))"
    позволяь task = Urlsession.shared.datatask(with: url!) { (data, response, error) в
        Если error != нль {
            NSLog(«Ошибка (строка (описание: ошибка))»)
        } еще {
            делать {
                позволяь parsedData = Пытаться Jsonserialization.jsonobject(with: data!) Как! [Строка:Любые]
                для (key, value) в parsedData {
                    NSLog("(ключ) = (значение)")
                }
            } Поймать {
                распечатать(«Ошибка десериализации JSON: (ошибка)»)
            }
        }
    }
    task.продолжить()
    


  // Полные библиотеки API и оболочки могут быть найдены здесь: 
  // https://www.zerobounce.net/docs/zerobounce-api-wrappers/#api_wrappers__v2__IOS


    NSString *key = @ "Твой секретный ключ";
    NSString *email = @"example@example.com";
    NSString *ip = @"99.123.12.122";
    NSString *urlString = [NSString stringWithFormat:@"https://api.zerobounce.net/v1/validate?apikey=%@&email=%@", key, email];
    // NSString * urlString = [NSString stringWithFormat: @ "https://api.zerobounce.net/v1/validatewithip?apikey=%@&email=%@&ipaddress=%@", key, email, ip];
    // Раскомментируйте, чтобы исползовать дополнительный API с IP Lookup
    
    
    __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;
        Если(response!=nil)
        {
            arrResponse = [NSJSONSerialization JSONObjectWithData: response options:kNilOptions error:nil];
        }
        dispatch_async(dispatch_get_main_queue(), ^(пустота) {
            для(NSString *key в [arrResponse allKeys]) {
                NSLog(@"%@: %@",key,[arrResponse objectForKey:key]);
            }
    // обратный вызов (nil, arr);
        });
    });
    



  // Полные библиотеки API и оболочки могут быть найдены здесь: 
  // https://www.zerobounce.net/docs/zerobounce-api-wrappers/#api_wrappers__v2__android

    // Добавляем в build.gradle (App) в скобку "android":
    useLibrary 'org.apache.http.legacy'
    
    //Пример:
    
    android {
        compileSdkVersion 25
        useLibrary 'org.apache.http.legacy'
    }
    
    //-----------------------------------
    
    // Имя файла: JsonParser.java
    
    
    импортировать андроид.операционные системы.Асинхронность;
    импортировать организация.json.jsonobject;
    импортировать Ява.util.Итератор;
    
    Общественности Класс Основное занятие продолжается Appcompatactivity {
    
        @Override
        защищенный пустота создавать(Сверток savedInstanceState) {
            супер.создавать(savedInstanceState);
    
            Новый Asynctaskparsejson().выполнять();
        }
    }
    
    Общественности Класс Asynctaskparsejson продолжается Асинхронность<Строка, Строка, Строка> {
    
        Строка key = «Твой секретный ключ»;
        Строка email = "example@example.com";
        Строка ip = "99.123.12.122";
        Строка url = "https://api.zerobounce.net/v1/validate?apikey="+key+"& email ="+email;
    // Раскомментируйте, чтобы исползовать дополнительный API с IP Lookup
    // String url = "https://api.zerobounce.net/v1/validatewithip?apikey="+key+"&email="+email+"&ipaddress="+ip;"
    
        @Override
        защищенный пустота onpreexecute() {
        }
    
        @Override
        защищенный Строка doinbackground(Строка... arg0) {
    
            Jsonparser jParser = Новый Jsonparser();
            jsonobject json = jParser.getjsonfromurl(url);
            Итератор keys = json.ключи();
            пока( keys.hasnext() ) {
                Строка key = (Строка)keys.следующий();
                Пытаться {
                    Система.out.println("ZeroBounce:"+key+" = " +json.получить(key).toString());
                }
                Поймать (Исключение e){}
            }
    
            Вернуть ноль;
        }
        @Override
        защищенный пустота onpostexecute(Строка strFromDoInBg) {}
    }
    
    //----------------------------------
    
    // Имя айла: MainActivity.java
    
    пакет ком.Zerobounce.zbapiandroid;
    
    импортировать Ява.и.о..Буфер чтения;
    импортировать Ява.и.о..IOException;
    импортировать Ява.и.о..Входной поток;
    импортировать Ява.и.о..Inputstreamreader;
    импортировать Ява.и.о..UnsupportedEncodingException;
    
    импортировать организация.apache.http.Httpentity;
    импортировать организация.apache.http.Httpresponse;
    импортировать организация.apache.http.клиент.Clientprotocolexception;
    импортировать организация.apache.http.клиент.методы.Httpget;
    импортировать организация.apache.http.имп.клиент.Defaulthttpclient;
    импортировать организация.json.Jsonexception;
    импортировать организация.json.jsonobject;
    
    импортировать андроид.util.Журнал;
    
    Общественности Класс Jsonparser {
    
        окончательный Строка TAG = "Jsonparser.java";
    
        статический Входной поток is = ноль;
        статический jsonobject jObj = ноль;
        статический Строка json = "";
    
        Общественности jsonobject getjsonfromurl(Строка url) {
    
            Пытаться {
    
                Defaulthttpclient httpClient = Новый Defaulthttpclient();
                Httpget httpGet = Новый Httpget(url);
    
                Httpresponse httpResponse = httpClient.выполнять(httpGet);
                Httpentity httpEntity = httpResponse.GetEntity();
                is = httpEntity.getcontent();
    
            } Поймать (UnsupportedEncodingException e) {
                e.printstacktrace();
            } Поймать (Clientprotocolexception e) {
                e.printstacktrace();
            } Поймать (IOException e) {
                e.printstacktrace();
            }
    
            Пытаться {
    
                Буфер чтения reader = Новый Буфер чтения(Новый Inputstreamreader(is, "изо- 8859-1"), 8);
                StringBuilder sb = Новый StringBuilder();
                Строка line = ноль;
                пока ((line = reader.ReadLine()) != ноль) {
                    sb.append(line + "
");
                }
                is.близко();
                json = sb.toString();
    
            } Поймать (Исключение e) {
                Журнал.e(TAG, «Ошибка преобразования результата» + e.toString());
            }
    
            Пытаться {
                jObj = Новый jsonobject(json);
            } Поймать (Jsonexception e) {
                Журнал.e(TAG, «Ошибка разбора данных» + e.toString());
            }
    
            Вернуть jObj;
        }
    }
    

Ответ конечной точки

Успешный ответ

      
    {
      "адрес":"flowerjill@aol.com",
      "положение дел":«действительный»,
      "sub_status":"",         
      "счет":"flowerjill",
      "домен":"aol.com",
      "одноразовый":Ложь,
      "токсичный":Ложь,
      "имя":«Джилл»,
      "фамилия":«Штайн»,
      "пол":"женщина",
      "расположение":ноль,
      "дата создания":ноль,
      "обработано":"2017-04-01 02:48:02.592"
     }
    

Успешный ответ с IP

      
    {
      "адрес":"flowerjill@aol.com",
      "положение дел":«действительный»,
      "sub_status":"", 
      "счет":"flowerjill",
      "домен":"aol.com",
      "одноразовый":Ложь,
      "токсичный":Ложь,
      "имя":«Джилл»,
      "фамилия":«Штайн»,
      "пол":"женщина",
      "расположение":ноль,
      "страна":"Соединенные Штаты",
      "область":"Флорида",
      "город":"Вест Палм Бич",
      "почтовый индекс":"33401",
      "дата создания":ноль,
      "обработано":"2017-04-01 02:48:02.592"
      }
    

Овет об ошибке

      
    {"ошибка":«Недействительный ключ API или в вашем аккаунте закончились кредиты»}