엔드포인트

스토어 개인정보 답변

Google Play의 Data safety 양식과 App Store의 App Privacy 양식에 대한 답변을 앱 코드에서 읽어 내서 알려 줘요.

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

요금제: 모든 요금제

Google Play의 Data safety 양식과 App Store의 App Privacy 양식은 첫 앱이 가장 자주 막히는 곳이에요. 이 양식들은 소유자가 이름으로 골라 본 적 없는 데이터 유형, 예를 들어 광고 ID나 비정상 종료 로그를 물어봐요. 이 호출은 앱의 코드가 하는 일을 바탕으로 두 양식에 모두 답해요. 사람들이 로그인하는지, 무엇이 저장되는지, 사진이나 위치를 쓰는지, 휴대폰 프로젝트가 광고를 보여 주거나 무언가를 파는지, 그리고 Setherion이 게시된 사이트에 무엇을 더하는지예요.

무료이고 크레딧을 쓰지 않아요. Viewer 권한이면 충분해요. 답변은 “Publish to app stores” 창이 단계마다 보여 주는 답변과 같아요. 앱 스토어에 게시하기를 참고하세요.

이 답변은 코드에서 읽어 낸 제안이고, 소유자가 제출하기 전에 확인해야 해요. 법률 자문이 아니에요. 추측이 어느 한쪽이 더 안전한 경우에는, 답변이 데이터를 빼지 않고 선언하는 쪽을 택해요. 스토어는 불필요한 한 줄은 너그럽게 넘어가지만, 빠진 한 줄 때문에는 앱을 내리기 때문이에요.

요청

여기서는 way가 필수예요. 답변이 달라지기 때문이에요.

bash
curl "https://www.setherion.com/api/v1/projects/7c1e4a52-9b0d-4f3e-8a61-2d5f0c9e7b14/store/privacy?way=easy" \
  -H "Authorization: Bearer $SETHERION_API_KEY"
파라미터의미
way필수예요. easy 또는 native예요. Easy way는 게시된 웹사이트를 감싸는 방식이라서, 그 답변에는 Setherion이 게시된 모든 사이트에 더하는 페이지 조회 수, 무작위 방문자 ID, 오류 보고가 들어가요. Native way는 그렇지 않지만, 광고와 인앱 구매가 포함될 수 있어요.

응답

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."
}
필드유형의미
waystring요청한 방식이에요.
notestring위의 경고문으로, 답변 옆에 보여 주기 위한 거예요.
googlePlayDataSafetystringData safety 양식이에요. 줄바꿈(\n)이 들어 있는 일반 텍스트예요.
appStoreAppPrivacystringApp Privacy 양식이에요. 줄바꿈이 들어 있는 일반 텍스트예요.

각 텍스트는 양식의 이름으로 시작하고, 이어서 양식의 질문과 그 아래에 답변이 나와요. 그다음 Data types: 줄이 나오고, 유형마다 한 줄씩 있으며 그 아래 괄호 안에 이유가 적혀 있어요. 마지막에는 참고 사항이 있으면 붙어요. 그대로 출력하거나, 양식을 채우는 동안 옆에 두세요.

답변을 읽어 내는 기준
  • 로그인. 사람들이 앱에 회원가입하면 이메일 주소와 사용자 ID를 선언해요. 그러면 양식이 계정을 어떻게 만드는지, 그리고 사람들이 자기 데이터를 삭제해 달라고 요청할 수 있는지도 물어요. 앱에 Delete account button이 없으면, 답변은 먼저 추가하라고 알려 주고, 스토어 준비 가이드가 그것을 추가하는 요청문을 제안해요.
  • 저장된 데이터와 AI. 앱이 레코드를 저장하거나 AI 서비스에 텍스트를 보내면, 사람들이 입력한 내용을 사용자 콘텐츠로 선언해요. 사람들이 이름, 전화번호, 주소, 메시지를 입력한다면 그것들도 선언하라는 참고 문구가 붙어요.
  • 사진과 동영상. 앱에 이미지나 동영상을 올리는 파일 입력이 있거나 카메라를 쓸 때예요.
  • 위치. 앱이 휴대폰에 현재 위치를 물어볼 때예요.
  • 구매. 앱이 Stripe로 결제를 받거나, Native way에서 인앱 구매를 판매할 때예요.
  • 광고(Native way에만 해당). 광고 ID, 대략적인 위치, 광고 상호작용은 공유하는 것으로 선언하고, App Store 양식에서는 추적 질문에 Yes로 답해요. 이 줄들을 Google AdMob 자체 목록과 비교해 보라는 참고 문구가 붙어요.
  • 게시된 웹사이트(Easy way에만 해당). 페이지 조회 수, 무작위 방문자 ID, 비정상 종료 로그예요. Google Analytics를 연결했다면 더 많은 데이터를 수집한다는 참고 문구가 붙어요.

앱 안에 있는 Setherion 자체 파일은 제외되므로, 앱이 직접 한 일로 치지 않아요.

아무것도 수집하지 않는 Native 앱은 각 양식의 첫 번째 질문에 No가 나오고, 데이터 유형은 없어요. Easy 앱에는 위의 웹사이트 항목이 항상 들어가요.

오류

상태발생하는 경우
400way가 없거나, easy 또는 native가 아닌 다른 값이에요.
401키가 없거나, 잘못되었거나, 폐기되었어요.
404그런 앱이 없거나, 내 키로 열 수 없어요.
409앱에 아직 코드가 없어요. 먼저 Setherion에서 앱을 만드세요.
정확한 문장
상태error
400way is "easy" or "native".
404No such app on this account.
409This app has no code yet. Build it in Setherion first.

이 페이지가 도움이 됐나요?

커뮤니티 참여하기

질문, 아이디어, 그리고 다른 사람들이 만들고 있는 것.