実験管理API実験エンドポイント
| 名前 | 概要 |
|---|---|
| リスト | 構成の詳細を含む実験のリスト。 |
| 詳細を取得する | 実験の設定の詳細を取得します。 |
| バージョンを一覧表示 | 実験のすべてのバージョンをリストアップします。 |
| バージョンの詳細を取得する | 実験の特定のバージョンを取得します。 |
| バリアントを一覧表示 | 実験のすべてのバリアントをリストアップします。 |
| バリアントの詳細の取得 | 実験用の特定のバリアントを取得します。 |
| バリアントのインクルージョンの取得 | バリアントのすべてのインクルージョン(ユーザー)を取得します。 |
| バリアントコホートインクルージョンの取得 | バリアントのすべてのコホートインクルージョンを取得します。 |
| バリアントを作成する | 実験用の新しいバリアントを作成します。 |
| バリアントを編集 | 実験用のバリアントを編集します。 |
| バリアントを削除 | 実験からバリアントを削除します。 |
| バリアントへのユーザー追加 | 実験のバリアントにユーザーを追加します。 |
| バリアントにコホートを追加する | 実験のバリアントにコホートを追加します。 |
| バリアントからユーザーを削除する | 実験のバリアントからユーザーを削除します。 |
| バリアントからすべてのユーザーを削除する | 実験のバリアントからすべてのユーザーを削除します。 |
| バリアントからユーザーを一括削除する | 実験のバリアントからユーザーを一括削除します。 |
| バリアントからコホートを一括削除 | 実験のバリアントからコホートを一括削除します。 |
| デプロイの一覧表示 | 実験用のすべてのデプロイメントをリストアップします。 |
| デプロイメントを追加する | 実験にデプロイを追加します。 |
| デプロイメントを削除する | 実験からデプロイを削除します。 |
| 編集 | 実験を編集します。 |
| 作成 | 新しい実験を作成する。 |
EUデータレジデンシー
このページの例では、デフォルトのベースURL https://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)でフィルタリングします。 省略された場合は、機能実験と Web 実験の両方を返します。 |
レスポンス
リクエストが成功すると、200 OKレスポンスと、レスポンスボディにJSONとしてエンコードされた実験のリストが返されます。createdAtおよびlastModifiedAtは、ISO 8601形式のUTCです。deliveryMethodは、機能実験の場合はfeature、Web実験の場合は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またはデバイス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
実験のバリアントからユーザーまたはデバイスを一括削除します。 1回のリクエストにつき100件に制限されています。
パス変数
| 名前 | 概要 |
|---|---|
id | 必須です。 タイプ: string. 実験の ID。Amplitudeアプリで実験のURLからIDを見つけます。 |
variantKey | 必須です。 タイプ: string. バリアントのキーです。 |
リクエスト本文
| 名前 | 概要 |
|---|---|
users | 必須です。 タイプ: object. ユーザーIDまたはデバイス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
実験のバリアントからコホートを一括削除します。 1回のリクエストにつき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>'
編集
Web Experimentation もガイドとサーベイも、実験の編集をサポートしていません。Web Experimentation やガイドとサーベイの実験を編集しようとすると、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 イベントを使用します。 |
tags | オプションです。タイプ: string array. 実験用のタグのリストです。 タグの追加と削除は同じ操作で行われます。 既存のタグに新しいタグを追加するには、まずすべての実験タグのリストを取得します。 |
decision | オプションです。タイプ: string. オプションには、rollout``rollback``continue-running、 などがあります。 |
decisionReason | オプションです。タイプ: string. その決定の理由です。 |
rolledOutVariant | オプションです。タイプ: string. ロールアウトしたバリアントキーまたは名前。 |
エクスポージャーイベント
| 名前 | 概要 |
|---|---|
event_type | 必須です。 タイプ: string. イベントタイプ |
filters | 必須です。 タイプ: object array. プロパティフィルタのリスト。 詳細については、filters表を参照してください。 |
フィルター
| 名前 | 概要 |
|---|---|
group_type | オプションです。タイプ: string. フィルタのグループ タイプです。NULL にすることができます。 User値またはグループ値のいずれかを指定できます (例: org_id)。 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"
}
レスポンス
リクエストが成功すると、200 OK応答と実験のIDとURLを含むJSONオブジェクトが返されます。
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>"}'
これは役に立ちましたか?