사용자 개인정보 보호 API
사용자 개인 정보 보호 API v2 사용 가능
Amplitude는privacy.amplitude.com에서 호스팅되는 사용자 개인 정보 보호 API v2를 릴리스했습니다. 새로운 통합의 경우, 사용자 개인 정보 보호 API v2를 권장합니다. 이 페이지에서는 v1 API(/api/2/deletions/users amplitude.com에 대해 지역
기본 URL은 프로젝트의 데이터 상주 위치에 따라 달라집니다. 이 페이지의 모든 예제에서 프로젝트가 Amplitude의 EU 데이터 센터를 사용하지 않는 한 기본 URL을 사용하십시오. 이 경우 이 표의 EU 기본 URL을 사용하십시오.
요청은 https://amplitude.com(기본값) 또는 https://analytics.eu.amplitude.com (EU)로 이동합니다. https://analytics.amplitude.com호스트 이름은 분석 웹 앱(브라우저 UI)입니다. REST 요청에는 analytics.amplitude.com이 표에 나와 있는 호스트를 사용하십시오.
| 데이터 상주 | 기본 URL |
|---|---|
| 기본값 | https://amplitude.com |
| EU | https://analytics.eu.amplitude.com |
고려 사항
사용자 개인정보 보호 API를 사용할 때는 다음 사항에 유의하십시오.
- 단일 프로젝트 또는 전체 조직에서 최종 사용자의 데이터를 삭제할 수 있습니다. 기본적으로 삭제 요청은 요청의 API 키가 식별하는 프로젝트에 대한 작업을 생성합니다. 전체 조직에서 사용자를 삭제하려면
delete_from_org매개 변수를true로 설정하십시오.delete_from_org이true인 경우, API는 요청된 사용자에 대한 데이터를 포함하는 프로젝트당 하나의 삭제 작업을 생성하며 입력에 관계없이true를ignore_invalid_ids로 처리합니다. - 귀하가 삭제 요청을 할 때, Amplitude는 모든 계정 관리자에게 삭제 세부 정보를 이메일로 전송합니다.
- Amplitude는 삭제 작업의 각 Amplitude ID에 대해 작업이 실행될 때까지 추가된 모든 이벤트와 사용자 속성을 삭제합니다.
- 사용자에 대해 삭제 작업을 실행해도 해당 사용자에 대한 새 이벤트가 차단되지 않습니다. Amplitude는 삭제된 사용자로부터 새로운 이벤트를 수락합니다.
- Amplitude가 삭제된 사용자에 대한 이벤트를 수신하면 Amplitude는 삭제된 사용자를 새 사용자로 간주합니다. 삭제는 Amplitude 서버에서 모든 사용자 데이터를 제거하므로 Amplitude는 새 사용자를 삭제된 사용자로 인식하지 않습니다.
- Amplitude는 리소스에 미치는 영향을 줄이고 고가용성을 보장하기 위해 삭제를 위한 배치 작업을 예약합니다. 배치의 첫 번째 요청 날짜는 스케줄링을 위한 기준점입니다. GDPR 제12.3조와 제17조에 따라 Amplitude는 요청을 받은 후 30일 첫 사용 후 삭제 요청을 처리합니다. 실제 일정은 요청의 복잡성과 수에 따라 달라집니다. 데이터 볼륨이 큰 경우(>1BB 이상/월), Amplitude는 삭제 예약 빈도를 줄일 수 있습니다.
- 작업의 예약된 실행 날짜 3일 전까지 배치에서 요청을 취소할 수 있습니다. 다음 기간동안(3일) 배치를 편집할 수 없습니다. Amplitude는 다음 기간동안 이루어진 삭제 요청을 새 배치에 추가합니다.
- 3일이 지나면 요청의 상태가
submitted로 변경되며 작업을 중지할 수 없습니다. 삭제 프로세스는 관련 복구 및 백업 시스템을 포함한 모든 Amplitude 시스템에서 사용자와 관련된 모든 데이터를 제거합니다. 작업이 완료되면 해당 상태가done로 변경됩니다. - 삭제 요청의 진행 상황을 확인하려면 각 프로젝트의 API 키를 사용하여 GET API로 작업 상태를 검사하십시오.
- 이 사용자 개인 정보 보호 API는 Amplitude 플랫폼의 데이터만 삭제합니다. Statsig 플랫폼에서 데이터를 삭제하려면 Statsig 사용자 데이터 삭제 요청 API를 사용하십시오.
사용자 추적
: 이 API를 사용한다고 해서 삭제된 사용자의 향후 사용자 추적이 방지되지는 않습니다. 애플리케이션에서 사용자 추적을 중단하려면 사용 중인 Amplitude SDK의 문서에 있는 setOptOut()방법을 참조하세요.
웨어하우스 변경 데이터 캡처(CDC) 소스 또는 기타 데이터 웨어하우스 수집 방법을 사용하고, 해당 데이터가 데이터 웨어하우스에 남아 있는 동안 Amplitude에서 사용자의 데이터를 삭제한 경우, Amplitude는 다음 기간동안 이를 다시 수집할 수 있습니다. 완전한 삭제를 보장하려면 데이터 웨어하우스 또는 다른 수집 소스에서 사용자의 데이터를 삭제하십시오.
제한
엔드포인트의 속도 제한/api/2/deletions/users은 초당 1개의 HTTP 요청입니다. 각 HTTP 요청은 최대 100 amplitude_ids 개 또는 user_ids을 포함할 수 있습니다. 또한 특정 프로젝트에 대해 동시에 실행되는 요청은 8개로 제한됩니다.
각 요청에 100명의 사용자를 일괄 처리할 경우 초당 최대 100개의 삭제 요청을 생성하십시오.
사용자 삭제
POST /deletions/users
JSON 본문을 사용하여 삭제할 사용자를 추가합니다. 한 번에 최대 100명의 사용자를 지정할 수 있습니다. Amplitude ID와 사용자 ID를 함께 사용할 수 있습니다.
JSON 본문 매개 변수
body 매개변수는 필수입니다. 이 객체는 사용자가 삭제할 user_ids및 amplitude_ids를 나열하는 삭제 요청 객체입니다.
| 이름 | 설명 |
|---|---|
amplitude_ids | 삭제할 사용자의 Amplitude ID입니다. |
user_ids | 삭제할 사용자의 사용자 ID입니다. |
requester | 삭제를 요청한 내부 사용자입니다. 이는 감사에 유용합니다. |
ignore_invalid_id | 부울입니다. 기본값은 false입니다. false요청에 포함된 전체 사용자가 프로젝트에서 발견되지 않을 경우 API는 400 오류를 반환하고 해당 사용자를 삭제하도록 표시하지 않습니다. APItrue는 200 성공을 반환하고 목록을 포함하며 invalid_ids프로젝트에서 발견된 전체 사용자를 작업에 추가합니다. invalid_ids는 프로젝트에 데이터가 없는 요청된 사용자를 나타냅니다. delete_from_org가 true인 경우 API는 이 필드를 true로 설정하고 입력을 무시합니다. |
delete_from_org | 부울입니다. 기본값은 false입니다. false인 경우, 요청은 API 키가 식별하는 프로젝트에서만 요청된 사용자들을 삭제합니다. true이때 API는 요청된 사용자를 해당 데이터가 포함된 각 프로젝트의 작업에 삽입함으로써 전체 조직 내에서 삭제합니다. true인 경우 API는 ignore_invalid_ids를 true로 설정하고 입력을 무시합니다. |
include_mapped_user_ids | 이때 true는 제공된 amplitude_id에 해당하는 유효한 user_id값을 반환합니다. 이 매개 변수는 응답 객체만 변경합니다. 사용자 매핑 API를 사용하여 매핑된 사용자 세트를 삭제하려면 매핑된 각 사용자를 user_ids 배열에 포함합니다user_id. |
응답
POST 요청에 대한 응답에는 다음 필드가 포함됩니다.
| 이름 | 설명 |
|---|---|
day | 삭제 작업이 시작될 것으로 예약된 날짜입니다. |
status | 삭제 작업의 상태입니다. |
amplitude_ids 그리고 user_ids | 삭제할 Amplitude ID 목록입니다. |
app | 프로젝트 또는 앱 ID입니다. 삭제 요청이 여러 프로젝트를 대상으로 하는 경우 포함됩니다. |
invalid_ids | ignore_invalid_ids가 true인 경우, 요청되었지만 프로젝트에서 찾을 수 없는 사용자 목록이 포함됩니다. |
amplitude_ids키에는 다음 필드가 포함됩니다.
| 이름 | 설명 |
|---|---|
amplitude_id | 삭제할 사용자의 Amplitude ID입니다. |
requester | Amplitude ID 삭제를 요청한 사람입니다. |
requested_on_day | 이 삭제가 요청된 날짜입니다. |
user_id | 해당 사용자 ID입니다. include_mapped_user_ids가 true이고 amplitude_id가 user_ids와 일치할 때 포함됩니다. |
삭제 작업 가져오기
/api/2/deletions/users?start_day=YYYY-MM-DD&end_day=YYYY-MM-DD
특정 시간 범위에서 예약된 삭제 작업 목록을 검색합니다. 시간 범위에는 요청을 한 날짜와 30일을 포함해야 합니다. 예를 들어 2018년 8월 1일에 삭제 요청을 한 경우 쿼리에 start_day = 2018-08-01및 end_day = 2018-08-31가 포함되어야 합니다.
요청이 값을 반환하지 않으면 해당 시간 범위에 대해 예약된 작업이 없는 것입니다. 허용되는 최대 기간은 6개월입니다.
# You can also use wget
curl -X GET 'https://amplitude.com/api/2/deletions/users?start_day=string&end_day=string' \
-H 'Accept: application/json' \
-U API_KEY:API_SECRET
쿼리 매개 변수
| 이름 | 설명 |
|---|---|
start_day | 필수입니다. 데이터 시리즈에 포함된 첫 번째 시간, 형식은 YYYY-MM-DD. 예를 들어 2022-02-01. |
end_day | 필수입니다. 데이터 시리즈에 포함된 마지막 시간, 형식은 YYYY-MM-DD. 예를 들어 2022-02-01. |
응답
GET요청에 대한 성공 응답에는 다음 필드가 포함됩니다.
day- 설명: 삭제 작업이 시작될 것으로 예약된 날짜입니다.
status- 설명:
- 삭제 작업의 상태입니다.
- 준비: 작업이 시작되지 않았으므로 수정할 수 있습니다. 이 작업에 더 많은 삭제 요청이 예약될 수 있으며 이 작업에서 요청을 제거할 수 있습니다.
- 제출됨: 작업이 실행되도록 제출되었습니다. 수정할 수 없습니다.
- 완료: 작업의 실행이 완료되었습니다. 수정할 수 없습니다.
- 설명:
amplitude_ids- 설명: 삭제할 사용자들의 Amplitude ID 목록입니다.
app- 설명: 프로젝트 또는 앱 ID입니다. 삭제한 내용이 둘 이상의 프로젝트에 적용된 경우 나타납니다.
active_scrub_done_date- 설명: 스크럽이 완료되었으며 데이터에 더 이상 액세스할 수 없는 날짜입니다. 이 날짜 이후에는 Amplitude는 전체 백업이 자동으로 지워질 때까지 5일을 기다립니다. 백업이 제거된 후에만 상태가
done로 변경됩니다.
- 설명: 스크럽이 완료되었으며 데이터에 더 이상 액세스할 수 없는 날짜입니다. 이 날짜 이후에는 Amplitude는 전체 백업이 자동으로 지워질 때까지 5일을 기다립니다. 백업이 제거된 후에만 상태가
amplitude_ids키에는 다음 필드가 포함됩니다.
| 이름 | 설명 |
|---|---|
amplitude_id | 삭제할 사용자의 Amplitude ID입니다. |
requester | Amplitude ID 삭제를 요청한 사람입니다. |
requested_on_day | 이 삭제가 요청된 날짜입니다. |
[
{
"day": "string",
"amplitude_ids": [
{
"amplitude_id": 0,
"requested_on_day": "string",
"requester": "string"
}
],
"status": "string"
}
]
삭제 작업에서 사용자 삭제
삭제 작업에서 지정된 Amplitude ID를 제거합니다.
/api/2/deletions/users/AMPLITUDE_ID/YYYY-MM-DD
curl -X DELETE \
'https://amplitude.com/api/2/deletions/users/AMPLITUDE_ID/JOB_START_DAY' \
-H 'Content-Type: application/json' \
-U API_KEY:API_SECRET
경로 변수
| 이름 | 설명 |
|---|---|
AMPLITUDE_ID | 필수입니다. 삭제 작업에서 제거할 amplitude_id을(를) 지정합니다. |
JOB_START_DAY | 필수입니다. 삭제가 예약된 날짜입니다. YYYY-MM-DD |
응답
성공적인 요청은 다음 스키마를 가진 응답을 반환합니다.
| 속성 | 설명 |
|---|---|
amplitude_id | 작업에서 제거된 사용자의 Amplitude ID |
requester | Amplitude ID 삭제를 요청한 사람입니다. |
requested_on_day | 이 삭제가 요청된 날짜입니다. |
{
"amplitude_id": 1234567,
"requested_on_day": "string",
"requester": "string"
}
상태 코드
| 코드 | 메시지 |
|---|---|
| 200 | 성공 |
| 400 | 잘못된 요청입니다. |
| 401 | 승인되지 않은 |
이 내용이 도움이 되었나요?