Passer au contenu principal
Pendant la version bêta, Experiment Center fonctionne uniquement avec les locataires de développement. Les locataires de production ne sont pas pris en charge.

Prérequis

Pour commencer à utiliser Experiment Center, vous devez disposer des éléments suivants :
  • Un locataire Auth0 de développement
  • Une application Machine-to-Machine avec les scopes suivants de la Management API :
    read:experimentation
    create:experimentation
    update:experimentation
    delete:experimentation
    

1. Créez et activez l’indicateur de fonctionnalité

Un indicateur de fonctionnalité définit ce que vous testez et les variations possibles. Pour créer un indicateur de fonctionnalité, envoyez une requête POST au point de terminaison /api/v2/experimentation/feature-flags.
  • La réponse inclut une valeur feature_flag_id ; vous en aurez besoin dans les étapes suivantes.
  • L’indicateur de fonctionnalité est initialement au statut draft.

Ajouter deux variations

L’indicateur de fonctionnalité doit comporter au moins deux variations avant de pouvoir être activé : un témoin et une variante.

Créer la variation témoin

Vous pouvez créer une variation témoin à l’aide du paramètre overrides pour un indicateur de fonctionnalité donné. Pour ajouter une variation témoin, effectuez un appel POST au point de terminaison /api/v2/experimentation/feature-flags/{feature_flag_id}/variations.
La réponse comprend une valeur variation_id pour la variation témoin. Vous en aurez besoin lors de la configuration des allocations.

Créer la variation de traitement

La variation de traitement remplace les paramètres que vous souhaitez modifier. Pour ajouter la variation de traitement, effectuez une requête POST vers le point de terminaison /api/v2/experimentation/feature-flags/{feature_flag_id}/variations et configurez l’objet overrides.
Example
    "overrides": {
      "show_passkey_prompt": { "value": true },
      "prompt_style": { "value": "modal" }
    }

Activer l’indicateur de fonctionnalité

Maintenant que vous avez deux variations, activez l’indicateur de fonctionnalité. Une expérience ne peut pas être activée tant que l’indicateur de fonctionnalité auquel elle fait référence n’a pas le statut active. Pour faire passer le statut de l’indicateur de fonctionnalité à active, effectuez un appel POST au point de terminaison /api/v2/experimentation/feature-flags/{feature_flag_id}/status.

2. Créer un segment (facultatif)

Si vous voulez cibler un trafic précis, créez un segment. Ignorez cette étape si vous voulez une simple répartition en pourcentage sur l’ensemble du trafic. Pour créer un segment, effectuez un appel POST au point de terminaison /api/v2/experimentation/segments. Cet exemple crée un segment qui cible les utilisateurs mobiles aux États-Unis :
Example
    "name": "mobile-us-users",
    "description": "Mobile users from the United States",
    "rules": [
      {
        "match_type": "all",
        "conditions": [
          { "attribute": "device_type", "operator": "equals", "value": "mobile" },
          { "attribute": "country", "operator": "equals", "value": "US" }
        ]
      }
    ]
La réponse inclut une valeur segment_id. Les segments s’appliquent uniquement lorsque vous utilisez la stratégie d’allocation segment dans l’expérience.

3. Créer et activer une expérience

Créez une expérience qui fait référence à votre indicateur de fonctionnalité et définit la façon de répartir le trafic. Pour créer une expérience, envoyez une requête POST au point de terminaison /api/v2/experimentation/experiments. Cet exemple utilise une répartition de 90/10 au moyen de l’objet allocations : 90 % des utilisateurs reçoivent la version témoin, 10 % le traitement. Il s’agit d’un point de départ courant pour un déploiement prudent.
Example
    "allocations": [
      {
        "variation_id": "var_Id",
        "weight": 90,
        "is_control": true
      },
      {
        "variation_id": "var_Id",
        "weight": 10,
        "is_control": false
      }
    ]

L’expérience commence avec le statut draft et is_valid: false. C’est normal; la vérification complète de l’état de préparation se fait à l’étape suivante.

Valider l’expérience

Avant de l’activer, assurez-vous que l’expérience est prête. Le point de terminaison /validate renvoie les mêmes vérifications que celles effectuées au moment de l’activation. Pour valider l’expérience, effectuez un appel POST au point de terminaison /api/v2/experimentation/experiments/{experiment_id}/validate. La réponse inclut la valeur is_valid, qui indique si l’expérience est prête à être activée.

Activer l’expérience

Lorsque l’expérience est valide et que vous avez testé les deux variantes, activez-la. Pour faire passer le statut de l’expérience à active, envoyez une requête POST au point de terminaison /api/v2/experimentation/experiments/{experiment_id}/status. La valeur started_at de l’expérience est définie lors de la première activation et ne change pas si vous la mettez en pause puis la réactivez.
Une seule expérience active par locataire. Si une autre expérience est déjà active, l’activation renvoie 400 experiment_active_limit_exceeded. Mettez d’abord l’autre expérience en pause ou terminez-la.

4. Déclenchez un événement d’authentification et observez les résultats

Déclenchez une connexion de test dans votre locataire de test. Par exemple, ouvrez un navigateur et accédez à votre URL /authorize sans aucun paramètre de substitution. Terminez le flux de connexion. Experiment Center détermine l’expérience active, attribue une variation à l’aide d’un hachage déterministe, injecte le contexte de l’expérience et enrichit l’événement d’authentification qui en résulte.

Vérifier les logs enrichis

Vous pouvez consulter les logs Auth0 pour les événements d’expérience :
  • Accédez à Auth0 Dashboard > Monitoring > Logs.
  • Utilisez Log streaming : si vous transférez déjà les logs du locataire vers un outil d’analytique (Datadog, Splunk, Segment, etc.), les métadonnées enrichies de l’expérience transitent automatiquement par le même flux.
L’événement inclut des métadonnées d’expérience dans l’objet details.experiment. Le champ variation_id indique à quelle variation l’utilisateur a été affecté.
Vous avez exécuté votre première expérience avec succès lorsque :
  1. Vos événements d’authentification dans les logs du locataire incluent details.experiment avec experiment_id et variation_id
  2. Les deux variations produisent le comportement attendu lorsqu’elles sont testées avec des surcharges de paramètres de requête
  3. Le même appareil ou utilisateur obtient systématiquement le même variation_id dans plusieurs événements d’authentification (affectation déterministe)

En savoir plus