Polityka prywatności aplikacji Hang
Wersja 1.0.4 · obowiązuje od · język polski · English version
1. Administrator danych
Administratorem danych osobowych użytkowników Aplikacji Hang jest Conttinu. Z administratorem można skontaktować się przez Pomoc Hang lub pod adresem support@conttinu.com.
2. Jakie dane przetwarzamy
Przetwarzamy dane potrzebne do utworzenia i obsługi konta, w szczególności adres e-mail, login, bezpieczny skrót hasła, identyfikator logowania Apple, avatar oraz ustawienia profilu. Przetwarzamy także tokeny sesji i powiadomień oraz podstawowe informacje techniczne i logi bezpieczeństwa.
W zależności od używanych funkcji przetwarzamy ulubione miejsca, prywatne listy i plany podróży, preferencje powiadomień oraz zgłoszenia. Nie wymagamy podawania danych medycznych; informacje o diecie lub zdrowiu wpisane dobrowolnie do treści są przetwarzane jako część tej treści.
Podczas wyszukiwania miejsc przesyłamy do backendu surową treść wpisanego zapytania, aby zwrócić pasujące wyniki. Jeżeli korzystasz z wyszukiwania w pobliżu lub mapy i udostępnisz lokalizację, Aplikacja może przesłać lokalizację urządzenia albo bounding box wyliczony z tej lokalizacji lub aktualnego obszaru mapy, aby wyszukać miejsca w żądanym obszarze. Ostatnie zapytania mogą być przechowywane lokalnie na urządzeniu. Są to dane funkcjonalne wyszukiwania, a nie parametry zdarzeń analitycznych.
Kanał powiadomień działa niezależnie od zgody na analitykę produktową. W celu rejestracji i doręczania powiadomień przetwarzamy token rejestracyjny APNs lub FCM, Firebase Installation ID, model urządzenia, język i ustawienie locale, strefę czasową, system operacyjny, wersję i numer buildu Aplikacji, preferencje powiadomień oraz dane o doręczeniu. Token może zostać powiązany z kontem po zalogowaniu. Firebase Installation ID służy operacyjnej instalacji usług Firebase i jest odrębny od analitycznego App Instance ID.
Kanał diagnostyczny także działa niezależnie od zgody na analitykę produktową. Raporty Crashlytics lub Sentry mogą zawierać opis awarii, stack trace, model i stan urządzenia, system operacyjny, wersję Aplikacji, techniczne logi i breadcrumbs oraz — gdy użytkownik jest zalogowany — diagnostyczny identyfikator konta. Nie dodajemy do nich Firebase App Instance ID ani lokalnego identyfikatora zastępczego flag.
Po dobrowolnej zgodzie na analitykę produktową przetwarzamy również pseudonimowy Firebase App Instance ID, a na iOS także niereklamowy IDFV, zdarzenia użycia produktu oraz ograniczony kontekst: platformę, wersję i numer buildu Aplikacji, środowisko, język i ustawienie locale, które może obejmować region lub skrypt, stan zgody oraz loggedIn, czyli wyłącznie informację boolean, czy konto jest zalogowane. Szczegóły tych danych i przepływu opisujemy niżej.
3. Treści społecznościowe
Treści publikowane publicznie — w tym opinie, komentarze, wątki, odpowiedzi, zdjęcia, avatar i udostępnione plany podróży — są widoczne dla innych osób wraz z informacjami o autorze przewidzianymi w Aplikacji. Treść może zostać przetworzona na potrzeby publikacji, wyszukiwania, zgłoszeń, moderacji, zapobiegania nadużyciom i naliczania funkcji społecznościowych.
Nie umieszczaj w publicznej treści danych, których nie chcesz ujawniać, ani danych innych osób bez odpowiedniej podstawy.
4. Historia dokumentów i decyzji o zgodzie
Gdy akceptujesz Regulamin i Zasady społeczności, zapisujemy identyfikator konta, typ i wersję dokumentu, czas serwera, platformę, wersję aplikacji oraz powierzchnię akceptacji. Nie zapisujemy w tym celu adresu IP, identyfikatora urządzenia ani kopii tekstu dokumentu.
Dla zalogowanego użytkownika decyzję o opcjonalnej zgodzie zapisujemy jako niezmienną historię identyfikatora konta, celu, dokładnego dokumentu, udzielenia albo wycofania, czasu serwera, platformy i wersji Aplikacji. Dla użytkownika anonimowego decyzja zawierająca cel, dokument, wynik i czas pozostaje lokalnie na urządzeniu i nie jest przesyłana do anonimowego endpointu backendu.
Polityka prywatności jest prezentowana jako informacja i nie jest traktowana jako zgoda na wszystkie cele przetwarzania. Zgoda na analitykę produktową jest przedstawiana osobno, domyślnie wyłączona i wymaga jawnej pozytywnej decyzji.
5. Cele i podstawy przetwarzania
Dane przetwarzamy, aby świadczyć usługę i wykonywać umowę z użytkownikiem: tworzyć konto, uwierzytelniać, synchronizować dane, publikować wybrane treści, obsługiwać żądania oraz dostarczać powiadomienia zgodnie z ustawieniami użytkownika.
Gdy użytkownik zleca wyszukiwanie tekstowe, wyszukiwanie w pobliżu lub wyszukiwanie na mapie, przetwarzamy surową treść zapytania oraz — zależnie od wybranej funkcji i uprawnienia — lokalizację urządzenia albo bounding box w celu wykonania umowy i zwrócenia żądanych wyników. Dane te nie są ponownie wykorzystywane jako parametry analityki produktowej.
W uzasadnionym interesie dbamy o bezpieczeństwo i stabilność Aplikacji, przeciwdziałamy nadużyciom, moderujemy zgłoszenia oraz diagnozujemy awarie z użyciem zminimalizowanych danych Crashlytics i Sentry. Kanały powiadomień i diagnostyki są celami operacyjnymi niezależnymi od zgody na analitykę produktową.
Na podstawie dobrowolnej zgody zgodnie z art. 6 ust. 1 lit. a RODO mierzymy użycie funkcji, prowadzimy kontrolowane eksperymenty i porównujemy warianty, aby wykrywać problemy w ścieżkach produktowych oraz podejmować decyzje o rozwoju Hang na podstawie danych. Odmowa nie ogranicza podstawowych funkcji. Danych z tego celu nie używamy do reklamy personalizowanej, sprzedaży danych ani decyzji wywołujących skutki prawne lub podobnie istotne skutki.
W uzasadnionym interesie Conttinu bezpiecznie dostarczamy i konfigurujemy zwykłe flagi funkcji. W tym odrębnym celu build stagingowy lub produkcyjny może pobrać definicje z GrowthBook CDN także bez zgody na analitykę produktową. Zakres tego żądania opisujemy w następnej sekcji.
Dane możemy również przetwarzać w celu wykonania obowiązku prawnego lub ochrony roszczeń. Zgodę można wycofać w każdej chwili bez wpływu na zgodność wcześniejszego przetwarzania.
6. Analityka produktowa, eksperymenty i minimalizacja
Po aktualnej zgodzie włączamy Firebase Analytics. Może on automatycznie rejestrować first_open i uruchomienie Aplikacji, rozpoczęcie sesji i user_engagement, wyświetlenie ekranu, aktualizację Aplikacji lub systemu operacyjnego oraz — zależnie od platformy i sposobu doręczenia — otrzymanie, wyświetlenie na pierwszym planie, otwarcie albo odrzucenie powiadomienia Firebase Cloud Messaging.
Automatyczne zdarzenia powiadomień mogą zawierać techniczne metadane wiadomości: identyfikator lub nazwę wiadomości, temat, etykietę, kanał, typ i czas. Nazwa kampanii, temat i etykieta nie mogą zawierać adresu e-mail, loginu, imienia ani innych danych pozwalających bezpośrednio zidentyfikować osobę. Firebase może również przetwarzać model urządzenia, system operacyjny, wersję Aplikacji, język i ustawienie locale, które może obejmować region lub skrypt, oraz przybliżony region.
Własne zdarzenia produktowe obejmują kategorie nawigacji i ekranów, wyszukiwania i filtrów, miejsc i ulubionych, opinii i funkcji społecznościowych, rejestracji i logowania, dokumentów prawnych i aktualizacji Aplikacji oraz eksperymentów. Zawierają techniczne identyfikatory miejsca, opinii, eksperymentu, funkcji, wariantu lub reguły tylko tam, gdzie są potrzebne, oraz wartości kategorialne, źródło, wynik i wspólny kontekst Aplikacji. Nie zawierają treści opinii, wątku, zgłoszenia, zdjęcia ani dokumentu. Dla wyszukiwania analitycznego zapisujemy jedynie stan filtrów i szerokie przedziały długości zapytania oraz liczby wyników, nigdy surową treść zapytania ani lokalizację przesyłaną funkcjonalnie do backendu.
Płatności i automatyczna analityka zakupowa nie są obecnie objęte tym celem. Przed ich uruchomieniem opublikujemy nowy komunikat i poprosimy o nową decyzję.
Firebase App Instance ID jest pseudonimowym identyfikatorem instalacji. Po zgodzie GrowthBook używa go lokalnie do przypisania instalacji do wariantu. Na iOS Firebase Analytics może również przetwarzać IDFV, czyli niereklamowy identyfikator dostawcy aplikacji na urządzeniu. IDFV nie jest IDFA. Nie prosimy o zgodę App Tracking Transparency i nie wykorzystujemy IDFA ani Android Advertising ID.
Flagi są oceniane na urządzeniu, a zdalna ewaluacja jest wyłączona, dlatego App Instance ID, loggedIn i atrybuty przypisania nie trafiają do żądania pobierającego definicje flag. App Instance ID nie jest custom parametrem zdarzenia, logiem, breadcrumbem ani częścią raportu błędu.
Także bez zgody build stagingowy lub produkcyjny może wykonać żądanie GET bez body do GrowthBook CDN po definicje zwykłych flag. Żądanie nie zawiera App Instance ID, lokalnego identyfikatora zastępczego ani atrybutów przypisania. GrowthBook i jego CDN otrzymują jednak zwykłe metadane sieciowe, takie jak adres IP i wpis w logu dostępu. Ten ruch nie emituje mierzonej ekspozycji ani zdarzenia produktowego.
Firebase Analytics zarządza odpowiadającym identyfikatorem na najwyższym poziomie jako user_pseudo_id. Dzienny eksport trafia do BigQuery w regionie EU. Do zminimalizowanych widoków kuratorskich trafiają wyłącznie experiment_viewed, place_searched i place_viewed, a identyfikator nosi tam nazwę anonymous_id. GrowthBook otrzymuje dostęp tylko do odczytu do tych widoków, aby łączyć wariant z wynikiem, ale nie otrzymuje dostępu do pozostałych zdarzeń w surowych tabelach eksportu.
Lokalny kontekst GrowthBook może zawierać platformę, wersję i numer buildu Aplikacji, środowisko, język i ustawienie locale, które może obejmować region lub skrypt, stan zgody i loggedIn jako boolean, ale nie identyfikator konta, login ani adres e-mail. loggedIn nie jest custom parametrem Firebase Analytics, kolumną widoku kuratorskiego ani atrybutem wysyłanym do GrowthBook CDN. Aplikacja nie dodaje do zdarzeń backendowego identyfikatora konta, surowej treści wyszukiwania, dokładnej lokalizacji, historii lokalizacji ani adresu IP jako własnego parametru. Google otrzymuje jednak adres IP podczas transmisji i może wyprowadzić z niego przybliżony region.
Ustawienia ad_storage, ad_user_data i ad_personalization pozostają denied niezależnie od zgody na analitykę produktową. Nie używamy identyfikatorów reklamowych ani danych z tego celu do reklamy.
Doręczanie powiadomień przez Apple Push Notification service i Firebase Cloud Messaging pozostaje odrębnym kanałem działającym niezależnie od tej zgody. Zgoda nie włącza tego kanału; automatyczne pomiary Firebase Analytics związane z powiadomieniami są natomiast zbierane dopiero po aktualnej zgodzie.
Produktowe breadcrumbs trafiają do Sentry tylko po aktualnej zgodzie. Operacyjne raportowanie błędów przez Sentry lub Crashlytics pozostaje osobnym, zminimalizowanym kanałem; zgoda na analitykę produktową go nie włącza i nie pozwala dodać App Instance ID lub innego identyfikatora przypisania. Diagnostyczny identyfikator konta używany przez ten kanał jest odrębny od tożsamości analitycznej i nie służy do bucketingu.
7. Odbiorcy, dostawcy i transfery
Dane mogą być powierzane dostawcom hostingu, przechowywania plików, poczty elektronicznej, powiadomień i monitoringu błędów, wyłącznie w zakresie potrzebnym do wykonania ich usług i z odpowiednimi zabezpieczeniami. Dane mogą zostać ujawnione organowi publicznemu, gdy wymaga tego prawo.
Do operacyjnego doręczania powiadomień korzystamy z Apple Push Notification service oraz Google Firebase Cloud Messaging. Do diagnostyki stabilności i błędów korzystamy z Google Firebase Crashlytics oraz Sentry. Dostawcy otrzymują wyłącznie dane potrzebne odpowiednio do rejestracji i doręczenia wiadomości albo przyjęcia, zabezpieczenia i analizy raportu technicznego. Kanały te działają niezależnie od zgody na analitykę produktową.
Dla analityki produktowej korzystamy z usług Firebase, Google Analytics i Google Cloud BigQuery dostarczanych przez odpowiednie podmioty z grupy Google oraz z GrowthBook Cloud dostarczanego przez GrowthBook, Inc. GrowthBook ma dostęp tylko do zminimalizowanych widoków BigQuery. W aktualnym modelu usługi GrowthBook mogą uczestniczyć podprocesorzy Amazon Web Services w Stanach Zjednoczonych, Fastly w infrastrukturze globalnej oraz MongoDB w Stanach Zjednoczonych. Nie korzystamy z GrowthBook Managed Warehouse.
Dane mogą być przetwarzane poza Europejskim Obszarem Gospodarczym, w tym w Stanach Zjednoczonych. Gdy wymaga tego prawo, transfer opieramy na odpowiednim mechanizmie, takim jak decyzja stwierdzająca odpowiedni stopień ochrony albo standardowe klauzule umowne, wraz z minimalizacją danych, kontrolą dostępu i szyfrowaniem transmisji.
8. Okres przechowywania
Dane aktywnego konta przechowujemy przez czas korzystania z Aplikacji. Po potwierdzonym żądaniu konto i powiązane dane w aktywnych systemach są usuwane zwykle w ciągu kilku minut, nie później niż w ciągu 30 dni, z wyjątkami wymaganymi prawem lub ochroną roszczeń.
Kopie bezpieczeństwa podlegają rotacji: dzienne do 7 dni, tygodniowe do 28 dni i miesięczne do 180 dni. Nie są używane w bieżącej pracy; po odtworzeniu kopii ponownie stosujemy potwierdzone usunięcia.
Techniczny ślad wykonanego żądania usunięcia — nieodwracalny skrót i daty bez adresu e-mail oraz identyfikatora konta — przechowujemy maksymalnie 180 dni dla audytu, idempotencji i obsługi odtworzenia kopii. Historia akceptacji dokumentów i decyzji o zgodzie jest usuwana wraz z kontem.
Surowa treść zapytania, lokalizacja urządzenia i bounding box są przetwarzane w celu obsługi konkretnego wyszukiwania. Mogą wystąpić w technicznej pamięci podręcznej albo logach operacyjnych i bezpieczeństwa, jeżeli powstają one podczas obsługi żądania. Przechowujemy je tylko tak długo, jak jest to potrzebne do zwrócenia lub ponowienia wyniku, ochrony usługi, diagnozy nadużycia albo ochrony roszczeń, a następnie usuwamy lub anonimizujemy zgodnie z właściwym cyklem systemu. Ostatnie zapytania zapisane lokalnie pozostają do usunięcia ich przez użytkownika lub danych Aplikacji.
Tokeny APNs i FCM oraz ich powiązanie z kontem przechowujemy tak długo, jak są potrzebne do doręczania powiadomień zgodnie z ustawieniami; usuwamy albo unieważniamy je po wyłączeniu właściwej funkcji, wylogowaniu, usunięciu konta lub rotacji tokenu, z uwzględnieniem bezpiecznych prób dokończenia unieważnienia. Firebase Installation ID, metadane doręczenia i diagnostyka Crashlytics lub Sentry podlegają okresom wynikającym z celu operacyjnego, konfiguracji usługi i polityk dostawcy; usuwamy lub anonimizujemy je, gdy nie są już potrzebne do doręczenia, bezpieczeństwa, diagnozy awarii albo ochrony roszczeń.
Ustawienie retencji nieagregowanych danych o zdarzeniach i użytkowniku w Google Analytics 4, używanych między innymi w analizach eksploracyjnych, wynosi 14 miesięcy, a opcja rozpoczynania tego okresu od nowa po nowej aktywności jest wyłączona. Standardowe zagregowane raporty Google Analytics nie podlegają temu samemu ustawieniu i mogą pozostać dostępne dłużej jako agregaty. Tabele, widoki i partycje bieżącego pilota BigQuery Sandbox w regionie EU wygasają automatycznie po 60 dniach.
GrowthBook nie ma dostępu do surowych tabel Google Analytics. W ramach dostępu do zminimalizowanego źródła i działania usługi może przetwarzać konfigurację, metadane i wyniki zapytań, pamięć podręczną oraz logi bezpieczeństwa i dostępu. Okresy ich przechowywania zależą od kategorii danych, konfiguracji, obowiązującej umowy i polityk dostawcy. Conttinu usuwa lub anonimizuje te dane, gdy nie są już potrzebne do opisanych celów, z uwzględnieniem obowiązków prawnych i ochrony roszczeń.
Anonimowy zapis decyzji pozostaje na urządzeniu do usunięcia danych Aplikacji albo zastąpienia go nowszą decyzją. Wycofanie zgody zatrzymuje nowe zbieranie, ale nie usuwa automatycznie danych przesłanych wcześniej, które podlegają powyższym okresom lub odrębnemu żądaniu usunięcia.
9. Prawa użytkownika
Użytkownik może żądać dostępu do danych, ich sprostowania, usunięcia, ograniczenia przetwarzania i przeniesienia, a także wnieść sprzeciw, gdy podstawą jest uzasadniony interes. Zgodę można w każdej chwili wycofać w ustawieniach Profilu. Przysługuje również prawo złożenia skargi do właściwego organu nadzorczego, w Polsce do Prezesa Urzędu Ochrony Danych Osobowych.
Ze względu na pseudonimowy charakter danych analitycznych możemy poprosić o informacje potrzebne do bezpiecznego odnalezienia właściwej instalacji i potwierdzenia żądania. Kontakt w tej sprawie nie powoduje ponownego włączenia analityki.
10. Usunięcie konta, treści i danych analitycznych
Konto można usunąć w Aplikacji albo przez publiczną stronę Usuń konto i dane Hang. Ze względów bezpieczeństwa wysyłamy jednorazowy link na zweryfikowany adres i nie ujawniamy na formularzu, czy konto istnieje.
Usunięcie obejmuje konto, sesje, listy, plany, treści społecznościowe, opinie, tokeny powiadomień, akceptacje prawne, decyzje o zgodzie oraz pliki powiązane z użytkownikiem. Zagregowane dane, których nie można powiązać z osobą, nie są objęte usunięciem.
Wycofanie zgody na analitykę zapisuje lokalną odmowę, wyłącza nowe zdarzenia i mierzone eksperymenty, wyłącza Firebase Analytics oraz resetuje jego lokalne dane i App Instance ID. Nie jest jednak tym samym co żądanie usunięcia danych już przesłanych. Takie żądanie można złożyć osobno przez Pomoc Hang lub e-mail, bez ponownego włączania analityki.
11. Bezpieczeństwo i decyzje automatyczne
Stosujemy środki organizacyjne i techniczne odpowiednie do ryzyka, w tym kontrolę dostępu, szyfrowane połączenia, minimalizację danych i odrębne uprawnienia do widoków kuratorskich. Automatyczne sygnały mogą wspierać ochronę przed spamem i szkodliwą treścią, ale nie podejmujemy na ich podstawie decyzji wywołujących wobec użytkownika skutki prawne bez odpowiedniej podstawy i możliwości interwencji.
12. Wersje i zmiany
Numer dokumentu i data obowiązywania są wskazane nad treścią. Informujemy o istotnych zmianach odpowiednio do ich znaczenia. Istotna zmiana celu analityki, zakresu danych, dostawców albo sposobu wykorzystania pseudonimowego identyfikatora wymaga nowego komunikatu i nowej decyzji o zgodzie. Polska i angielska treść opisują te same zasady.