Verify FAQ
Jak dodać weryfikację do mojej aplikacji?
Dwa wywołania: utwórz weryfikację dla odbiorcy, a następnie sprawdź kod, który wprowadził. Sprawdzenie odbywa się po odbiorcy, więc nie musisz przechowywać identyfikatora weryfikacji między tymi dwoma wywołaniami: wystarczy identyfikator konfiguracji (stała) i adres.
Przez jakie kanały mogę przeprowadzać weryfikację?
E-mail, SMS i WhatsApp — już dziś. Voice jest wdrażany jako dodatkowy kanał. Kolejność kanałów, nadawca oraz to, które kanały są włączone, można konfigurować per kraj bez zmian w kodzie.
Czy muszę przechowywać identyfikator weryfikacji?
Nie. Ponowne wysłanie to to samo wywołanie create (create-or-retry), a sprawdzenie odbywa się po adresie odbiorcy, więc weryfikacja nie wymaga przechowywania stanu po Twojej stronie. Identyfikator jest zwracany, jeśli chcesz później sprawdzić status, ale jest opcjonalny.
Od kogo moi użytkownicy widzą kod?
Jedna z dwóch tożsamości zarządzanych przez Bird, wybierana osobno dla każdego kanału: domyślnie Bird Verify lub Authifly. E-mail przychodzi z otp@verify.bird.com, z otp@verify.authifly.com od Authifly lub z Twojej własnej zweryfikowanej domeny, a WhatsApp wysyła z numeru firmowego przypisanego do danej tożsamości. SMS wyświetla tożsamość jako identyfikator nadawcy wszędzie tam, gdzie dany kraj zezwala na nadawcę brandowanego, a krótki numer lub numer lokalny tam, gdzie jest to wymagane. Authifly to opcja, którą warto wybrać, gdy nie chcesz, aby Twoi użytkownicy widzieli jakiegokolwiek dostawcę platformy — authifly.com to publiczna strona, która zapewnia odbiorców, że Authifly wysyła legalne jednorazowe kody w imieniu firmy. Authifly jest obsługiwany przez Bird B.V.
Ile to kosztuje?
Verify nie jest jeszcze w publicznym cenniku. Skontaktuj się z nami, a przedstawimy Ci wycenę dla Twoich kanałów i wolumenu.
Czy za korzystanie z Verify płacę dodatkowo?
Nie. Nie ma planu ani opłaty platformowej za Verify. Płacisz standardową stawkę kanału dostarczania za każdy wysłany kod — nic więcej.
Ile kosztuje sprawdzenie kodu?
Nic. Opłata naliczana jest tylko za wysyłkę; wywołanie sprawdzające, niezależnie od tego, czy zakończy się sukcesem czy porażką, jest zawsze bezpłatne.
Jeśli wysyłka przełączy się na drugi kanał, czy płacę podwójnie?
Tak, ponieważ wysłano dwa komunikaty: oryginalną dostawę i dostawę awaryjną, każdą po stawce danego kanału. Ponowna wysyłka tym samym kanałem działa tak samo.
Jak długi jest kod i jak długo jest ważny?
Sześć cyfr, ważnych przez dziesięć minut — od razu po wyjęciu z pudełka. Oba parametry można konfigurować: od 4 do 8 znaków i ważność do około 16 godzin. Obecnie generowane są wyłącznie kody numeryczne.
Co się dzieje, gdy ktoś wprowadzi nieprawidłowy kod?
Sprawdzenie zwraca 200 z success: false oraz reason: incorrect_code, dopóki pozostają próby, attempts_exhausted po ich wyczerpaniu lub expired po upływie okna czasowego. Błędny kod to normalny wynik, na podstawie którego rozgałęziasz logikę.
Ile prób ma użytkownik?
Domyślnie pięć, z możliwością ustawienia od 1 do 10. Po wyczerpaniu limitu weryfikacja kończy się niepowodzeniem, a kod staje się nieaktywny — użytkownik musi rozpocząć nową weryfikację.
Jak często mogę ponownie wysłać kod do tej samej osoby?
Między wysyłkami do jednego odbiorcy obowiązuje cooldown — domyślnie 60 sekund, konfigurowalny do godziny — oraz godzinowy limit liczby kodów, które mogą zostać wysłane do jednego odbiorcy. Oba mechanizmy istnieją, by ograniczyć koszty, jakie może wygenerować spamer lub atak typu pumping.
Czym jest SMS OTP?
Jednorazowy kod SMS to krótki kod wysyłany na numer telefonu, który użytkownik przepisuje, aby potwierdzić, że kontroluje ten numer. To najczęściej stosowany drugi czynnik uwierzytelniania i weryfikacja przy rejestracji, ponieważ niemal każdy telefon odbiera SMS.
Do jakich krajów mogę wysyłać?
SMS jest wysyłany ze współdzielonego nadawcy zarządzanego przez Bird — Bird Verify lub Authifly. Zasady dotyczące identyfikatora nadawcy (Sender-ID) różnią się w zależności od kraju: niektóre kraje zezwalają na brandowany identyfikator nadawcy, inne wymagają krótkiego numeru lub numeru lokalnego. Zarejestrowani i dedykowani nadawcy z czasem zwiększają zasięg.
Jak zapobiegacie SMS pumping i atakom brute force?
Limity wysyłek na odbiorcę i limit prób odgadnięcia na weryfikację są wbudowane. Głębsze sygnały oszustw i ochrona przed SMS pumping są w przygotowaniu.
Kiedy powinienem weryfikować przez e-mail zamiast SMS?
E-mail nie wymaga numeru telefonu i dociera do każdego, kto ma skrzynkę odbiorczą — to solidna domyślna opcja przy rejestracji i odzyskiwaniu konta oraz naturalny zapas, gdy nie masz zweryfikowanego numeru telefonu. Wiele produktów oferuje obie metody i pozwala użytkownikowi wybrać.
Czy mogę wysyłać z własnej domeny?
Tak. Kody są domyślnie wysyłane ze współdzielonego nadawcy zarządzanego przez Bird (otp@verify.bird.com lub otp@verify.authifly.com od Authifly, jeśli wybierzesz tę tożsamość). Możesz też zmienić nadawcę na domenę, którą już zweryfikowano do wysyłki z Bird — wówczas kod dotrze z Twojego własnego adresu.
Czy lista blokowanych jest sprawdzana przed wysłaniem OTP?
E-mail OTP to transakcyjna poczta systemowa, więc nie podlega marketingowej liście blokowanych. Dostarczanie jest obsługiwane asynchronicznie przez pipeline e-mail, tak samo jak każda wysyłka transakcyjna.
Czy weryfikacja przez WhatsApp jest już dostępna?
Tak. WhatsApp jest dostępny jako kanał startowy obok e-maila i SMS — zamawiana pozycja w planie per kraj, bez zmian w wywołaniach tworzenia i sprawdzania. Kanał głosowy jest wciąż wdrażany.
Dlaczego warto weryfikować przez WhatsApp zamiast SMS?
Wiadomości z szablonem uwierzytelniania WhatsApp są brandowane i trafiają do aplikacji, którą wielu użytkowników ma stale otwartą. Na rynkach z intensywnym użyciem WhatsApp ustawienie go przed SMS pozwala dotrzeć do ludzi na preferowanym kanale, z SMS w rezerwie.
Co się stanie, jeśli użytkownik nie ma WhatsApp?
Numer telefonu jako cel niesie ze sobą cały plan kanałów z rodziny telefonicznej, więc SMS jest następny w kolejce za WhatsApp. W miarę wdrażania automatycznego przechodzenia między kanałami, weryfikacja z priorytetem WhatsApp przejdzie na SMS w tej samej sesji, a każdy kod w tej sesji pozostaje ważny do momentu weryfikacji, wygaśnięcia lub wyczerpania prób.
Czy weryfikacja głosowa jest już dostępna?
Jest wdrażana. Weryfikacja przez e-mail, SMS i WhatsApp jest dostępna teraz; weryfikacja głosowa pojawi się jako dodatkowy zamawiany kanał w tym samym planie per kraj, bez zmian w wywołaniach tworzenia i sprawdzania.
Kiedy powinienem użyć głosowego OTP?
Głos dociera do telefonów stacjonarnych i użytkowników, którzy nie mogą odbierać SMS, i stanowi solidny kanał awaryjny, gdy wiadomość tekstowa nie dotrze. To również bardziej dostępna opcja dla użytkowników, którzy nie mogą odczytać kodu na ekranie.
Jak głos współgra z SMS?
Oba to kanały z rodziny telefonicznej, adresowane tym samym numerem. Ustaw ich kolejność w planie kanałów (najczęściej SMS jako pierwszy, głos jako fallback), a pojedyncza weryfikacja może przejść z jednego na drugi, podczas gdy każdy kod w sesji pozostaje ważny.
Jakiego kanału powinienem użyć jako drugiego czynnika?
Użyj adresu, który już masz: numer telefonu weryfikuje się przez SMS lub WhatsApp, adres e-mail — przez e-mail. Konfiguracja per kraj kontroluje kolejność i nadawców na poszczególnych rynkach.
Czy dodanie 2FA oznacza konieczność przechowywania stanu weryfikacji?
Nie. Bird sprawdza po odbiorcy, więc Twój handler logowania wysyła kod, a następnie sprawdza go po tym samym adresie — nie musisz przechowywać po swojej stronie żadnego identyfikatora weryfikacji ani rekordu oczekującego kodu.
Czym logowanie bez hasła różni się od 2FA?
W przypadku dwuskładnikowego uwierzytelniania kod jest drugim dowodem obok hasła. Logowanie bez hasła eliminuje hasło i używa kodu jako jedynego poświadczenia. Oba scenariusze to ten sam przepływ Bird Verify wyślij-i-sprawdź: zmienia się tylko to, czy hasło poprzedza ten proces.
Czy logowanie bez hasła jest mniej bezpieczne?
Eliminuje najczęściej atakowane poświadczenie: hasła są ponownie używane, wyłudzane phishingiem i wyciekają. Kod jednorazowy jest generowany kryptograficznie, przechowywany wyłącznie jako hash i chroniony przez blokadę po nieudanych próbach oraz limity wysyłek — czynnikiem uwierzytelniającym jest posiadanie dostępu do kanału.
Czy użytkownicy mogą się logować bez wpisywania kodu?
Właśnie tam zmierza cicha (sieciowa) autentykacja: potwierdzanie numeru telefonu przez sieć mobilną bez wpisywania kodu. Jest zaprojektowana w modelu Verify jako przyszły kanał, więc jego późniejsze wdrożenie nie będzie wymagało przebudowy logowania.
W jaki sposób weryfikacja jest rozwiązywana do planu kanałów?
Wywołanie create jest rozwiązywane względem bazy Bird dla danego kraju: kolejności kanałów, nadawców oraz domyślnych ustawień kodu i TTL, które Bird utrzymuje na podstawie doświadczenia w masowej wysyłce e-maili i SMS. Opcje per-request, takie jak channels lub code_length, mogą zmienić kolejność lub zawęzić plan dla pojedynczego wywołania — wszystko, co nie zostało ustawione, pochodzi z bazy dla danego kraju. Dostępność w danym kraju oraz globalny kill-switch ograniczają to, co może pojawić się w rozwiązanym planie, który jest zwracany w każdej odpowiedzi.
Co daje mi baza Bird per kraj?
Rozsądny punkt wyjścia w każdym kraju bez dodatkowej konfiguracji: które kanały warto wypróbować, którzy nadawcy są dozwoleni i sensowne domyślne ustawienia kodu — utrzymywane przez Bird na podstawie lat doświadczenia w obsłudze e-maili i SMS. Budujesz na tym, zamiast odkrywać to od nowa.
Czy mogę włączyć kanał, którego Bird nie oferuje w danym kraju?
Nie. Dostępność per kraj to górny limit, a nie wartość domyślna: możesz włączyć tylko to, co Bird obsługuje w danym miejscu. Włączenie niedostępnego kanału jest operacją bez efektu, a nie cichym błędem — plan nigdy nie obiecuje kanału, który faktycznie nie może wysyłać.
Jak jest określany kraj?
Na podstawie numeru telefonu odbiorcy w formacie E.164, w momencie rozwiązywania. Nie przekazujesz kraju — Bird go ustala i stosuje odpowiednią trasę. E-mail jest niezależny od kraju.
Jak kody są generowane i przechowywane?
Za pomocą kryptograficznego źródła losowości. Przechowywane są wyłącznie jako hash HMAC-SHA256, porównywany w stałym czasie. Kod w postaci jawnej nigdy nie jest zwracany przez API ani zapisywany w Twoim stosie technologicznym czy naszych logach.
Jak zapobiegacie próbom odgadnięcia kodu metodą brute force?
Każda sesja ma ograniczoną liczbę prób sprawdzenia (domyślnie 5), a każde porównanie odbywa się w stałym czasie, więc analiza czasowa nic nie ujawnia. Po wyczerpaniu limitu sesja kończy się niepowodzeniem — atakujący nie może dalej zgadywać.
Czy te zabezpieczenia kosztują dodatkowo?
Nie. Generowanie kryptograficzne, przechowywanie w postaci hasha, sprawdzanie w stałym czasie, blokada po wyczerpaniu prób i limity wysyłek — tak działa każda weryfikacja. Nie ma żadnego płatnego poziomu bezpieczeństwa.
Gdzie przechowywane są moje dane?
W regionie, w którym hostowana jest Twoja organizacja — us1 lub eu1. Twój klucz API zawiera tę informację w prefiksie (bk_us1_…, bk_eu1_…), dzięki czemu SDK i CLI automatycznie wybierają właściwy endpoint bez konieczności konfiguracji.
Co właściwie może klucz API?
Tylko to, do czego go uprawnisz. Klucz zawiera listę zakresów uprawnień (scopes), każdy z poziomem odczytu lub zapisu, więc klucz tworzący weryfikacje nie musi mieć żadnych innych uprawnień. Możesz też przypiąć klucz do zestawu zakresów CIDR i rotować go z okresem przejściowym (domyślnie 24 godziny), dzięki czemu wymiana nie wymaga przestoju.
Gdzie znajdę dokumentację dotyczącą bezpieczeństwa i ochrony danych?
Certyfikaty i dokumentacja bezpieczeństwa znajdują się w Trust Center na trust.bird.com. Umowa o przetwarzaniu danych, polityka prywatności i zasady dopuszczalnego użytkowania są opublikowane na bird.com/legal. W sprawie kwestionariusza dostawcy skontaktuj się ze swoim zespołem opiekuna konta Bird.