{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/microsoft-azure-cache-for-redis/json-schema/microsoft-azure-cache-for-redis-migration-undo-request-schema.json",
  "title": "MigrationUndoRequest",
  "description": "Parameters supplied to the undo migration operation.",
  "x-generated": "2026-11-12",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/microsoft-azure-cache-for-redis-migrations-api-openapi.yml#/components/schemas/MigrationUndoRequest",
  "type": "object",
  "properties": {
    "rollbackReason": {
      "$ref": "#/$defs/MigrationRollbackReason",
      "description": "The reason for undoing (rolling back) the migration. Choose the value that best describes why the rollback is needed. This information helps us improve the migration experience and does not change how the rollback is performed."
    }
  },
  "$defs": {
    "MigrationRollbackReason": {
      "type": "string",
      "description": "The reason a migration operation is being undone (rolled back).",
      "enum": [
        "performance",
        "compatibility",
        "clientConnection",
        "cost",
        "testing",
        "stability",
        "dataLoss",
        "other"
      ],
      "x-ms-enum": {
        "name": "MigrationRollbackReason",
        "modelAsString": false,
        "values": [
          {
            "name": "Performance",
            "value": "performance",
            "description": "The target cache did not meet the expected performance characteristics."
          },
          {
            "name": "Compatibility",
            "value": "compatibility",
            "description": "The target cache was not compatible with the client application or workload."
          },
          {
            "name": "ClientConnection",
            "value": "clientConnection",
            "description": "The client application was unable to connect to the target cache."
          },
          {
            "name": "Cost",
            "value": "cost",
            "description": "The target cache did not meet the expected cost characteristics."
          },
          {
            "name": "Testing",
            "value": "testing",
            "description": "The migration was performed as a test and is being reverted."
          },
          {
            "name": "Stability",
            "value": "stability",
            "description": "The target cache did not meet the expected stability characteristics."
          },
          {
            "name": "DataLoss",
            "value": "dataLoss",
            "description": "Data was lost during or after the migration."
          },
          {
            "name": "Other",
            "value": "other",
            "description": "The migration is being undone for a reason not covered by the other values."
          }
        ]
      }
    }
  }
}