> ## Documentation Index
> Fetch the complete documentation index at: https://docs.kameleoon.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Experiment and personalization objects

> Experiment、Personalization、activation、Variation、Template オブジェクトのリファレンスです。

これらのオブジェクトは、実験とパーソナライゼーション、およびそれぞれが現在のビジットで有効化されたかどうかを説明します。

## Experiment

Experiment オブジェクトは Kameleoon の A/B テストを表します。コアプロパティには、セグメントと関連するバリエーションが含まれます。バリエーションには、変更を実装する JavaScript および CSS コードが含まれます。

**プロパティ**

| 名前 | 型 | 説明 |
| - | - | - |
| id | Number | 実験の ID。 |
| name | String | 実験の名前。 |
| dateLaunched | Number | 実験の初回起動時刻 (UTC 形式 - 1970 年 1 月 1 日からのミリ秒)。 |
| dateModified | Number | 実験の最終変更時刻 (UTC 形式 - 1970 年 1 月 1 日からのミリ秒)。 |
| targetSegment | Object | この実験に関連付けられた [Segment オブジェクト](https://docs.kameleoon.com/ja/developer-docs/apis/activation-api-js/api-reference/objects/goal-segment-trigger-and-product.md#segment)です。 |
| variations | Array | この実験の [Variation オブジェクト](#variation) のリスト。 |
| trafficDeviation | Object | 実験の現在のトラフィック偏差のマップです。キーはバリエーション ID です(ID **0** は基準です)。値はパーセンテージ(0\~100)です。トラフィックの一部が割り当てられていない場合、合計が 100 にならないことがあります。 |
| untrackedTrafficReallocationTime | Number | トラッキングされていないトラフィックに対して最後に再割り当てが行われた時刻です(UTC 形式、1970 年 1 月 1 日からのミリ秒)。エンジンが一度も再割り当てを行っていない場合、値は **null** です。 |
| goals | Array | この実験でトラッキングされている [Goal オブジェクト](https://docs.kameleoon.com/ja/developer-docs/apis/activation-api-js/api-reference/objects/goal-segment-trigger-and-product.md#goal)のリストです。 |
| mainGoal | Object | この実験のメインゴールを表す [Goal オブジェクト](https://docs.kameleoon.com/ja/developer-docs/apis/activation-api-js/api-reference/objects/goal-segment-trigger-and-product.md#goal)です。 |
| triggered | Boolean | 実験がページでトリガーされた場合は **true**、そうでない場合は **false** です。 |
| active | Boolean | 実験が現在ページでアクティブな場合は **true**、そうでない場合は **false** に等しいブール値。 |
| triggeredInVisit | Boolean | 実験が現在のビジットでトリガーされた場合は **true**、そうでない場合は **false** です。ビジットでトリガーされたとは、そのビジットが実験のセグメント条件を、ある時点で満たしたことを意味します。 |
| activatedInVisit | Boolean | **true** の場合、エンジンは現在のビジット中に実験を有効化しています。トリガーされても有効化が保証されるわけではありません。トラフィック除外やキャッピングなどの要因により、有効化されないことがあります。 |
| nonExpositionReason | String | エンジンが実験をトリガーしたものの有効化しなかった場合、このフィールドに理由が示されます。取りうる値は次のとおりです。`EXPERIMENT_EXCLUSION`(ビジターが実験から除外された集団に属しており、結果には含まれません)と `VISITOR_CAPPING`(ビジターがキャッピングの上限に達しており、有効化されません)です。このプロパティは、エンジンが現在のページで実験をトリガーし、`active` が **false** の場合に使用できます。 |
| associatedVariation | Object | 指定したビジターについて実験に関連付けられた [Variation オブジェクト](#variation)です。実験がまだ有効化されていない場合は、通常 **null** です。ただし、エンジンがバリエーションを事前に割り当てた場合は除きます。 |
| redirectProcessed | Boolean | **true** の場合、前のページでこの実験の URL リダイレクトが発生しています。このプロパティは [processRedirect()](https://docs.kameleoon.com/ja/developer-docs/apis/activation-api-js/api-reference/modules/core.md#processredirect) または手動設定で設定します。JavaScript ベースの連携では、リダイレクトによってそれ以降のコードの実行が中断されることがあります。必要に応じてこのプロパティを確認し、着地ページでネットワークリクエストを再送してください。 |

## Personalization

Personalization オブジェクトは、特定のセグメントに対する Kameleoon のパーソナライゼーションアクションを表します。コアプロパティには、セグメントと関連する単一バリエーションが含まれます。Variation オブジェクトには、パーソナライゼーションアクションを実装する JavaScript および CSS コードが含まれます。

**プロパティ**

| 名前 | 型 | 説明 |
| - | - | - |
| id | Number | パーソナライゼーションの ID。 |
| name | String | パーソナライゼーションの名前。 |
| dateLaunched | Number | パーソナライゼーションの初回起動時刻 (UTC 形式 - 1970 年 1 月 1 日からのミリ秒)。 |
| dateModified | Number | パーソナライゼーションの最終変更時刻 (UTC 形式 - 1970 年 1 月 1 日からのミリ秒)。 |
| targetSegment | Object | このパーソナライゼーションに関連付けられた [Segment オブジェクト](https://docs.kameleoon.com/ja/developer-docs/apis/activation-api-js/api-reference/objects/goal-segment-trigger-and-product.md#segment)です。 |
| goals | Array | このパーソナライゼーションでトラッキングされている [Goal オブジェクト](https://docs.kameleoon.com/ja/developer-docs/apis/activation-api-js/api-reference/objects/goal-segment-trigger-and-product.md#goal)のリストです。 |
| mainGoal | Object | このパーソナライゼーションのメインゴールを表す [Goal オブジェクト](https://docs.kameleoon.com/ja/developer-docs/apis/activation-api-js/api-reference/objects/goal-segment-trigger-and-product.md#goal)です。 |
| triggered | Boolean | **true** の場合、パーソナライゼーションはページでトリガーされました。 |
| active | Boolean | **true** の場合、パーソナライゼーションはページでアクティブ (表示) です。 |
| triggeredInVisit | Boolean | **true** の場合、パーソナライゼーションは現在の訪問中にトリガーされました。これは、訪問がパーソナライゼーションのセグメント条件を満たしたことを示します。 |
| activatedInVisit | Boolean | **true** の場合、エンジンは現在のビジット中にパーソナライゼーションのアクションを表示しています。トリガーされても、アクションが表示されるとは限りません。キャッピングの設定やコントロールグループへの所属により、表示が妨げられることがあります。 |
| nonExpositionReason | String | トリガーされたが表示されなかった場合の非露出の理由。可能な値: `GLOBAL_EXCLUSION`、`PERSONALIZATION_EXCLUSION`、`PRIORITY`、`SCHEDULE`、`PERSONALIZATION_CAPPING`、`VISITOR_CAPPING`、`SCENARIO`、`SIMULATION`。このプロパティは、パーソナライゼーションが現在のページでトリガーされ `active` が **false** の場合に利用できます。 |
| associatedVariation | Object | 関連付けられた [Variation オブジェクト](#variation)。このプロパティは常にパーソナライゼーションの有効なオブジェクトを参照します。 |

## ExperimentActivation

`ExperimentActivation` オブジェクトは、特定のビジット中に有効化された実験を表します。ビジットは過去のものである場合もあるため、関連付けられた実験がすでに停止している場合があります。その場合、エンジンは実験のメタデータ(名前、開始日、セグメント)をアプリケーションファイルに挿入しないため、API からは利用できません。ただし、ID は引き続き利用できます。

**プロパティ**

| 名前 | 型 | 説明 |
| - | - | - |
| experimentID | Number | 実験の ID。 |
| associatedVariationID | Number | 関連付けられたバリエーションの ID。関連付けられたバリエーションがリファレンス (コントロール) の場合、ID は 0 と等しくなります。 |
| associatedVariation | Object | 関連付けられた [Variation オブジェクト](#variation)。実験またはバリエーションがもはやアクティブでない場合 (停止または一時停止) 、このプロパティは **null** になります。 |
| times | Array | この訪問におけるこの実験の有効化時刻のリスト (UTC 形式 - 1970 年 1 月 1 日からのミリ秒)。 |

## PersonalizationActivation

`PersonalizationActivation` オブジェクトは、特定の訪問中に有効化されたパーソナライゼーションを表します。実験と同様に、パーソナライゼーションが停止している場合はメタデータが利用できなくなりますが、ID は引き続きアクセス可能です。

**プロパティ**

| 名前 | 型 | 説明 |
| - | - | - |
| personalizationID | Number | パーソナライゼーションの ID。 |
| associatedVariationID | Number | 関連付けられたバリエーションの ID。 |
| personalization | Object | 関連付けられた [Personalization オブジェクト](#personalization)。パーソナライゼーションがもはやアクティブでない場合 (停止または一時停止) 、このプロパティは **null** になります。 |
| associatedVariation | Object | 関連付けられた [Variation オブジェクト](#variation)。パーソナライゼーションまたはバリエーションがもはやアクティブでない場合 (停止または一時停止) 、このプロパティは **null** になります。 |
| times | Array | この訪問におけるこのパーソナライゼーションの有効化時刻のリスト (UTC 形式 - 1970 年 1 月 1 日からのミリ秒)。 |

## Variation

`Variation` オブジェクトは `Experiment` の構成要素を表します。A/B テストには、1 つのバリエーションとリファレンスを持つ A/B テストや、2 つとリファレンスを持つ A/B/C テストのように、複数のバリエーションが含まれます。パーソナライゼーションは単一の [Variation オブジェクト](#variation) に関連付けられます。

> [!NOTE]
>
> バリエーションコードの実行中、`this` キーワードは対応する `Variation` オブジェクトを参照します。この参照を使用して、(たとえば `associatedCampaign` プロパティを介して) オブジェクト階層を移動してください。

**プロパティ**

| 名前 | 型 | 説明 |
| - | - | - |
| id | Number | バリエーションの一意の ID。バリエーションがリファレンス (コントロール) を表す場合、ID は **0** と等しくなります。 |
| name | String | バリエーションの名前。バリエーションがリファレンス (コントロール) を表す場合、名前は "Reference" と等しくなります。 |
| associatedCampaign | Object | このバリエーションにリンクされた [Experiment](#experiment) または [Personalization](#personalization) オブジェクト。 |
| instantiatedTemplate | Object | このバリエーションを生成した [Instantiated template オブジェクト](#template)です(該当する場合)。バリエーションがテンプレートから作成されていない場合、このプロパティは **null** です。 |
| reallocationTime | Number | バリエーションに対して最後にトラフィックの再割り当てが行われた時刻です(UTC 形式、1970 年 1 月 1 日からのミリ秒)。エンジンがバリエーションに対して一度も再割り当てを行っていない場合、値は **null** です。 |

## Template

`Template` オブジェクトは、インスタンス化された Widget テンプレートを表します。Kameleoon アプリのインターフェースを通じて共通のコードベースからバリエーションを生成するためにテンプレートを使用します。`Template` オブジェクトには、関連付けられたバリエーションの事前定義されたフィールドとその値が含まれます。

**プロパティ**

| 名前 | 型 | 説明 |
| - | - | - |
| name | String | ベーステンプレートの名前。 |
| customFields | Object | テンプレートデータに対応するマップ。キーはベーステンプレートで定義されたフィールドの名前です。値は、関連付けられたバリエーションに入力したインスタンス化された値です。たとえば、単一のテキストフィールド "currentDiscount" を持つテンプレートを作成した場合、`customFields` は `{"currentDiscount": "-10% on all orders today!"}` のようになります。 |
