{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/google-dialogflow/json-schema/google-dialogflow-google-cloud-dialogflow-cx-v3-experiment-schema.json",
  "title": "GoogleCloudDialogflowCxV3Experiment",
  "x-generated": "2026-11-04",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/_superseded/google-dialogflow-experiments-api-openapi.yml#/components/schemas/GoogleCloudDialogflowCxV3Experiment",
  "type": "object",
  "properties": {
    "displayName": {
      "type": "string"
    },
    "definition": {
      "$ref": "#/$defs/GoogleCloudDialogflowCxV3ExperimentDefinition"
    },
    "result": {
      "$ref": "#/$defs/GoogleCloudDialogflowCxV3ExperimentResult"
    },
    "lastUpdateTime": {
      "type": "string",
      "format": "date-time"
    },
    "endTime": {
      "type": "string",
      "format": "date-time"
    },
    "experimentLength": {
      "type": "string"
    },
    "name": {
      "type": "string"
    },
    "rolloutConfig": {
      "$ref": "#/$defs/GoogleCloudDialogflowCxV3RolloutConfig"
    },
    "variantsHistory": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/GoogleCloudDialogflowCxV3VariantsHistory"
      }
    },
    "state": {
      "type": "string",
      "enum": [
        "STATE_UNSPECIFIED",
        "DRAFT",
        "RUNNING",
        "DONE",
        "ROLLOUT_FAILED"
      ],
      "x-enumDescriptions": [
        "",
        "",
        "",
        "",
        ""
      ]
    },
    "rolloutFailureReason": {
      "type": "string"
    },
    "startTime": {
      "type": "string",
      "format": "date-time"
    },
    "createTime": {
      "type": "string",
      "format": "date-time"
    },
    "rolloutState": {
      "$ref": "#/$defs/GoogleCloudDialogflowCxV3RolloutState"
    },
    "description": {
      "type": "string"
    }
  },
  "$defs": {
    "GoogleCloudDialogflowCxV3ExperimentDefinition": {
      "type": "object",
      "properties": {
        "condition": {
          "type": "string"
        },
        "versionVariants": {
          "$ref": "#/$defs/GoogleCloudDialogflowCxV3VersionVariants"
        }
      }
    },
    "GoogleCloudDialogflowCxV3ExperimentResult": {
      "type": "object",
      "properties": {
        "versionMetrics": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/GoogleCloudDialogflowCxV3ExperimentResultVersionMetrics"
          }
        },
        "lastUpdateTime": {
          "type": "string",
          "format": "date-time"
        }
      }
    },
    "GoogleCloudDialogflowCxV3ExperimentResultConfidenceInterval": {
      "type": "object",
      "properties": {
        "confidenceLevel": {
          "type": "number",
          "format": "double"
        },
        "upperBound": {
          "type": "number",
          "format": "double"
        },
        "ratio": {
          "type": "number",
          "format": "double"
        },
        "lowerBound": {
          "type": "number",
          "format": "double"
        }
      }
    },
    "GoogleCloudDialogflowCxV3ExperimentResultMetric": {
      "type": "object",
      "properties": {
        "count": {
          "type": "number",
          "format": "double"
        },
        "ratio": {
          "type": "number",
          "format": "double"
        },
        "confidenceInterval": {
          "$ref": "#/$defs/GoogleCloudDialogflowCxV3ExperimentResultConfidenceInterval"
        },
        "type": {
          "type": "string",
          "enum": [
            "METRIC_UNSPECIFIED",
            "CONTAINED_SESSION_NO_CALLBACK_RATE",
            "LIVE_AGENT_HANDOFF_RATE",
            "CALLBACK_SESSION_RATE",
            "ABANDONED_SESSION_RATE",
            "SESSION_END_RATE"
          ],
          "x-enumDescriptions": [
            "",
            "",
            "",
            "",
            "",
            ""
          ]
        },
        "countType": {
          "type": "string",
          "enum": [
            "COUNT_TYPE_UNSPECIFIED",
            "TOTAL_NO_MATCH_COUNT",
            "TOTAL_TURN_COUNT",
            "AVERAGE_TURN_COUNT"
          ],
          "x-enumDescriptions": [
            "",
            "",
            "",
            ""
          ]
        }
      }
    },
    "GoogleCloudDialogflowCxV3ExperimentResultVersionMetrics": {
      "type": "object",
      "properties": {
        "sessionCount": {
          "type": "integer",
          "format": "int32"
        },
        "version": {
          "type": "string"
        },
        "metrics": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/GoogleCloudDialogflowCxV3ExperimentResultMetric"
          }
        }
      }
    },
    "GoogleCloudDialogflowCxV3RolloutConfig": {
      "type": "object",
      "properties": {
        "rolloutCondition": {
          "type": "string"
        },
        "failureCondition": {
          "type": "string"
        },
        "rolloutSteps": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/GoogleCloudDialogflowCxV3RolloutConfigRolloutStep"
          }
        }
      }
    },
    "GoogleCloudDialogflowCxV3RolloutConfigRolloutStep": {
      "type": "object",
      "properties": {
        "displayName": {
          "type": "string"
        },
        "minDuration": {
          "type": "string"
        },
        "trafficPercent": {
          "type": "integer",
          "format": "int32"
        }
      }
    },
    "GoogleCloudDialogflowCxV3RolloutState": {
      "type": "object",
      "properties": {
        "stepIndex": {
          "type": "integer",
          "format": "int32"
        },
        "step": {
          "type": "string"
        },
        "startTime": {
          "type": "string",
          "format": "date-time"
        }
      }
    },
    "GoogleCloudDialogflowCxV3VariantsHistory": {
      "type": "object",
      "properties": {
        "versionVariants": {
          "$ref": "#/$defs/GoogleCloudDialogflowCxV3VersionVariants"
        },
        "updateTime": {
          "type": "string",
          "format": "date-time"
        }
      }
    },
    "GoogleCloudDialogflowCxV3VersionVariants": {
      "type": "object",
      "properties": {
        "variants": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/GoogleCloudDialogflowCxV3VersionVariantsVariant"
          }
        }
      }
    },
    "GoogleCloudDialogflowCxV3VersionVariantsVariant": {
      "type": "object",
      "properties": {
        "isControlGroup": {
          "type": "boolean"
        },
        "trafficAllocation": {
          "type": "number",
          "format": "float"
        },
        "version": {
          "type": "string"
        }
      }
    }
  }
}