このページでは

実験管理API実験エンドポイント

EUデータレジデンシー

このページの例では、デフォルトのベースURL https://experiment.amplitude.com を使用しています。プロジェクトで Amplitude の EU データセンターを使用している場合は、代わりにhttps://experiment.eu.amplitude.comを使用してください。詳細については、「地域」を参照してください。

リスト

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

実験のリストとその設定の詳細を取得します。 結果は、作成日時が新しいものから順に表示されます。

このリストには機能実験とウェブ実験のみが含まれており、deliveryMethodフィールドで各実験のタイプを識別します。このエンドポイントの以前のバージョンでは、ナッジ実験など他の配信方法を使用した実験を返すことができましたが、それらを区別する方法はありませんでした。

クエリパラメータ

レスポンス

リクエストが成功すると、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>'

詳細を取得する

bash
GET https://experiment.amplitude.com/api/1/experiments/<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>'

バージョンを一覧表示

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

実験のすべてのバージョンのリストを取得します。

パス変数

レスポンス

成功したリクエストは、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>'

バージョンの詳細を取得する

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

実験の特定のバージョンの詳細を取得します。

パス変数

レスポンス

リクエストが成功すると、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>'

バリアントを一覧表示

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

実験のすべてのバリアントのリストを取得します。

パス変数

レスポンス

成功したリクエストは、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>'

バリアントの詳細の取得

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

実験の特定のバリアントの詳細を取得します。

パス変数

レスポンス

リクエストが成功すると、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>'

バリアントのインクルージョンの取得

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

実験の特定のバリアントに対する包含物のリストを取得します。

パス変数

レスポンス

成功したリクエストは、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>'

バリアントコホートインクルージョンの取得

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

実験の特定のバリアントに対するコホート包含のリストを取得します。

パス変数

レスポンス

成功したリクエストは、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>'

バリアントを作成する

bash
POST https://experiment.amplitude.com/api/1/experiments/{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/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>}'

バリアントを編集

bash
PATCH https://experiment.amplitude.com/api/1/experiments/<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": 10
}

レスポンス

成功したリクエストは200 OK応答とOKテキストを返します。

リクエスト

curl
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>}'

バリアントを削除

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

実験からバリアントを削除します。

パス変数

レスポンス

成功したリクエストは200 OK応答とOKテキストを返します。

リクエスト

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

バリアントへのユーザー追加

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

実験のバリアントにインクルージョン(ユーザーまたはデバイス)を追加します。

パス変数

リクエスト例

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

リクエスト本文

レスポンス

成功したリクエストは200 OK応答とOKテキストを返します。

リクエスト

curl
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"]>}'

バリアントにコホートを追加する

bash
POST https://experiment.amplitude.com/api/1/experiments/{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/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"]}'

バリアントからユーザーを削除する

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

実験のバリアントからインクルージョン(ユーザーまたはデバイス)を削除します。

パス変数

レスポンス

成功したリクエストは200 OK応答とOKテキストを返します。

リクエスト

curl
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>'

バリアントからすべてのユーザーを削除する

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

実験のバリアントからすべてのインクルージョン(ユーザーまたはデバイス)を削除します。

パス変数

レスポンス

成功したリクエストは200 OK応答とOKテキストを返します。

リクエスト

curl
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>'

バリアントからユーザーを一括削除する

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

実験のバリアントからユーザーまたはデバイスを一括削除します。 1回のリクエストにつき100件に制限されています。

パス変数

リクエスト本文

レスポンス

成功したリクエストは200 OK応答とOKテキストを返します。

リクエスト

curl
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"]>}'

バリアントからコホートを一括削除

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

実験のバリアントからコホートを一括削除します。 1回のリクエストにつき100件に制限されています。

パス変数

リクエスト本文

レスポンス

成功したリクエストは200 OK応答とOKテキストを返します。

リクエスト

bash
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"]}'

デプロイの一覧表示

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

実験用のすべてのデプロイメントをリストアップします。

パス変数

レスポンス

リクエストが成功すると、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>'

デプロイメントを追加する

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

実験にデプロイを追加します。

パス変数

リクエスト本文

リクエスト例

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

レスポンス

成功したリクエストは200 OK応答とOKテキストを返します。

リクエスト

curl
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>]}'

デプロイメントを削除する

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

実験からデプロイを削除します。

パス変数

レスポンス

成功したリクエストは200 OK応答とOKテキストを返します。

リクエスト

bash
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エラーが返されます。

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

実験を編集します。

パス変数

リクエスト本文

エクスポージャーイベント

フィルター

subprop_op

  • is
  • is not
  • contains
  • does not contain
  • less
  • less or equal
  • greater
  • greater or equal
  • glob match
  • glob does not match

リクエスト例

json
{
  "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
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>}'

作成

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

新しいフィーチャー実験を作成します。

リクエスト本文

バリアント

variantsフィールドにはこれらのオブジェクトが含まれています。

ターゲットセグメント

targetSegmentsフィールドにはこれらのオブジェクトが含まれています。

条件

conditionsフィールドにはこれらのオブジェクトが含まれています。

オペレーション

プロパティ値に対する操作を表す文字列値です。 可能な値は次のとおりです。

  • 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

リクエスト例

json
{
  "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>"}'

これは役に立ちましたか?