이 페이지에서

실험 실험 API 관리 플래그 엔드포인트

EU 데이터 상주지

이 페이지의 예제에서는 기본 URL https://experiment.amplitude.com을 사용합니다. 프로젝트에서 Amplitude의 EU 데이터 센터를 사용하고 있다면 대신 https://experiment.eu.amplitude.com 사용하세요. 자세한 내용은 지역을 참조하십시오.

목록

bash
GET https://experiment.amplitude.com/api/1/flags

구성 세부 정보를 포함한 플래그 목록을 가져옵니다. 결과는 가장 최근에 생성된 항목부터 먼저 정렬됩니다.

쿼리 매개 변수

응답

성공적인 요청은 200 OK응답과 응답 본문에 JSON으로 인코딩된 플래그 목록을 반환합니다. createdAtlastModifiedAt은 ISO 8601 형식의 UTC 기준입니다.

curl --request GET \
--url 'https://experiment.amplitude.com/api/1/flags?limit=1000' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer <management-api-key>'

자세한 정보 보기

bash
GET https://experiment.amplitude.com/api/1/flags/<id>

플래그의 구성 세부 정보를 가져옵니다.

경로 변수

응답

성공적인 요청은 200 OK응답과 플래그의 세부 정보가 포함된 JSON 객체를 반환합니다.

curl --request GET \
    --url 'https://experiment.amplitude.com/api/1/flags/<id>' \
    --header 'Accept: application/json' \
    --header 'Authorization: Bearer <management-api-key>'

버전 목록

bash
GET https://experiment.amplitude.com/api/1/flags/{id}/versions

플래그에 대한 모든 버전 목록을 가져옵니다.

경로 변수

응답

성공적인 요청은 200 OK응답과 플래그의 버전을 응답 본문에 JSON 객체의 배열로 반환합니다. 버전은 내림차순으로 정렬됩니다.

curl --request GET \
    --url 'https://experiment.amplitude.com/api/1/flags/<id>/versions' \
    --header 'Accept: application/json' \
    --header 'Authorization: Bearer <management-api-key>'

버전 세부 정보 얻기

bash
GET https://experiment.amplitude.com/api/1/flags/{id}/versions/{versionId}

플래그의 특정 버전의 세부 정보를 가져옵니다.

경로 변수

응답

성공적인 요청은 200 OK응답과 버전 세부 정보가 포함된 JSON 객체를 반환합니다.

curl --request GET \
    --url 'https://experiment.amplitude.com/api/1/flags/<id>/versions/<versionId>' \
    --header 'Accept: application/json' \
    --header 'Authorization: Bearer <management-api-key>'

변형 목록

bash
GET https://experiment.amplitude.com/api/1/flags/{id}/variants

플래그의 모든 변형 목록을 가져옵니다.

경로 변수

응답

성공적인 요청은 200 OK응답과 변형을 응답 본문에 JSON 객체의 배열로 반환합니다.

curl --request GET \
    --url 'https://experiment.amplitude.com/api/1/flags/<id>/variants' \
    --header 'Accept: application/json' \
    --header 'Authorization: Bearer <management-api-key>'

변형 세부 정보 얻기

bash
GET https://experiment.amplitude.com/api/1/flags/{id}/variants/{variantKey}

플래그의 특정 변형에 대한 세부 정보를 가져옵니다.

경로 변수

응답

성공적인 요청은 200 OK응답과 플래그 변형에 대한 세부 정보가 포함된 JSON 객체를 반환합니다.

curl --request GET \
    --url 'https://experiment.amplitude.com/api/1/flags/<id>/variants/<variantKey>' \
    --header 'Accept: application/json' \
    --header 'Authorization: Bearer <management-api-key>'

변형 포함 사항 가져오기

bash
GET https://experiment.amplitude.com/api/1/flags/{id}/variants/{variantKey}/users

플래그의 특정 변형에 대한 포함 항목 목록을 가져옵니다.

경로 변수

응답

성공적인 요청은 200 OK응답과 변형의 포함을 JSON 객체의 배열로 반환합니다.

curl --request GET \
    --url 'https://experiment.amplitude.com/api/1/flags/<id>/variants/<variantKey>/users' \
    --header 'Accept: application/json' \
    --header 'Authorization: Bearer <management-api-key>'

변형 코호트 포함 확인

bash
GET https://experiment.amplitude.com/api/1/flags/{id}/variants/{variantKey}/cohorts

플래그의 특정 변형에 대한 코호트 포함 목록을 가져옵니다.

경로 변수

응답

성공적인 요청은 200 OK응답과 변형의 코호트 포함을 코호트 ID의 배열로 반환합니다.

curl --request GET \
    --url 'https://experiment.amplitude.com/api/1/flags/<id>/variants/<variantKey>/cohorts' \
    --header 'Accept: application/json' \
    --header 'Authorization: Bearer <management-api-key>'

변형 생성

bash
POST https://experiment.amplitude.com/api/1/flags/{id}/variants

