1. Registry
  2. Packages
  3. Auth0 Provider
  4. API Docs
  5. Experiment
Viewing docs for Auth0 v3.56.0
published on Friday, Nov 6, 2026 by Pulumi
auth0 logo auth0 logo
Viewing docs for Auth0 v3.56.0
published on Friday, Nov 6, 2026 by Pulumi

    Create and manage an Experiment Center experiment. (EA only)

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as auth0 from "@pulumi/auth0";
    
    const loginUi = new auth0.ExperimentFeatureFlag("login_ui", {
        parameters: [{
            name: "show_new_login",
            type: "boolean",
            value: "false",
        }],
        variations: [
            {
                name: "control",
            },
            {
                overrides: [{
                    name: "show_new_login",
                    type: "boolean",
                    value: "true",
                }],
                name: "new-login",
            },
        ],
        name: "new-login-ui",
        description: "Controls whether the new login UI is shown.",
        status: "active",
    });
    // Percentage strategy: split traffic between variations by weight.
    const percentage = new auth0.Experiment("percentage", {
        allocations: [
            {
                variationId: loginUi.variationIds.control,
                isControl: true,
                weight: 50,
            },
            {
                variationId: loginUi.variationIds["new-login"],
                isControl: false,
                weight: 50,
            },
        ],
        name: "login-ui-percentage-test",
        description: "Show the new login UI to half of the traffic.",
        featureFlagId: loginUi.id,
        authenticationFlow: "authentication",
        allocationStrategy: "percentage",
        status: "draft",
    });
    const usTraffic = new auth0.ExperimentSegment("us_traffic", {
        rules: [{
            match: {
                country: {
                    contains: ["US"],
                },
            },
        }],
        name: "us-traffic",
    });
    // Segment strategy: route each segment to a variation; other traffic gets the
    // fallback allocation.
    const segment = new auth0.Experiment("segment", {
        allocations: [
            {
                variationId: loginUi.variationIds.control,
                isControl: true,
                segmentId: usTraffic.id,
                priority: 1,
            },
            {
                variationId: loginUi.variationIds["new-login"],
                isControl: false,
                isFallback: true,
            },
        ],
        name: "login-ui-segment-test",
        description: "Keep US traffic on the current login UI and show the new UI elsewhere.",
        featureFlagId: loginUi.id,
        authenticationFlow: "mfa_challenge",
        allocationStrategy: "segment",
        status: "draft",
    });
    
    import pulumi
    import pulumi_auth0 as auth0
    
    login_ui = auth0.ExperimentFeatureFlag("login_ui",
        parameters=[{
            "name": "show_new_login",
            "type": "boolean",
            "value": "false",
        }],
        variations=[
            {
                "name": "control",
            },
            {
                "overrides": [{
                    "name": "show_new_login",
                    "type": "boolean",
                    "value": "true",
                }],
                "name": "new-login",
            },
        ],
        name="new-login-ui",
        description="Controls whether the new login UI is shown.",
        status="active")
    # Percentage strategy: split traffic between variations by weight.
    percentage = auth0.Experiment("percentage",
        allocations=[
            {
                "variation_id": login_ui.variation_ids["control"],
                "is_control": True,
                "weight": 50,
            },
            {
                "variation_id": login_ui.variation_ids["new-login"],
                "is_control": False,
                "weight": 50,
            },
        ],
        name="login-ui-percentage-test",
        description="Show the new login UI to half of the traffic.",
        feature_flag_id=login_ui.id,
        authentication_flow="authentication",
        allocation_strategy="percentage",
        status="draft")
    us_traffic = auth0.ExperimentSegment("us_traffic",
        rules=[{
            "match": {
                "country": {
                    "contains": ["US"],
                },
            },
        }],
        name="us-traffic")
    # Segment strategy: route each segment to a variation; other traffic gets the
    # fallback allocation.
    segment = auth0.Experiment("segment",
        allocations=[
            {
                "variation_id": login_ui.variation_ids["control"],
                "is_control": True,
                "segment_id": us_traffic.id,
                "priority": 1,
            },
            {
                "variation_id": login_ui.variation_ids["new-login"],
                "is_control": False,
                "is_fallback": True,
            },
        ],
        name="login-ui-segment-test",
        description="Keep US traffic on the current login UI and show the new UI elsewhere.",
        feature_flag_id=login_ui.id,
        authentication_flow="mfa_challenge",
        allocation_strategy="segment",
        status="draft")
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-auth0/sdk/v3/go/auth0"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		loginUi, err := auth0.NewExperimentFeatureFlag(ctx, "login_ui", &auth0.ExperimentFeatureFlagArgs{
    			Parameters: auth0.ExperimentFeatureFlagParameterArray{
    				&auth0.ExperimentFeatureFlagParameterArgs{
    					Name:  pulumi.String("show_new_login"),
    					Type:  pulumi.String("boolean"),
    					Value: pulumi.String("false"),
    				},
    			},
    			Variations: auth0.ExperimentFeatureFlagVariationArray{
    				&auth0.ExperimentFeatureFlagVariationArgs{
    					Name: pulumi.String("control"),
    				},
    				&auth0.ExperimentFeatureFlagVariationArgs{
    					Overrides: auth0.ExperimentFeatureFlagVariationOverrideArray{
    						&auth0.ExperimentFeatureFlagVariationOverrideArgs{
    							Name:  pulumi.String("show_new_login"),
    							Type:  pulumi.String("boolean"),
    							Value: pulumi.String("true"),
    						},
    					},
    					Name: pulumi.String("new-login"),
    				},
    			},
    			Name:        pulumi.String("new-login-ui"),
    			Description: pulumi.String("Controls whether the new login UI is shown."),
    			Status:      pulumi.String("active"),
    		})
    		if err != nil {
    			return err
    		}
    		// Percentage strategy: split traffic between variations by weight.
    		_, err = auth0.NewExperiment(ctx, "percentage", &auth0.ExperimentArgs{
    			Allocations: auth0.ExperimentAllocationArray{
    				&auth0.ExperimentAllocationArgs{
    					VariationId: loginUi.VariationIds.ApplyT(func(variationIds map[string]string) (string, error) {
    						return variationIds["control"], nil
    					}).(pulumi.StringOutput),
    					IsControl: pulumi.Bool(true),
    					Weight:    pulumi.Int(50),
    				},
    				&auth0.ExperimentAllocationArgs{
    					VariationId: loginUi.VariationIds.ApplyT(func(variationIds map[string]string) (string, error) {
    						return variationIds["new-login"], nil
    					}).(pulumi.StringOutput),
    					IsControl: pulumi.Bool(false),
    					Weight:    pulumi.Int(50),
    				},
    			},
    			Name:               pulumi.String("login-ui-percentage-test"),
    			Description:        pulumi.String("Show the new login UI to half of the traffic."),
    			FeatureFlagId:      loginUi.ID(),
    			AuthenticationFlow: pulumi.String("authentication"),
    			AllocationStrategy: pulumi.String("percentage"),
    			Status:             pulumi.String("draft"),
    		})
    		if err != nil {
    			return err
    		}
    		usTraffic, err := auth0.NewExperimentSegment(ctx, "us_traffic", &auth0.ExperimentSegmentArgs{
    			Rules: auth0.ExperimentSegmentRuleArray{
    				&auth0.ExperimentSegmentRuleArgs{
    					Match: &auth0.ExperimentSegmentRuleMatchArgs{
    						Country: &auth0.ExperimentSegmentRuleMatchCountryArgs{
    							Contains: pulumi.StringArray{
    								pulumi.String("US"),
    							},
    						},
    					},
    				},
    			},
    			Name: pulumi.String("us-traffic"),
    		})
    		if err != nil {
    			return err
    		}
    		// Segment strategy: route each segment to a variation; other traffic gets the
    		// fallback allocation.
    		_, err = auth0.NewExperiment(ctx, "segment", &auth0.ExperimentArgs{
    			Allocations: auth0.ExperimentAllocationArray{
    				&auth0.ExperimentAllocationArgs{
    					VariationId: loginUi.VariationIds.ApplyT(func(variationIds map[string]string) (string, error) {
    						return variationIds["control"], nil
    					}).(pulumi.StringOutput),
    					IsControl: pulumi.Bool(true),
    					SegmentId: usTraffic.ID(),
    					Priority:  pulumi.Int(1),
    				},
    				&auth0.ExperimentAllocationArgs{
    					VariationId: loginUi.VariationIds.ApplyT(func(variationIds map[string]string) (string, error) {
    						return variationIds["new-login"], nil
    					}).(pulumi.StringOutput),
    					IsControl:  pulumi.Bool(false),
    					IsFallback: pulumi.Bool(true),
    				},
    			},
    			Name:               pulumi.String("login-ui-segment-test"),
    			Description:        pulumi.String("Keep US traffic on the current login UI and show the new UI elsewhere."),
    			FeatureFlagId:      loginUi.ID(),
    			AuthenticationFlow: pulumi.String("mfa_challenge"),
    			AllocationStrategy: pulumi.String("segment"),
    			Status:             pulumi.String("draft"),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Auth0 = Pulumi.Auth0;
    
    return await Deployment.RunAsync(() => 
    {
        var loginUi = new Auth0.ExperimentFeatureFlag("login_ui", new()
        {
            Parameters = new[]
            {
                new Auth0.Inputs.ExperimentFeatureFlagParameterArgs
                {
                    Name = "show_new_login",
                    Type = "boolean",
                    Value = "false",
                },
            },
            Variations = new[]
            {
                new Auth0.Inputs.ExperimentFeatureFlagVariationArgs
                {
                    Name = "control",
                },
                new Auth0.Inputs.ExperimentFeatureFlagVariationArgs
                {
                    Overrides = new[]
                    {
                        new Auth0.Inputs.ExperimentFeatureFlagVariationOverrideArgs
                        {
                            Name = "show_new_login",
                            Type = "boolean",
                            Value = "true",
                        },
                    },
                    Name = "new-login",
                },
            },
            Name = "new-login-ui",
            Description = "Controls whether the new login UI is shown.",
            Status = "active",
        });
    
        // Percentage strategy: split traffic between variations by weight.
        var percentage = new Auth0.Experiment("percentage", new()
        {
            Allocations = new[]
            {
                new Auth0.Inputs.ExperimentAllocationArgs
                {
                    VariationId = loginUi.VariationIds.Apply(variationIds => variationIds.Control),
                    IsControl = true,
                    Weight = 50,
                },
                new Auth0.Inputs.ExperimentAllocationArgs
                {
                    VariationId = loginUi.VariationIds.Apply(variationIds => variationIds.New_login),
                    IsControl = false,
                    Weight = 50,
                },
            },
            Name = "login-ui-percentage-test",
            Description = "Show the new login UI to half of the traffic.",
            FeatureFlagId = loginUi.Id,
            AuthenticationFlow = "authentication",
            AllocationStrategy = "percentage",
            Status = "draft",
        });
    
        var usTraffic = new Auth0.ExperimentSegment("us_traffic", new()
        {
            Rules = new[]
            {
                new Auth0.Inputs.ExperimentSegmentRuleArgs
                {
                    Match = new Auth0.Inputs.ExperimentSegmentRuleMatchArgs
                    {
                        Country = new Auth0.Inputs.ExperimentSegmentRuleMatchCountryArgs
                        {
                            Contains = new[]
                            {
                                "US",
                            },
                        },
                    },
                },
            },
            Name = "us-traffic",
        });
    
        // Segment strategy: route each segment to a variation; other traffic gets the
        // fallback allocation.
        var segment = new Auth0.Experiment("segment", new()
        {
            Allocations = new[]
            {
                new Auth0.Inputs.ExperimentAllocationArgs
                {
                    VariationId = loginUi.VariationIds.Apply(variationIds => variationIds.Control),
                    IsControl = true,
                    SegmentId = usTraffic.Id,
                    Priority = 1,
                },
                new Auth0.Inputs.ExperimentAllocationArgs
                {
                    VariationId = loginUi.VariationIds.Apply(variationIds => variationIds.New_login),
                    IsControl = false,
                    IsFallback = true,
                },
            },
            Name = "login-ui-segment-test",
            Description = "Keep US traffic on the current login UI and show the new UI elsewhere.",
            FeatureFlagId = loginUi.Id,
            AuthenticationFlow = "mfa_challenge",
            AllocationStrategy = "segment",
            Status = "draft",
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.auth0.ExperimentFeatureFlag;
    import com.pulumi.auth0.ExperimentFeatureFlagArgs;
    import com.pulumi.auth0.inputs.ExperimentFeatureFlagParameterArgs;
    import com.pulumi.auth0.inputs.ExperimentFeatureFlagVariationArgs;
    import com.pulumi.auth0.inputs.ExperimentFeatureFlagVariationOverrideArgs;
    import com.pulumi.auth0.Experiment;
    import com.pulumi.auth0.ExperimentArgs;
    import com.pulumi.auth0.inputs.ExperimentAllocationArgs;
    import com.pulumi.auth0.ExperimentSegment;
    import com.pulumi.auth0.ExperimentSegmentArgs;
    import com.pulumi.auth0.inputs.ExperimentSegmentRuleArgs;
    import com.pulumi.auth0.inputs.ExperimentSegmentRuleMatchArgs;
    import com.pulumi.auth0.inputs.ExperimentSegmentRuleMatchCountryArgs;
    import java.util.ArrayList;
    import java.util.Arrays;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var loginUi = new ExperimentFeatureFlag("loginUi", ExperimentFeatureFlagArgs.builder()
                .parameters(ExperimentFeatureFlagParameterArgs.builder()
                    .name("show_new_login")
                    .type("boolean")
                    .value("false")
                    .build())
                .variations(            
                    ExperimentFeatureFlagVariationArgs.builder()
                        .name("control")
                        .build(),
                    ExperimentFeatureFlagVariationArgs.builder()
                        .overrides(ExperimentFeatureFlagVariationOverrideArgs.builder()
                            .name("show_new_login")
                            .type("boolean")
                            .value("true")
                            .build())
                        .name("new-login")
                        .build())
                .name("new-login-ui")
                .description("Controls whether the new login UI is shown.")
                .status("active")
                .build());
    
            // Percentage strategy: split traffic between variations by weight.
            var percentage = new Experiment("percentage", ExperimentArgs.builder()
                .allocations(            
                    ExperimentAllocationArgs.builder()
                        .variationId(loginUi.variationIds().applyValue(_variationIds -> _variationIds.get("control")))
                        .isControl(true)
                        .weight(50)
                        .build(),
                    ExperimentAllocationArgs.builder()
                        .variationId(loginUi.variationIds().applyValue(_variationIds -> _variationIds.get("new-login")))
                        .isControl(false)
                        .weight(50)
                        .build())
                .name("login-ui-percentage-test")
                .description("Show the new login UI to half of the traffic.")
                .featureFlagId(loginUi.id())
                .authenticationFlow("authentication")
                .allocationStrategy("percentage")
                .status("draft")
                .build());
    
            var usTraffic = new ExperimentSegment("usTraffic", ExperimentSegmentArgs.builder()
                .rules(ExperimentSegmentRuleArgs.builder()
                    .match(ExperimentSegmentRuleMatchArgs.builder()
                        .country(ExperimentSegmentRuleMatchCountryArgs.builder()
                            .contains("US")
                            .build())
                        .build())
                    .build())
                .name("us-traffic")
                .build());
    
            // Segment strategy: route each segment to a variation; other traffic gets the
            // fallback allocation.
            var segment = new Experiment("segment", ExperimentArgs.builder()
                .allocations(            
                    ExperimentAllocationArgs.builder()
                        .variationId(loginUi.variationIds().applyValue(_variationIds -> _variationIds.get("control")))
                        .isControl(true)
                        .segmentId(usTraffic.id())
                        .priority(1)
                        .build(),
                    ExperimentAllocationArgs.builder()
                        .variationId(loginUi.variationIds().applyValue(_variationIds -> _variationIds.get("new-login")))
                        .isControl(false)
                        .isFallback(true)
                        .build())
                .name("login-ui-segment-test")
                .description("Keep US traffic on the current login UI and show the new UI elsewhere.")
                .featureFlagId(loginUi.id())
                .authenticationFlow("mfa_challenge")
                .allocationStrategy("segment")
                .status("draft")
                .build());
    
        }
    }
    
    resources:
      loginUi:
        type: auth0:ExperimentFeatureFlag
        name: login_ui
        properties:
          parameters:
            - name: show_new_login
              type: boolean
              value: 'false'
          variations:
            - name: control
            - overrides:
                - name: show_new_login
                  type: boolean
                  value: 'true'
              name: new-login
          name: new-login-ui
          description: Controls whether the new login UI is shown.
          status: active
      # Percentage strategy: split traffic between variations by weight.
      percentage:
        type: auth0:Experiment
        properties:
          allocations:
            - variationId: ${loginUi.variationIds.control}
              isControl: true
              weight: 50
            - variationId: ${loginUi.variationIds["new-login"]}
              isControl: false
              weight: 50
          name: login-ui-percentage-test
          description: Show the new login UI to half of the traffic.
          featureFlagId: ${loginUi.id}
          authenticationFlow: authentication
          allocationStrategy: percentage
          status: draft
      usTraffic:
        type: auth0:ExperimentSegment
        name: us_traffic
        properties:
          rules:
            - match:
                country:
                  contains:
                    - US
          name: us-traffic
      # Segment strategy: route each segment to a variation; other traffic gets the
      # fallback allocation.
      segment:
        type: auth0:Experiment
        properties:
          allocations:
            - variationId: ${loginUi.variationIds.control}
              isControl: true
              segmentId: ${usTraffic.id}
              priority: 1
            - variationId: ${loginUi.variationIds["new-login"]}
              isControl: false
              isFallback: true
          name: login-ui-segment-test
          description: Keep US traffic on the current login UI and show the new UI elsewhere.
          featureFlagId: ${loginUi.id}
          authenticationFlow: mfa_challenge
          allocationStrategy: segment
          status: draft
    
    terraform {
      required_providers {
        auth0 = {
          source = "pulumi/auth0"
        }
      }
    }
    
    resource "auth0_experiment_feature_flag" "login_ui" {
      lifecycle {
        create_before_destroy = true
      }
      parameters {
        name  = "show_new_login"
        type  = "boolean"
        value = "false"
      }
      variations {
        name = "control"
      }
      variations {
        overrides {
          name  = "show_new_login"
          type  = "boolean"
          value = "true"
        }
        name = "new-login"
      }
      name        = "new-login-ui"
      description = "Controls whether the new login UI is shown."
      status      = "active"
    }
    # Percentage strategy: split traffic between variations by weight.
    resource "auth0_experiment" "percentage" {
      lifecycle {
        create_before_destroy = true
      }
      allocations {
        variation_id = auth0_experiment_feature_flag.login_ui.variation_ids["control"]
        is_control   = true
        weight       = 50
      }
      allocations {
        variation_id = auth0_experiment_feature_flag.login_ui.variation_ids["new-login"]
        is_control   = false
        weight       = 50
      }
      name                = "login-ui-percentage-test"
      description         = "Show the new login UI to half of the traffic."
      feature_flag_id     = auth0_experiment_feature_flag.login_ui.id
      authentication_flow = "authentication"
      allocation_strategy = "percentage"
      status              = "draft"
    }
    resource "auth0_experiment_segment" "us_traffic" {
      lifecycle {
        create_before_destroy = true
      }
      rules {
        match {
          country {
            contains = ["US"]
          }
        }
      }
      name = "us-traffic"
    }
    # Segment strategy: route each segment to a variation; other traffic gets the
    # fallback allocation.
    resource "auth0_experiment" "segment" {
      lifecycle {
        create_before_destroy = true
      }
      allocations {
        variation_id = auth0_experiment_feature_flag.login_ui.variation_ids["control"]
        is_control   = true
        segment_id   = auth0_experiment_segment.us_traffic.id
        priority     = 1
      }
      allocations {
        variation_id = auth0_experiment_feature_flag.login_ui.variation_ids["new-login"]
        is_control   = false
        is_fallback  = true
      }
      name                = "login-ui-segment-test"
      description         = "Keep US traffic on the current login UI and show the new UI elsewhere."
      feature_flag_id     = auth0_experiment_feature_flag.login_ui.id
      authentication_flow = "mfa_challenge"
      allocation_strategy = "segment"
      status              = "draft"
    }
    

    Create Experiment Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new Experiment(name: string, args: ExperimentArgs, opts?: CustomResourceOptions);
    @overload
    def Experiment(resource_name: str,
                   args: ExperimentArgs,
                   opts: Optional[ResourceOptions] = None)
    
    @overload
    def Experiment(resource_name: str,
                   opts: Optional[ResourceOptions] = None,
                   allocation_strategy: Optional[str] = None,
                   authentication_flow: Optional[str] = None,
                   feature_flag_id: Optional[str] = None,
                   allocations: Optional[Sequence[ExperimentAllocationArgs]] = None,
                   default_config: Optional[str] = None,
                   description: Optional[str] = None,
                   levels: Optional[Sequence[int]] = None,
                   name: Optional[str] = None,
                   status: Optional[str] = None)
    func NewExperiment(ctx *Context, name string, args ExperimentArgs, opts ...ResourceOption) (*Experiment, error)
    public Experiment(string name, ExperimentArgs args, CustomResourceOptions? opts = null)
    public Experiment(String name, ExperimentArgs args)
    public Experiment(String name, ExperimentArgs args, CustomResourceOptions options)
    
    type: auth0:Experiment
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    
    resource "auth0_experiment" "name" {
        # resource properties
    }

    Parameters

    name string
    The unique name of the resource.
    args ExperimentArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args ExperimentArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args ExperimentArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args ExperimentArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args ExperimentArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Constructor example

    The following reference example uses placeholder values for all input properties.

    var experimentResource = new Auth0.Experiment("experimentResource", new()
    {
        AllocationStrategy = "string",
        AuthenticationFlow = "string",
        FeatureFlagId = "string",
        Allocations = new[]
        {
            new Auth0.Inputs.ExperimentAllocationArgs
            {
                IsControl = false,
                VariationId = "string",
                IsFallback = false,
                Priority = 0,
                SegmentId = "string",
                SegmentName = "string",
                SegmentSnapshot = "string",
                VariationName = "string",
                VariationSnapshot = "string",
                Weight = 0,
            },
        },
        DefaultConfig = "string",
        Description = "string",
        Levels = new[]
        {
            0,
        },
        Name = "string",
        Status = "string",
    });
    
    example, err := auth0.NewExperiment(ctx, "experimentResource", &auth0.ExperimentArgs{
    	AllocationStrategy: pulumi.String("string"),
    	AuthenticationFlow: pulumi.String("string"),
    	FeatureFlagId:      pulumi.String("string"),
    	Allocations: auth0.ExperimentAllocationArray{
    		&auth0.ExperimentAllocationArgs{
    			IsControl:         pulumi.Bool(false),
    			VariationId:       pulumi.String("string"),
    			IsFallback:        pulumi.Bool(false),
    			Priority:          pulumi.Int(0),
    			SegmentId:         pulumi.String("string"),
    			SegmentName:       pulumi.String("string"),
    			SegmentSnapshot:   pulumi.String("string"),
    			VariationName:     pulumi.String("string"),
    			VariationSnapshot: pulumi.String("string"),
    			Weight:            pulumi.Int(0),
    		},
    	},
    	DefaultConfig: pulumi.String("string"),
    	Description:   pulumi.String("string"),
    	Levels: pulumi.IntArray{
    		pulumi.Int(0),
    	},
    	Name:   pulumi.String("string"),
    	Status: pulumi.String("string"),
    })
    
    resource "auth0_experiment" "experimentResource" {
      lifecycle {
        create_before_destroy = true
      }
      allocation_strategy = "string"
      authentication_flow = "string"
      feature_flag_id     = "string"
      allocations {
        is_control         = false
        variation_id       = "string"
        is_fallback        = false
        priority           = 0
        segment_id         = "string"
        segment_name       = "string"
        segment_snapshot   = "string"
        variation_name     = "string"
        variation_snapshot = "string"
        weight             = 0
      }
      default_config = "string"
      description    = "string"
      levels         = [0]
      name           = "string"
      status         = "string"
    }
    
    var experimentResource = new Experiment("experimentResource", ExperimentArgs.builder()
        .allocationStrategy("string")
        .authenticationFlow("string")
        .featureFlagId("string")
        .allocations(ExperimentAllocationArgs.builder()
            .isControl(false)
            .variationId("string")
            .isFallback(false)
            .priority(0)
            .segmentId("string")
            .segmentName("string")
            .segmentSnapshot("string")
            .variationName("string")
            .variationSnapshot("string")
            .weight(0)
            .build())
        .defaultConfig("string")
        .description("string")
        .levels(0)
        .name("string")
        .status("string")
        .build());
    
    experiment_resource = auth0.Experiment("experimentResource",
        allocation_strategy="string",
        authentication_flow="string",
        feature_flag_id="string",
        allocations=[{
            "is_control": False,
            "variation_id": "string",
            "is_fallback": False,
            "priority": 0,
            "segment_id": "string",
            "segment_name": "string",
            "segment_snapshot": "string",
            "variation_name": "string",
            "variation_snapshot": "string",
            "weight": 0,
        }],
        default_config="string",
        description="string",
        levels=[0],
        name="string",
        status="string")
    
    const experimentResource = new auth0.Experiment("experimentResource", {
        allocationStrategy: "string",
        authenticationFlow: "string",
        featureFlagId: "string",
        allocations: [{
            isControl: false,
            variationId: "string",
            isFallback: false,
            priority: 0,
            segmentId: "string",
            segmentName: "string",
            segmentSnapshot: "string",
            variationName: "string",
            variationSnapshot: "string",
            weight: 0,
        }],
        defaultConfig: "string",
        description: "string",
        levels: [0],
        name: "string",
        status: "string",
    });
    
    type: auth0:Experiment
    properties:
        allocationStrategy: string
        allocations:
            - isControl: false
              isFallback: false
              priority: 0
              segmentId: string
              segmentName: string
              segmentSnapshot: string
              variationId: string
              variationName: string
              variationSnapshot: string
              weight: 0
        authenticationFlow: string
        defaultConfig: string
        description: string
        featureFlagId: string
        levels:
            - 0
        name: string
        status: string
    

    Experiment Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.

    The Experiment resource accepts the following input properties:

    AllocationStrategy string
    The traffic allocation strategy. One of percentage, segment. Changing this replaces the experiment.
    AuthenticationFlow string
    The authentication flow targeted by the experiment. One of authentication, mfaenrollment, mfachallenge, passwordreset, passkeyenrollment, all.
    FeatureFlagId string
    The ID of the feature flag evaluated by this experiment. Changing this replaces the experiment.
    Allocations List<ExperimentAllocation>
    The ordered traffic allocations. At least one is required when configured. Removing all allocations replaces the experiment.
    DefaultConfig string
    The configuration source for an Auth0-managed feature flag. One of tenant, flag. Removing it replaces the experiment.
    Description string
    Description of the experiment.
    Levels List<int>
    The ordered ramp levels. Only for the percentage strategy. Removing them replaces the experiment.
    Name string
    The name of the experiment.
    Status string
    The lifecycle status of the experiment. One of draft, active, paused, completed, archived. A non-draft status on creation is applied internally after the experiment is created as a draft. If the status update fails, Terraform marks the entire resource tainted and plans to replace it on the next apply. An active experiment cannot be deleted.
    AllocationStrategy string
    The traffic allocation strategy. One of percentage, segment. Changing this replaces the experiment.
    AuthenticationFlow string
    The authentication flow targeted by the experiment. One of authentication, mfaenrollment, mfachallenge, passwordreset, passkeyenrollment, all.
    FeatureFlagId string
    The ID of the feature flag evaluated by this experiment. Changing this replaces the experiment.
    Allocations []ExperimentAllocationArgs
    The ordered traffic allocations. At least one is required when configured. Removing all allocations replaces the experiment.
    DefaultConfig string
    The configuration source for an Auth0-managed feature flag. One of tenant, flag. Removing it replaces the experiment.
    Description string
    Description of the experiment.
    Levels []int
    The ordered ramp levels. Only for the percentage strategy. Removing them replaces the experiment.
    Name string
    The name of the experiment.
    Status string
    The lifecycle status of the experiment. One of draft, active, paused, completed, archived. A non-draft status on creation is applied internally after the experiment is created as a draft. If the status update fails, Terraform marks the entire resource tainted and plans to replace it on the next apply. An active experiment cannot be deleted.
    allocation_strategy string
    The traffic allocation strategy. One of percentage, segment. Changing this replaces the experiment.
    authentication_flow string
    The authentication flow targeted by the experiment. One of authentication, mfaenrollment, mfachallenge, passwordreset, passkeyenrollment, all.
    feature_flag_id string
    The ID of the feature flag evaluated by this experiment. Changing this replaces the experiment.
    allocations list(object)
    The ordered traffic allocations. At least one is required when configured. Removing all allocations replaces the experiment.
    default_config string
    The configuration source for an Auth0-managed feature flag. One of tenant, flag. Removing it replaces the experiment.
    description string
    Description of the experiment.
    levels list(number)
    The ordered ramp levels. Only for the percentage strategy. Removing them replaces the experiment.
    name string
    The name of the experiment.
    status string
    The lifecycle status of the experiment. One of draft, active, paused, completed, archived. A non-draft status on creation is applied internally after the experiment is created as a draft. If the status update fails, Terraform marks the entire resource tainted and plans to replace it on the next apply. An active experiment cannot be deleted.
    allocationStrategy String
    The traffic allocation strategy. One of percentage, segment. Changing this replaces the experiment.
    authenticationFlow String
    The authentication flow targeted by the experiment. One of authentication, mfaenrollment, mfachallenge, passwordreset, passkeyenrollment, all.
    featureFlagId String
    The ID of the feature flag evaluated by this experiment. Changing this replaces the experiment.
    allocations List<ExperimentAllocation>
    The ordered traffic allocations. At least one is required when configured. Removing all allocations replaces the experiment.
    defaultConfig String
    The configuration source for an Auth0-managed feature flag. One of tenant, flag. Removing it replaces the experiment.
    description String
    Description of the experiment.
    levels List<Integer>
    The ordered ramp levels. Only for the percentage strategy. Removing them replaces the experiment.
    name String
    The name of the experiment.
    status String
    The lifecycle status of the experiment. One of draft, active, paused, completed, archived. A non-draft status on creation is applied internally after the experiment is created as a draft. If the status update fails, Terraform marks the entire resource tainted and plans to replace it on the next apply. An active experiment cannot be deleted.
    allocationStrategy string
    The traffic allocation strategy. One of percentage, segment. Changing this replaces the experiment.
    authenticationFlow string
    The authentication flow targeted by the experiment. One of authentication, mfaenrollment, mfachallenge, passwordreset, passkeyenrollment, all.
    featureFlagId string
    The ID of the feature flag evaluated by this experiment. Changing this replaces the experiment.
    allocations ExperimentAllocation[]
    The ordered traffic allocations. At least one is required when configured. Removing all allocations replaces the experiment.
    defaultConfig string
    The configuration source for an Auth0-managed feature flag. One of tenant, flag. Removing it replaces the experiment.
    description string
    Description of the experiment.
    levels number[]
    The ordered ramp levels. Only for the percentage strategy. Removing them replaces the experiment.
    name string
    The name of the experiment.
    status string
    The lifecycle status of the experiment. One of draft, active, paused, completed, archived. A non-draft status on creation is applied internally after the experiment is created as a draft. If the status update fails, Terraform marks the entire resource tainted and plans to replace it on the next apply. An active experiment cannot be deleted.
    allocation_strategy str
    The traffic allocation strategy. One of percentage, segment. Changing this replaces the experiment.
    authentication_flow str
    The authentication flow targeted by the experiment. One of authentication, mfaenrollment, mfachallenge, passwordreset, passkeyenrollment, all.
    feature_flag_id str
    The ID of the feature flag evaluated by this experiment. Changing this replaces the experiment.
    allocations Sequence[ExperimentAllocationArgs]
    The ordered traffic allocations. At least one is required when configured. Removing all allocations replaces the experiment.
    default_config str
    The configuration source for an Auth0-managed feature flag. One of tenant, flag. Removing it replaces the experiment.
    description str
    Description of the experiment.
    levels Sequence[int]
    The ordered ramp levels. Only for the percentage strategy. Removing them replaces the experiment.
    name str
    The name of the experiment.
    status str
    The lifecycle status of the experiment. One of draft, active, paused, completed, archived. A non-draft status on creation is applied internally after the experiment is created as a draft. If the status update fails, Terraform marks the entire resource tainted and plans to replace it on the next apply. An active experiment cannot be deleted.
    allocationStrategy String
    The traffic allocation strategy. One of percentage, segment. Changing this replaces the experiment.
    authenticationFlow String
    The authentication flow targeted by the experiment. One of authentication, mfaenrollment, mfachallenge, passwordreset, passkeyenrollment, all.
    featureFlagId String
    The ID of the feature flag evaluated by this experiment. Changing this replaces the experiment.
    allocations List<Property Map>
    The ordered traffic allocations. At least one is required when configured. Removing all allocations replaces the experiment.
    defaultConfig String
    The configuration source for an Auth0-managed feature flag. One of tenant, flag. Removing it replaces the experiment.
    description String
    Description of the experiment.
    levels List<Number>
    The ordered ramp levels. Only for the percentage strategy. Removing them replaces the experiment.
    name String
    The name of the experiment.
    status String
    The lifecycle status of the experiment. One of draft, active, paused, completed, archived. A non-draft status on creation is applied internally after the experiment is created as a draft. If the status update fails, Terraform marks the entire resource tainted and plans to replace it on the next apply. An active experiment cannot be deleted.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the Experiment resource produces the following output properties:

    CreatedAt string
    The ISO 8601 formatted date the experiment was created.
    CurrentLevel int
    The current ramp level, if levels are configured.
    EditableFields List<string>
    Fields that the API reports as editable.
    EndedAt string
    The ISO 8601 formatted date the experiment was completed.
    FeatureFlagName string
    The name of the feature flag evaluated by this experiment.
    FeatureFlagSnapshot string
    The snapshot of the feature flag.
    Id string
    The provider-assigned unique ID for this managed resource.
    IsValid bool
    Whether the experiment is ready to activate.
    StartedAt string
    The ISO 8601 formatted date the experiment was first activated.
    UpdatedAt string
    The ISO 8601 formatted date the experiment was updated.
    CreatedAt string
    The ISO 8601 formatted date the experiment was created.
    CurrentLevel int
    The current ramp level, if levels are configured.
    EditableFields []string
    Fields that the API reports as editable.
    EndedAt string
    The ISO 8601 formatted date the experiment was completed.
    FeatureFlagName string
    The name of the feature flag evaluated by this experiment.
    FeatureFlagSnapshot string
    The snapshot of the feature flag.
    Id string
    The provider-assigned unique ID for this managed resource.
    IsValid bool
    Whether the experiment is ready to activate.
    StartedAt string
    The ISO 8601 formatted date the experiment was first activated.
    UpdatedAt string
    The ISO 8601 formatted date the experiment was updated.
    created_at string
    The ISO 8601 formatted date the experiment was created.
    current_level number
    The current ramp level, if levels are configured.
    editable_fields list(string)
    Fields that the API reports as editable.
    ended_at string
    The ISO 8601 formatted date the experiment was completed.
    feature_flag_name string
    The name of the feature flag evaluated by this experiment.
    feature_flag_snapshot string
    The snapshot of the feature flag.
    id string
    The provider-assigned unique ID for this managed resource.
    is_valid bool
    Whether the experiment is ready to activate.
    started_at string
    The ISO 8601 formatted date the experiment was first activated.
    updated_at string
    The ISO 8601 formatted date the experiment was updated.
    createdAt String
    The ISO 8601 formatted date the experiment was created.
    currentLevel Integer
    The current ramp level, if levels are configured.
    editableFields List<String>
    Fields that the API reports as editable.
    endedAt String
    The ISO 8601 formatted date the experiment was completed.
    featureFlagName String
    The name of the feature flag evaluated by this experiment.
    featureFlagSnapshot String
    The snapshot of the feature flag.
    id String
    The provider-assigned unique ID for this managed resource.
    isValid Boolean
    Whether the experiment is ready to activate.
    startedAt String
    The ISO 8601 formatted date the experiment was first activated.
    updatedAt String
    The ISO 8601 formatted date the experiment was updated.
    createdAt string
    The ISO 8601 formatted date the experiment was created.
    currentLevel number
    The current ramp level, if levels are configured.
    editableFields string[]
    Fields that the API reports as editable.
    endedAt string
    The ISO 8601 formatted date the experiment was completed.
    featureFlagName string
    The name of the feature flag evaluated by this experiment.
    featureFlagSnapshot string
    The snapshot of the feature flag.
    id string
    The provider-assigned unique ID for this managed resource.
    isValid boolean
    Whether the experiment is ready to activate.
    startedAt string
    The ISO 8601 formatted date the experiment was first activated.
    updatedAt string
    The ISO 8601 formatted date the experiment was updated.
    created_at str
    The ISO 8601 formatted date the experiment was created.
    current_level int
    The current ramp level, if levels are configured.
    editable_fields Sequence[str]
    Fields that the API reports as editable.
    ended_at str
    The ISO 8601 formatted date the experiment was completed.
    feature_flag_name str
    The name of the feature flag evaluated by this experiment.
    feature_flag_snapshot str
    The snapshot of the feature flag.
    id str
    The provider-assigned unique ID for this managed resource.
    is_valid bool
    Whether the experiment is ready to activate.
    started_at str
    The ISO 8601 formatted date the experiment was first activated.
    updated_at str
    The ISO 8601 formatted date the experiment was updated.
    createdAt String
    The ISO 8601 formatted date the experiment was created.
    currentLevel Number
    The current ramp level, if levels are configured.
    editableFields List<String>
    Fields that the API reports as editable.
    endedAt String
    The ISO 8601 formatted date the experiment was completed.
    featureFlagName String
    The name of the feature flag evaluated by this experiment.
    featureFlagSnapshot String
    The snapshot of the feature flag.
    id String
    The provider-assigned unique ID for this managed resource.
    isValid Boolean
    Whether the experiment is ready to activate.
    startedAt String
    The ISO 8601 formatted date the experiment was first activated.
    updatedAt String
    The ISO 8601 formatted date the experiment was updated.

    Look up Existing Experiment Resource

    Get an existing Experiment resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

    public static get(name: string, id: Input<ID>, state?: ExperimentState, opts?: CustomResourceOptions): Experiment
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            allocation_strategy: Optional[str] = None,
            allocations: Optional[Sequence[ExperimentAllocationArgs]] = None,
            authentication_flow: Optional[str] = None,
            created_at: Optional[str] = None,
            current_level: Optional[int] = None,
            default_config: Optional[str] = None,
            description: Optional[str] = None,
            editable_fields: Optional[Sequence[str]] = None,
            ended_at: Optional[str] = None,
            feature_flag_id: Optional[str] = None,
            feature_flag_name: Optional[str] = None,
            feature_flag_snapshot: Optional[str] = None,
            is_valid: Optional[bool] = None,
            levels: Optional[Sequence[int]] = None,
            name: Optional[str] = None,
            started_at: Optional[str] = None,
            status: Optional[str] = None,
            updated_at: Optional[str] = None) -> Experiment
    func GetExperiment(ctx *Context, name string, id IDInput, state *ExperimentState, opts ...ResourceOption) (*Experiment, error)
    public static Experiment Get(string name, Input<string> id, ExperimentState? state, CustomResourceOptions? opts = null)
    public static Experiment get(String name, Output<String> id, ExperimentState state, CustomResourceOptions options)
    resources:  _:    type: auth0:Experiment    get:      id: ${id}
    import {
      to = auth0_experiment.example
      id = "${id}"
    }
    
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    resource_name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    The following state arguments are supported:
    AllocationStrategy string
    The traffic allocation strategy. One of percentage, segment. Changing this replaces the experiment.
    Allocations List<ExperimentAllocation>
    The ordered traffic allocations. At least one is required when configured. Removing all allocations replaces the experiment.
    AuthenticationFlow string
    The authentication flow targeted by the experiment. One of authentication, mfaenrollment, mfachallenge, passwordreset, passkeyenrollment, all.
    CreatedAt string
    The ISO 8601 formatted date the experiment was created.
    CurrentLevel int
    The current ramp level, if levels are configured.
    DefaultConfig string
    The configuration source for an Auth0-managed feature flag. One of tenant, flag. Removing it replaces the experiment.
    Description string
    Description of the experiment.
    EditableFields List<string>
    Fields that the API reports as editable.
    EndedAt string
    The ISO 8601 formatted date the experiment was completed.
    FeatureFlagId string
    The ID of the feature flag evaluated by this experiment. Changing this replaces the experiment.
    FeatureFlagName string
    The name of the feature flag evaluated by this experiment.
    FeatureFlagSnapshot string
    The snapshot of the feature flag.
    IsValid bool
    Whether the experiment is ready to activate.
    Levels List<int>
    The ordered ramp levels. Only for the percentage strategy. Removing them replaces the experiment.
    Name string
    The name of the experiment.
    StartedAt string
    The ISO 8601 formatted date the experiment was first activated.
    Status string
    The lifecycle status of the experiment. One of draft, active, paused, completed, archived. A non-draft status on creation is applied internally after the experiment is created as a draft. If the status update fails, Terraform marks the entire resource tainted and plans to replace it on the next apply. An active experiment cannot be deleted.
    UpdatedAt string
    The ISO 8601 formatted date the experiment was updated.
    AllocationStrategy string
    The traffic allocation strategy. One of percentage, segment. Changing this replaces the experiment.
    Allocations []ExperimentAllocationArgs
    The ordered traffic allocations. At least one is required when configured. Removing all allocations replaces the experiment.
    AuthenticationFlow string
    The authentication flow targeted by the experiment. One of authentication, mfaenrollment, mfachallenge, passwordreset, passkeyenrollment, all.
    CreatedAt string
    The ISO 8601 formatted date the experiment was created.
    CurrentLevel int
    The current ramp level, if levels are configured.
    DefaultConfig string
    The configuration source for an Auth0-managed feature flag. One of tenant, flag. Removing it replaces the experiment.
    Description string
    Description of the experiment.
    EditableFields []string
    Fields that the API reports as editable.
    EndedAt string
    The ISO 8601 formatted date the experiment was completed.
    FeatureFlagId string
    The ID of the feature flag evaluated by this experiment. Changing this replaces the experiment.
    FeatureFlagName string
    The name of the feature flag evaluated by this experiment.
    FeatureFlagSnapshot string
    The snapshot of the feature flag.
    IsValid bool
    Whether the experiment is ready to activate.
    Levels []int
    The ordered ramp levels. Only for the percentage strategy. Removing them replaces the experiment.
    Name string
    The name of the experiment.
    StartedAt string
    The ISO 8601 formatted date the experiment was first activated.
    Status string
    The lifecycle status of the experiment. One of draft, active, paused, completed, archived. A non-draft status on creation is applied internally after the experiment is created as a draft. If the status update fails, Terraform marks the entire resource tainted and plans to replace it on the next apply. An active experiment cannot be deleted.
    UpdatedAt string
    The ISO 8601 formatted date the experiment was updated.
    allocation_strategy string
    The traffic allocation strategy. One of percentage, segment. Changing this replaces the experiment.
    allocations list(object)
    The ordered traffic allocations. At least one is required when configured. Removing all allocations replaces the experiment.
    authentication_flow string
    The authentication flow targeted by the experiment. One of authentication, mfaenrollment, mfachallenge, passwordreset, passkeyenrollment, all.
    created_at string
    The ISO 8601 formatted date the experiment was created.
    current_level number
    The current ramp level, if levels are configured.
    default_config string
    The configuration source for an Auth0-managed feature flag. One of tenant, flag. Removing it replaces the experiment.
    description string
    Description of the experiment.
    editable_fields list(string)
    Fields that the API reports as editable.
    ended_at string
    The ISO 8601 formatted date the experiment was completed.
    feature_flag_id string
    The ID of the feature flag evaluated by this experiment. Changing this replaces the experiment.
    feature_flag_name string
    The name of the feature flag evaluated by this experiment.
    feature_flag_snapshot string
    The snapshot of the feature flag.
    is_valid bool
    Whether the experiment is ready to activate.
    levels list(number)
    The ordered ramp levels. Only for the percentage strategy. Removing them replaces the experiment.
    name string
    The name of the experiment.
    started_at string
    The ISO 8601 formatted date the experiment was first activated.
    status string
    The lifecycle status of the experiment. One of draft, active, paused, completed, archived. A non-draft status on creation is applied internally after the experiment is created as a draft. If the status update fails, Terraform marks the entire resource tainted and plans to replace it on the next apply. An active experiment cannot be deleted.
    updated_at string
    The ISO 8601 formatted date the experiment was updated.
    allocationStrategy String
    The traffic allocation strategy. One of percentage, segment. Changing this replaces the experiment.
    allocations List<ExperimentAllocation>
    The ordered traffic allocations. At least one is required when configured. Removing all allocations replaces the experiment.
    authenticationFlow String
    The authentication flow targeted by the experiment. One of authentication, mfaenrollment, mfachallenge, passwordreset, passkeyenrollment, all.
    createdAt String
    The ISO 8601 formatted date the experiment was created.
    currentLevel Integer
    The current ramp level, if levels are configured.
    defaultConfig String
    The configuration source for an Auth0-managed feature flag. One of tenant, flag. Removing it replaces the experiment.
    description String
    Description of the experiment.
    editableFields List<String>
    Fields that the API reports as editable.
    endedAt String
    The ISO 8601 formatted date the experiment was completed.
    featureFlagId String
    The ID of the feature flag evaluated by this experiment. Changing this replaces the experiment.
    featureFlagName String
    The name of the feature flag evaluated by this experiment.
    featureFlagSnapshot String
    The snapshot of the feature flag.
    isValid Boolean
    Whether the experiment is ready to activate.
    levels List<Integer>
    The ordered ramp levels. Only for the percentage strategy. Removing them replaces the experiment.
    name String
    The name of the experiment.
    startedAt String
    The ISO 8601 formatted date the experiment was first activated.
    status String
    The lifecycle status of the experiment. One of draft, active, paused, completed, archived. A non-draft status on creation is applied internally after the experiment is created as a draft. If the status update fails, Terraform marks the entire resource tainted and plans to replace it on the next apply. An active experiment cannot be deleted.
    updatedAt String
    The ISO 8601 formatted date the experiment was updated.
    allocationStrategy string
    The traffic allocation strategy. One of percentage, segment. Changing this replaces the experiment.
    allocations ExperimentAllocation[]
    The ordered traffic allocations. At least one is required when configured. Removing all allocations replaces the experiment.
    authenticationFlow string
    The authentication flow targeted by the experiment. One of authentication, mfaenrollment, mfachallenge, passwordreset, passkeyenrollment, all.
    createdAt string
    The ISO 8601 formatted date the experiment was created.
    currentLevel number
    The current ramp level, if levels are configured.
    defaultConfig string
    The configuration source for an Auth0-managed feature flag. One of tenant, flag. Removing it replaces the experiment.
    description string
    Description of the experiment.
    editableFields string[]
    Fields that the API reports as editable.
    endedAt string
    The ISO 8601 formatted date the experiment was completed.
    featureFlagId string
    The ID of the feature flag evaluated by this experiment. Changing this replaces the experiment.
    featureFlagName string
    The name of the feature flag evaluated by this experiment.
    featureFlagSnapshot string
    The snapshot of the feature flag.
    isValid boolean
    Whether the experiment is ready to activate.
    levels number[]
    The ordered ramp levels. Only for the percentage strategy. Removing them replaces the experiment.
    name string
    The name of the experiment.
    startedAt string
    The ISO 8601 formatted date the experiment was first activated.
    status string
    The lifecycle status of the experiment. One of draft, active, paused, completed, archived. A non-draft status on creation is applied internally after the experiment is created as a draft. If the status update fails, Terraform marks the entire resource tainted and plans to replace it on the next apply. An active experiment cannot be deleted.
    updatedAt string
    The ISO 8601 formatted date the experiment was updated.
    allocation_strategy str
    The traffic allocation strategy. One of percentage, segment. Changing this replaces the experiment.
    allocations Sequence[ExperimentAllocationArgs]
    The ordered traffic allocations. At least one is required when configured. Removing all allocations replaces the experiment.
    authentication_flow str
    The authentication flow targeted by the experiment. One of authentication, mfaenrollment, mfachallenge, passwordreset, passkeyenrollment, all.
    created_at str
    The ISO 8601 formatted date the experiment was created.
    current_level int
    The current ramp level, if levels are configured.
    default_config str
    The configuration source for an Auth0-managed feature flag. One of tenant, flag. Removing it replaces the experiment.
    description str
    Description of the experiment.
    editable_fields Sequence[str]
    Fields that the API reports as editable.
    ended_at str
    The ISO 8601 formatted date the experiment was completed.
    feature_flag_id str
    The ID of the feature flag evaluated by this experiment. Changing this replaces the experiment.
    feature_flag_name str
    The name of the feature flag evaluated by this experiment.
    feature_flag_snapshot str
    The snapshot of the feature flag.
    is_valid bool
    Whether the experiment is ready to activate.
    levels Sequence[int]
    The ordered ramp levels. Only for the percentage strategy. Removing them replaces the experiment.
    name str
    The name of the experiment.
    started_at str
    The ISO 8601 formatted date the experiment was first activated.
    status str
    The lifecycle status of the experiment. One of draft, active, paused, completed, archived. A non-draft status on creation is applied internally after the experiment is created as a draft. If the status update fails, Terraform marks the entire resource tainted and plans to replace it on the next apply. An active experiment cannot be deleted.
    updated_at str
    The ISO 8601 formatted date the experiment was updated.
    allocationStrategy String
    The traffic allocation strategy. One of percentage, segment. Changing this replaces the experiment.
    allocations List<Property Map>
    The ordered traffic allocations. At least one is required when configured. Removing all allocations replaces the experiment.
    authenticationFlow String
    The authentication flow targeted by the experiment. One of authentication, mfaenrollment, mfachallenge, passwordreset, passkeyenrollment, all.
    createdAt String
    The ISO 8601 formatted date the experiment was created.
    currentLevel Number
    The current ramp level, if levels are configured.
    defaultConfig String
    The configuration source for an Auth0-managed feature flag. One of tenant, flag. Removing it replaces the experiment.
    description String
    Description of the experiment.
    editableFields List<String>
    Fields that the API reports as editable.
    endedAt String
    The ISO 8601 formatted date the experiment was completed.
    featureFlagId String
    The ID of the feature flag evaluated by this experiment. Changing this replaces the experiment.
    featureFlagName String
    The name of the feature flag evaluated by this experiment.
    featureFlagSnapshot String
    The snapshot of the feature flag.
    isValid Boolean
    Whether the experiment is ready to activate.
    levels List<Number>
    The ordered ramp levels. Only for the percentage strategy. Removing them replaces the experiment.
    name String
    The name of the experiment.
    startedAt String
    The ISO 8601 formatted date the experiment was first activated.
    status String
    The lifecycle status of the experiment. One of draft, active, paused, completed, archived. A non-draft status on creation is applied internally after the experiment is created as a draft. If the status update fails, Terraform marks the entire resource tainted and plans to replace it on the next apply. An active experiment cannot be deleted.
    updatedAt String
    The ISO 8601 formatted date the experiment was updated.

    Supporting Types

    ExperimentAllocation, ExperimentAllocationArgs

    IsControl bool
    Whether this allocation is the control variation. At most one allocation can be the control.
    VariationId string
    The ID of the feature flag variation assigned to this allocation.
    IsFallback bool
    Whether this allocation is the fallback. Only for the segment strategy.
    Priority int
    The evaluation priority of this allocation. Only for the segment strategy.
    SegmentId string
    The segment targeted by this allocation. Only for the segment strategy. Omit for the fallback allocation.
    SegmentName string
    The name of the targeted segment.
    SegmentSnapshot string
    The snapshot of the segment.
    VariationName string
    The name of the assigned variation.
    VariationSnapshot string
    The snapshot of the variation.
    Weight int
    The percentage weight of this allocation. Only for the percentage strategy. Omit when using levels.
    IsControl bool
    Whether this allocation is the control variation. At most one allocation can be the control.
    VariationId string
    The ID of the feature flag variation assigned to this allocation.
    IsFallback bool
    Whether this allocation is the fallback. Only for the segment strategy.
    Priority int
    The evaluation priority of this allocation. Only for the segment strategy.
    SegmentId string
    The segment targeted by this allocation. Only for the segment strategy. Omit for the fallback allocation.
    SegmentName string
    The name of the targeted segment.
    SegmentSnapshot string
    The snapshot of the segment.
    VariationName string
    The name of the assigned variation.
    VariationSnapshot string
    The snapshot of the variation.
    Weight int
    The percentage weight of this allocation. Only for the percentage strategy. Omit when using levels.
    is_control bool
    Whether this allocation is the control variation. At most one allocation can be the control.
    variation_id string
    The ID of the feature flag variation assigned to this allocation.
    is_fallback bool
    Whether this allocation is the fallback. Only for the segment strategy.
    priority number
    The evaluation priority of this allocation. Only for the segment strategy.
    segment_id string
    The segment targeted by this allocation. Only for the segment strategy. Omit for the fallback allocation.
    segment_name string
    The name of the targeted segment.
    segment_snapshot string
    The snapshot of the segment.
    variation_name string
    The name of the assigned variation.
    variation_snapshot string
    The snapshot of the variation.
    weight number
    The percentage weight of this allocation. Only for the percentage strategy. Omit when using levels.
    isControl Boolean
    Whether this allocation is the control variation. At most one allocation can be the control.
    variationId String
    The ID of the feature flag variation assigned to this allocation.
    isFallback Boolean
    Whether this allocation is the fallback. Only for the segment strategy.
    priority Integer
    The evaluation priority of this allocation. Only for the segment strategy.
    segmentId String
    The segment targeted by this allocation. Only for the segment strategy. Omit for the fallback allocation.
    segmentName String
    The name of the targeted segment.
    segmentSnapshot String
    The snapshot of the segment.
    variationName String
    The name of the assigned variation.
    variationSnapshot String
    The snapshot of the variation.
    weight Integer
    The percentage weight of this allocation. Only for the percentage strategy. Omit when using levels.
    isControl boolean
    Whether this allocation is the control variation. At most one allocation can be the control.
    variationId string
    The ID of the feature flag variation assigned to this allocation.
    isFallback boolean
    Whether this allocation is the fallback. Only for the segment strategy.
    priority number
    The evaluation priority of this allocation. Only for the segment strategy.
    segmentId string
    The segment targeted by this allocation. Only for the segment strategy. Omit for the fallback allocation.
    segmentName string
    The name of the targeted segment.
    segmentSnapshot string
    The snapshot of the segment.
    variationName string
    The name of the assigned variation.
    variationSnapshot string
    The snapshot of the variation.
    weight number
    The percentage weight of this allocation. Only for the percentage strategy. Omit when using levels.
    is_control bool
    Whether this allocation is the control variation. At most one allocation can be the control.
    variation_id str
    The ID of the feature flag variation assigned to this allocation.
    is_fallback bool
    Whether this allocation is the fallback. Only for the segment strategy.
    priority int
    The evaluation priority of this allocation. Only for the segment strategy.
    segment_id str
    The segment targeted by this allocation. Only for the segment strategy. Omit for the fallback allocation.
    segment_name str
    The name of the targeted segment.
    segment_snapshot str
    The snapshot of the segment.
    variation_name str
    The name of the assigned variation.
    variation_snapshot str
    The snapshot of the variation.
    weight int
    The percentage weight of this allocation. Only for the percentage strategy. Omit when using levels.
    isControl Boolean
    Whether this allocation is the control variation. At most one allocation can be the control.
    variationId String
    The ID of the feature flag variation assigned to this allocation.
    isFallback Boolean
    Whether this allocation is the fallback. Only for the segment strategy.
    priority Number
    The evaluation priority of this allocation. Only for the segment strategy.
    segmentId String
    The segment targeted by this allocation. Only for the segment strategy. Omit for the fallback allocation.
    segmentName String
    The name of the targeted segment.
    segmentSnapshot String
    The snapshot of the segment.
    variationName String
    The name of the assigned variation.
    variationSnapshot String
    The snapshot of the variation.
    weight Number
    The percentage weight of this allocation. Only for the percentage strategy. Omit when using levels.

    Package Details

    Repository
    Auth0 pulumi/pulumi-auth0
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the auth0 Terraform Provider.
    auth0 logo auth0 logo
    Viewing docs for Auth0 v3.56.0
    published on Friday, Nov 6, 2026 by Pulumi

      Try Pulumi Cloud free.
      Your team will thank you.

      Start free trial