Endpointy

Odpowiedzi o prywatności w sklepach

Odpowiedzi do formularza Data safety w Google Play i formularza App Privacy w App Store, odczytane z kodu aplikacji.

GEThttps://www.setherion.com/api/v1/projects/{id}/store/privacy

Plan: Każdy plan

Formularz Data safety w Google Play i formularz App Privacy w App Store to te, na których pierwsza aplikacja zwykle utyka. Pytają o typy danych, których właściciel nigdy nie wybierał z nazwy, takie jak identyfikator reklamowy czy dziennik awarii. To wywołanie odpowiada na oba na podstawie tego, co robi kod aplikacji: czy ludzie się logują, co jest zapisywane, czy używane są zdjęcia lub lokalizacja, czy projekt na telefon pokazuje reklamy lub coś sprzedaje i co Setherion dodaje do opublikowanej strony.

Jest darmowe i nie zużywa kredytów. Wystarczy dostęp do podglądu. Odpowiedzi są takie same jak te, które okno „Publish to app stores” pokazuje w swoich krokach. Zobacz Publikowanie w sklepach z aplikacjami.

To sugestie odczytane z kodu, które właściciel ma sprawdzić przed wysłaniem. Nie są poradą prawną. Tam, gdzie domysł jest bezpieczniejszy w jedną stronę, odpowiedź raczej deklaruje dane, niż je pomija, bo sklep wybacza jedną linię za dużo, a usuwa aplikację za brakującą.

Żądanie

Parametr way jest tu wymagany, bo zmienia odpowiedzi.

bash
curl "https://www.setherion.com/api/v1/projects/7c1e4a52-9b0d-4f3e-8a61-2d5f0c9e7b14/store/privacy?way=easy" \
  -H "Authorization: Bearer $SETHERION_API_KEY"
ParametrZnaczenie
wayWymagany. easy lub native. Łatwa droga opakowuje opublikowaną stronę, więc jej odpowiedzi zawierają liczbę odsłon, losowy identyfikator odwiedzającego i raporty o błędach, które Setherion dodaje do każdej opublikowanej strony. Droga Native tego nie robi, ale może obejmować reklamy i zakupy w aplikacji.

Odpowiedź

json
{
  "ok": true,
  "way": "easy",
  "note": "Suggestions read from the app's code, for the owner to check before sending. Where a guess is safer one way, they declare rather than leave out.",
  "googlePlayDataSafety": "Google Play: Data safety\n\nDoes your app collect or share any of the required user data types?\n  Yes\nIs all of the user data collected by your app encrypted in transit?\n  Yes. Everything goes over HTTPS.\n\nData types:\n- App activity > App interactions: collected, not shared, required. Purposes: Analytics.\n  (Setherion counts the pages people open, under a random id kept in the app, for your visitor numbers.)\n- Device or other IDs > Device or other IDs: collected, not shared, required. Purposes: Analytics.\n  (That random id tells one visitor from another, nothing more.)\n- App info and performance > Crash logs: collected, not shared, required. Purposes: App functionality, Analytics.\n  (When the app hits an error, Setherion receives the error message, so you can fix it.)\n\nIf you connected Google Analytics to this app, it also collects app interactions and an id for Analytics.",
  "appStoreAppPrivacy": "App Store: App Privacy\n\nDo you or your third-party partners collect data from this app?\n  Yes, we collect data from this app\nIs any of it used to track people (across other companies' apps and websites)?\n  No\n\nData types:\n- Usage Data > Product Interaction: not linked to the user, not used for tracking. Purposes: Analytics.\n  (Setherion counts the pages people open, under a random id kept in the app, for your visitor numbers.)\n- Identifiers > Device ID: not linked to the user, not used for tracking. Purposes: Analytics.\n  (That random id tells one visitor from another, nothing more.)\n- Diagnostics > Crash Data: not linked to the user, not used for tracking. Purposes: App Functionality, Analytics.\n  (When the app hits an error, Setherion receives the error message, so you can fix it.)\n\nIf you connected Google Analytics to this app, it also collects app interactions and an id for Analytics."
}
PoleTypZnaczenie
waystringDroga, której dotyczy prośba.
notestringPowyższe ostrzeżenie, do pokazania obok odpowiedzi.
googlePlayDataSafetystringFormularz Data safety jako zwykły tekst z łamaniem wierszy (\n).
appStoreAppPrivacystringFormularz App Privacy jako zwykły tekst z łamaniem wierszy.

Każdy tekst zaczyna się od nazwy formularza, potem są pytania formularza z odpowiedzią pod każdym, potem Data types: z jedną linią na typ i powodem w nawiasie pod nią, a na końcu ewentualne uwagi. Wydrukuj go w takiej postaci albo trzymaj obok formularza podczas jego wypełniania.

Z czego odczytywane są odpowiedzi
  • Logowanie. Adres e-mail i identyfikator użytkownika są deklarowane, gdy ludzie zakładają konto w aplikacji. Formularz pyta wtedy też, jak powstają konta i czy ludzie mogą poprosić o usunięcie swoich danych. Jeśli aplikacja nie ma przycisku Delete account, odpowiedź mówi, żeby go najpierw dodać, a przewodnik po sklepach proponuje prośbę, która go dodaje.
  • Zapisane dane i AI. To, co wpisują ludzie, jest deklarowane jako treści użytkownika, gdy aplikacja zapisuje rekordy lub wysyła tekst do usługi AI. Uwaga przypomina właścicielowi, żeby zadeklarował też imiona i nazwiska, numery telefonu, adresy lub wiadomości, jeśli ludzie je wpisują.
  • Zdjęcia i filmy. Gdy aplikacja ma pole pliku dla obrazów lub wideo albo używa aparatu.
  • Lokalizacja. Gdy aplikacja pyta telefon, gdzie się znajduje.
  • Zakupy. Gdy aplikacja przyjmuje płatności przez Stripe albo w drodze Native sprzedaje zakupy w aplikacji.
  • Reklamy (tylko droga Native). Identyfikator reklamowy, przybliżona lokalizacja i interakcje z reklamami są deklarowane jako udostępniane, a śledzenie ma w formularzu App Store odpowiedź Yes. Uwaga mówi, żeby porównać te linie z własną listą Google AdMob.
  • Opublikowana strona (tylko łatwa droga). Odsłony, losowy identyfikator odwiedzającego i dzienniki awarii. Uwaga mówi, że Google Analytics, jeśli jest połączony, zbiera więcej.

Własne pliki Setherion w aplikacji są pomijane, więc nie liczą się jako dzieło samej aplikacji.

Aplikacja Native, która niczego nie zbiera, dostaje No przy pierwszym pytaniu każdego formularza i żadnych typów danych. Aplikacja z łatwą drogą zawsze ma powyższe wpisy dotyczące strony.

Błędy

StatusKiedy
400Brakuje way albo jest to coś innego niż easy lub native.
401Klucza brakuje, jest błędny albo unieważniony.
404Nie ma takiej aplikacji albo twój klucz nie może jej otworzyć.
409Aplikacja nie ma jeszcze kodu. Najpierw zbuduj ją w Setherion.
Dokładne zdania
Statuserror
400way is "easy" or "native".
404No such app on this account.
409This app has no code yet. Build it in Setherion first.

Czy ta strona była pomocna?

Dołącz do społeczności

Pytania, pomysły i to, co budują inni.