플래그에 대한 새 변형 생성

경로 변수

요청 본문

요청 예제

json
{
  "key": "new-variant-key",
  "description": "optional description for variant",
  "name": "optional name for variant",
  "payload": { "variant-payload": "example payload" },
  "rolloutWeight": 0
}

응답

성공적인 요청은 200 OK응답과 OK 텍스트를 반환합니다.

요청

bash
curl --request POST \
    --url 'https://experiment.amplitude.com/api/1/flags/<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>}'

변형 편집

bash
POST https://experiment.amplitude.com/api/1/flags/<id>/variants/<variantKey>

플래그의 변형을 편집합니다.

경로 변수

요청 예제

json
{
  "key": "updated-variant-key",
  "description": "updated optional description for variant",
  "name": "optional name for variant",
  "payload": { "variant-payload": "example payload" },
  "rolloutWeight": 0
}

요청 본문

응답

성공적인 요청은 200 OK응답과 OK 텍스트를 반환합니다.

요청

bash
curl --request PATCH \
    --url 'https://experiment.amplitude.com/api/1/flags/<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>}'

변형 제거

bash
DELETE https://experiment.amplitude.com/api/1/flags/{id}/variants/{variantKey}

플래그에서 변형을 제거합니다.

경로 변수

응답

성공적인 요청은 200 OK응답과 OK 텍스트를 반환합니다.

요청

bash
curl --request DELETE \
    --url 'https://experiment.amplitude.com/api/1/flags/<id>/variants/<variantKey>' \
    --header 'Accept: application/json' \
    --header 'Authorization: Bearer <management-api-key>'

변형에 사용자 추가

bash
POST https://experiment.amplitude.com/api/1/flags/{id}/variants/{variantKey}/users

변형당 최대 2,000개의 포함을 가질 수 있습니다. 이 제한을 초과하면 Amplitude는 400오류를 반환합니다.

플래그 변형에 포함(사용자 또는 장치)을 추가합니다.

경로 변수

요청 본문

요청 예제

json
{
  "inclusions": [
    "<user1>@<your-company-email>, <user2>@<your-company-email>, <userId>"
  ]
}

응답

성공적인 요청은 200 OK응답과 OK 텍스트를 반환합니다.

요청

bash
curl --request POST \
    --url 'https://experiment.amplitude.com/api/1/flags/<id>/variants/<variantKey>/users' \
    --header 'Content-Type: application/json' \
    --header 'Accept: application/json' \
    --header 'Authorization: Bearer <management-api-key>' \
    --data '{"inclusions":<["id1", "id2", "id3"]>}'

변형에 코호트 추가

bash
POST https://experiment.amplitude.com/api/1/flags/{id}/variants/{variantKey}/cohorts

플래그의 변형에 코호트 포함을 추가합니다.

경로 변수

요청 본문

요청 예제

json
{
  "inclusions": ["cohort-id-1", "cohort-id-2"]
}

응답

성공적인 요청은 200 OK응답과 OK 텍스트를 반환합니다.

요청

bash
curl --request POST \
    --url 'https://experiment.amplitude.com/api/1/flags/<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"]}'

변형에서 사용자 제거

bash
DELETE https://experiment.amplitude.com/api/1/flags/{id}/variants/{variantKey}/users/{userIndex}

플래그 변형에서 포함 항목(사용자 또는 장치)을 제거합니다.

경로 변수

응답

성공적인 요청은 200 OK응답과 OK 텍스트를 반환합니다.

요청

bash
curl --request DELETE \
    --url 'https://experiment.amplitude.com/api/1/flags/<id>/variants/<variantKey>/users/<userIndex>' \
    --header 'Accept: application/json' \
    --header 'Authorization: Bearer <management-api-key>'

변형에서 모든 사용자 제거

bash
DELETE https://experiment.amplitude.com/api/1/flags/{id}/variants/{variantKey}/users

플래그 변형에서 모든 포함(사용자 또는 장치)을 제거합니다.

경로 변수

응답

성공적인 요청은 200 OK응답과 OK 텍스트를 반환합니다.

요청

bash
curl --request DELETE \
    --url 'https://experiment.amplitude.com/api/1/flags/<id>/variants/<variantKey>/users' \
    --header 'Accept: application/json' \
    --header 'Authorization: Bearer <management-api-key>'

변형에서 사용자를 대량 삭제

bash
DELETE https://experiment.amplitude.com/api/1/flags/{id}/variants/{variantKey}/bulk-delete-users

플래그 변형에서 사용자나 장치를 대량 제거합니다. 각 요청에 대해 100개로 제한됩니다.

경로 변수

요청 본문

응답

성공적인 요청은 200 OK응답과 OK 텍스트를 반환합니다.

요청

bash
curl --request DELETE \
    --url 'https://experiment.amplitude.com/api/1/flags/<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"]>}'

변형에서 코호트를 대량 제거

bash
DELETE https://experiment.amplitude.com/api/1/flags/{id}/variants/{variantKey}/bulk-delete-cohorts

