실험 실험 API 관리 실험 엔드포인트
| 이름 | 설명 |
|---|---|
| 목록 | 구성 세부 정보를 포함한 실험 목록입니다. |
| 자세한 정보 보기 | 실험의 구성 세부 정보를 가져옵니다. |
| 버전 목록 | 실험에 대한 모든 버전을 나열합니다. |
| 버전 세부 정보 얻기 | 실험을 위한 특정 버전을 가져옵니다. |
| 변형 목록 | 실험에 대한 모든 변형을 나열합니다. |
| 변형 세부 정보 얻기 | 실험을 위한 특정 변형을 가져옵니다. |
| 변형 포함 사항 가져오기 | 변형에 포함된 모든 사용자 목록을 가져옵니다. |
| 변형 코호트 포함 확인 | 변형에 대한 모든 코호트 포함 항목을 가져옵니다. |
| 변형 생성 | 실험을 위한 새 변형을 생성합니다. |
| 변형 편집 | 실험에 대한 변형을 편집합니다. |
| 변형 제거 | 실험에서 변형을 제거합니다. |
| 변형에 사용자 추가 | 실험의 변형에 사용자를 추가합니다. |
| 변형에 코호트 추가 | 실험의 변형에 코호트를 추가합니다. |
| 변형에서 사용자 제거 | 실험의 변형에서 사용자를 제거합니다. |
| 변형에서 모든 사용자 제거 | 실험의 변형에서 모든 사용자를 제거합니다. |
| 변형에서 사용자를 대량 삭제 | 실험의 변형에서 사용자를 대량 제거합니다. |
| 변형에서 코호트를 대량 제거 | 실험의 변형에서 코호트를 대량 제거합니다. |
| 배포 내역 목록 | 실험에 대한 모든 배포를 나열합니다. |
| 배포 추가 | 실험에 배포를 추가합니다. |
| 배포 제거 | 실험에서 배포를 제거합니다. |
| 편집 | 실험을 편집합니다. |
| 생성 | 새 실험을 생성합니다. |
EU 데이터 레지던시
. 이 페이지의 예제에서는 기본 URLhttps://experiment.amplitude.com을 사용합니다. 프로젝트에서 Amplitude의 EU 데이터 센터를 사용하고 있다면 대신 https://experiment.eu.amplitude.com 사용하세요. 자세한 내용은 지역을 참조하십시오.
목록
GET https://experiment.amplitude.com/api/1/experiments
실험 목록과 해당 구성 세부 정보를 가져옵니다. 결과는 가장 최근에 생성된 항목부터 먼저 정렬됩니다.
이 목록에는 기능 및 웹 실험만 포함되며 deliveryMethod필드에는 각 실험의 유형이 표시됩니다. 이 엔드포인트의 이전 버전에서는 너지 실험과 같은 다른 전달 방법을 사용하여 실험을 반환할 수 있었으며 이를 구별할 방법이 없었습니다.
쿼리 매개 변수
| 이름 | 설명 |
|---|---|
key | 실험 키가 이 값과 일치하는 실험을 필터링합니다. |
projectId | 이 프로젝트에 속한 실험을 필터링합니다. |
limit | 반환할 최대 실험 수입니다. 1000개로 제한되었습니다. |
cursor | 결과 "페이지"를 시작할 위치를 지정하는 오프셋입니다. |
includeArchived | 선택 사항입니다. 부울입니다. 기본값은 false입니다. false인 경우 활성 실험만 반환합니다. true인 경우 활성 실험 및 보관된 실험을 반환합니다. |
deliveryMethod | 선택 사항입니다. 문자열입니다. 전달 방법(feature또는 web)별로 실험을 필터링합니다. 생략된 경우 피쳐와 웹 실험을 모두 반환합니다. |
응답
성공적인 요청은 200 OK응답과 응답 본문에 JSON으로 인코딩된 실험 목록을 반환합니다. createdAt및 lastModifiedAt은 ISO 8601 형식의 UTC입니다. deliveryMethod``feature은 기능 실험 web또는 웹 실험용입니다.
curl --request GET \
--url 'https://experiment.amplitude.com/api/1/experiments?limit=1000' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer <management-api-key>'
자세한 정보 보기
GET https://experiment.amplitude.com/api/1/experiments/<id>
실험의 구성 세부 정보를 가져옵니다.
경로 변수
| 이름 | 설명 |
|---|---|
id | 필수입니다. 문자열입니다. 실험의 ID입니다. Amplitude 앱에서 실험의 URL에서 ID를 찾으십시오. |
응답
성공적인 요청은 200 OK응답과 실험 세부 정보가 포함된 JSON 객체를 반환합니다.
curl --request GET \
--url 'https://experiment.amplitude.com/api/1/experiments/<id>' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer <management-api-key>'
버전 목록
GET https://experiment.amplitude.com/api/1/experiments/{id}/versions
실험에 사용할 모든 버전 목록을 가져옵니다.
경로 변수
| 이름 | 설명 |
|---|---|
id | 필수입니다. 유형: string. 실험의 ID입니다. Amplitude 앱에서 실험의 URL에서 ID를 찾으십시오. |
응답
성공적인 요청은 200 OK응답과 응답 본문에 JSON 객체의 배열로 인코딩된 실험 버전 목록을 반환합니다. 버전은 내림차순으로 정렬됩니다.
curl --request GET \
--url 'https://experiment.amplitude.com/api/1/experiments/<id>/versions' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer <management-api-key>'
버전 세부 정보 얻기
GET https://experiment.amplitude.com/api/1/experiments/{id}/versions/{versionId}
특정 버전의 실험에 대한 세부 정보를 가져옵니다.
경로 변수
| 이름 | 설명 |
|---|---|
id | 필수입니다. 유형: string. 실험의 ID입니다. Amplitude 앱에서 실험의 URL에서 ID를 찾으십시오. |
versionId | 필수입니다. 유형: string. 버전의 ID입니다. |
응답
성공적인 요청은 200 OK응답과 버전 세부 정보가 포함된 JSON 객체를 반환합니다.
curl --request GET \
--url 'https://experiment.amplitude.com/api/1/experiments/<id>/versions/<versionId>' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer <management-api-key>'
변형 목록
GET https://experiment.amplitude.com/api/1/experiments/{id}/variants
실험에 사용할 모든 변형의 목록을 가져옵니다.
경로 변수
| 이름 | 설명 |
|---|---|
id | 필수입니다. 유형: string. 실험의 ID입니다. Amplitude 앱에서 실험의 URL에서 ID를 찾으십시오. |
응답
성공적인 요청은 200 OK응답과 응답 본문에 JSON 객체의 배열로 인코딩된 변형 목록을 반환합니다.
curl --request GET \
--url 'https://experiment.amplitude.com/api/1/experiments/<id>/variants' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer <management-api-key>'
변형 세부 정보 얻기
GET https://experiment.amplitude.com/api/1/experiments/{id}/variants/{variantKey}
실험의 특정 변형에 대한 세부 정보를 가져옵니다.
경로 변수
| 이름 | 설명 |
|---|---|
id | 필수입니다. 유형: string. 실험의 ID입니다. Amplitude 앱에서 실험의 URL에서 ID를 찾으십시오. |
variantKey | 필수입니다. 유형: string. 변형의 키입니다. |
응답
성공적인 요청은 200 OK응답과 실험 변형의 세부 정보가 포함된 JSON 객체를 반환합니다.
curl --request GET \
--url 'https://experiment.amplitude.com/api/1/experiments/<id>/variants/<variantKey>' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer <management-api-key>'
변형 포함 사항 가져오기
GET https://experiment.amplitude.com/api/1/experiments/{id}/variants/{variantKey}/users
실험의 특정 변형에 대한 포함 항목 목록을 가져옵니다.
경로 변수
| 이름 | 설명 |
|---|---|
id | 필수입니다. 유형: string. 실험의 ID입니다. Amplitude 앱에서 실험의 URL에서 ID를 찾으십시오. |
variantKey | 필수입니다. 유형: string. 변형의 키입니다. |
응답
성공적인 요청은 200 OK응답과 실험 변형에 대한 포함 항목 목록을 JSON 객체의 배열로 반환합니다.
curl --request GET \
--url 'https://experiment.amplitude.com/api/1/experiments/<id>/variants/<variantKey>/users' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer <management-api-key>'
변형 코호트 포함 확인
GET https://experiment.amplitude.com/api/1/experiments/{id}/variants/{variantKey}/cohorts
실험의 특정 변형에 대한 코호트 포함 목록을 가져옵니다.
경로 변수
| 이름 | 설명 |
|---|---|
id | 필수입니다. 유형: string. 실험의 ID입니다. Amplitude 앱에서 실험의 URL에서 ID를 찾으십시오. |
variantKey | 필수입니다. 유형: string. 변형의 키입니다. |
응답
성공적인 요청은 200 OK응답과 실험 변형에 대한 코호트 포함 목록을 코호트 ID 배열로 반환합니다.
curl --request GET \
--url 'https://experiment.amplitude.com/api/1/experiments/<id>/variants/<variantKey>/cohorts' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer <management-api-key>'
변형 생성
POST https://experiment.amplitude.com/api/1/experiments/{id}/variants
실험을 위한 새 변형을 생성합니다.
경로 변수
| 이름 | 설명 |
|---|---|
id | 필수입니다. 문자열입니다. 실험의 ID입니다. Amplitude 앱에서 실험의 URL에서 ID를 찾으십시오. |
요청 본문
| 이름 | 설명 |
|---|---|
key | 필수입니다. 유형: string. 변형 키입니다. 문자, 숫자, 밑줄(_) 및 하이픈(-)만 사용할 수 있습니다. |
description | 선택 사항입니다. 유형: string. 변형에 대한 설명입니다. |
name | 선택 사항입니다. 유형: string. 변형의 이름입니다. |
payload | 선택 사항입니다. 유형: JSON. 선택적 페이로드. 값은 유효한 JSON 요소여야 합니다. |
rolloutWeight | 선택 사항입니다. 유형: number. 대상이 아닌 사용자를 위한 배포 가중치입니다. |
요청
{
"key": "new-variant-key",
"description": "optional description for variant",
"name": "optional name for variant",
"payload": { "variant-payload": "example payload" },
"rolloutWeight": 0
}
응답
성공적인 요청은 200 OK응답과 OK 텍스트를 반환합니다.
요청 예제
curl --request POST \
--url 'https://experiment.amplitude.com/api/1/experiments/<id>/variants' \
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer <management-api-key>' \
--data '{"key":"<key>","name":"<name>","description":"<description>","payload":"<payload>","rolloutWeight":<rolloutWeight>}'
변형 편집
PATCH https://experiment.amplitude.com/api/1/experiments/<id>/variants/<variantKey>
실험에 대한 변형을 편집합니다.
경로 변수
| 이름 | 설명 |
|---|---|
id | 필수입니다. 유형: string. 실험의 ID입니다. Amplitude 앱에서 실험의 URL에서 ID를 찾으십시오. |
variantKey | 필수입니다. 유형: string. 변형의 키입니다. |
요청 본문
| 이름 | 설명 |
|---|---|
key | 선택 사항입니다. 유형: string. 변형 키입니다. 문자, 숫자, 밑줄(_) 및 하이픈(-)만 사용할 수 있습니다. |
description | 선택 사항입니다. 유형: string. 변형에 대한 설명입니다. |
name | 선택 사항입니다. 유형: string. 변형의 이름입니다. |
payload | 선택 사항입니다. 유형: JSON. 선택적 페이로드. 값은 유효한 JSON 요소여야 합니다. 이 값은 변형 페이로드의 기존 값을 대체합니다. |
rolloutWeight | 선택 사항입니다. 유형: number. 대상이 아닌 사용자를 위한 배포 가중치입니다. |
요청 예제
{
"key": "updated-variant-key",
"description": "updated-optional description for variant",
"name": "optional name for variant",
"payload": { "variant-payload": "example payload" },
"rolloutWeight": 10
}
응답
성공적인 요청은 200 OK응답과 OK 텍스트를 반환합니다.
요청
curl --request PATCH \
--url 'https://experiment.amplitude.com/api/1/experiments/<id>/variants/<variantKey>' \
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer <management-api-key>' \
--data '{"key":"<key>","name":"<name>","description":"<description>","payload":"<payload>","rolloutWeight":<rolloutWeight>}'
변형 제거
DELETE https://experiment.amplitude.com/api/1/experiments/{id}/variants/{variantKey}
실험에서 변형을 제거합니다.
경로 변수
| 이름 | 설명 |
|---|---|
id | 필수입니다. 유형: string. 실험의 ID입니다. Amplitude 앱에서 실험의 URL에서 ID를 찾으십시오. |
variantKey | 필수입니다. 유형: string. 변형의 키입니다. |
응답
성공적인 요청은 200 OK응답과 OK 텍스트를 반환합니다.
요청
curl --request DELETE \
--url 'https://experiment.amplitude.com/api/1/experiments/<id>/variants/<variantKey>' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer <management-api-key>'
변형에 사용자 추가
POST https://experiment.amplitude.com/api/1/experiments/{id}/variants/{variantKey}/users
실험의 변형에 포함 대상(사용자 또는 장치)을 추가합니다.
경로 변수
| 이름 | 설명 |
|---|---|
id | 필수입니다. 유형: string. 실험의 ID입니다. Amplitude 앱에서 실험의 URL에서 ID를 찾으십시오. |
variantKey | 필수입니다. 유형: string. 변형의 키입니다. |
요청 예제
{
"inclusions": [<user1>@<your-company-email>, <user2>@<your-company-email>, <userId>]
}
요청 본문
| 이름 | 설명 |
|---|---|
inclusions | 필수입니다. 유형: object. 사용자 또는 장치 ID의 문자열 배열을 포함합니다. |
응답
성공적인 요청은 200 OK응답과 OK 텍스트를 반환합니다.
요청
curl --request POST \
--url 'https://experiment.amplitude.com/api/1/experiments/<id>/variants/<variantKey>/users' \
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer <management-api-key>' \
--data '{"inclusions":<["id1", "id2", "id3"]>}'
변형에 코호트 추가
POST https://experiment.amplitude.com/api/1/experiments/{id}/variants/{variantKey}/cohorts
실험의 변형에 코호트 포함을 추가합니다.
경로 변수
| 이름 | 설명 |
|---|---|
id | 필수입니다. 유형: string. 실험의 ID입니다. Amplitude 앱에서 실험의 URL에서 ID를 찾으십시오. |
variantKey | 필수입니다. 유형: string. 변형의 키입니다. |
요청 본문
| 이름 | 설명 |
|---|---|
inclusions | 필수입니다. 유형: array. 추가할 코호트 ID의 배열입니다. |
요청 예제
{
"inclusions": ["cohort-id-1", "cohort-id-2"]
}
응답
성공적인 요청은 200 OK응답과 OK 텍스트를 반환합니다.
요청
curl --request POST \
--url 'https://experiment.amplitude.com/api/1/experiments/<id>/variants/<variantKey>/cohorts' \
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer <management-api-key>' \
--data '{"inclusions":["cohort-id-1", "cohort-id-2"]}'
변형에서 사용자 제거
DELETE https://experiment.amplitude.com/api/1/experiments/{id}/variants/{variantKey}/users/{userIndex}
실험의 변형에서 포함 대상(사용자 또는 장치)을 제거합니다.
경로 변수
| 이름 | 설명 |
|---|---|
id | 필수입니다. 유형: string. 실험의 ID입니다. Amplitude 앱에서 실험의 URL에서 ID를 찾으십시오. |
variantKey | 필수입니다. 유형: string. 변형의 키입니다. |
userIndex | 필수입니다. 유형: string. 사용자의 인덱스입니다. 0부터 시작하는 인덱스입니다. Get variant inclusions에서 사용자의 인덱스 기반 배열을 가져옵니다. |
응답
성공적인 요청은 200 OK응답과 OK 텍스트를 반환합니다.
요청
curl --request DELETE \
--url 'https://experiment.amplitude.com/api/1/experiments/<id>/variants/<variantKey>/users/<userIndex>' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer <management-api-key>'
변형에서 모든 사용자 제거
DELETE https://experiment.amplitude.com/api/1/experiments/{id}/variants/{variantKey}/users
실험의 변형에서 모든 포함(사용자 또는 장치)을 제거합니다.
경로 변수
| 이름 | 설명 |
|---|---|
id | 필수입니다. 유형: string. 실험의 ID입니다. Amplitude 앱에서 실험 URL에 포함된 ID를 찾으십시오. |
variantKey | 필수입니다. 유형: string. 변형의 키입니다. |
응답
성공적인 요청은 200 OK응답과 OK 텍스트를 반환합니다.
요청
curl --request DELETE \
--url 'https://experiment.amplitude.com/api/1/experiments/<id>/variants/<variantKey>/users' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer <management-api-key>'
변형에서 사용자를 대량 삭제
DELETE https://experiment.amplitude.com/api/1/experiments/{id}/variants/{variantKey}/bulk-delete-users
실험의 변형에서 사용자나 장치를 대량 제거합니다. 요청당 100개로 제한됩니다.
경로 변수
| 이름 | 설명 |
|---|---|
id | 필수입니다. 유형: string. 실험의 ID입니다. Amplitude 앱에서 실험 URL에 포함된 ID를 찾으십시오. |
variantKey | 필수입니다. 유형: string. 변형의 키입니다. |
요청 본문
| 이름 | 설명 |
|---|---|
users | 필수입니다. 유형: object. 사용자 또는 장치 ID의 문자열 배열을 포함합니다. |
응답
성공적인 요청은 200 OK응답과 OK 텍스트를 반환합니다.
요청
curl --request DELETE \
--url 'https://experiment.amplitude.com/api/1/experiments/<id>/variants/<variantKey>/bulk-delete-users' \
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer <management-api-key>' \
--data '{"users":<["id1", "id2", "id3"]>}'
변형에서 코호트를 대량 제거
DELETE https://experiment.amplitude.com/api/1/experiments/{id}/variants/{variantKey}/bulk-delete-cohorts
실험의 변형에서 코호트를 대량 제거합니다. 요청당 100개로 제한됩니다.
경로 변수
| 이름 | 설명 |
|---|---|
id | 필수입니다. 유형: string. 실험의 ID입니다. Amplitude 앱에서 실험 URL에 포함된 ID를 찾으십시오. |
variantKey | 필수입니다. 유형: string. 변형의 키입니다. |
요청 본문
| 이름 | 설명 |
|---|---|
users | 필수입니다. 유형: array. 제거할 코호트 ID의 배열입니다. |
응답
성공적인 요청은 200 OK응답과 OK 텍스트를 반환합니다.
요청
curl --request DELETE \
--url 'https://experiment.amplitude.com/api/1/experiments/<id>/variants/<variantKey>/bulk-delete-cohorts' \
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer <management-api-key>' \
--data '{"users":["cohort-id-1", "cohort-id-2"]}'
배포 내역 목록
GET https://experiment.amplitude.com/api/1/experiments/{id}/deployments
실험에 대한 모든 배포를 나열합니다.
경로 변수
| 이름 | 설명 |
|---|---|
id | 필수입니다. 유형: string. 실험의 ID입니다. Amplitude 앱에서 실험 URL에 포함된 ID를 찾으십시오. |
응답
성공적인 요청은 200 OK응답과 실험의 배포 세부 정보가 포함된 JSON 객체 배열을 반환합니다.
curl --request GET \
--url 'https://experiment.amplitude.com/api/1/experiments/<id>/deployments' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer <management-api-key>'
배포 추가
POST https://experiment.amplitude.com/api/1/experiments/{id}/deployments
실험에 배포를 추가합니다.
경로 변수
| 이름 | 설명 |
|---|---|
id | 필수입니다. 문자열입니다. 실험의 ID입니다. Amplitude 앱에서 실험 URL에 포함된 ID를 찾으십시오. |
요청 본문
| 이름 | 설명 |
|---|---|
deployments | 필수입니다. 유형: string array. 배포 ID의 문자열 배열을 포함합니다. |
요청 예제
{
"deployments": ["<deploymentId>"]
}
응답
성공적인 요청은 200 OK응답과 OK 텍스트를 반환합니다.
요청
curl --request POST \
--url 'https://experiment.amplitude.com/api/1/experiments/<id>/deployments' \
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer <management-api-key>'
--data '{"deployments":[<deploymentId>]}'
배포 제거
DELETE https://experiment.amplitude.com/api/1/experiments/{id}/deployments/{deploymentId}
실험에서 배포를 제거합니다.
경로 변수
| 이름 | 설명 |
|---|---|
id | 필수입니다. 유형: string. 실험의 ID입니다. Amplitude 앱에서 실험 URL에 포함된 ID를 찾으십시오. |
deploymentId | 필수입니다. 유형: string. 배포의 ID입니다. |
응답
성공적인 요청은 200 OK응답과 OK 텍스트를 반환합니다.
요청
curl --request DELETE \
--url 'https://experiment.amplitude.com/api/1/experiments/<id>/deployments/<deploymentId>' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer <management-api-key>'
편집
웹 실험이나 가이드 및 설문조사 모두 실험 편집을 지원하지 않습니다. 웹 실험 또는 가이드 및 설문조사 실험을 편집하려고 하면 405오류가 반환됩니다.
PATCH https://experiment.amplitude.com/api/1/experiments/{id}
실험을 편집합니다.
경로 변수
| 이름 | 설명 |
|---|---|
id | 필수입니다. 유형: string. 실험의 ID입니다. Amplitude 앱에서 실험 URL에 포함된 ID를 찾으십시오. |
요청 본문
| 이름 | 설명 |
|---|---|
name | 선택 사항입니다. 유형: string. 이름 |
description | 선택 사항입니다. 유형: string. 설명. |
bucketingKey | 선택 사항입니다. 유형: string. 사용자를 버킷화할 기준으로 사용할 사용자 속성입니다. |
bucketingSalt | 선택 사항입니다. 유형: string. 버킷팅 솔트. |
bucketingUnit | 선택 사항입니다. 유형: string. 계정 애드온의 그룹 유형으로 표현되는 버킷팅 단위입니다. 그룹 수준의 버킷화 및 분석에 사용됩니다. |
evaluationMode | 선택 사항입니다. 유형: string. 실험에 대한 평가 모드(local 또는 remote)입니다. |
rolloutPercentage | 선택 사항입니다. 유형: number. 타겟이 아닌 사용자의 배포 비율입니다. 범위는 0 - 100입니다. |
targetSegments | 선택 사항입니다. 유형: object array. 자세한 내용은 targetSegments표를 참조하십시오. targetSegments객체 배열은 기존 대상 세그먼트를 대체합니다. 이 옵션은 코호트를 지원하지 않습니다. |
enabled | 선택 사항입니다. 유형: boolean. 실험을 활성화하거나 비활성화할 수 있는 속성입니다. |
archive | 선택 사항입니다. 유형: boolean. 실험을 보관하거나 보관을 해제할 속성입니다. |
experimentType | 선택 사항입니다. 유형: string. 실험 유형입니다. 옵션에는 a-b-test 또는 multi-arm-bandit가 포함됩니다. |
stickyBucketing | 선택 사항입니다. 유형: boolean. true인 경우, 실험에서 스티키 버킷팅을 사용합니다. |
startDate | 선택 사항입니다. 유형: string. ISO 8601 형식의 실험 시작 날짜입니다. |
endDate | 선택 사항입니다. 유형: string. ISO 8601 형식의 실험 종료 날짜입니다. 종료 날짜는 NULL일 수 있습니다. |
exposureEvent | 선택 사항입니다. 유형: object. 자세한 내용은 exposureEvent표를 참조하십시오. null로 설정된 경우, Amplitude는 Amplitude Exposure Event를 사용합니다. |
tags | 선택 사항입니다. 유형: string array. 실험에 대한 태그 목록입니다. 태그는 동일한 작업으로 추가되고 삭제됩니다. 기존 태그에 새 태그를 추가하려면 먼저 모든 실험 태그 목록을 가져옵니다. |
decision | 선택 사항입니다. 유형: string. 옵션에는 rollout, rollback, continue-running가 포함됩니다. |
decisionReason | 선택 사항입니다. 유형: string. 결정의 이유입니다. |
rolledOutVariant | 선택 사항입니다. 유형: string. 롤아웃한 변형 키 또는 이름입니다. |
노출이벤트
| 이름 | 설명 |
|---|---|
event_type | 필수입니다. 유형: string. 이벤트 유형. |
filters | 필수입니다. 유형: object array. 속성 필터 목록입니다. 자세한 내용은 filters표를 참조하십시오. |
필터
| 이름 | 설명 |
|---|---|
group_type | 선택 사항입니다. 유형: string. 필터의 그룹 유형입니다. null일 수 있습니다. org_id값 또는 그룹 값 중 하나일 수 있습니다(예: User). org name |
subprop_key | 필수입니다. 유형: string. 필터의 키입니다. null일 수 있습니다. |
subprop_op | 필수입니다. 유형: string. 이 필터에 사용할 작업입니다. |
subprop_type | 필수입니다. 유형: string. 속성이 각각 이벤트, 사용자 또는 그룹 속성임을 나타내는 event또는 user입니다group. |
subprop_value | 필수입니다. 유형: string array. 이벤트 속성을 필터링할 기준이 되는 값 목록입니다. |
subprop_op
isis notcontainsdoes not containlessless or equalgreatergreater or equalglob matchglob does not match
요청 예제
{
"name": "updated name",
"description": "updated description",
"bucketingKey": "amplitude_id",
"bucketingSalt": "<bucketingSalt>",
"evaluationMode": "remote",
"rolloutPercentage": 0,
"enabled": true,
"experimentType": "a-b-test",
"stickyBucketing": false,
"startDate": "2023-07-31T10:26:00.996Z",
"endDate": "2023-09-23T10:26:00.996Z",
"tags": ["prod", "staging"],
"exposureEvent": {
"event_type": "_active",
"filters": [
{
"group_type": "User",
"subprop_key": "amplitude_day_of_week",
"subprop_op": "is",
"subprop_type": "day_time_prop",
"subprop_value": ["Tuesday"]
}
]
}
}
응답
성공적인 요청은 200 OK응답을 반환합니다.
요청
curl --request PATCH \
--url 'https://experiment.amplitude.com/api/1/experiments/<id>' \
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer <management-api-key>' \
--data '{"enabled":<enabled>,"rolloutPercentage":<rolloutPercentage>}'
생성
POST https://experiment.amplitude.com/api/1/experiments
새 피쳐 실험을 생성합니다.
요청 본문
| 이름 | 설명 |
|---|---|
projectId | 필수입니다. 유형: string. 프로젝트의 ID입니다. |
key | 필수입니다. 유형: string. 플래그 키입니다. |
name | 선택 사항입니다. 유형: string. 실험 이름입니다. |
description | 선택 사항입니다. 유형: string. 실험에 대한 설명입니다. |
variants | 선택 사항입니다. 유형: object array. variants의 배열입니다. |
bucketingKey | 선택 사항입니다. 유형: string. 사용자를 버킷화할 기준으로 사용할 사용자 속성입니다. |
rolloutWeights | 선택 사항입니다. 유형: object. 대상이 아닌 사용자를 위한 배포 가중치. 객체는 변형 키에서 배포 가중치(정수)로의 매핑이어야 합니다. 예를 들어: { "control": 1, "treatment": 1 }. |
targetSegments | 선택 사항입니다. 유형: object array. 자세한 내용은 targetSegments표를 참조하십시오. |
deployments | 선택 사항입니다. 유형: string array. 실험을 할당할 배포 ID의 배열입니다. |
evaluationMode | 선택 사항입니다. 유형: string. 실험 평가 모드입니다. 옵션에는 remote 또는 local가 포함됩니다. |
experimentType | 선택 사항입니다. 유형: string. 실험 유형입니다. 옵션에는 a-b-test 또는 multi-arm-bandit가 포함됩니다. |
변형
variants필드에는 이러한 객체가 포함되어 있습니다.
| 이름 | 설명 |
|---|---|
key | 필수입니다. 유형: string. 변형의 키(또는 값)입니다. 문자, 숫자, 밑줄(_) 및 하이픈(-)만 사용할 수 있습니다. |
payload | 선택 사항입니다. 유형: JSON. 선택적 페이로드. 값은 유효한 JSON 요소여야 합니다. |
name | 선택 사항입니다. 유형: string. 변형 이름입니다. |
description | 선택 사항입니다. 유형: string. 변형 설명입니다. |
타겟세그먼트
targetSegments필드에는 이러한 객체가 포함되어 있습니다.
| 이름 | 설명 |
|---|---|
name | 필수입니다. 유형: string. 세그먼트 이름입니다. |
conditions | 필수입니다. 유형: object array. conditions의 배열입니다. |
percentage | 필수입니다. 유형: number. 조건에 일치하는 사용자에 대한 할당 비율입니다. |
rolloutWeights | 필수입니다. 유형: object. 변형 키에서 배포 가중치로의 맵입니다. 예를 들어: { "control": 1, "treatment": 1 }. |
조건
conditions필드에는 이러한 객체가 포함되어 있습니다.
| 이름 | 설명 |
|---|---|
type | 필수입니다. 유형: string. 값이 있어야 합니다. property |
prop | 필수입니다. 유형: string. 조건에 사용할 특성입니다. 사용자 정의 및 자유형 속성에 다음을 붙입니다. gp: |
op | 필수입니다. 유형: string. 이 조건에서 사용할 작업입니다. |
values | 필수입니다. 유형: string array. 작업에 사용할 값입니다. |
작업
특성 값에 대한 작업을 나타내는 문자열 값입니다. 가능한 값은 다음과 같습니다.
isis notcontainsdoes not containlessless or equalgreatergreater or equalset isset is notset containsset does not containglob matchglob does not match
요청 예제
{
"projectId": "<projectId>",
"name": "Analyze button clicks experiment",
"key": "analyze-button-clicks-experiment",
"description": "analyze button clicks on the main page",
"variants": [
{
"key": "control"
},
{
"key": "treatment"
}
],
"rolloutWeights": { "control": 1, "treatment": 1 },
"targetSegments": [
{
"name": "Segment 1",
"conditions": [
{
"prop": "country",
"op": "is",
"type": "property",
"values": ["United States"]
}
],
"percentage": 0,
"bucketingKey": "amplitude_id",
"rolloutWeights": {
"control": 1,
"treatment": 1
}
}
],
"deployments": ["<deploymentId>"],
"evaluationMode": "remote",
"experimentType": "a-b-test"
}
응답
성공적인 요청은 응답과 실험의 ID 및 URL이 포함된 JSON 객체를 200 OK반환합니다.
curl --request POST \
--url 'https://experiment.amplitude.com/api/1/experiments' \
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer <management-api-key>' \
--data '{"projectId":"<projectId>","key":"<key>"}'
이 내용이 도움이 되었나요?