Skip to main content
Auth0のManagement APIを使用すると、プロパティ、ライフサイクルのステータス、検証ルールなど、Experiment Center エンティティの詳細を定義できます。
Beta期間中、Experiment Center は開発用テナントでのみ利用できます。本番用テナントはサポートされていません。

実験

実験のライフサイクル

実験には 5 つの状態があります。 ライフサイクルを移行するには、Management API の /api/v2/experimentation/experiments/{id}/status エンドポイントを使用します。
completed → active への移行はできません。同じテストを再度実行する必要がある場合は、新しい実験を作成してください。

is_valid ゲート

実験を有効化する前に、準備完了チェックに合格する必要があります。 Experiment Center では、すべての実験に is_valid というブール値が保存され、書き込みのたびに再計算されます。これにより、設定中にすぐフィードバックを得られます。 また、Management API の /api/v2/experimentation/experiments/{id}/validate エンドポイントを使用して、準備完了状態を明示的に確認することもできます。 このエンドポイントは is_valid: true/false と、各ブロッカーを一覧にした errors 配列を返します。ステータス エンドポイント経由で有効化を試みた場合も、同じチェックが自動的に実行されます。 有効化時にチェックされる検証ルール:
  • 参照されているフィーチャーフラグが active ステータスである
  • 少なくとも 1 つの割り当てが存在する
  • すべての割り当ての variation_id 値が、その実験のフィーチャーフラグに属している
  • is_control: true を持つ割り当てがちょうど 1 つある
  • 割り当ての重みの合計が 100 である (パーセンテージ戦略)
  • is_fallback: true を持つ割り当てがちょうど 1 つある (セグメント戦略)
  • テナント内で現在有効な他の実験が存在しない (Beta のみ)

割り当て

クエリパラメータによるオーバーライド クエリパラメータを指定すると、任意の /authorize リクエストに特定の割り当てを強制できます。 これは、draft を含むあらゆるステータスの実験で機能します。開発中はこれを使って、有効化する前に両方の バリエーション が正しく表示されることを確認してください。

フィーチャーフラグ

フィーチャーフラグのライフサイクル

フィーチャーフラグのライフサイクルは、次の 3 つの状態で管理されます。 ステータスを切り替えるには、Auth0 Management API の /api/v2/experimentation/feature-flags/{id}/status エンドポイントを使用します。 有効化の条件: フィーチャーフラグは、少なくとも 2 つのバリエーションを持つまで active に移行できません。これにより、すべての有効なフラグは、本番利用される前に最低でも 1 つの control と 1 つの treatment を備えていることが保証されます。
archived → active への移行はできません。フラグをアーカイブした後に別のテストを実行する必要がある場合は、新しい フィーチャーフラグ を作成してください。

バリエーション

パラメータとオーバーライド フィーチャーフラグ のパラメータは、実験の設定項目を定義します。各パラメータには、次のものがあります。
  • 名前 (例: show_passkey_prompt)
  • 型: stringbooleannumberarray、または object
  • デフォルト値 (ベースライン)
バリエーションの overrides では、異なるパラメータだけを指定します。実行時には、Experiment Center がフラグのベースラインとバリエーションのオーバーライドをマージし、マージ後の完全な config オブジェクトを ACUL、Actions、ページテンプレートに渡します。すべてのパラメータには常に config 内で値が設定されるため、フォールバックロジックを書く必要はありません。
パラメータで使用できるのは構造化モードのみです。各パラメータは、名前付きキーと型付きの値を持ちます。

セグメント

セグメントのルール

セグメントの rules は、ルールオブジェクトの配列です。配列内の いずれか のルールに一致すると、そのリクエストはそのセグメントに一致します。
  • match: すべての条件が true である必要があります (AND ロジック)
  • not_match: すべての条件が true である必要があります (NOT ロジック)
各条件では、演算子 containsstarts_withends_withexists を使って、属性と値を比較します。

使用可能な条件属性

セグメントで使用できる属性は、/authorize トランザクションの開始時に利用可能なものに限られます。

詳細情報

Experiment Center Quickstart

フィーチャーフラグ、バリエーション、実験を一通り作成する手順を確認します。

ACUL 連携

Auth0 Custom Universal Login (ACUL) の画面内で実験のコンテキストを読み取ります。