플래그 변형에서 코호트를 대량 제거합니다. 각 요청에 대해 100개로 제한됩니다.

경로 변수

요청 본문

응답

성공적인 요청은 200 OK응답과 OK 텍스트를 반환합니다.

요청

bash
curl --request DELETE \
    --url 'https://experiment.amplitude.com/api/1/flags/<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"]}'

배포 내역 목록

bash
GET https://experiment.amplitude.com/api/1/flags/{id}/deployments

플래그에 대한 모든 배포를 나열합니다.

경로 변수

응답

성공적인 요청은 200 OK응답과 플래그의 배포 세부 정보가 포함된 JSON 객체 배열을 반환합니다.

curl --request GET \
    --url 'https://experiment.amplitude.com/api/1/flags/<id>/deployments' \
    --header 'Accept: application/json' \
    --header 'Authorization: Bearer <management-api-key>'

배포 작성

bash
POST https://experiment.amplitude.com/api/1/flags/{id}/deployments

플래그에 대한 배포를 추가합니다.

경로 변수

요청 본문

요청 예제

json
{
    "deployments": [<deploymentId>]
}

응답

성공적인 요청은 200 OK응답과 OK 텍스트를 반환합니다.

요청

bash
curl --request POST \
    --url 'https://experiment.amplitude.com/api/1/flags/<id>/deployments' \
    --header 'Content-Type: application/json' \
    --header 'Accept: application/json' \
    --header 'Authorization: Bearer <management-api-key>'
    --data '{"deployments":[<deploymentId>]}'

배포 제거

bash
DELETE https://experiment.amplitude.com/api/1/flags/{id}/deployments/{deploymentId}

플래그에서 배포를 제거합니다.

경로 변수

응답

성공적인 요청은 200 OK응답과 OK 텍스트를 반환합니다.

요청

bash
curl --request DELETE \
    --url 'https://experiment.amplitude.com/api/1/flags/<id>/deployments/<deploymentId>' \
    --header 'Accept: application/json' \
    --header 'Authorization: Bearer <management-api-key>'

편집

bash
PATCH https://experiment.amplitude.com/api/1/flags/{id}

플래그를 편집합니다.

경로 변수

요청 본문

요청 예제

json
{
  "name": "updated name",
  "description": "updated description",
  "bucketingKey": "amplitude_id",
  "bucketingSalt": "<bucketingSalt>",
  "bucketingUnit": "org id",
  "evaluationMode": "remote",
  "rolloutPercentage": 0,
  "enabled": false,
  "tags": ["prod", "staging"]
}

응답

성공적인 요청은 200 OK응답을 반환합니다.

응답

bash
curl --request PATCH \
    --url 'https://experiment.amplitude.com/api/1/flags/<id>' \
    --header 'Content-Type: application/json' \
    --header 'Accept: application/json' \
    --header 'Authorization: Bearer <management-api-key>' \
    --data '{"enabled":<enabled>,"rolloutPercentage":<rolloutPercentage>}'

생성

bash
POST https://experiment.amplitude.com/api/1/flags

새 플래그를 만듭니다.

요청 본문

variants

variants필드에는 이러한 객체가 포함되어 있습니다.

targetSegments

targetSegments필드에는 이러한 객체가 포함되어 있습니다.

conditions

conditions필드에는 이러한 객체가 포함되어 있습니다.

op

특성 값에 대한 작업을 나타내는 문자열 값입니다. 가능한 값은 다음과 같습니다.

  • is
  • is not
  • contains
  • does not contain
  • less
  • less or equal
  • greater
  • greater or equal
  • set is
  • set is not
  • set contains
  • set does not contain
  • glob match
  • glob does not match
  • version less than
  • version less than or equal to
  • version greater than
  • version greater than or equal to

요청 예제

json
{
  "projectId": "<projectId>",
  "name": "Analyze button clicks",
  "key": "analyze-button-clicks",
  "description": "analyze button clicks on the main page",
  "variants": [
    {
      "key": "on"
    }
  ],
  "rolloutWeights": { "on": 1 },
  "targetSegments": [
    {
      "name": "Segment 1",
      "conditions": [
        {
          "prop": "country",
          "op": "is",
          "type": "property",
          "values": ["United States"]
        }
      ],
      "percentage": 0,
      "bucketingKey": "amplitude_id",
      "rolloutWeights": {
        "on": 1
      }
    }
  ],
  "deployments": ["<deploymentId>"],
  "evaluationMode": "remote"
}

응답

성공적인 요청은 200 OK응답과 플래그의 ID 및 URL이 포함된 JSON 객체를 반환합니다.

curl --request POST \
    --url 'https://experiment.amplitude.com/api/1/flags' \
    --header 'Content-Type: application/json' \
    --header 'Accept: application/json' \
    --header 'Authorization: Bearer <management-api-key>' \
    --data '{"projectId":"<projectId>","key":"<key>"}'

이 내용이 도움이 되었나요?