{ "schemaVersion": "1.0", "$id": "experiment_schema.json", "properties": { "title": { "type": "string" }, "type": { "type": "string", "enum": [ "predict_numeric_fields", "predict_categorical_fields", "detect_numeric_outliers", "detect_categorical_outliers", "forecast_time_series", "smart_forecast", "smart_outlier_detection", "smart_clustering", "smart_prediction", "cluster_numeric_events" ] }, "hasSchedule": { "type": "string", "pattern": "^[0|1]$" }, "hasAlerts": { "type": "string", "pattern": "^[0|1]$" }, "hasEnabledAlerts": { "type": "string", "pattern": "^[0|1]$" }, "alertIds": { "type": "array" }, "description": { "type": "string" }, "notes": { "type": "string" }, "searchStages": { "type": "array", "items": { "anyOf": [ { "$ref": "#/definitions/search_stage_dataset" }, { "$ref": "#/definitions/search_stage_metrics" }, { "$ref": "#/definitions/search_stage_fit" }, { "$ref": "#/definitions/search_stage_extracttime" }, { "$ref": "#/definitions/search_stage_joinlookup" }, { "$ref": "#/definitions/search_stage_predict" }, { "$ref": "#/definitions/search_stage_anomalydetection" }, { "$ref": "#/definitions/search_stage_outlierdetection" }, { "$ref": "#/definitions/search_stage_spl" } ] } } }, "additionalProperties": false, "required": ["title", "type"], "definitions": { "search_stage_dataset": { "type": "object", "properties": { "guid": { "type": "string" }, "type": { "type": "string", "enum": ["dataset"] }, "role": { "type": "string", "enum": ["datasource"] }, "datasetName": { "type": "string" }, "datasetType": { "type": "string" }, "searchString": { "type": "string" }, "earliestTime": { "type": "string" }, "latestTime": { "type": "string" } }, "additionalProperties": false, "required": ["guid", "type", "role", "datasetName", "datasetType"] }, "search_stage_extracttime": { "type": "object", "properties": { "guid": { "type": "string" }, "type": { "type": "string", "enum": ["extracttime"] }, "role": { "type": "string", "enum": ["preprocessing"] }, "earliestTime": { "type": "string" }, "latestTime": { "type": "string" } }, "additionalProperties": false, "required": ["guid", "type", "role"] }, "search_stage_metrics": { "type": "object", "properties": { "guid": { "type": "string" }, "type": { "type": "string", "enum": ["metrics"] }, "role": { "type": "string", "enum": ["datasource"] }, "metrics": { "type": "array", "items": { "type": "object", "properties": { "aggregation": { "type": "string", "minLength": 1 }, "as": { "type": "string", "minLength": 1 }, "indexes": { "type": "array", "items": { "type": "string" } }, "name": { "type": "string", "minLength": 1 }, "splitField": { "type": "string" }, "splitLimit": { "type": "number" }, "splitType": { "type": "string" } }, "additionalProperties": false, "required": ["aggregation", "as", "indexes", "name"] }, "minItems": 1 }, "searchString": { "type": "string" }, "span": { "type": "string", "minLength": 1 }, "earliestTime": { "type": "string" }, "latestTime": { "type": "string" } }, "additionalProperties": false, "required": ["guid", "type", "role", "metrics", "span"] }, "search_stage_fit": { "type": "object", "properties": { "guid": { "type": "string" }, "type": { "type": "string", "enum": ["fit"] }, "role": { "type": "string", "enum": ["main", "preprocessing"] }, "algorithm": { "type": "string", "minLength": 1 }, "algorithmParams": { "type": "object", "additionalProperties": { "type": ["string", "boolean", "number"] } }, "targetVariable": { "type": "string" }, "targetVariables": { "type": "array", "items": { "type": "string", "minLength": 1 } }, "featureVariables": { "type": "array", "items": { "type": "string", "minLength": 1 } }, "splitBy": { "type": "array", "items": { "type": "string", "minLength": 1 } }, "modelName": { "type": "string", "minLength": 1 }, "trainingFraction": { "type": "integer", "minimum": 10, "maximum": 100, "multipleOf": 10 }, "earliestTime": { "type": "string" }, "latestTime": { "type": "string" } }, "additionalProperties": false, "required": ["guid", "type", "role", "algorithm", "algorithmParams"], "anyOf": [ { "properties": { "targetVariable": { "type": "string", "minLength": 1 } }, "required": ["targetVariable"] }, { "properties": { "targetVariables": { "type": "array", "minItems": 1 } }, "required": ["targetVariables"] }, { "properties": { "featureVariables": { "type": "array", "minItems": 1 } }, "required": ["featureVariables"] } ] }, "search_stage_joinlookup": { "type": "object", "properties": { "guid": { "type": "string" }, "type": { "type": "string", "enum": ["joinlookup"] }, "role": { "type": "string", "enum": ["preprocessing"] }, "lookupId": { "type": "string", "minLength": 1 }, "lookupName": { "type": "string", "minLength": 1 }, "lookupField": { "type": "string", "minLength": 1 }, "eventField": { "type": "string", "minLength": 1 }, "additionalLookupFields": { "type": "array", "minItems": 1, "items": { "type": "string", "minLength": 1 } }, "timeFormat": { "type": "string" }, "earliestTime": { "type": "string" }, "latestTime": { "type": "string" } }, "additionalProperties": false, "required": [ "guid", "lookupId", "lookupName", "lookupField", "eventField", "additionalLookupFields" ] }, "search_stage_predict": { "type": "object", "properties": { "guid": { "type": "string" }, "type": { "type": "string", "enum": ["predict"] }, "role": { "type": "string", "enum": ["main"] }, "params": { "type": "object", "additionalProperties": { "type": ["string", "boolean", "number"] } }, "fields": { "type": "array", "minItems": 1, "maxItems": 1, "items": { "type": "string", "minLength": 1 } }, "earliestTime": { "type": "string" }, "latestTime": { "type": "string" } }, "additionalProperties": false, "required": ["guid", "type", "role", "params", "fields"] }, "search_stage_anomalydetection": { "type": "object", "properties": { "guid": { "type": "string" }, "type": { "type": "string", "enum": ["anomalydetection"] }, "role": { "type": "string", "enum": ["main"] }, "params": { "type": "object", "additionalProperties": { "type": ["string", "boolean", "number"] } }, "fields": { "type": "array", "minItems": 1, "items": { "type": "string", "minLength": 1 } }, "earliestTime": { "type": "string" }, "latestTime": { "type": "string" } }, "additionalProperties": false, "required": ["guid", "type", "role", "params", "fields"] }, "search_stage_outlierdetection": { "properties": { "guid": { "type": "string" }, "type": { "type": "string", "enum": ["outlierdetection"] }, "role": { "type": "string", "enum": ["main"] }, "outlierFields": { "type": "array", "minItems": 1, "maxItems": 1, "description": "The outlier variables. Currently allows for at most 1, but may be expanded to support more in the future.", "items": { "type": "string", "minLength": 1 } }, "thresholdMethod": { "type": "string", "minLength": 1 }, "thresholdMultiplier": { "type": "number", "minimum": 1 }, "windowSize": { "type": "integer", "minimum": 1, "description": "The size (in points) of the sliding window. If omitted, don't use a sliding window." }, "useCurrentPoint": { "type": "boolean" }, "splitByFields": { "type": "array", "minItems": 0, "maxItems": 5, "items": { "type": "string", "minLength": 1 } }, "earliestTime": { "type": "string" }, "latestTime": { "type": "string" } }, "additionalProperties": false, "required": ["guid", "type", "role", "outlierFields", "thresholdMethod", "thresholdMultiplier", "useCurrentPoint", "splitByFields"] }, "search_stage_spl": { "type": "object", "properties": { "guid": { "type": "string" }, "type": { "type": "string", "enum": ["spl"] }, "role": { "type": "string", "enum": ["datasource"] }, "searchString": { "type": "string" }, "earliestTime": { "type": "string" }, "latestTime": { "type": "string" } }, "additionalProperties": false, "required": ["guid", "type", "role", "searchString", "earliestTime", "latestTime"] } } }