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

# Inicio rápido de Experiment Center

> Aprenda a crear una indicador de funcionalidad, agregar variaciones, crear un experimento, activarlo y observar datos enriquecidos del experimento en los registros del inquilino.

export const ReleaseStageNotice = ({feature, stage, plans, contact, terms}) => {
  const stageTextMap = {
    "beta": "Beta",
    "ea": "Acceso anticipado"
  };
  const stageText = stageTextMap[stage] || "una etapa de lanzamiento del producto";
  const prsLink = "/docs/troubleshoot/product-lifecycle/product-release-stages";
  const linkify = (text, url) => {
    return <a href={url} target="_blank" rel="noreferrer" class="link">{text}</a>;
  };
  const includeDetails = (plans, contact, terms) => {
    const hasDetails = terms || plans || contact;
    if (!hasDetails) return null;
    return <span data-as="p">
            {plans && <>Esta funcionalidad está disponible en los {linkify(`planes ${plans}`, "https://auth0.com/pricing")}. </>}
            {contact && "Para participar, ponte en contacto con " + contact + ". "}
            {terms && <>Al usar esta funcionalidad, aceptas los términos aplicables de la prueba gratuita incluidos en el {linkify("Master Subscription Agreement", "https://www.okta.com/legal")} de Okta.</>}
        </span>;
  };
  return <Warning>
            <span data-as="p">
                <strong>La funcionalidad {feature} está en {linkify(stageText, prsLink)}.</strong>
            </span>

            {includeDetails(plans, contact, terms)}
        </Warning>;
};

<ReleaseStageNotice feature="Auth0 Experiment Center" stage="beta" terms="true" contact="Auth0 Support" />

<Warning>
  Durante la beta, Experiment Center solo funciona en inquilinos de desarrollo. Los inquilinos de producción no se admiten.
</Warning>

<div id="prerequisites">
  ## Requisitos previos
</div>

Para comenzar con Experiment Center, necesitas:

* **Un inquilino [de desarrollo](/es/docs/get-started/tenant-settings#environment-tag) de Auth0**

* **Una aplicación [de máquina a máquina](/es/docs/get-started/apis/create-m2m-app-test#create-machine-to-machine-applications-for-testing)** con los siguientes alcances de Management API:

  ```text wrap lines theme={null}
  read:experimentation
  create:experimentation
  update:experimentation
  delete:experimentation
  ```

<div id="1-create-and-activate-the-feature-flag">
  ## 1. Crear y activar el indicador de funcionalidad
</div>

Un indicador de funcionalidad define qué se está probando y cuáles son las posibles variaciones.

Para crear un indicador de funcionalidad, realice una solicitud `POST` al endpoint [`/api/v2/experimentation/feature-flags`](/es/docs/api/management/v2/experimentation/create-feature-flag).

<Callout icon="file-lines" color="#0EA5E9" iconType="regular">
  * La respuesta incluye un valor `feature_flag_id`; necesitará ese valor en los pasos posteriores.
  * El indicador de funcionalidad comienza con el estado `draft`.
</Callout>

<div id="add-two-variations">
  ### Agrega dos variaciones
</div>

El indicador de funcionalidad debe tener al menos dos variaciones antes de poder activarse: una de control y una de tratamiento.

<div id="create-the-control-variation">
  #### Cree la variación de control
</div>

Puede crear una variación de control con el parámetro `overrides` para un indicador de funcionalidad específico.

Para agregar una variación de control, haga una solicitud `POST` al endpoint [`/api/v2/experimentation/feature-flags/{feature_flag_id}/variations`](/es/docs/api/management/v2/experimentation/create-variation).

<Callout icon="file-lines" color="#0EA5E9" iconType="regular">
  La respuesta incluye un valor `variation_id` para el control. Lo necesitará al configurar las asignaciones.
</Callout>

<div id="create-the-treatment-variation">
  #### Crear la variación de tratamiento
</div>

La variación de tratamiento sobrescribe los parámetros que quiera cambiar.

Para añadir la variación de tratamiento, realice una solicitud `POST` al endpoint [`/api/v2/experimentation/feature-flags/{feature_flag_id}/variations`](/es/docs/api/management/v2/experimentation/create-variation) y configure el objeto `overrides`.

```json Example theme={null}
    "overrides": {
      "show_passkey_prompt": { "value": true },
      "prompt_style": { "value": "modal" }
    }
```

<div id="activate-the-feature-flag">
  ### Activa el indicador de funcionalidad
</div>

Ahora que tienes dos variaciones, activa el indicador de funcionalidad. Un experimento no puede activarse a menos que el indicador de funcionalidad al que hace referencia tenga el estado `active`.

Para cambiar el estado del indicador de funcionalidad a `active`, haz una llamada `POST` al endpoint [`/api/v2/experimentation/feature-flags/{feature_flag_id}/status`](/es/docs/api/management/v2/experimentation/update-feature-flag-status).

<div id="2-create-a-segment-optional">
  ## 2. Crear un segmento (opcional)
</div>

Si quiere orientar tráfico específico, cree un segmento. Omita este paso si quiere una división porcentual simple para todo el tráfico.

Para crear un segmento, haga una llamada `POST` al endpoint [`/api/v2/experimentation/segments`](https://auth0.com/docs/api/management/v2/experimentation/create-segment).

Este ejemplo crea un segmento que identifica a usuarios móviles de Estados Unidos:

```json Example theme={null}
    "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" }
        ]
      }
    ]
```

<Callout icon="file-lines" color="#0EA5E9" iconType="regular">
  La respuesta incluye un valor `segment_id`. Los segmentos solo se aplican cuando se usa la [estrategia de asignación](/es/docs/api/management/v2/experimentation/create-experiment#body-allocation-strategy) `segment` en el experimento.
</Callout>

<div id="3-create-and-activate-an-experiment">
  ## 3. Crear y activar un experimento
</div>

Cree un experimento que haga referencia a su indicador de funcionalidad y defina cómo repartir el tráfico.

Para crear un experimento, realice una llamada `POST` al endpoint [`/api/v2/experimentation/experiments`](/es/docs/api/management/v2/experimentation/create-experiment#body-allocations).

Este ejemplo usa una división porcentual de 90/10 mediante el objeto `allocations`: el 90 % de los usuarios recibe el control y el 10 % recibe el tratamiento. Este es un punto de partida habitual para un despliegue gradual y prudente.

```json Example theme={null}
    "allocations": [
      {
        "variation_id": "var_Id",
        "weight": 90,
        "is_control": true
      },
      {
        "variation_id": "var_Id",
        "weight": 10,
        "is_control": false
      }
    ]

```

El experimento comienza con el estado `draft` y `is_valid: false`. Esto es normal; la comprobación completa de preparación se ejecuta en el siguiente paso.

<div id="validate-the-experiment">
  ### Validar el experimento
</div>

Antes de activarlo, confirma que el experimento esté listo. El endpoint `/validate` devuelve las mismas comprobaciones que se ejecutan al activarlo.

Para confirmar el experimento, realiza una llamada `POST` al endpoint [`/api/v2/experimentation/experiments/{experiment_id}/validate`](/es/docs/api/management/v2/experimentation/validate-experiment).

La respuesta incluye el valor `is_valid` para confirmar si está listo para activarse.

<div id="activate-the-experiment">
  ### Activar el experimento
</div>

Cuando el experimento sea válido y hayas probado ambas variaciones, actívalo.

Para cambiar el estado del experimento a `active`, realiza una solicitud `POST` al endpoint [`/api/v2/experimentation/experiments/{experiment_id}/status`](/es/docs/api/management/v2/experimentation/update-experiment-status).

El valor `started_at` del experimento se establece en la primera activación y no cambia si lo pausas y lo vuelves a activar.

<Callout icon="file-lines" color="#0EA5E9" iconType="regular">
  **Un experimento activo por inquilino.** Si ya hay otro experimento activo, la activación devuelve `400 experiment_active_limit_exceeded`. Primero pausa o completa el otro experimento.
</Callout>

<div id="4-trigger-an-auth-event-and-observe-results">
  ## 4. Desencadena un evento de autenticación y observa los resultados
</div>

Desencadena un login de prueba en tu inquilino de prueba. Por ejemplo, abre un navegador y ve a la URL `/authorize` sin ningún parámetro de anulación.

Completa el proceso de inicio de sesión. Experiment Center determina el experimento activo, asigna una variación mediante hash determinista, inyecta el contexto del experimento y enriquece el evento de autenticación resultante.

<div id="verify-enriched-logs">
  ### Verifica los registros enriquecidos
</div>

Puedes revisar los registros de Auth0 de los eventos del experimento:

* Ve a Auth0 [**Dashboard > Monitoring > Logs**](https://manage.auth0.com/dashboard/#/logs).

* Usa Log Streaming: si ya envías los registros del inquilino a una herramienta de análisis (Datadog, Splunk, Segment, etc.), los metadatos enriquecidos del experimento se transmiten automáticamente a través del mismo flujo.

<Callout icon="file-lines" color="#0EA5E9" iconType="regular">
  El evento incluye metadatos del experimento en el objeto `details.experiment`. El campo `variation_id` indica qué variación se asignó al usuario.
</Callout>

<Check>
  Has ejecutado correctamente tu primer experimento cuando:

  1. Tus eventos de autenticación en los registros del inquilino incluyen `details.experiment` con `experiment_id` y `variation_id`
  2. Ambas variaciones producen el comportamiento correcto cuando se prueban con sobrescrituras de parámetros de consulta
  3. El mismo dispositivo o usuario recibe sistemáticamente el mismo `variation_id` en varios eventos de autenticación (asignación determinista)
</Check>

<div id="learn-more">
  ## Más información
</div>

* Lea la [guía de integración de ACUL](/es/docs/customize/experiment-center/integrations/acul-integration-guide) para saber cómo condicionar el código de su componente ACUL según el contexto del experimento.
* Lea la [guía de integración de Actions](/es/docs/customize/experiment-center/integrations/actions-integration-guide) para usar `event.experiment` en los activadores de post-login y de registro.
