{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://catalog.lintel.tools/schemas/schemastore/spicepod-yaml/latest.json",
  "title": "Spicepod Definition",
  "description": "A Spicepod definition is a YAML file that describes a Spicepod.",
  "x-lintel": {
    "source": "https://raw.githubusercontent.com/spiceai/spiceai/trunk/.schema/spicepod.schema.json",
    "sourceSha256": "6a73ce52c3776d1d08f6d077c90a8893bb049ca9af5f1d62027dab58a3739ffa",
    "fileMatch": [
      "spicepod.yml",
      "spicepod.yaml"
    ],
    "parsers": [
      "yaml"
    ]
  },
  "type": "object",
  "properties": {
    "name": {
      "description": "The name of the Spicepod",
      "type": "string"
    },
    "version": {
      "description": "The version of the Spicepod",
      "$ref": "#/$defs/SpicepodVersion"
    },
    "kind": {
      "description": "The kind of Spicepod",
      "$ref": "#/$defs/SpicepodKind"
    },
    "runtime": {
      "description": "Optional runtime configuration",
      "$ref": "#/$defs/Runtime"
    },
    "management": {
      "description": "Optional management configuration",
      "anyOf": [
        {
          "$ref": "#/$defs/Management"
        },
        {
          "type": "null"
        }
      ]
    },
    "snapshots": {
      "description": "Optional acceleration snapshot configuration",
      "anyOf": [
        {
          "$ref": "#/$defs/Snapshots"
        },
        {
          "type": "null"
        }
      ]
    },
    "extensions": {
      "description": "Optional extensions configuration",
      "type": "object",
      "additionalProperties": {
        "$ref": "#/$defs/Extension"
      }
    },
    "secrets": {
      "description": "Optional spicepod secrets configuration\nDefault value is:\n```yaml\nsecrets:\n  - from: env\n    name: env\n```",
      "type": "array",
      "items": {
        "$ref": "#/$defs/Secret"
      }
    },
    "metadata": {
      "type": "object",
      "additionalProperties": true
    },
    "catalogs": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/ComponentOrReference"
      }
    },
    "datasets": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/ComponentOrReference2"
      }
    },
    "views": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/ComponentOrReference3"
      }
    },
    "models": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/ComponentOrReference4"
      }
    },
    "embeddings": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/ComponentOrReference5"
      }
    },
    "tools": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/ComponentOrReference6"
      }
    },
    "workers": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/ComponentOrReference7"
      }
    },
    "dependencies": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [
    "name",
    "version",
    "kind"
  ],
  "$defs": {
    "SpicepodVersion": {
      "type": "string",
      "enum": [
        "v1",
        "v2"
      ]
    },
    "SpicepodKind": {
      "type": "string",
      "enum": [
        "Spicepod"
      ]
    },
    "Runtime": {
      "description": "Helper struct for deserializing Runtime with custom logic for handling `memory_limit`/`temp_directory` deprecation",
      "type": "object",
      "properties": {
        "results_cache": {
          "anyOf": [
            {
              "$ref": "#/$defs/ResultsCache"
            },
            {
              "type": "null"
            }
          ],
          "deprecated": true,
          "default": null
        },
        "caching": {
          "anyOf": [
            {
              "$ref": "#/$defs/Caching"
            },
            {
              "type": "null"
            }
          ],
          "default": null
        },
        "dataset_load_parallelism": {
          "type": [
            "integer",
            "null"
          ],
          "format": "uint",
          "minimum": 0
        },
        "tls": {
          "description": "If set, the runtime will configure all endpoints to use TLS",
          "anyOf": [
            {
              "$ref": "#/$defs/TlsConfig"
            },
            {
              "type": "null"
            }
          ]
        },
        "tracing": {
          "anyOf": [
            {
              "$ref": "#/$defs/TracingConfig"
            },
            {
              "type": "null"
            }
          ]
        },
        "telemetry": {
          "$ref": "#/$defs/TelemetryConfig"
        },
        "params": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "task_history": {
          "$ref": "#/$defs/TaskHistory"
        },
        "auth": {
          "anyOf": [
            {
              "$ref": "#/$defs/Auth"
            },
            {
              "type": "null"
            }
          ]
        },
        "cors": {
          "$ref": "#/$defs/CorsConfig"
        },
        "flight": {
          "anyOf": [
            {
              "$ref": "#/$defs/Flight"
            },
            {
              "type": "null"
            }
          ]
        },
        "temp_directory": {
          "description": "Configures where the runtime will store temporary files needed for operations like\nspilling to disk for queries & accelerations that are larger than memory.",
          "type": [
            "string",
            "null"
          ],
          "deprecated": true
        },
        "memory_limit": {
          "description": "Specifies the runtime memory limit. When configured, will spill to disk\nfor supported queries larger than memory.",
          "type": [
            "string",
            "null"
          ],
          "deprecated": true
        },
        "shutdown_timeout": {
          "description": "Configures how long the runtime waits for connections to be gracefully drained\nand components to shut down cleanly during runtime termination",
          "type": [
            "string",
            "null"
          ]
        },
        "ready_state": {
          "description": "Controls when the runtime is considered ready for the `/v1/ready` endpoint.",
          "$ref": "#/$defs/RuntimeReadyState"
        },
        "output_level": {
          "description": "Configures log level for the runtime. Can be overriden if flags or environment variables\nare set.",
          "anyOf": [
            {
              "$ref": "#/$defs/OutputLevel"
            },
            {
              "type": "null"
            }
          ]
        },
        "query": {
          "anyOf": [
            {
              "$ref": "#/$defs/Query"
            },
            {
              "type": "null"
            }
          ]
        },
        "metrics": {
          "anyOf": [
            {
              "$ref": "#/$defs/Metrics"
            },
            {
              "type": "null"
            }
          ]
        },
        "scheduler": {
          "anyOf": [
            {
              "$ref": "#/$defs/Scheduler"
            },
            {
              "type": "null"
            }
          ]
        }
      },
      "additionalProperties": false
    },
    "ResultsCache": {
      "type": "object",
      "properties": {
        "enabled": {
          "type": "boolean",
          "default": true
        },
        "cache_max_size": {
          "type": [
            "string",
            "null"
          ]
        },
        "item_ttl": {
          "type": [
            "string",
            "null"
          ]
        },
        "caching_policy": {
          "$ref": "#/$defs/CachingPolicy",
          "default": "lru"
        },
        "cache_key_type": {
          "$ref": "#/$defs/CacheKeyType",
          "default": "plan"
        },
        "hashing_algorithm": {
          "$ref": "#/$defs/HashingAlgorithm",
          "default": "xxh3"
        },
        "engine": {
          "$ref": "#/$defs/CacheEngine",
          "default": "moka"
        },
        "max_stale_while_revalidate": {
          "description": "Maximum stale-while-revalidate duration to add to the cache TTL.",
          "type": [
            "string",
            "null"
          ]
        }
      },
      "additionalProperties": false
    },
    "CachingPolicy": {
      "oneOf": [
        {
          "description": "Least Recently Used caching policy.\nSuitable for workloads with strong recency bias, such as streaming data processing.",
          "type": "string",
          "const": "lru"
        },
        {
          "description": "`TinyLFU` caching policy.\nCombines LRU eviction with LFU-based admission policy.\nSuitable for most workloads including database, search, and analytics.",
          "type": "string",
          "const": "tiny_lfu"
        }
      ]
    },
    "CacheKeyType": {
      "type": "string",
      "enum": [
        "plan",
        "sql"
      ]
    },
    "HashingAlgorithm": {
      "type": "string",
      "enum": [
        "siphash",
        "ahash",
        "xxh3",
        "xxh32",
        "xxh64",
        "xxh128",
        "blake3"
      ]
    },
    "CacheEngine": {
      "oneOf": [
        {
          "description": "Moka cache engine (default) - stable, built-in TTL, no race conditions",
          "type": "string",
          "const": "moka"
        },
        {
          "description": "Pingora-LRU cache engine - 2-3x faster, sharded architecture, manual TTL handling with a rare race condition. Note: table-specific invalidation uses manual key iteration (O(n) operation).",
          "type": "string",
          "const": "pingora"
        }
      ]
    },
    "Caching": {
      "type": "object",
      "properties": {
        "sql_results": {
          "anyOf": [
            {
              "$ref": "#/$defs/SQLResultsCacheConfig"
            },
            {
              "type": "null"
            }
          ]
        },
        "search_results": {
          "anyOf": [
            {
              "$ref": "#/$defs/CacheConfig"
            },
            {
              "type": "null"
            }
          ]
        },
        "embeddings": {
          "anyOf": [
            {
              "$ref": "#/$defs/CacheConfig"
            },
            {
              "type": "null"
            }
          ]
        }
      },
      "additionalProperties": false
    },
    "SQLResultsCacheConfig": {
      "type": "object",
      "properties": {
        "enabled": {
          "type": "boolean",
          "default": true
        },
        "max_size": {
          "type": [
            "string",
            "null"
          ]
        },
        "item_ttl": {
          "type": [
            "string",
            "null"
          ]
        },
        "caching_policy": {
          "$ref": "#/$defs/CachingPolicy",
          "default": "lru"
        },
        "hashing_algorithm": {
          "$ref": "#/$defs/HashingAlgorithm",
          "default": "xxh3"
        },
        "cache_key_type": {
          "$ref": "#/$defs/CacheKeyType",
          "default": "plan"
        },
        "engine": {
          "$ref": "#/$defs/CacheEngine",
          "default": "moka"
        },
        "stale_while_revalidate_ttl": {
          "description": "Maximum age for serving stale cached results while revalidating in the background.\nWhen set, cached results past their TTL (but within this additional window) will be\nserved immediately while a background refresh is triggered.\nFormat: duration string (e.g., \"30s\", \"5m\"). This is a response directive.",
          "type": [
            "string",
            "null"
          ]
        },
        "encoding": {
          "description": "Encoding algorithm for compressing cached results.",
          "$ref": "#/$defs/Encoding",
          "default": "none"
        }
      },
      "additionalProperties": false
    },
    "Encoding": {
      "type": "string",
      "enum": [
        "none",
        "zstd"
      ]
    },
    "CacheConfig": {
      "type": "object",
      "properties": {
        "enabled": {
          "type": "boolean",
          "default": true
        },
        "max_size": {
          "type": [
            "string",
            "null"
          ]
        },
        "item_ttl": {
          "type": [
            "string",
            "null"
          ]
        },
        "caching_policy": {
          "$ref": "#/$defs/CachingPolicy",
          "default": "lru"
        },
        "hashing_algorithm": {
          "$ref": "#/$defs/HashingAlgorithm",
          "default": "xxh3"
        },
        "engine": {
          "$ref": "#/$defs/CacheEngine",
          "default": "moka"
        }
      },
      "additionalProperties": false
    },
    "TlsConfig": {
      "type": "object",
      "properties": {
        "enabled": {
          "description": "If set, the runtime will configure all endpoints to use TLS",
          "type": "boolean"
        },
        "certificate_file": {
          "description": "A filesystem path to a file containing the PEM encoded certificate",
          "type": [
            "string",
            "null"
          ]
        },
        "certificate": {
          "description": "A PEM encoded certificate",
          "type": [
            "string",
            "null"
          ]
        },
        "key_file": {
          "description": "A filesystem path to a file containing the PEM encoded private key",
          "type": [
            "string",
            "null"
          ]
        },
        "key": {
          "description": "A PEM encoded private key",
          "type": [
            "string",
            "null"
          ]
        }
      },
      "required": [
        "enabled"
      ],
      "additionalProperties": false
    },
    "TracingConfig": {
      "type": "object",
      "properties": {
        "zipkin_enabled": {
          "type": "boolean"
        },
        "zipkin_endpoint": {
          "type": [
            "string",
            "null"
          ]
        }
      },
      "required": [
        "zipkin_enabled"
      ],
      "additionalProperties": false
    },
    "TelemetryConfig": {
      "type": "object",
      "properties": {
        "enabled": {
          "type": "boolean",
          "default": true
        },
        "user_agent_collection": {
          "$ref": "#/$defs/UserAgentCollection",
          "default": "full"
        },
        "properties": {
          "type": "object",
          "default": {},
          "additionalProperties": {
            "type": "string"
          }
        },
        "otel_exporter": {
          "description": "Optional configuration for pushing metrics to an OpenTelemetry collector",
          "anyOf": [
            {
              "$ref": "#/$defs/OtelExporterConfig"
            },
            {
              "type": "null"
            }
          ]
        }
      },
      "additionalProperties": false
    },
    "UserAgentCollection": {
      "type": "string",
      "enum": [
        "full",
        "disabled"
      ]
    },
    "OtelExporterConfig": {
      "description": "Configuration for pushing metrics to an OpenTelemetry collector.\n\nThe protocol is inferred from the endpoint:\n- **HTTP**: When endpoint has `<http://>` or `<https://>` scheme, or contains `/v1/metrics`\n- **gRPC**: When endpoint is just a hostname and optional port (defaults to 4317)\n\n# Examples\n\ngRPC (hostname only, port defaults to 4317):\n```yaml\notel_exporter:\n  enabled: true\n  endpoint: \"otel-collector\"\n```\n\nWith metric whitelist:\n```yaml\notel_exporter:\n  enabled: true\n  endpoint: \"otel-collector:4317\"\n  metrics:\n    - requests_total\n    - request_duration_seconds\n```\n\nHTTP:\n```yaml\notel_exporter:\n  enabled: true\n  endpoint: \"<http://localhost:4318/v1/metrics>\"\n```",
      "type": "object",
      "properties": {
        "enabled": {
          "description": "Whether the OTEL exporter is enabled",
          "type": "boolean",
          "default": true
        },
        "endpoint": {
          "description": "The endpoint of the OTEL collector.\n\nFor gRPC: use hostname with optional port (e.g., `otel-collector` or `localhost:4317`)\nFor HTTP: use full URL (e.g., `<http://localhost:4318/v1/metrics>`)",
          "type": "string"
        },
        "push_interval": {
          "description": "How often to push metrics to the collector (e.g., \"30s\", \"1m\", \"5m\")",
          "type": "string",
          "default": "60s"
        },
        "metrics": {
          "description": "Optional whitelist of metric names to export.\nIf not specified or empty, all metrics are exported.",
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "required": [
        "endpoint"
      ],
      "additionalProperties": false
    },
    "TaskHistory": {
      "type": "object",
      "properties": {
        "enabled": {
          "type": "boolean",
          "default": true
        },
        "captured_output": {
          "type": "string",
          "default": "none"
        },
        "retention_period": {
          "type": "string",
          "default": "8h"
        },
        "retention_check_interval": {
          "type": "string",
          "default": "15m"
        },
        "min_sql_duration": {
          "type": [
            "string",
            "null"
          ]
        },
        "captured_plan": {
          "type": [
            "string",
            "null"
          ]
        },
        "min_plan_duration": {
          "type": [
            "string",
            "null"
          ]
        }
      },
      "additionalProperties": false
    },
    "Auth": {
      "type": "object",
      "properties": {
        "api_key": {
          "anyOf": [
            {
              "$ref": "#/$defs/ApiKeyAuth"
            },
            {
              "type": "null"
            }
          ]
        }
      },
      "additionalProperties": false
    },
    "ApiKeyAuth": {
      "type": "object",
      "properties": {
        "enabled": {
          "type": "boolean",
          "default": true
        },
        "keys": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/ApiKey"
          }
        }
      },
      "required": [
        "keys"
      ],
      "additionalProperties": false
    },
    "ApiKey": {
      "description": "API key for authentication. Keys can be read-only or read-write.\nThe key value is redacted in Debug output to prevent credential leakage.\n\nAll comparisons (both `ApiKey` to `ApiKey` and `ApiKey` to `&str`) use\nconstant-time comparison via the `subtle` crate to prevent timing attacks.",
      "oneOf": [
        {
          "type": "object",
          "properties": {
            "ReadOnly": {
              "type": "object",
              "properties": {
                "key": {
                  "type": "string"
                }
              },
              "required": [
                "key"
              ]
            }
          },
          "required": [
            "ReadOnly"
          ],
          "additionalProperties": false
        },
        {
          "type": "object",
          "properties": {
            "ReadWrite": {
              "type": "object",
              "properties": {
                "key": {
                  "type": "string"
                }
              },
              "required": [
                "key"
              ]
            }
          },
          "required": [
            "ReadWrite"
          ],
          "additionalProperties": false
        }
      ]
    },
    "CorsConfig": {
      "type": "object",
      "properties": {
        "enabled": {
          "type": "boolean",
          "default": false
        },
        "allowed_origins": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "default": [
            "*"
          ]
        }
      },
      "additionalProperties": false
    },
    "Flight": {
      "type": "object",
      "properties": {
        "max_message_size": {
          "type": [
            "string",
            "null"
          ]
        },
        "do_put_rate_limit_enabled": {
          "description": "Whether to enable rate limiting on Flight `DoPut` (write) requests.\nDefaults to `true`. Set to `false` to disable write rate limiting for bulk ingest workloads.",
          "type": "boolean",
          "default": true
        }
      }
    },
    "RuntimeReadyState": {
      "description": "Controls when the runtime readiness probe reports the runtime as ready.",
      "oneOf": [
        {
          "description": "Runtime becomes ready after all registered components have reached `Ready` at least once.",
          "type": "string",
          "const": "on_load"
        },
        {
          "description": "Runtime becomes ready once all components have been registered/initialized at least once,\nregardless of whether they are currently `Ready`, `Error`, or `Disabled`,\nas long as none is `ShuttingDown`.",
          "type": "string",
          "const": "on_registration"
        }
      ]
    },
    "OutputLevel": {
      "type": "string",
      "enum": [
        "info",
        "verbose",
        "very_verbose"
      ]
    },
    "Query": {
      "type": "object",
      "properties": {
        "memory_limit": {
          "description": "Specifies the runtime memory limit. When configured, will spill to disk\nfor supported queries larger than memory.",
          "type": [
            "string",
            "null"
          ]
        },
        "temp_directory": {
          "description": "Configures where the runtime will store temporary files needed for operations like\nspilling to disk for queries & accelerations that are larger than memory.",
          "type": [
            "string",
            "null"
          ]
        },
        "spill_compression": {
          "description": "Specifies the compression codec used when spilling data to disk.",
          "anyOf": [
            {
              "$ref": "#/$defs/SpillCompression"
            },
            {
              "type": "null"
            }
          ]
        }
      }
    },
    "SpillCompression": {
      "type": "string",
      "enum": [
        "zstd",
        "lz4_frame",
        "uncompressed"
      ]
    },
    "Metrics": {
      "type": "object",
      "properties": {
        "metrics": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/Metric"
          }
        }
      },
      "required": [
        "metrics"
      ]
    },
    "Metric": {
      "type": "object",
      "properties": {
        "enabled": {
          "type": "boolean",
          "default": true
        },
        "name": {
          "type": "string"
        }
      },
      "required": [
        "name"
      ]
    },
    "Scheduler": {
      "type": "object",
      "properties": {
        "state_location": {
          "description": "Root URI for shared cluster state.",
          "type": "string"
        },
        "params": {
          "description": "Optional object store params for the shared cluster state.",
          "anyOf": [
            {
              "$ref": "#/$defs/Params"
            },
            {
              "type": "null"
            }
          ]
        },
        "partition_management": {
          "description": "Partition management configuration",
          "anyOf": [
            {
              "$ref": "#/$defs/PartitionManagement"
            },
            {
              "type": "null"
            }
          ]
        }
      },
      "required": [
        "state_location"
      ],
      "additionalProperties": false
    },
    "Params": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/$defs/ParamValue"
      }
    },
    "ParamValue": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "integer",
          "format": "int64"
        },
        {
          "type": "number",
          "format": "double"
        },
        {
          "type": "boolean"
        }
      ]
    },
    "PartitionManagement": {
      "type": "object",
      "properties": {
        "interval": {
          "type": "string",
          "default": "30s"
        },
        "max_assignments_per_cycle": {
          "type": "integer",
          "format": "uint",
          "minimum": 0,
          "default": 100
        },
        "max_partitions_per_executor": {
          "type": "integer",
          "format": "uint",
          "minimum": 0,
          "default": 1000
        },
        "discovery_timeout": {
          "type": "string",
          "default": "60s"
        }
      },
      "additionalProperties": false
    },
    "Management": {
      "type": "object",
      "properties": {
        "enabled": {
          "type": "boolean",
          "default": true
        },
        "api_key": {
          "type": "string"
        },
        "params": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "required": [
        "api_key"
      ],
      "additionalProperties": false
    },
    "Snapshots": {
      "description": "Datasets accelerated using a file-mode acceleration\nengine (i.e. `Sqlite` or `DuckDB`) can bootstrap from a DB\nfile on object storage (i.e. S3) if the acceleration file\ndoes not exist on startup using this configuration.\n\nEach dataset needs to opt-in for snapshots in addition to this config.",
      "type": "object",
      "properties": {
        "enabled": {
          "description": "Global enable/disable for dataset snapshots.",
          "type": "boolean",
          "default": true
        },
        "location": {
          "description": "The object store location pointing to a folder\ncontaining the dataset snapshots.\ni.e. `s3://my-bucket/spice/snapshots/`",
          "type": [
            "string",
            "null"
          ]
        },
        "bootstrap_on_failure_behavior": {
          "description": "The behavior when loading a snapshot fails: 'warn', 'retry' or 'fallback'\n\n'warn' will continue with an empty acceleration after logging a warning.\n`retry` will retry loading the newest snapshot indefinitely until the snapshot is loaded correctly.\n'fallback' will try older snapshot files if loading newer ones fail.",
          "$ref": "#/$defs/BootstrapOnFailureBehavior"
        },
        "params": {
          "description": "Auth params for accessing the object store location.\nFor S3, this is the same as the S3 dataset connector params\nwith the notable exception that `s3_auth` is set to `iam_role` by default.",
          "anyOf": [
            {
              "$ref": "#/$defs/Params"
            },
            {
              "type": "null"
            }
          ]
        }
      },
      "additionalProperties": false
    },
    "BootstrapOnFailureBehavior": {
      "type": "string",
      "enum": [
        "warn",
        "retry",
        "fallback"
      ]
    },
    "Extension": {
      "type": "object",
      "properties": {
        "enabled": {
          "type": "boolean",
          "default": true
        },
        "params": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      }
    },
    "Secret": {
      "description": "The secrets configuration for a Spicepod.\n\nExample:\n```yaml\nsecrets:\n  - from: env\n    name: env\n  - from: kubernetes:my_secret_name\n    name: k8s\n```",
      "type": "object",
      "properties": {
        "from": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "description": {
          "type": [
            "string",
            "null"
          ]
        },
        "params": {
          "anyOf": [
            {
              "$ref": "#/$defs/Params"
            },
            {
              "type": "null"
            }
          ]
        }
      },
      "required": [
        "from",
        "name"
      ],
      "additionalProperties": false
    },
    "ComponentOrReference": {
      "anyOf": [
        {
          "$ref": "#/$defs/Catalog"
        },
        {
          "$ref": "#/$defs/ComponentReference"
        }
      ]
    },
    "Catalog": {
      "description": "A catalog definition. The params field is validated based on the catalog connector type specified in 'from'.",
      "allOf": [
        {
          "type": "object",
          "properties": {
            "from": {
              "description": "Catalog source identifier in the format: <connector>:<path>",
              "type": "string"
            },
            "name": {
              "description": "The unique name for this catalog.",
              "type": "string"
            },
            "description": {
              "type": [
                "string",
                "null"
              ]
            },
            "metadata": {
              "type": "object",
              "additionalProperties": true
            },
            "access": {
              "$ref": "#/$defs/AccessMode"
            },
            "include": {
              "type": "array",
              "items": {
                "type": "string"
              }
            },
            "dataset_params": {
              "anyOf": [
                {
                  "$ref": "#/$defs/Params"
                },
                {
                  "type": "null"
                }
              ]
            },
            "dependsOn": {
              "type": "array",
              "items": {
                "type": "string"
              }
            },
            "metrics": {
              "anyOf": [
                {
                  "$ref": "#/$defs/Metrics"
                },
                {
                  "type": "null"
                }
              ]
            }
          },
          "required": [
            "from",
            "name"
          ]
        },
        {
          "if": {
            "properties": {
              "from": {
                "pattern": "^iceberg:"
              }
            }
          },
          "then": {
            "$ref": "#/$defs/IcebergCatalog"
          }
        },
        {
          "if": {
            "properties": {
              "from": {
                "pattern": "^spice\\.ai:"
              }
            }
          },
          "then": {
            "$ref": "#/$defs/SpiceAiCatalog"
          }
        },
        {
          "if": {
            "properties": {
              "from": {
                "pattern": "^unity_catalog:"
              }
            }
          },
          "then": {
            "$ref": "#/$defs/UnityCatalogCatalog"
          }
        },
        {
          "if": {
            "properties": {
              "from": {
                "pattern": "^databricks:"
              }
            }
          },
          "then": {
            "$ref": "#/$defs/DatabricksCatalog"
          }
        }
      ]
    },
    "AccessMode": {
      "oneOf": [
        {
          "type": "string",
          "enum": [
            "read",
            "read_write"
          ]
        },
        {
          "description": "Full read-write access including DDL operations (CREATE TABLE, DROP TABLE, etc.)",
          "type": "string",
          "const": "read_write_create"
        }
      ]
    },
    "ComponentReference": {
      "type": "object",
      "properties": {
        "ref": {
          "type": "string"
        },
        "dependsOn": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "required": [
        "ref"
      ]
    },
    "ComponentOrReference2": {
      "anyOf": [
        {
          "$ref": "#/$defs/Dataset"
        },
        {
          "$ref": "#/$defs/ComponentReference"
        }
      ]
    },
    "Dataset": {
      "description": "A dataset definition. The params field is validated based on the connector type specified in 'from'.",
      "allOf": [
        {
          "type": "object",
          "properties": {
            "from": {
              "description": "Data source identifier in the format: <connector>:<path>",
              "type": "string"
            },
            "name": {
              "description": "The unique name for this dataset.",
              "type": "string"
            },
            "description": {
              "type": [
                "string",
                "null"
              ]
            },
            "metadata": {
              "type": "object",
              "additionalProperties": true
            },
            "columns": {
              "type": "array",
              "items": {
                "$ref": "#/$defs/Column"
              }
            },
            "access": {
              "$ref": "#/$defs/AccessMode"
            },
            "has_metadata_table": {
              "type": [
                "boolean",
                "null"
              ]
            },
            "replication": {
              "anyOf": [
                {
                  "$ref": "#/$defs/Replication"
                },
                {
                  "type": "null"
                }
              ]
            },
            "time_column": {
              "type": [
                "string",
                "null"
              ]
            },
            "time_format": {
              "anyOf": [
                {
                  "$ref": "#/$defs/TimeFormat"
                },
                {
                  "type": "null"
                }
              ]
            },
            "time_partition_column": {
              "type": [
                "string",
                "null"
              ]
            },
            "time_partition_format": {
              "anyOf": [
                {
                  "$ref": "#/$defs/TimeFormat"
                },
                {
                  "type": "null"
                }
              ]
            },
            "acceleration": {
              "anyOf": [
                {
                  "$ref": "#/$defs/Acceleration"
                },
                {
                  "type": "null"
                }
              ]
            },
            "embeddings": {
              "type": "array",
              "items": {
                "$ref": "#/$defs/ColumnEmbeddingConfig"
              }
            },
            "dependsOn": {
              "type": "array",
              "items": {
                "type": "string"
              }
            },
            "invalid_type_action": {
              "anyOf": [
                {
                  "$ref": "#/$defs/InvalidTypeAction"
                },
                {
                  "type": "null"
                }
              ],
              "deprecated": true
            },
            "unsupported_type_action": {
              "anyOf": [
                {
                  "$ref": "#/$defs/UnsupportedTypeAction"
                },
                {
                  "type": "null"
                }
              ]
            },
            "ready_state": {
              "$ref": "#/$defs/ReadyState"
            },
            "metrics": {
              "anyOf": [
                {
                  "$ref": "#/$defs/Metrics"
                },
                {
                  "type": "null"
                }
              ]
            },
            "vectors": {
              "anyOf": [
                {
                  "$ref": "#/$defs/VectorStore"
                },
                {
                  "type": "null"
                }
              ]
            },
            "check_availability": {
              "$ref": "#/$defs/CheckAvailability"
            }
          },
          "required": [
            "from",
            "name"
          ]
        },
        {
          "if": {
            "properties": {
              "from": {
                "pattern": "^dynamodb:"
              }
            }
          },
          "then": {
            "$ref": "#/$defs/DynamodbDataset"
          }
        },
        {
          "if": {
            "properties": {
              "from": {
                "pattern": "^file:"
              }
            }
          },
          "then": {
            "$ref": "#/$defs/FileDataset"
          }
        },
        {
          "if": {
            "properties": {
              "from": {
                "pattern": "^kafka:"
              }
            }
          },
          "then": {
            "$ref": "#/$defs/KafkaDataset"
          }
        },
        {
          "if": {
            "properties": {
              "from": {
                "pattern": "^spice\\.ai:"
              }
            }
          },
          "then": {
            "$ref": "#/$defs/SpiceAiDataset"
          }
        },
        {
          "if": {
            "properties": {
              "from": {
                "pattern": "^debezium:"
              }
            }
          },
          "then": {
            "$ref": "#/$defs/DebeziumDataset"
          }
        },
        {
          "if": {
            "properties": {
              "from": {
                "pattern": "^git:"
              }
            }
          },
          "then": {
            "$ref": "#/$defs/GitDataset"
          }
        },
        {
          "if": {
            "properties": {
              "from": {
                "pattern": "^s3:"
              }
            }
          },
          "then": {
            "$ref": "#/$defs/S3Dataset"
          }
        },
        {
          "if": {
            "properties": {
              "from": {
                "pattern": "^glue:"
              }
            }
          },
          "then": {
            "$ref": "#/$defs/GlueDataset"
          }
        },
        {
          "if": {
            "properties": {
              "from": {
                "pattern": "^sink:"
              }
            }
          },
          "then": {
            "$ref": "#/$defs/SinkDataset"
          }
        },
        {
          "if": {
            "properties": {
              "from": {
                "pattern": "^github:"
              }
            }
          },
          "then": {
            "$ref": "#/$defs/GithubDataset"
          }
        },
        {
          "if": {
            "properties": {
              "from": {
                "pattern": "^http:"
              }
            }
          },
          "then": {
            "$ref": "#/$defs/HttpDataset"
          }
        },
        {
          "if": {
            "properties": {
              "from": {
                "pattern": "^https:"
              }
            }
          },
          "then": {
            "$ref": "#/$defs/HttpsDataset"
          }
        },
        {
          "if": {
            "properties": {
              "from": {
                "pattern": "^memory:"
              }
            }
          },
          "then": {
            "$ref": "#/$defs/MemoryDataset"
          }
        },
        {
          "if": {
            "properties": {
              "from": {
                "pattern": "^iceberg:"
              }
            }
          },
          "then": {
            "$ref": "#/$defs/IcebergDataset"
          }
        },
        {
          "if": {
            "properties": {
              "from": {
                "pattern": "^localpod:"
              }
            }
          },
          "then": {
            "$ref": "#/$defs/LocalpodDataset"
          }
        },
        {
          "if": {
            "properties": {
              "from": {
                "pattern": "^gs:"
              }
            }
          },
          "then": {
            "$ref": "#/$defs/GsDataset"
          }
        },
        {
          "if": {
            "properties": {
              "from": {
                "pattern": "^gcs:"
              }
            }
          },
          "then": {
            "$ref": "#/$defs/GcsDataset"
          }
        },
        {
          "if": {
            "properties": {
              "from": {
                "pattern": "^abfs:"
              }
            }
          },
          "then": {
            "$ref": "#/$defs/AbfsDataset"
          }
        },
        {
          "if": {
            "properties": {
              "from": {
                "pattern": "^abfss:"
              }
            }
          },
          "then": {
            "$ref": "#/$defs/AbfssDataset"
          }
        }
      ]
    },
    "Column": {
      "type": "object",
      "properties": {
        "name": {
          "type": "string"
        },
        "description": {
          "description": "Optional semantic details about the column",
          "type": [
            "string",
            "null"
          ]
        },
        "embeddings": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/ColumnLevelEmbeddingConfig"
          }
        },
        "full_text_search": {
          "anyOf": [
            {
              "$ref": "#/$defs/FullTextSearchConfig"
            },
            {
              "type": "null"
            }
          ]
        },
        "metadata": {
          "type": "object",
          "additionalProperties": true
        }
      },
      "required": [
        "name"
      ]
    },
    "ColumnLevelEmbeddingConfig": {
      "description": "Configuration for if and how a dataset's column should be embedded.\nDifferent to [`crate::component::embeddings::ColumnEmbeddingConfig`],\nas [`ColumnLevelEmbeddingConfig`] should be a property of [`Column`],\nnot [`super::Dataset`].\n\n[`crate::component::embeddings::ColumnEmbeddingConfig`] will be\ndeprecated long term in favour of [`ColumnLevelEmbeddingConfig`].",
      "type": "object",
      "properties": {
        "from": {
          "type": "string",
          "default": ""
        },
        "chunking": {
          "anyOf": [
            {
              "$ref": "#/$defs/EmbeddingChunkConfig"
            },
            {
              "type": "null"
            }
          ]
        },
        "row_id": {
          "type": [
            "array",
            "null"
          ],
          "items": {
            "type": "string"
          }
        },
        "vector_size": {
          "type": [
            "integer",
            "null"
          ],
          "format": "uint",
          "minimum": 0
        }
      }
    },
    "EmbeddingChunkConfig": {
      "type": "object",
      "properties": {
        "enabled": {
          "type": "boolean",
          "default": false
        },
        "target_chunk_size": {
          "type": "integer",
          "format": "uint",
          "minimum": 0,
          "default": 0
        },
        "overlap_size": {
          "type": "integer",
          "format": "uint",
          "minimum": 0,
          "default": 0
        },
        "trim_whitespace": {
          "type": "boolean",
          "default": false
        }
      }
    },
    "FullTextSearchConfig": {
      "type": "object",
      "properties": {
        "enabled": {
          "type": "boolean"
        },
        "row_id": {
          "type": [
            "array",
            "null"
          ],
          "items": {
            "type": "string"
          }
        },
        "index_store": {
          "anyOf": [
            {
              "$ref": "#/$defs/IndexStore"
            },
            {
              "type": "null"
            }
          ]
        },
        "index_directory": {
          "type": [
            "string",
            "null"
          ]
        }
      },
      "required": [
        "enabled"
      ]
    },
    "IndexStore": {
      "type": "string",
      "enum": [
        "memory",
        "file"
      ]
    },
    "Replication": {
      "type": "object",
      "properties": {
        "enabled": {
          "type": "boolean",
          "default": false
        }
      }
    },
    "TimeFormat": {
      "type": "string",
      "enum": [
        "timestamp",
        "timestamptz",
        "unix_seconds",
        "unix_millis",
        "ISO8601",
        "date"
      ]
    },
    "Acceleration": {
      "type": "object",
      "properties": {
        "enabled": {
          "type": "boolean",
          "default": true
        },
        "mode": {
          "$ref": "#/$defs/Mode",
          "default": "memory"
        },
        "refresh_on_startup": {
          "$ref": "#/$defs/RefreshOnStartup",
          "default": "auto"
        },
        "engine": {
          "type": [
            "string",
            "null"
          ]
        },
        "refresh_mode": {
          "anyOf": [
            {
              "$ref": "#/$defs/RefreshMode"
            },
            {
              "type": "null"
            }
          ]
        },
        "refresh_check_interval": {
          "type": [
            "string",
            "null"
          ]
        },
        "refresh_cron": {
          "type": [
            "string",
            "null"
          ]
        },
        "refresh_sql": {
          "type": [
            "string",
            "null"
          ]
        },
        "refresh_data_window": {
          "type": [
            "string",
            "null"
          ]
        },
        "refresh_append_overlap": {
          "type": [
            "string",
            "null"
          ]
        },
        "refresh_retry_enabled": {
          "type": "boolean",
          "default": true
        },
        "refresh_retry_max_attempts": {
          "type": [
            "integer",
            "null"
          ],
          "format": "uint",
          "minimum": 0
        },
        "refresh_jitter_enabled": {
          "type": "boolean",
          "default": false
        },
        "refresh_jitter_max": {
          "type": [
            "string",
            "null"
          ]
        },
        "params": {
          "description": "Configuration parameters for the acceleration engine. The available parameters depend on the engine type specified in 'engine' (default: arrow). Available engines: arrow, duckdb, duckdb, arrow, turso, duckdb, sqlite, postgres, cayenne.",
          "anyOf": [
            {
              "$ref": "#/$defs/Params"
            },
            {
              "type": "null"
            }
          ]
        },
        "retention_period": {
          "type": [
            "string",
            "null"
          ]
        },
        "retention_sql": {
          "type": [
            "string",
            "null"
          ]
        },
        "retention_check_interval": {
          "type": [
            "string",
            "null"
          ]
        },
        "retention_check_enabled": {
          "type": "boolean"
        },
        "on_zero_results": {
          "$ref": "#/$defs/ZeroResultsAction",
          "default": "return_empty"
        },
        "ready_state": {
          "anyOf": [
            {
              "$ref": "#/$defs/ReadyState"
            },
            {
              "type": "null"
            }
          ],
          "deprecated": true,
          "default": null
        },
        "indexes": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/$defs/IndexType"
          }
        },
        "primary_key": {
          "type": [
            "string",
            "null"
          ]
        },
        "on_conflict": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/$defs/OnConflictBehavior"
          }
        },
        "metrics": {
          "anyOf": [
            {
              "$ref": "#/$defs/Metrics"
            },
            {
              "type": "null"
            }
          ]
        },
        "partition_by": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/PartitionedBy"
          }
        },
        "snapshots": {
          "description": "Enables snapshots for this dataset, requires the top-level config `snapshots` to be defined.\n\nOptions: `enabled` / `disabled` / `bootstrap_only` / `create_only`.\n\n`disabled` (default) will turn off snapshots for this dataset.\n`enabled` will enable both creating and bootstrapping from snapshots.\n`bootstrap_only` will only bootstrap on startup, it won't attempt to write new snapshots.\n`create_only` will only create snapshots, it won't attempt to bootstrap from one.",
          "$ref": "#/$defs/SnapshotBehavior"
        },
        "snapshots_trigger": {
          "anyOf": [
            {
              "$ref": "#/$defs/SnapshotsTrigger"
            },
            {
              "type": "null"
            }
          ]
        },
        "snapshots_trigger_threshold": {
          "type": [
            "string",
            "null"
          ]
        },
        "snapshots_compaction": {
          "$ref": "#/$defs/SnapshotsCompaction"
        },
        "snapshots_reset_expiry_on_load": {
          "$ref": "#/$defs/SnapshotsResetExpiryOnLoad"
        },
        "snapshots_creation_policy": {
          "$ref": "#/$defs/SnapshotsCreationPolicy"
        }
      },
      "allOf": [
        {
          "if": {
            "properties": {
              "engine": {
                "const": "arrow"
              }
            }
          },
          "then": {
            "properties": {
              "params": {
                "anyOf": [
                  {
                    "$ref": "#/$defs/ArrowAcceleratorParams"
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            }
          }
        },
        {
          "if": {
            "properties": {
              "engine": {
                "const": "duckdb"
              }
            }
          },
          "then": {
            "properties": {
              "params": {
                "anyOf": [
                  {
                    "$ref": "#/$defs/DuckdbAcceleratorParams"
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            }
          }
        },
        {
          "if": {
            "properties": {
              "engine": {
                "const": "duckdb"
              }
            }
          },
          "then": {
            "properties": {
              "params": {
                "anyOf": [
                  {
                    "$ref": "#/$defs/DuckdbAcceleratorParams"
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            }
          }
        },
        {
          "if": {
            "properties": {
              "engine": {
                "const": "arrow"
              }
            }
          },
          "then": {
            "properties": {
              "params": {
                "anyOf": [
                  {
                    "$ref": "#/$defs/ArrowAcceleratorParams"
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            }
          }
        },
        {
          "if": {
            "properties": {
              "engine": {
                "const": "turso"
              }
            }
          },
          "then": {
            "properties": {
              "params": {
                "anyOf": [
                  {
                    "$ref": "#/$defs/TursoAcceleratorParams"
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            }
          }
        },
        {
          "if": {
            "properties": {
              "engine": {
                "const": "duckdb"
              }
            }
          },
          "then": {
            "properties": {
              "params": {
                "anyOf": [
                  {
                    "$ref": "#/$defs/DuckdbAcceleratorParams"
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            }
          }
        },
        {
          "if": {
            "properties": {
              "engine": {
                "const": "sqlite"
              }
            }
          },
          "then": {
            "properties": {
              "params": {
                "anyOf": [
                  {
                    "$ref": "#/$defs/SqliteAcceleratorParams"
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            }
          }
        },
        {
          "if": {
            "properties": {
              "engine": {
                "const": "postgres"
              }
            }
          },
          "then": {
            "properties": {
              "params": {
                "anyOf": [
                  {
                    "$ref": "#/$defs/PostgresAcceleratorParams"
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            }
          }
        },
        {
          "if": {
            "properties": {
              "engine": {
                "const": "cayenne"
              }
            }
          },
          "then": {
            "properties": {
              "params": {
                "anyOf": [
                  {
                    "$ref": "#/$defs/CayenneAcceleratorParams"
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            }
          }
        },
        {
          "if": {
            "not": {
              "required": [
                "engine"
              ]
            }
          },
          "then": {
            "properties": {
              "params": {
                "anyOf": [
                  {
                    "$ref": "#/$defs/ArrowAcceleratorParams"
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            }
          }
        }
      ],
      "additionalProperties": false
    },
    "Mode": {
      "oneOf": [
        {
          "type": "string",
          "enum": [
            "memory"
          ]
        },
        {
          "description": "Open an existing file if it exists, otherwise create a new one.\nThis is the default file behavior that preserves data across restarts.",
          "type": "string",
          "const": "file"
        },
        {
          "description": "Always create a new file, truncating/overwriting any existing file on startup.\nUse this when you want a fresh acceleration on each startup.",
          "type": "string",
          "const": "file_create"
        }
      ]
    },
    "RefreshOnStartup": {
      "oneOf": [
        {
          "description": "Always start a new refresh when Spice starts.",
          "type": "string",
          "const": "always"
        },
        {
          "description": "Only start a refresh if an existing acceleration is not available.",
          "type": "string",
          "const": "auto"
        }
      ]
    },
    "RefreshMode": {
      "type": "string",
      "enum": [
        "full",
        "append",
        "changes",
        "caching"
      ]
    },
    "ZeroResultsAction": {
      "description": "Behavior when a query on an accelerated table returns zero results.",
      "oneOf": [
        {
          "description": "Return an empty result set. This is the default.",
          "type": "string",
          "const": "return_empty"
        },
        {
          "description": "Fallback to querying the source table.",
          "type": "string",
          "const": "use_source"
        }
      ]
    },
    "ReadyState": {
      "description": "Controls when the dataset is marked ready for queries.",
      "oneOf": [
        {
          "description": "The table is ready once the initial load completes.",
          "type": "string",
          "const": "on_load"
        },
        {
          "description": "The table is ready immediately on registration, with fallback to federated table for queries until the initial load completes.",
          "type": "string",
          "const": "on_registration"
        }
      ]
    },
    "IndexType": {
      "type": "string",
      "enum": [
        "enabled",
        "unique"
      ]
    },
    "OnConflictBehavior": {
      "type": "string",
      "enum": [
        "drop",
        "upsert",
        "upsert_dedup",
        "upsert_dedup_by_row_id"
      ]
    },
    "PartitionedBy": {
      "type": "object",
      "properties": {
        "name": {
          "type": "string"
        },
        "expression": {
          "type": "string"
        }
      },
      "required": [
        "name",
        "expression"
      ]
    },
    "SnapshotBehavior": {
      "oneOf": [
        {
          "description": "Snapshots are disabled (default).",
          "type": "string",
          "const": "disabled"
        },
        {
          "description": "Enable both creating and bootstrapping from snapshots.",
          "type": "string",
          "const": "enabled"
        },
        {
          "description": "Only bootstrap from existing snapshots, don't attempt to create new ones.",
          "type": "string",
          "const": "bootstrap_only"
        },
        {
          "description": "Only create new snapshots.",
          "type": "string",
          "const": "create_only"
        }
      ]
    },
    "SnapshotsTrigger": {
      "oneOf": [
        {
          "type": "string",
          "enum": [
            "time_interval",
            "stream_batches"
          ]
        },
        {
          "description": "After each refresh is complete (default).",
          "type": "string",
          "const": "refresh_complete"
        }
      ]
    },
    "SnapshotsCompaction": {
      "type": "string",
      "enum": [
        "disabled",
        "enabled"
      ]
    },
    "SnapshotsResetExpiryOnLoad": {
      "type": "string",
      "enum": [
        "disabled",
        "enabled"
      ]
    },
    "SnapshotsCreationPolicy": {
      "type": "string",
      "enum": [
        "always",
        "on_change"
      ]
    },
    "ColumnEmbeddingConfig": {
      "description": "Configuration for if and how a dataset's column should be embedded.\n\nPrefer to use [`super::dataset::column::ColumnLevelEmbeddingConfig`] going\nforward. Support for [`ColumnEmbeddingConfig`] will be removed in future.",
      "type": "object",
      "properties": {
        "column": {
          "type": "string"
        },
        "use": {
          "type": "string",
          "default": ""
        },
        "column_pk": {
          "type": [
            "array",
            "null"
          ],
          "items": {
            "type": "string"
          }
        },
        "chunking": {
          "anyOf": [
            {
              "$ref": "#/$defs/EmbeddingChunkConfig"
            },
            {
              "type": "null"
            }
          ]
        },
        "vector_size": {
          "type": [
            "integer",
            "null"
          ],
          "format": "uint",
          "minimum": 0
        }
      },
      "required": [
        "column"
      ]
    },
    "InvalidTypeAction": {
      "description": "This is deprecated, use `unsupported_type_action` instead.",
      "type": "string",
      "enum": [
        "error",
        "warn",
        "ignore"
      ]
    },
    "UnsupportedTypeAction": {
      "type": "string",
      "enum": [
        "error",
        "warn",
        "ignore",
        "string"
      ]
    },
    "VectorStore": {
      "type": "object",
      "properties": {
        "enabled": {
          "type": "boolean",
          "default": true
        },
        "engine": {
          "type": [
            "string",
            "null"
          ]
        },
        "partition_by": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/PartitionedBy"
          }
        },
        "params": {
          "anyOf": [
            {
              "$ref": "#/$defs/Params"
            },
            {
              "type": "null"
            }
          ]
        }
      },
      "additionalProperties": false
    },
    "CheckAvailability": {
      "description": "Controls whether the federated table periodically has its availability checked.",
      "oneOf": [
        {
          "description": "The dataset is checked for availability if it isn't accelerated.",
          "type": "string",
          "const": "auto"
        },
        {
          "description": "The dataset is not checked for availability.",
          "type": "string",
          "const": "disabled"
        }
      ]
    },
    "ComponentOrReference3": {
      "anyOf": [
        {
          "$ref": "#/$defs/View"
        },
        {
          "$ref": "#/$defs/ComponentReference"
        }
      ]
    },
    "View": {
      "type": "object",
      "properties": {
        "name": {
          "type": "string"
        },
        "description": {
          "type": [
            "string",
            "null"
          ]
        },
        "metadata": {
          "type": "object",
          "additionalProperties": true
        },
        "columns": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/Column"
          }
        },
        "sql": {
          "description": "Inline SQL that describes a view.",
          "type": [
            "string",
            "null"
          ]
        },
        "sql_ref": {
          "description": "Reference to a SQL file that describes a view.",
          "type": [
            "string",
            "null"
          ]
        },
        "acceleration": {
          "anyOf": [
            {
              "$ref": "#/$defs/Acceleration"
            },
            {
              "type": "null"
            }
          ]
        },
        "ready_state": {
          "$ref": "#/$defs/ReadyState"
        },
        "vectors": {
          "anyOf": [
            {
              "$ref": "#/$defs/VectorStore"
            },
            {
              "type": "null"
            }
          ]
        },
        "dependsOn": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "required": [
        "name"
      ],
      "additionalProperties": false
    },
    "ComponentOrReference4": {
      "anyOf": [
        {
          "$ref": "#/$defs/Model"
        },
        {
          "$ref": "#/$defs/ComponentReference"
        }
      ]
    },
    "Model": {
      "description": "A model definition. The params field is validated based on the model source type specified in 'from'.",
      "allOf": [
        {
          "type": "object",
          "properties": {
            "from": {
              "description": "Model source identifier in the format: <provider>:<model_id>",
              "type": "string"
            },
            "name": {
              "description": "The unique name for this model.",
              "type": "string"
            },
            "description": {
              "type": [
                "string",
                "null"
              ]
            },
            "metadata": {
              "type": "object",
              "additionalProperties": true
            },
            "files": {
              "type": "array",
              "items": {
                "$ref": "#/$defs/ModelFile"
              }
            },
            "datasets": {
              "type": "array",
              "items": {
                "type": "string"
              }
            },
            "dependsOn": {
              "type": "array",
              "items": {
                "type": "string"
              }
            },
            "metrics": {
              "anyOf": [
                {
                  "$ref": "#/$defs/Metrics"
                },
                {
                  "type": "null"
                }
              ]
            }
          },
          "required": [
            "from",
            "name"
          ]
        },
        {
          "if": {
            "properties": {
              "from": {
                "pattern": "^openai:"
              }
            }
          },
          "then": {
            "$ref": "#/$defs/OpenaiModel"
          }
        },
        {
          "if": {
            "properties": {
              "from": {
                "pattern": "^azure:"
              }
            }
          },
          "then": {
            "$ref": "#/$defs/AzureModel"
          }
        },
        {
          "if": {
            "properties": {
              "from": {
                "pattern": "^file:"
              }
            }
          },
          "then": {
            "$ref": "#/$defs/FileModel"
          }
        },
        {
          "if": {
            "properties": {
              "from": {
                "pattern": "^databricks:"
              }
            }
          },
          "then": {
            "$ref": "#/$defs/DatabricksModel"
          }
        },
        {
          "if": {
            "properties": {
              "from": {
                "pattern": "^huggingface:"
              }
            }
          },
          "then": {
            "$ref": "#/$defs/HuggingfaceModel"
          }
        },
        {
          "if": {
            "properties": {
              "from": {
                "pattern": "^anthropic:"
              }
            }
          },
          "then": {
            "$ref": "#/$defs/AnthropicModel"
          }
        },
        {
          "if": {
            "properties": {
              "from": {
                "pattern": "^perplexity:"
              }
            }
          },
          "then": {
            "$ref": "#/$defs/PerplexityModel"
          }
        },
        {
          "if": {
            "properties": {
              "from": {
                "pattern": "^xai:"
              }
            }
          },
          "then": {
            "$ref": "#/$defs/XaiModel"
          }
        },
        {
          "if": {
            "properties": {
              "from": {
                "pattern": "^bedrock:"
              }
            }
          },
          "then": {
            "$ref": "#/$defs/BedrockModel"
          }
        },
        {
          "if": {
            "properties": {
              "from": {
                "pattern": "^google:"
              }
            }
          },
          "then": {
            "$ref": "#/$defs/GoogleModel"
          }
        }
      ]
    },
    "ModelFile": {
      "type": "object",
      "properties": {
        "path": {
          "type": "string"
        },
        "name": {
          "type": [
            "string",
            "null"
          ]
        },
        "type": {
          "description": "Should use [`Self::file_type`] to access.",
          "anyOf": [
            {
              "$ref": "#/$defs/ModelFileType"
            },
            {
              "type": "null"
            }
          ]
        },
        "params": {
          "type": [
            "object",
            "null"
          ],
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "required": [
        "path"
      ]
    },
    "ModelFileType": {
      "type": "string",
      "enum": [
        "weights",
        "config",
        "tokenizer",
        "tokenizerConfig",
        "generationConfig"
      ]
    },
    "ComponentOrReference5": {
      "anyOf": [
        {
          "$ref": "#/$defs/Embeddings"
        },
        {
          "$ref": "#/$defs/ComponentReference"
        }
      ]
    },
    "Embeddings": {
      "type": "object",
      "properties": {
        "from": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "files": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/ModelFile"
          }
        },
        "params": {
          "type": "object",
          "additionalProperties": true
        },
        "datasets": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "dependsOn": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "metrics": {
          "anyOf": [
            {
              "$ref": "#/$defs/Metrics"
            },
            {
              "type": "null"
            }
          ]
        }
      },
      "required": [
        "from",
        "name"
      ],
      "additionalProperties": false
    },
    "ComponentOrReference6": {
      "anyOf": [
        {
          "$ref": "#/$defs/Tool"
        },
        {
          "$ref": "#/$defs/ComponentReference"
        }
      ]
    },
    "Tool": {
      "type": "object",
      "properties": {
        "from": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "description": {
          "type": [
            "string",
            "null"
          ]
        },
        "params": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "env": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "dependsOn": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "metrics": {
          "anyOf": [
            {
              "$ref": "#/$defs/Metrics"
            },
            {
              "type": "null"
            }
          ]
        }
      },
      "required": [
        "from",
        "name"
      ],
      "additionalProperties": false
    },
    "ComponentOrReference7": {
      "anyOf": [
        {
          "$ref": "#/$defs/Worker"
        },
        {
          "$ref": "#/$defs/ComponentReference"
        }
      ]
    },
    "Worker": {
      "type": "object",
      "properties": {
        "name": {
          "type": "string"
        },
        "description": {
          "type": [
            "string",
            "null"
          ]
        },
        "params": {
          "type": "object",
          "additionalProperties": true
        },
        "load_balance": {
          "anyOf": [
            {
              "$ref": "#/$defs/LoadBalanceParams"
            },
            {
              "type": "null"
            }
          ]
        },
        "sql": {
          "type": [
            "string",
            "null"
          ]
        },
        "cron": {
          "type": [
            "string",
            "null"
          ]
        }
      },
      "required": [
        "name"
      ],
      "additionalProperties": false
    },
    "LoadBalanceParams": {
      "type": "object",
      "properties": {
        "routing": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/RouterConfig"
          }
        }
      }
    },
    "RouterConfig": {
      "anyOf": [
        {
          "type": "object",
          "properties": {
            "from": {
              "type": "string"
            },
            "order": {
              "type": "integer",
              "format": "uint32",
              "minimum": 0
            }
          },
          "required": [
            "from",
            "order"
          ]
        },
        {
          "type": "object",
          "properties": {
            "from": {
              "type": "string"
            },
            "weight": {
              "type": "integer",
              "format": "uint32",
              "minimum": 0
            }
          },
          "required": [
            "from",
            "weight"
          ]
        },
        {
          "type": "object",
          "properties": {
            "from": {
              "type": "string"
            }
          },
          "required": [
            "from"
          ]
        }
      ]
    },
    "DynamodbDataConnectorParams": {
      "title": "DynamodbParams",
      "type": "object",
      "properties": {
        "dynamodb_aws_region": {
          "description": "The AWS region to use for DynamoDB.",
          "type": "string",
          "x-secret": true
        },
        "dynamodb_aws_access_key_id": {
          "description": "The AWS access key ID to use for DynamoDB.",
          "type": "string",
          "x-secret": true
        },
        "dynamodb_aws_secret_access_key": {
          "description": "The AWS secret access key to use for DynamoDB.",
          "type": "string",
          "x-secret": true
        },
        "dynamodb_aws_session_token": {
          "description": "The AWS session token to use for DynamoDB.",
          "type": "string",
          "x-secret": true
        },
        "dynamodb_aws_auth": {
          "description": "Authentication method. Use 'iam_role' for IAM role-based authentication or 'key' for explicit access key credentials",
          "type": "string",
          "default": "iam_role"
        },
        "dynamodb_aws_iam_role_source": {
          "description": "IAM role credential source (only used when aws_auth is 'iam_role'). 'auto' uses the default AWS credential chain, 'metadata' uses only instance/container metadata (IMDS, ECS, EKS/IRSA), 'env' uses only environment variables",
          "type": "string",
          "default": "auto"
        },
        "unnest_depth": {
          "description": "Maximum nesting depth for unnesting embedded documents into a flattened structure. Higher values expand deeper nested fields.",
          "type": "string"
        },
        "schema_infer_max_records": {
          "description": "Number of documents to use to infer the schema. Defaults to 10.",
          "type": "string",
          "default": "10"
        },
        "scan_segments": {
          "description": "Number of segments. 'auto' by default.",
          "type": "string",
          "default": "auto"
        },
        "scan_interval": {
          "description": "Interval in milliseconds between polling for new records in a DynamoDB stream.",
          "type": "string",
          "default": "0s"
        },
        "time_format": {
          "description": "Go-style time format used for parsing/formatting timestamps",
          "type": "string",
          "default": "2006-01-02T15:04:05.000Z07:00"
        },
        "ready_lag": {
          "description": "When using Streams, once tables reaches this lag, it will be reported as Ready",
          "type": "string",
          "default": "2s"
        },
        "endpoint_url": {
          "description": "Custom endpoint URL for DynamoDB-compatible services (e.g., DynamoDB Local, ScyllaDB Alternator).",
          "type": "string"
        },
        "lag_exceeds_shard_retention_behavior": {
          "description": "Behavior when stream lag exceeds shard retention (24h). 'error' marks dataset as Error, 'ready_before_load' marks Ready then re-bootstraps, 'ready_after_load' re-bootstraps then marks Ready",
          "type": "string",
          "default": "error"
        }
      },
      "required": [
        "dynamodb_aws_region"
      ],
      "additionalProperties": true
    },
    "FileDataConnectorParams": {
      "title": "FileParams",
      "type": "object",
      "properties": {
        "file_format": {
          "type": "string"
        },
        "file_extension": {
          "type": "string"
        },
        "schema_infer_max_records": {
          "description": "Set a limit in terms of records to scan to infer the schema.",
          "type": "string"
        },
        "tsv_has_header": {
          "description": "Set true to indicate that the first line is a header.",
          "type": "string",
          "enum": [
            "true",
            "false"
          ]
        },
        "tsv_quote": {
          "description": "The quote character in a row.",
          "type": "string"
        },
        "tsv_escape": {
          "description": "The escape character in a row.",
          "type": "string"
        },
        "tsv_schema_infer_max_records": {
          "description": "**DEPRECATED**: use 'schema_infer_max_records' instead\n\nSet a limit in terms of records to scan to infer the schema.",
          "type": "string",
          "deprecated": true
        },
        "csv_has_header": {
          "description": "Set true to indicate that the first line is a header.",
          "type": "string",
          "enum": [
            "true",
            "false"
          ]
        },
        "csv_quote": {
          "description": "The quote character in a row.",
          "type": "string"
        },
        "csv_escape": {
          "description": "The escape character in a row.",
          "type": "string"
        },
        "csv_schema_infer_max_records": {
          "description": "**DEPRECATED**: use 'schema_infer_max_records' instead\n\nSet a limit in terms of records to scan to infer the schema.",
          "type": "string",
          "deprecated": true
        },
        "csv_delimiter": {
          "description": "The character separating values within a row.",
          "type": "string"
        },
        "file_compression_type": {
          "description": "The type of compression used on the file. Supported types are: GZIP, BZIP2, XZ, ZSTD, UNCOMPRESSED",
          "type": "string",
          "enum": [
            "GZIP",
            "BZIP2",
            "XZ",
            "ZSTD",
            "UNCOMPRESSED"
          ]
        },
        "hive_partitioning_enabled": {
          "description": "Enable partitioning using hive-style partitioning from the folder structure. Defaults to false.",
          "type": "string",
          "enum": [
            "true",
            "false"
          ]
        },
        "schema_source_path": {
          "description": "Specify a path to use for schema inference.",
          "type": "string"
        },
        "json_format": {
          "description": "json | jsonl | ndjson | ldjson | array | object | soda | socrata | auto. When 'file_format' is explicitly 'json', effective default is 'json' (no SODA auto-detection).",
          "type": "string",
          "default": "auto",
          "enum": [
            "json",
            "jsonl",
            "ndjson",
            "ldjson",
            "array",
            "object",
            "soda",
            "socrata",
            "auto"
          ]
        },
        "json_pointer": {
          "description": "An RFC 6901 JSON Pointer to extract data from within a JSON value. E.g. '/data' for {\"data\": [...]} or '/response/items' for nested objects. A leading '/' is added automatically if missing.",
          "type": "string"
        },
        "json_path": {
          "description": "Alias for 'json_pointer'. An RFC 6901 JSON Pointer to extract data from within a JSON value.",
          "type": "string"
        },
        "flatten_json": {
          "description": "Set true to flatten nested structs in JSON as separate columns.",
          "type": "string",
          "enum": [
            "true",
            "false"
          ]
        },
        "soda_metadata": {
          "description": "Set to 'enabled' to include Socrata internal metadata columns (sid, id, position, etc.) in the schema for SODA format responses. Defaults to disabled.",
          "type": "string",
          "default": "disabled",
          "enum": [
            "enabled",
            "disabled"
          ]
        },
        "refresh_skip": {
          "description": "Control skipping refreshes for single-file S3 datasets when cached ETag/Version metadata matches. Set to 'enabled' (default) or 'disabled'.",
          "type": "string",
          "default": "enabled",
          "enum": [
            "enabled",
            "disabled"
          ]
        }
      },
      "additionalProperties": true
    },
    "KafkaDataConnectorParams": {
      "title": "KafkaParams",
      "type": "object",
      "properties": {
        "kafka_bootstrap_servers": {
          "description": "A list of host/port pairs for establishing the initial Kafka cluster connection.",
          "type": "string"
        },
        "kafka_security_protocol": {
          "description": "Security protocol for Kafka connections. Default: 'sasl_ssl'. Options: 'plaintext', 'ssl', 'sasl_plaintext', 'sasl_ssl'.",
          "type": "string",
          "default": "sasl_ssl"
        },
        "kafka_sasl_mechanism": {
          "description": "SASL authentication mechanism. Default: 'SCRAM-SHA-512'. Options: 'PLAIN', 'SCRAM-SHA-256', 'SCRAM-SHA-512'.",
          "type": "string",
          "default": "SCRAM-SHA-512"
        },
        "kafka_sasl_username": {
          "description": "SASL username.",
          "type": "string",
          "x-secret": true
        },
        "kafka_sasl_password": {
          "description": "SASL password.",
          "type": "string",
          "x-secret": true
        },
        "kafka_ssl_ca_location": {
          "description": "Path to the SSL/TLS CA certificate file for server verification.",
          "type": "string",
          "x-secret": true
        },
        "kafka_enable_ssl_certificate_verification": {
          "description": "Enable SSL/TLS certificate verification. Default: 'true'.",
          "type": "string",
          "default": "true",
          "enum": [
            "true",
            "false"
          ]
        },
        "kafka_ssl_endpoint_identification_algorithm": {
          "description": "SSL/TLS endpoint identification algorithm. Default: 'https'. Options: 'none', 'https'.",
          "type": "string",
          "default": "https",
          "enum": [
            "none",
            "https"
          ]
        },
        "schema_infer_max_records": {
          "description": "Number of Kafka messages to sample for schema inference. Default: '1'. Increase if your data has optional fields or varying structure.",
          "type": "string",
          "default": "1"
        },
        "flatten_json": {
          "description": "Set true to flatten nested structs in JSON as separate columns.",
          "type": "string",
          "enum": [
            "true",
            "false"
          ]
        },
        "kafka_consumer_group_id": {
          "description": "Kafka consumer group id to use for this dataset. If not set, a unique id will be generated.",
          "type": "string"
        },
        "batch_max_size": {
          "description": "Maximum number of change events to batch together before processing",
          "type": "string",
          "default": "10000"
        },
        "batch_max_duration": {
          "description": "Maximum time to wait for a batch to fill before processing",
          "type": "string",
          "default": "1s"
        }
      },
      "required": [
        "kafka_bootstrap_servers"
      ],
      "additionalProperties": true
    },
    "SpiceAiDataConnectorParams": {
      "title": "SpiceAiParams",
      "type": "object",
      "properties": {
        "spiceai_api_key": {
          "type": "string",
          "x-secret": true
        },
        "spiceai_token": {
          "type": "string",
          "x-secret": true
        },
        "spiceai_endpoint": {
          "type": "string"
        }
      },
      "additionalProperties": true
    },
    "DebeziumDataConnectorParams": {
      "title": "DebeziumParams",
      "type": "object",
      "properties": {
        "debezium_transport": {
          "description": "The message broker transport to use. The default is kafka.",
          "type": "string",
          "default": "kafka"
        },
        "debezium_message_format": {
          "description": "The message format to use. The default is json.",
          "type": "string",
          "default": "json"
        },
        "kafka_bootstrap_servers": {
          "description": "A list of host/port pairs for establishing the initial Kafka cluster connection.",
          "type": "string"
        },
        "kafka_security_protocol": {
          "description": "Security protocol for Kafka connections. Default: 'sasl_ssl'. Options: 'plaintext', 'ssl', 'sasl_plaintext', 'sasl_ssl'.",
          "type": "string",
          "default": "sasl_ssl"
        },
        "kafka_sasl_mechanism": {
          "description": "SASL authentication mechanism. Default: 'SCRAM-SHA-512'. Options: 'PLAIN', 'SCRAM-SHA-256', 'SCRAM-SHA-512'.",
          "type": "string",
          "default": "SCRAM-SHA-512"
        },
        "kafka_sasl_username": {
          "description": "SASL username.",
          "type": "string",
          "x-secret": true
        },
        "kafka_sasl_password": {
          "description": "SASL password.",
          "type": "string",
          "x-secret": true
        },
        "kafka_ssl_ca_location": {
          "description": "Path to the SSL/TLS CA certificate file for server verification.",
          "type": "string",
          "x-secret": true
        },
        "kafka_enable_ssl_certificate_verification": {
          "description": "Enable SSL/TLS certificate verification. Default: 'true'.",
          "type": "string",
          "default": "true"
        },
        "kafka_ssl_endpoint_identification_algorithm": {
          "description": "SSL/TLS endpoint identification algorithm. Default: 'https'. Options: 'none', 'https'.",
          "type": "string",
          "default": "https"
        },
        "kafka_consumer_group_id": {
          "description": "Kafka consumer group id to use for this dataset. If not set, a unique id will be generated.",
          "type": "string"
        },
        "batch_max_size": {
          "description": "Maximum number of change events to batch together before processing",
          "type": "string",
          "default": "10000"
        },
        "batch_max_duration": {
          "description": "Maximum time to wait for a batch to fill before processing",
          "type": "string",
          "default": "1s"
        }
      },
      "required": [
        "debezium_transport",
        "debezium_message_format",
        "kafka_bootstrap_servers"
      ],
      "additionalProperties": true
    },
    "GitDataConnectorParams": {
      "title": "GitParams",
      "type": "object",
      "properties": {
        "include": {
          "description": "Include only files matching the glob pattern. Multiple patterns can be separated by comma or semicolon.",
          "type": "string",
          "examples": [
            "*.rs",
            "**/*.yaml;src/**/*.json"
          ]
        },
        "fetch_content": {
          "description": "Whether to fetch file content. Set to 'true' to include file content in the 'content' column.",
          "type": "string",
          "default": "false"
        },
        "cache_path": {
          "description": "Custom path for the local Git repository cache. If not specified, uses system temp directory.",
          "type": "string"
        },
        "max_files": {
          "description": "Maximum number of files to materialize from a Git repository. Default: 5000. Hard limit: 50000.",
          "type": "string",
          "default": "5000"
        },
        "max_file_bytes": {
          "description": "Maximum size (bytes) for an individual file when fetching content. Files larger than this value are skipped. Default: 524288. Maximum: 5242880 (5 MiB).",
          "type": "string"
        }
      },
      "additionalProperties": true
    },
    "S3DataConnectorParams": {
      "title": "S3Params",
      "type": "object",
      "properties": {
        "s3_region": {
          "type": "string",
          "x-secret": true
        },
        "s3_endpoint": {
          "type": "string",
          "x-secret": true
        },
        "s3_url_style": {
          "description": "Controls S3 URL addressing style. Supported values: 'vhost' and 'path'. When not set, auto-detected from the endpoint.",
          "type": "string",
          "enum": [
            "vhost",
            "path"
          ]
        },
        "s3_key": {
          "type": "string",
          "x-secret": true
        },
        "s3_secret": {
          "type": "string",
          "x-secret": true
        },
        "s3_session_token": {
          "type": "string",
          "x-secret": true
        },
        "s3_auth": {
          "description": "Configures the authentication method for S3. Supported methods are: public (i.e. no auth), iam_role, key.",
          "type": "string",
          "x-secret": true
        },
        "s3_versioning": {
          "description": "Enables S3 obejct versioning support when set to 'enabled'. Defaults to 'enabled'.",
          "type": "string",
          "default": "enabled"
        },
        "client_timeout": {
          "description": "The timeout setting for S3 client.",
          "type": "string"
        },
        "allow_http": {
          "description": "Allow HTTP protocol for S3 endpoint.",
          "type": "string"
        },
        "file_format": {
          "type": "string"
        },
        "file_extension": {
          "type": "string"
        },
        "schema_infer_max_records": {
          "description": "Set a limit in terms of records to scan to infer the schema.",
          "type": "string"
        },
        "tsv_has_header": {
          "description": "Set true to indicate that the first line is a header.",
          "type": "string",
          "enum": [
            "true",
            "false"
          ]
        },
        "tsv_quote": {
          "description": "The quote character in a row.",
          "type": "string"
        },
        "tsv_escape": {
          "description": "The escape character in a row.",
          "type": "string"
        },
        "tsv_schema_infer_max_records": {
          "description": "**DEPRECATED**: use 'schema_infer_max_records' instead\n\nSet a limit in terms of records to scan to infer the schema.",
          "type": "string",
          "deprecated": true
        },
        "csv_has_header": {
          "description": "Set true to indicate that the first line is a header.",
          "type": "string",
          "enum": [
            "true",
            "false"
          ]
        },
        "csv_quote": {
          "description": "The quote character in a row.",
          "type": "string"
        },
        "csv_escape": {
          "description": "The escape character in a row.",
          "type": "string"
        },
        "csv_schema_infer_max_records": {
          "description": "**DEPRECATED**: use 'schema_infer_max_records' instead\n\nSet a limit in terms of records to scan to infer the schema.",
          "type": "string",
          "deprecated": true
        },
        "csv_delimiter": {
          "description": "The character separating values within a row.",
          "type": "string"
        },
        "file_compression_type": {
          "description": "The type of compression used on the file. Supported types are: GZIP, BZIP2, XZ, ZSTD, UNCOMPRESSED",
          "type": "string",
          "enum": [
            "GZIP",
            "BZIP2",
            "XZ",
            "ZSTD",
            "UNCOMPRESSED"
          ]
        },
        "hive_partitioning_enabled": {
          "description": "Enable partitioning using hive-style partitioning from the folder structure. Defaults to false.",
          "type": "string",
          "enum": [
            "true",
            "false"
          ]
        },
        "schema_source_path": {
          "description": "Specify a path to use for schema inference.",
          "type": "string"
        },
        "json_format": {
          "description": "json | jsonl | ndjson | ldjson | array | object | soda | socrata | auto. When 'file_format' is explicitly 'json', effective default is 'json' (no SODA auto-detection).",
          "type": "string",
          "default": "auto",
          "enum": [
            "json",
            "jsonl",
            "ndjson",
            "ldjson",
            "array",
            "object",
            "soda",
            "socrata",
            "auto"
          ]
        },
        "json_pointer": {
          "description": "An RFC 6901 JSON Pointer to extract data from within a JSON value. E.g. '/data' for {\"data\": [...]} or '/response/items' for nested objects. A leading '/' is added automatically if missing.",
          "type": "string"
        },
        "json_path": {
          "description": "Alias for 'json_pointer'. An RFC 6901 JSON Pointer to extract data from within a JSON value.",
          "type": "string"
        },
        "flatten_json": {
          "description": "Set true to flatten nested structs in JSON as separate columns.",
          "type": "string",
          "enum": [
            "true",
            "false"
          ]
        },
        "soda_metadata": {
          "description": "Set to 'enabled' to include Socrata internal metadata columns (sid, id, position, etc.) in the schema for SODA format responses. Defaults to disabled.",
          "type": "string",
          "default": "disabled",
          "enum": [
            "enabled",
            "disabled"
          ]
        },
        "refresh_skip": {
          "description": "Control skipping refreshes for single-file S3 datasets when cached ETag/Version metadata matches. Set to 'enabled' (default) or 'disabled'.",
          "type": "string",
          "default": "enabled",
          "enum": [
            "enabled",
            "disabled"
          ]
        }
      },
      "additionalProperties": true
    },
    "GlueDataConnectorParams": {
      "title": "GlueParams",
      "type": "object",
      "properties": {
        "glue_catalog_id": {
          "type": "string",
          "x-secret": true
        },
        "glue_region": {
          "type": "string",
          "x-secret": true
        },
        "glue_endpoint": {
          "type": "string",
          "x-secret": true
        },
        "glue_url_style": {
          "description": "Controls S3 URL addressing style. Supported values: 'vhost' and 'path'. When not set, auto-detected from the endpoint.",
          "type": "string",
          "enum": [
            "vhost",
            "path"
          ]
        },
        "glue_key": {
          "type": "string",
          "x-secret": true
        },
        "glue_secret": {
          "type": "string",
          "x-secret": true
        },
        "glue_session_token": {
          "type": "string",
          "x-secret": true
        },
        "glue_auth": {
          "description": "Configures the authentication method for S3. Supported methods are: public (i.e. no auth), iam_role, key.",
          "type": "string",
          "x-secret": true
        },
        "glue_versioning": {
          "description": "Enables S3 obejct versioning support when set to 'enabled'. Defaults to 'enabled'.",
          "type": "string",
          "default": "enabled"
        },
        "client_timeout": {
          "description": "The timeout setting for S3 client.",
          "type": "string"
        },
        "allow_http": {
          "description": "Allow HTTP protocol for S3 endpoint.",
          "type": "string"
        },
        "file_format": {
          "type": "string"
        },
        "file_extension": {
          "type": "string"
        },
        "schema_infer_max_records": {
          "description": "Set a limit in terms of records to scan to infer the schema.",
          "type": "string"
        },
        "tsv_has_header": {
          "description": "Set true to indicate that the first line is a header.",
          "type": "string",
          "enum": [
            "true",
            "false"
          ]
        },
        "tsv_quote": {
          "description": "The quote character in a row.",
          "type": "string"
        },
        "tsv_escape": {
          "description": "The escape character in a row.",
          "type": "string"
        },
        "tsv_schema_infer_max_records": {
          "description": "**DEPRECATED**: use 'schema_infer_max_records' instead\n\nSet a limit in terms of records to scan to infer the schema.",
          "type": "string",
          "deprecated": true
        },
        "csv_has_header": {
          "description": "Set true to indicate that the first line is a header.",
          "type": "string",
          "enum": [
            "true",
            "false"
          ]
        },
        "csv_quote": {
          "description": "The quote character in a row.",
          "type": "string"
        },
        "csv_escape": {
          "description": "The escape character in a row.",
          "type": "string"
        },
        "csv_schema_infer_max_records": {
          "description": "**DEPRECATED**: use 'schema_infer_max_records' instead\n\nSet a limit in terms of records to scan to infer the schema.",
          "type": "string",
          "deprecated": true
        },
        "csv_delimiter": {
          "description": "The character separating values within a row.",
          "type": "string"
        },
        "file_compression_type": {
          "description": "The type of compression used on the file. Supported types are: GZIP, BZIP2, XZ, ZSTD, UNCOMPRESSED",
          "type": "string",
          "enum": [
            "GZIP",
            "BZIP2",
            "XZ",
            "ZSTD",
            "UNCOMPRESSED"
          ]
        },
        "hive_partitioning_enabled": {
          "description": "Enable partitioning using hive-style partitioning from the folder structure. Defaults to false.",
          "type": "string",
          "enum": [
            "true",
            "false"
          ]
        },
        "schema_source_path": {
          "description": "Specify a path to use for schema inference.",
          "type": "string"
        },
        "json_format": {
          "description": "json | jsonl | ndjson | ldjson | array | object | soda | socrata | auto. When 'file_format' is explicitly 'json', effective default is 'json' (no SODA auto-detection).",
          "type": "string",
          "default": "auto",
          "enum": [
            "json",
            "jsonl",
            "ndjson",
            "ldjson",
            "array",
            "object",
            "soda",
            "socrata",
            "auto"
          ]
        },
        "json_pointer": {
          "description": "An RFC 6901 JSON Pointer to extract data from within a JSON value. E.g. '/data' for {\"data\": [...]} or '/response/items' for nested objects. A leading '/' is added automatically if missing.",
          "type": "string"
        },
        "json_path": {
          "description": "Alias for 'json_pointer'. An RFC 6901 JSON Pointer to extract data from within a JSON value.",
          "type": "string"
        },
        "flatten_json": {
          "description": "Set true to flatten nested structs in JSON as separate columns.",
          "type": "string",
          "enum": [
            "true",
            "false"
          ]
        },
        "soda_metadata": {
          "description": "Set to 'enabled' to include Socrata internal metadata columns (sid, id, position, etc.) in the schema for SODA format responses. Defaults to disabled.",
          "type": "string",
          "default": "disabled",
          "enum": [
            "enabled",
            "disabled"
          ]
        },
        "refresh_skip": {
          "description": "Control skipping refreshes for single-file S3 datasets when cached ETag/Version metadata matches. Set to 'enabled' (default) or 'disabled'.",
          "type": "string",
          "default": "enabled",
          "enum": [
            "enabled",
            "disabled"
          ]
        }
      },
      "additionalProperties": true
    },
    "SinkDataConnectorParams": {
      "title": "SinkParams",
      "type": "object",
      "properties": {},
      "additionalProperties": true
    },
    "GithubDataConnectorParams": {
      "title": "GithubParams",
      "type": "object",
      "properties": {
        "github_token": {
          "description": "A Github token.",
          "type": "string",
          "x-secret": true
        },
        "github_client_id": {
          "description": "The Github App Client ID.",
          "type": "string",
          "x-secret": true
        },
        "github_private_key": {
          "description": "The Github App private key.",
          "type": "string",
          "x-secret": true
        },
        "github_installation_id": {
          "description": "The Github App installation ID.",
          "type": "string",
          "x-secret": true
        },
        "github_query_mode": {
          "description": "Specify what search mode (REST, GraphQL, Search API) to use when retrieving results.",
          "type": "string",
          "default": "auto"
        },
        "github_endpoint": {
          "description": "The Github API endpoint.",
          "type": "string",
          "default": "https://api.github.com"
        },
        "github_include_comments": {
          "description": "Specifies the types of comments to fetch: 'all', 'review', 'discussion', or 'none'.",
          "type": "string",
          "default": "none"
        },
        "github_max_comments_fetched": {
          "description": "Maximum number of comments to fetch per discussion or review thread.",
          "type": "string",
          "default": "100"
        },
        "github_include_commits": {
          "description": "Whether to fetch commit information (created_at, updated_at) for files. Set to 'true' to enable.",
          "type": "string",
          "default": "false"
        },
        "github_workflow_logs": {
          "description": "Whether to download and include workflow run logs. Set to 'enabled' to download logs for each workflow run. Defaults to 'disabled'.",
          "type": "string",
          "default": "disabled"
        },
        "include": {
          "description": "Include only files matching the pattern.",
          "type": "string",
          "examples": [
            "*.json",
            "**/*.yaml;src/**/*.json"
          ]
        }
      },
      "additionalProperties": true
    },
    "HttpDataConnectorParams": {
      "title": "HttpParams",
      "type": "object",
      "properties": {
        "http_username": {
          "type": "string",
          "x-secret": true
        },
        "http_password": {
          "type": "string",
          "x-secret": true
        },
        "http_port": {
          "description": "The port to connect to.",
          "type": "string"
        },
        "client_timeout": {
          "description": "The timeout setting for HTTP(S) client requests (in seconds). Default: 30",
          "type": "string"
        },
        "connect_timeout": {
          "description": "The timeout for establishing HTTP(S) connections (in seconds). Default: 10",
          "type": "string"
        },
        "pool_max_idle_per_host": {
          "description": "Maximum number of idle connections to keep alive per host. Default: 10",
          "type": "string"
        },
        "pool_idle_timeout": {
          "description": "Timeout for idle connections in the pool (in seconds). Default: 90",
          "type": "string"
        },
        "http_headers": {
          "description": "Custom HTTP headers to include in requests. Format: 'Header1: Value1, Header2: Value2'. Headers are applied to all requests.",
          "type": "string"
        },
        "max_retries": {
          "description": "Maximum number of retries for HTTP requests. Default: 3",
          "type": "string"
        },
        "retry_backoff_method": {
          "description": "Retry backoff method: 'fibonacci' (default), 'linear', or 'exponential'.",
          "type": "string"
        },
        "retry_max_duration": {
          "description": "Maximum total duration for all retries (e.g., '30s', '5m'). If not set, retries will continue up to max_retries.",
          "type": "string"
        },
        "retry_jitter": {
          "description": "Randomization factor for retry delays (0.0 to 1.0). Default: 0.3 (30% randomization). Set to 0 for no jitter.",
          "type": "string"
        },
        "allowed_request_paths": {
          "description": "Comma-separated list of request_path values that users are allowed to query. Required to enable request_path filters.",
          "type": "string"
        },
        "request_query_filters": {
          "description": "Set to 'enabled' or 'disabled' to control whether request_query filters can be pushed down to HTTP requests.",
          "type": "string",
          "enum": [
            "enabled",
            "disabled"
          ]
        },
        "max_request_query_length": {
          "description": "Maximum length (in characters) for request_query filter values. Default: 1024.",
          "type": "string"
        },
        "request_body_filters": {
          "description": "Set to 'enabled' or 'disabled' to control whether request_body filters can be pushed down as HTTP request bodies.",
          "type": "string",
          "enum": [
            "enabled",
            "disabled"
          ]
        },
        "max_request_body_bytes": {
          "description": "Maximum size (in bytes) for request_body filter values. Default: 16384 (16KiB).",
          "type": "string"
        },
        "health_probe": {
          "description": "Custom health probe path for endpoint validation (e.g., '/health', '/api/status'). The endpoint must return a 2xx status code to pass validation. If not set, a random path is used and any status (including 404) is accepted.",
          "type": "string"
        },
        "file_format": {
          "type": "string"
        },
        "file_extension": {
          "type": "string"
        },
        "schema_infer_max_records": {
          "description": "Set a limit in terms of records to scan to infer the schema.",
          "type": "string"
        },
        "tsv_has_header": {
          "description": "Set true to indicate that the first line is a header.",
          "type": "string",
          "enum": [
            "true",
            "false"
          ]
        },
        "tsv_quote": {
          "description": "The quote character in a row.",
          "type": "string"
        },
        "tsv_escape": {
          "description": "The escape character in a row.",
          "type": "string"
        },
        "tsv_schema_infer_max_records": {
          "description": "**DEPRECATED**: use 'schema_infer_max_records' instead\n\nSet a limit in terms of records to scan to infer the schema.",
          "type": "string",
          "deprecated": true
        },
        "csv_has_header": {
          "description": "Set true to indicate that the first line is a header.",
          "type": "string",
          "enum": [
            "true",
            "false"
          ]
        },
        "csv_quote": {
          "description": "The quote character in a row.",
          "type": "string"
        },
        "csv_escape": {
          "description": "The escape character in a row.",
          "type": "string"
        },
        "csv_schema_infer_max_records": {
          "description": "**DEPRECATED**: use 'schema_infer_max_records' instead\n\nSet a limit in terms of records to scan to infer the schema.",
          "type": "string",
          "deprecated": true
        },
        "csv_delimiter": {
          "description": "The character separating values within a row.",
          "type": "string"
        },
        "file_compression_type": {
          "description": "The type of compression used on the file. Supported types are: GZIP, BZIP2, XZ, ZSTD, UNCOMPRESSED",
          "type": "string",
          "enum": [
            "GZIP",
            "BZIP2",
            "XZ",
            "ZSTD",
            "UNCOMPRESSED"
          ]
        },
        "hive_partitioning_enabled": {
          "description": "Enable partitioning using hive-style partitioning from the folder structure. Defaults to false.",
          "type": "string",
          "enum": [
            "true",
            "false"
          ]
        },
        "schema_source_path": {
          "description": "Specify a path to use for schema inference.",
          "type": "string"
        },
        "json_format": {
          "description": "json | jsonl | ndjson | ldjson | array | object | soda | socrata | auto. When 'file_format' is explicitly 'json', effective default is 'json' (no SODA auto-detection).",
          "type": "string",
          "default": "auto",
          "enum": [
            "json",
            "jsonl",
            "ndjson",
            "ldjson",
            "array",
            "object",
            "soda",
            "socrata",
            "auto"
          ]
        },
        "json_pointer": {
          "description": "An RFC 6901 JSON Pointer to extract data from within a JSON value. E.g. '/data' for {\"data\": [...]} or '/response/items' for nested objects. A leading '/' is added automatically if missing.",
          "type": "string"
        },
        "json_path": {
          "description": "Alias for 'json_pointer'. An RFC 6901 JSON Pointer to extract data from within a JSON value.",
          "type": "string"
        },
        "flatten_json": {
          "description": "Set true to flatten nested structs in JSON as separate columns.",
          "type": "string",
          "enum": [
            "true",
            "false"
          ]
        },
        "soda_metadata": {
          "description": "Set to 'enabled' to include Socrata internal metadata columns (sid, id, position, etc.) in the schema for SODA format responses. Defaults to disabled.",
          "type": "string",
          "default": "disabled",
          "enum": [
            "enabled",
            "disabled"
          ]
        },
        "refresh_skip": {
          "description": "Control skipping refreshes for single-file S3 datasets when cached ETag/Version metadata matches. Set to 'enabled' (default) or 'disabled'.",
          "type": "string",
          "default": "enabled",
          "enum": [
            "enabled",
            "disabled"
          ]
        }
      },
      "additionalProperties": true
    },
    "HttpsDataConnectorParams": {
      "title": "HttpsParams",
      "type": "object",
      "properties": {
        "http_username": {
          "type": "string",
          "x-secret": true
        },
        "http_password": {
          "type": "string",
          "x-secret": true
        },
        "http_port": {
          "description": "The port to connect to.",
          "type": "string"
        },
        "client_timeout": {
          "description": "The timeout setting for HTTP(S) client requests (in seconds). Default: 30",
          "type": "string"
        },
        "connect_timeout": {
          "description": "The timeout for establishing HTTP(S) connections (in seconds). Default: 10",
          "type": "string"
        },
        "pool_max_idle_per_host": {
          "description": "Maximum number of idle connections to keep alive per host. Default: 10",
          "type": "string"
        },
        "pool_idle_timeout": {
          "description": "Timeout for idle connections in the pool (in seconds). Default: 90",
          "type": "string"
        },
        "http_headers": {
          "description": "Custom HTTP headers to include in requests. Format: 'Header1: Value1, Header2: Value2'. Headers are applied to all requests.",
          "type": "string"
        },
        "max_retries": {
          "description": "Maximum number of retries for HTTP requests. Default: 3",
          "type": "string"
        },
        "retry_backoff_method": {
          "description": "Retry backoff method: 'fibonacci' (default), 'linear', or 'exponential'.",
          "type": "string"
        },
        "retry_max_duration": {
          "description": "Maximum total duration for all retries (e.g., '30s', '5m'). If not set, retries will continue up to max_retries.",
          "type": "string"
        },
        "retry_jitter": {
          "description": "Randomization factor for retry delays (0.0 to 1.0). Default: 0.3 (30% randomization). Set to 0 for no jitter.",
          "type": "string"
        },
        "allowed_request_paths": {
          "description": "Comma-separated list of request_path values that users are allowed to query. Required to enable request_path filters.",
          "type": "string"
        },
        "request_query_filters": {
          "description": "Set to 'enabled' or 'disabled' to control whether request_query filters can be pushed down to HTTP requests.",
          "type": "string",
          "enum": [
            "enabled",
            "disabled"
          ]
        },
        "max_request_query_length": {
          "description": "Maximum length (in characters) for request_query filter values. Default: 1024.",
          "type": "string"
        },
        "request_body_filters": {
          "description": "Set to 'enabled' or 'disabled' to control whether request_body filters can be pushed down as HTTP request bodies.",
          "type": "string",
          "enum": [
            "enabled",
            "disabled"
          ]
        },
        "max_request_body_bytes": {
          "description": "Maximum size (in bytes) for request_body filter values. Default: 16384 (16KiB).",
          "type": "string"
        },
        "health_probe": {
          "description": "Custom health probe path for endpoint validation (e.g., '/health', '/api/status'). The endpoint must return a 2xx status code to pass validation. If not set, a random path is used and any status (including 404) is accepted.",
          "type": "string"
        },
        "file_format": {
          "type": "string"
        },
        "file_extension": {
          "type": "string"
        },
        "schema_infer_max_records": {
          "description": "Set a limit in terms of records to scan to infer the schema.",
          "type": "string"
        },
        "tsv_has_header": {
          "description": "Set true to indicate that the first line is a header.",
          "type": "string",
          "enum": [
            "true",
            "false"
          ]
        },
        "tsv_quote": {
          "description": "The quote character in a row.",
          "type": "string"
        },
        "tsv_escape": {
          "description": "The escape character in a row.",
          "type": "string"
        },
        "tsv_schema_infer_max_records": {
          "description": "**DEPRECATED**: use 'schema_infer_max_records' instead\n\nSet a limit in terms of records to scan to infer the schema.",
          "type": "string",
          "deprecated": true
        },
        "csv_has_header": {
          "description": "Set true to indicate that the first line is a header.",
          "type": "string",
          "enum": [
            "true",
            "false"
          ]
        },
        "csv_quote": {
          "description": "The quote character in a row.",
          "type": "string"
        },
        "csv_escape": {
          "description": "The escape character in a row.",
          "type": "string"
        },
        "csv_schema_infer_max_records": {
          "description": "**DEPRECATED**: use 'schema_infer_max_records' instead\n\nSet a limit in terms of records to scan to infer the schema.",
          "type": "string",
          "deprecated": true
        },
        "csv_delimiter": {
          "description": "The character separating values within a row.",
          "type": "string"
        },
        "file_compression_type": {
          "description": "The type of compression used on the file. Supported types are: GZIP, BZIP2, XZ, ZSTD, UNCOMPRESSED",
          "type": "string",
          "enum": [
            "GZIP",
            "BZIP2",
            "XZ",
            "ZSTD",
            "UNCOMPRESSED"
          ]
        },
        "hive_partitioning_enabled": {
          "description": "Enable partitioning using hive-style partitioning from the folder structure. Defaults to false.",
          "type": "string",
          "enum": [
            "true",
            "false"
          ]
        },
        "schema_source_path": {
          "description": "Specify a path to use for schema inference.",
          "type": "string"
        },
        "json_format": {
          "description": "json | jsonl | ndjson | ldjson | array | object | soda | socrata | auto. When 'file_format' is explicitly 'json', effective default is 'json' (no SODA auto-detection).",
          "type": "string",
          "default": "auto",
          "enum": [
            "json",
            "jsonl",
            "ndjson",
            "ldjson",
            "array",
            "object",
            "soda",
            "socrata",
            "auto"
          ]
        },
        "json_pointer": {
          "description": "An RFC 6901 JSON Pointer to extract data from within a JSON value. E.g. '/data' for {\"data\": [...]} or '/response/items' for nested objects. A leading '/' is added automatically if missing.",
          "type": "string"
        },
        "json_path": {
          "description": "Alias for 'json_pointer'. An RFC 6901 JSON Pointer to extract data from within a JSON value.",
          "type": "string"
        },
        "flatten_json": {
          "description": "Set true to flatten nested structs in JSON as separate columns.",
          "type": "string",
          "enum": [
            "true",
            "false"
          ]
        },
        "soda_metadata": {
          "description": "Set to 'enabled' to include Socrata internal metadata columns (sid, id, position, etc.) in the schema for SODA format responses. Defaults to disabled.",
          "type": "string",
          "default": "disabled",
          "enum": [
            "enabled",
            "disabled"
          ]
        },
        "refresh_skip": {
          "description": "Control skipping refreshes for single-file S3 datasets when cached ETag/Version metadata matches. Set to 'enabled' (default) or 'disabled'.",
          "type": "string",
          "default": "enabled",
          "enum": [
            "enabled",
            "disabled"
          ]
        }
      },
      "additionalProperties": true
    },
    "MemoryDataConnectorParams": {
      "title": "MemoryParams",
      "type": "object",
      "properties": {},
      "additionalProperties": true
    },
    "IcebergDataConnectorParams": {
      "title": "IcebergParams",
      "type": "object",
      "properties": {
        "metadata_path": {
          "description": "The path including scheme to the metadata file for the Hadoop table. Must specify a path to a `.json` file. For example, `s3a://my-bucket/warehouse/namespace/table/metadata/v1.metadata.json`",
          "type": "string"
        },
        "iceberg_token": {
          "description": "Bearer token value to use for Authorization header.",
          "type": "string",
          "x-secret": true
        },
        "iceberg_oauth2_credential": {
          "description": "Credential to use for OAuth2 client credential flow when initializing the catalog. Separated by a colon as <client_id>:<client_secret>.",
          "type": "string",
          "x-secret": true
        },
        "iceberg_oauth2_token_url": {
          "description": "The URL to use for OAuth2 token endpoint.",
          "type": "string"
        },
        "iceberg_oauth2_scope": {
          "description": "The scope to use for OAuth2 token endpoint (default: catalog).",
          "type": "string",
          "default": "catalog"
        },
        "iceberg_oauth2_server_url": {
          "description": "URL of the OAuth2 server tokens endpoint.",
          "type": "string"
        },
        "iceberg_sigv4_enabled": {
          "description": "Enable SigV4 authentication for the catalog (for connecting to AWS Glue).",
          "type": "string"
        },
        "iceberg_signing_region": {
          "description": "The region to use when signing the request for SigV4. Defaults to the region in the catalog URL if available.",
          "type": "string"
        },
        "iceberg_signing_name": {
          "description": "The name to use when signing the request for SigV4.",
          "type": "string",
          "default": "glue"
        },
        "iceberg_warehouse": {
          "description": "Name of the Iceberg warehouse.",
          "type": "string"
        },
        "iceberg_s3_endpoint": {
          "description": "Configure an alternative endpoint for the S3 service. This can be any s3-compatible object storage service. i.e. Minio, Cloudflare R2, etc.",
          "type": "string",
          "x-secret": true
        },
        "iceberg_s3_access_key_id": {
          "description": "The AWS access key ID to use for S3 storage.",
          "type": "string",
          "x-secret": true
        },
        "iceberg_s3_secret_access_key": {
          "description": "The AWS secret access key to use for S3 storage.",
          "type": "string",
          "x-secret": true
        },
        "iceberg_s3_session_token": {
          "description": "Configure the static session token used for S3 storage.",
          "type": "string",
          "x-secret": true
        },
        "iceberg_s3_region": {
          "description": "The AWS S3 region to use.",
          "type": "string",
          "x-secret": true
        },
        "iceberg_s3_role_session_name": {
          "description": "An optional identifier for the assumed role session for auditing purposes.",
          "type": "string",
          "x-secret": true
        },
        "iceberg_s3_role_arn": {
          "description": "The Amazon Resource Name (ARN) of the role to assume. If provided instead of s3_access_key_id and s3_secret_access_key, temporary credentials will be fetched by assuming this role",
          "type": "string",
          "x-secret": true
        },
        "iceberg_s3_connect_timeout": {
          "description": "Configure socket connection timeout, in seconds (default: 60).",
          "type": "string"
        },
        "iceberg_gcs_project_id": {
          "description": "The Google Cloud project ID for GCS storage.",
          "type": "string"
        },
        "iceberg_gcs_credentials": {
          "description": "Base64-encoded Google Cloud service account credentials JSON for GCS storage.",
          "type": "string",
          "x-secret": true
        },
        "iceberg_gcs_token": {
          "description": "OAuth2 token to use for GCS authentication.",
          "type": "string",
          "x-secret": true
        },
        "iceberg_gcs_service_path": {
          "description": "Custom endpoint URL for GCS (for emulators or custom endpoints).",
          "type": "string"
        },
        "iceberg_gcs_no_auth": {
          "description": "Set to 'true' to allow anonymous access to GCS (for public buckets).",
          "type": "string"
        }
      },
      "additionalProperties": true
    },
    "LocalpodDataConnectorParams": {
      "title": "LocalpodParams",
      "type": "object",
      "properties": {},
      "additionalProperties": true
    },
    "GsDataConnectorParams": {
      "title": "GsParams",
      "type": "object",
      "properties": {
        "gcs_service_account_path": {
          "description": "Path to a GCS service account JSON key file.",
          "type": "string",
          "x-secret": true
        },
        "gcs_service_account_key": {
          "description": "GCS service account JSON key as a string.",
          "type": "string",
          "x-secret": true
        },
        "gcs_application_default_credentials": {
          "description": "Use Google Application Default Credentials for authentication. If GOOGLE_APPLICATION_CREDENTIALS env var is set, uses that path.",
          "type": "string",
          "default": "false",
          "enum": [
            "true",
            "false"
          ]
        },
        "allow_http": {
          "description": "Allow insecure HTTP connections.",
          "type": "string",
          "default": "false",
          "enum": [
            "true",
            "false"
          ]
        },
        "gcs_max_retries": {
          "description": "The maximum number of retries.",
          "type": "string",
          "default": "3"
        },
        "gcs_retry_timeout": {
          "description": "Retry timeout.",
          "type": "string"
        },
        "gcs_backoff_initial_duration": {
          "description": "Initial backoff duration.",
          "type": "string"
        },
        "gcs_backoff_max_duration": {
          "description": "Maximum backoff duration.",
          "type": "string"
        },
        "gcs_backoff_base": {
          "description": "The base of the exponential to use",
          "type": "string"
        },
        "gcs_skip_signature": {
          "description": "Skip signing requests. Used for public buckets.",
          "type": "string",
          "enum": [
            "true",
            "false"
          ]
        },
        "client_timeout": {
          "description": "The timeout setting for GCS client.",
          "type": "string"
        },
        "file_format": {
          "type": "string"
        },
        "file_extension": {
          "type": "string"
        },
        "schema_infer_max_records": {
          "description": "Set a limit in terms of records to scan to infer the schema.",
          "type": "string"
        },
        "tsv_has_header": {
          "description": "Set true to indicate that the first line is a header.",
          "type": "string",
          "enum": [
            "true",
            "false"
          ]
        },
        "tsv_quote": {
          "description": "The quote character in a row.",
          "type": "string"
        },
        "tsv_escape": {
          "description": "The escape character in a row.",
          "type": "string"
        },
        "tsv_schema_infer_max_records": {
          "description": "**DEPRECATED**: use 'schema_infer_max_records' instead\n\nSet a limit in terms of records to scan to infer the schema.",
          "type": "string",
          "deprecated": true
        },
        "csv_has_header": {
          "description": "Set true to indicate that the first line is a header.",
          "type": "string",
          "enum": [
            "true",
            "false"
          ]
        },
        "csv_quote": {
          "description": "The quote character in a row.",
          "type": "string"
        },
        "csv_escape": {
          "description": "The escape character in a row.",
          "type": "string"
        },
        "csv_schema_infer_max_records": {
          "description": "**DEPRECATED**: use 'schema_infer_max_records' instead\n\nSet a limit in terms of records to scan to infer the schema.",
          "type": "string",
          "deprecated": true
        },
        "csv_delimiter": {
          "description": "The character separating values within a row.",
          "type": "string"
        },
        "file_compression_type": {
          "description": "The type of compression used on the file. Supported types are: GZIP, BZIP2, XZ, ZSTD, UNCOMPRESSED",
          "type": "string",
          "enum": [
            "GZIP",
            "BZIP2",
            "XZ",
            "ZSTD",
            "UNCOMPRESSED"
          ]
        },
        "hive_partitioning_enabled": {
          "description": "Enable partitioning using hive-style partitioning from the folder structure. Defaults to false.",
          "type": "string",
          "enum": [
            "true",
            "false"
          ]
        },
        "schema_source_path": {
          "description": "Specify a path to use for schema inference.",
          "type": "string"
        },
        "json_format": {
          "description": "json | jsonl | ndjson | ldjson | array | object | soda | socrata | auto. When 'file_format' is explicitly 'json', effective default is 'json' (no SODA auto-detection).",
          "type": "string",
          "default": "auto",
          "enum": [
            "json",
            "jsonl",
            "ndjson",
            "ldjson",
            "array",
            "object",
            "soda",
            "socrata",
            "auto"
          ]
        },
        "json_pointer": {
          "description": "An RFC 6901 JSON Pointer to extract data from within a JSON value. E.g. '/data' for {\"data\": [...]} or '/response/items' for nested objects. A leading '/' is added automatically if missing.",
          "type": "string"
        },
        "json_path": {
          "description": "Alias for 'json_pointer'. An RFC 6901 JSON Pointer to extract data from within a JSON value.",
          "type": "string"
        },
        "flatten_json": {
          "description": "Set true to flatten nested structs in JSON as separate columns.",
          "type": "string",
          "enum": [
            "true",
            "false"
          ]
        },
        "soda_metadata": {
          "description": "Set to 'enabled' to include Socrata internal metadata columns (sid, id, position, etc.) in the schema for SODA format responses. Defaults to disabled.",
          "type": "string",
          "default": "disabled",
          "enum": [
            "enabled",
            "disabled"
          ]
        },
        "refresh_skip": {
          "description": "Control skipping refreshes for single-file S3 datasets when cached ETag/Version metadata matches. Set to 'enabled' (default) or 'disabled'.",
          "type": "string",
          "default": "enabled",
          "enum": [
            "enabled",
            "disabled"
          ]
        }
      },
      "additionalProperties": true
    },
    "GcsDataConnectorParams": {
      "title": "GcsParams",
      "type": "object",
      "properties": {
        "gcs_service_account_path": {
          "description": "Path to a GCS service account JSON key file.",
          "type": "string",
          "x-secret": true
        },
        "gcs_service_account_key": {
          "description": "GCS service account JSON key as a string.",
          "type": "string",
          "x-secret": true
        },
        "gcs_application_default_credentials": {
          "description": "Use Google Application Default Credentials for authentication. If GOOGLE_APPLICATION_CREDENTIALS env var is set, uses that path.",
          "type": "string",
          "default": "false",
          "enum": [
            "true",
            "false"
          ]
        },
        "allow_http": {
          "description": "Allow insecure HTTP connections.",
          "type": "string",
          "default": "false",
          "enum": [
            "true",
            "false"
          ]
        },
        "gcs_max_retries": {
          "description": "The maximum number of retries.",
          "type": "string",
          "default": "3"
        },
        "gcs_retry_timeout": {
          "description": "Retry timeout.",
          "type": "string"
        },
        "gcs_backoff_initial_duration": {
          "description": "Initial backoff duration.",
          "type": "string"
        },
        "gcs_backoff_max_duration": {
          "description": "Maximum backoff duration.",
          "type": "string"
        },
        "gcs_backoff_base": {
          "description": "The base of the exponential to use",
          "type": "string"
        },
        "gcs_skip_signature": {
          "description": "Skip signing requests. Used for public buckets.",
          "type": "string",
          "enum": [
            "true",
            "false"
          ]
        },
        "client_timeout": {
          "description": "The timeout setting for GCS client.",
          "type": "string"
        },
        "file_format": {
          "type": "string"
        },
        "file_extension": {
          "type": "string"
        },
        "schema_infer_max_records": {
          "description": "Set a limit in terms of records to scan to infer the schema.",
          "type": "string"
        },
        "tsv_has_header": {
          "description": "Set true to indicate that the first line is a header.",
          "type": "string",
          "enum": [
            "true",
            "false"
          ]
        },
        "tsv_quote": {
          "description": "The quote character in a row.",
          "type": "string"
        },
        "tsv_escape": {
          "description": "The escape character in a row.",
          "type": "string"
        },
        "tsv_schema_infer_max_records": {
          "description": "**DEPRECATED**: use 'schema_infer_max_records' instead\n\nSet a limit in terms of records to scan to infer the schema.",
          "type": "string",
          "deprecated": true
        },
        "csv_has_header": {
          "description": "Set true to indicate that the first line is a header.",
          "type": "string",
          "enum": [
            "true",
            "false"
          ]
        },
        "csv_quote": {
          "description": "The quote character in a row.",
          "type": "string"
        },
        "csv_escape": {
          "description": "The escape character in a row.",
          "type": "string"
        },
        "csv_schema_infer_max_records": {
          "description": "**DEPRECATED**: use 'schema_infer_max_records' instead\n\nSet a limit in terms of records to scan to infer the schema.",
          "type": "string",
          "deprecated": true
        },
        "csv_delimiter": {
          "description": "The character separating values within a row.",
          "type": "string"
        },
        "file_compression_type": {
          "description": "The type of compression used on the file. Supported types are: GZIP, BZIP2, XZ, ZSTD, UNCOMPRESSED",
          "type": "string",
          "enum": [
            "GZIP",
            "BZIP2",
            "XZ",
            "ZSTD",
            "UNCOMPRESSED"
          ]
        },
        "hive_partitioning_enabled": {
          "description": "Enable partitioning using hive-style partitioning from the folder structure. Defaults to false.",
          "type": "string",
          "enum": [
            "true",
            "false"
          ]
        },
        "schema_source_path": {
          "description": "Specify a path to use for schema inference.",
          "type": "string"
        },
        "json_format": {
          "description": "json | jsonl | ndjson | ldjson | array | object | soda | socrata | auto. When 'file_format' is explicitly 'json', effective default is 'json' (no SODA auto-detection).",
          "type": "string",
          "default": "auto",
          "enum": [
            "json",
            "jsonl",
            "ndjson",
            "ldjson",
            "array",
            "object",
            "soda",
            "socrata",
            "auto"
          ]
        },
        "json_pointer": {
          "description": "An RFC 6901 JSON Pointer to extract data from within a JSON value. E.g. '/data' for {\"data\": [...]} or '/response/items' for nested objects. A leading '/' is added automatically if missing.",
          "type": "string"
        },
        "json_path": {
          "description": "Alias for 'json_pointer'. An RFC 6901 JSON Pointer to extract data from within a JSON value.",
          "type": "string"
        },
        "flatten_json": {
          "description": "Set true to flatten nested structs in JSON as separate columns.",
          "type": "string",
          "enum": [
            "true",
            "false"
          ]
        },
        "soda_metadata": {
          "description": "Set to 'enabled' to include Socrata internal metadata columns (sid, id, position, etc.) in the schema for SODA format responses. Defaults to disabled.",
          "type": "string",
          "default": "disabled",
          "enum": [
            "enabled",
            "disabled"
          ]
        },
        "refresh_skip": {
          "description": "Control skipping refreshes for single-file S3 datasets when cached ETag/Version metadata matches. Set to 'enabled' (default) or 'disabled'.",
          "type": "string",
          "default": "enabled",
          "enum": [
            "enabled",
            "disabled"
          ]
        }
      },
      "additionalProperties": true
    },
    "AbfsDataConnectorParams": {
      "title": "AbfsParams",
      "type": "object",
      "properties": {
        "abfs_account": {
          "description": "Azure Storage account name.",
          "type": "string",
          "x-secret": true
        },
        "abfs_container_name": {
          "description": "Azure Storage container name.",
          "type": "string",
          "x-secret": true
        },
        "abfs_access_key": {
          "description": "Azure Storage account access key.",
          "type": "string",
          "x-secret": true
        },
        "abfs_bearer_token": {
          "description": "Bearer token to use in Azure requests.",
          "type": "string",
          "x-secret": true
        },
        "abfs_client_id": {
          "description": "Azure client ID.",
          "type": "string",
          "x-secret": true
        },
        "abfs_client_secret": {
          "description": "Azure client secret.",
          "type": "string",
          "x-secret": true
        },
        "abfs_tenant_id": {
          "description": "Azure tenant ID.",
          "type": "string",
          "x-secret": true
        },
        "abfs_sas_string": {
          "description": "Azure SAS string.",
          "type": "string",
          "x-secret": true
        },
        "abfs_endpoint": {
          "description": "Azure Storage endpoint.",
          "type": "string",
          "x-secret": true
        },
        "abfs_use_emulator": {
          "description": "Use the Azure Storage emulator.",
          "type": "string",
          "default": "false",
          "enum": [
            "true",
            "false"
          ]
        },
        "abfs_use_fabric_endpoint": {
          "description": "Use the Azure Storage fabric endpoint.",
          "type": "string",
          "default": "false",
          "enum": [
            "true",
            "false"
          ]
        },
        "allow_http": {
          "description": "Allow insecure HTTP connections.",
          "type": "string",
          "default": "false",
          "enum": [
            "true",
            "false"
          ]
        },
        "abfs_authority_host": {
          "description": "Sets an alternative authority host.",
          "type": "string"
        },
        "abfs_max_retries": {
          "description": "The maximum number of retries.",
          "type": "string",
          "default": "3"
        },
        "abfs_retry_timeout": {
          "description": "Retry timeout.",
          "type": "string"
        },
        "abfs_backoff_initial_duration": {
          "description": "Initial backoff duration.",
          "type": "string"
        },
        "abfs_backoff_max_duration": {
          "description": "Maximum backoff duration.",
          "type": "string"
        },
        "abfs_backoff_base": {
          "description": "The base of the exponential to use",
          "type": "string"
        },
        "abfs_proxy_url": {
          "description": "Proxy URL to use when connecting",
          "type": "string"
        },
        "abfs_proxy_ca_certificate": {
          "description": "CA certificate for the proxy.",
          "type": "string",
          "x-secret": true
        },
        "abfs_proxy_excludes": {
          "description": "Set list of hosts to exclude from proxy connections",
          "type": "string"
        },
        "abfs_msi_endpoint": {
          "description": "Sets the endpoint for acquiring managed identity tokens.",
          "type": "string",
          "x-secret": true
        },
        "abfs_federated_token_file": {
          "description": "Sets a file path for acquiring Azure federated identity token in Kubernetes",
          "type": "string"
        },
        "abfs_use_cli": {
          "description": "Set if the Azure CLI should be used for acquiring access tokens.",
          "type": "string",
          "enum": [
            "true",
            "false"
          ]
        },
        "abfs_skip_signature": {
          "description": "Skip fetching credentials and skip signing requests. Used for interacting with public containers.",
          "type": "string",
          "enum": [
            "true",
            "false"
          ]
        },
        "abfs_disable_tagging": {
          "description": "Ignore any tags provided to put_opts",
          "type": "string",
          "enum": [
            "true",
            "false"
          ]
        },
        "client_timeout": {
          "description": "The timeout setting for Azure client.",
          "type": "string"
        },
        "abfs_versioning": {
          "description": "Enables Azure blob versioning support when set to 'enabled'. Defaults to 'disabled'.",
          "type": "string",
          "default": "disabled"
        },
        "file_format": {
          "type": "string"
        },
        "file_extension": {
          "type": "string"
        },
        "schema_infer_max_records": {
          "description": "Set a limit in terms of records to scan to infer the schema.",
          "type": "string"
        },
        "tsv_has_header": {
          "description": "Set true to indicate that the first line is a header.",
          "type": "string",
          "enum": [
            "true",
            "false"
          ]
        },
        "tsv_quote": {
          "description": "The quote character in a row.",
          "type": "string"
        },
        "tsv_escape": {
          "description": "The escape character in a row.",
          "type": "string"
        },
        "tsv_schema_infer_max_records": {
          "description": "**DEPRECATED**: use 'schema_infer_max_records' instead\n\nSet a limit in terms of records to scan to infer the schema.",
          "type": "string",
          "deprecated": true
        },
        "csv_has_header": {
          "description": "Set true to indicate that the first line is a header.",
          "type": "string",
          "enum": [
            "true",
            "false"
          ]
        },
        "csv_quote": {
          "description": "The quote character in a row.",
          "type": "string"
        },
        "csv_escape": {
          "description": "The escape character in a row.",
          "type": "string"
        },
        "csv_schema_infer_max_records": {
          "description": "**DEPRECATED**: use 'schema_infer_max_records' instead\n\nSet a limit in terms of records to scan to infer the schema.",
          "type": "string",
          "deprecated": true
        },
        "csv_delimiter": {
          "description": "The character separating values within a row.",
          "type": "string"
        },
        "file_compression_type": {
          "description": "The type of compression used on the file. Supported types are: GZIP, BZIP2, XZ, ZSTD, UNCOMPRESSED",
          "type": "string",
          "enum": [
            "GZIP",
            "BZIP2",
            "XZ",
            "ZSTD",
            "UNCOMPRESSED"
          ]
        },
        "hive_partitioning_enabled": {
          "description": "Enable partitioning using hive-style partitioning from the folder structure. Defaults to false.",
          "type": "string",
          "enum": [
            "true",
            "false"
          ]
        },
        "schema_source_path": {
          "description": "Specify a path to use for schema inference.",
          "type": "string"
        },
        "json_format": {
          "description": "json | jsonl | ndjson | ldjson | array | object | soda | socrata | auto. When 'file_format' is explicitly 'json', effective default is 'json' (no SODA auto-detection).",
          "type": "string",
          "default": "auto",
          "enum": [
            "json",
            "jsonl",
            "ndjson",
            "ldjson",
            "array",
            "object",
            "soda",
            "socrata",
            "auto"
          ]
        },
        "json_pointer": {
          "description": "An RFC 6901 JSON Pointer to extract data from within a JSON value. E.g. '/data' for {\"data\": [...]} or '/response/items' for nested objects. A leading '/' is added automatically if missing.",
          "type": "string"
        },
        "json_path": {
          "description": "Alias for 'json_pointer'. An RFC 6901 JSON Pointer to extract data from within a JSON value.",
          "type": "string"
        },
        "flatten_json": {
          "description": "Set true to flatten nested structs in JSON as separate columns.",
          "type": "string",
          "enum": [
            "true",
            "false"
          ]
        },
        "soda_metadata": {
          "description": "Set to 'enabled' to include Socrata internal metadata columns (sid, id, position, etc.) in the schema for SODA format responses. Defaults to disabled.",
          "type": "string",
          "default": "disabled",
          "enum": [
            "enabled",
            "disabled"
          ]
        },
        "refresh_skip": {
          "description": "Control skipping refreshes for single-file S3 datasets when cached ETag/Version metadata matches. Set to 'enabled' (default) or 'disabled'.",
          "type": "string",
          "default": "enabled",
          "enum": [
            "enabled",
            "disabled"
          ]
        }
      },
      "additionalProperties": true
    },
    "AbfssDataConnectorParams": {
      "title": "AbfssParams",
      "type": "object",
      "properties": {
        "abfs_account": {
          "description": "Azure Storage account name.",
          "type": "string",
          "x-secret": true
        },
        "abfs_container_name": {
          "description": "Azure Storage container name.",
          "type": "string",
          "x-secret": true
        },
        "abfs_access_key": {
          "description": "Azure Storage account access key.",
          "type": "string",
          "x-secret": true
        },
        "abfs_bearer_token": {
          "description": "Bearer token to use in Azure requests.",
          "type": "string",
          "x-secret": true
        },
        "abfs_client_id": {
          "description": "Azure client ID.",
          "type": "string",
          "x-secret": true
        },
        "abfs_client_secret": {
          "description": "Azure client secret.",
          "type": "string",
          "x-secret": true
        },
        "abfs_tenant_id": {
          "description": "Azure tenant ID.",
          "type": "string",
          "x-secret": true
        },
        "abfs_sas_string": {
          "description": "Azure SAS string.",
          "type": "string",
          "x-secret": true
        },
        "abfs_endpoint": {
          "description": "Azure Storage endpoint.",
          "type": "string",
          "x-secret": true
        },
        "abfs_use_emulator": {
          "description": "Use the Azure Storage emulator.",
          "type": "string",
          "default": "false",
          "enum": [
            "true",
            "false"
          ]
        },
        "abfs_use_fabric_endpoint": {
          "description": "Use the Azure Storage fabric endpoint.",
          "type": "string",
          "default": "false",
          "enum": [
            "true",
            "false"
          ]
        },
        "allow_http": {
          "description": "Allow insecure HTTP connections.",
          "type": "string",
          "default": "false",
          "enum": [
            "true",
            "false"
          ]
        },
        "abfs_authority_host": {
          "description": "Sets an alternative authority host.",
          "type": "string"
        },
        "abfs_max_retries": {
          "description": "The maximum number of retries.",
          "type": "string",
          "default": "3"
        },
        "abfs_retry_timeout": {
          "description": "Retry timeout.",
          "type": "string"
        },
        "abfs_backoff_initial_duration": {
          "description": "Initial backoff duration.",
          "type": "string"
        },
        "abfs_backoff_max_duration": {
          "description": "Maximum backoff duration.",
          "type": "string"
        },
        "abfs_backoff_base": {
          "description": "The base of the exponential to use",
          "type": "string"
        },
        "abfs_proxy_url": {
          "description": "Proxy URL to use when connecting",
          "type": "string"
        },
        "abfs_proxy_ca_certificate": {
          "description": "CA certificate for the proxy.",
          "type": "string",
          "x-secret": true
        },
        "abfs_proxy_excludes": {
          "description": "Set list of hosts to exclude from proxy connections",
          "type": "string"
        },
        "abfs_msi_endpoint": {
          "description": "Sets the endpoint for acquiring managed identity tokens.",
          "type": "string",
          "x-secret": true
        },
        "abfs_federated_token_file": {
          "description": "Sets a file path for acquiring Azure federated identity token in Kubernetes",
          "type": "string"
        },
        "abfs_use_cli": {
          "description": "Set if the Azure CLI should be used for acquiring access tokens.",
          "type": "string",
          "enum": [
            "true",
            "false"
          ]
        },
        "abfs_skip_signature": {
          "description": "Skip fetching credentials and skip signing requests. Used for interacting with public containers.",
          "type": "string",
          "enum": [
            "true",
            "false"
          ]
        },
        "abfs_disable_tagging": {
          "description": "Ignore any tags provided to put_opts",
          "type": "string",
          "enum": [
            "true",
            "false"
          ]
        },
        "client_timeout": {
          "description": "The timeout setting for Azure client.",
          "type": "string"
        },
        "abfs_versioning": {
          "description": "Enables Azure blob versioning support when set to 'enabled'. Defaults to 'disabled'.",
          "type": "string",
          "default": "disabled"
        },
        "file_format": {
          "type": "string"
        },
        "file_extension": {
          "type": "string"
        },
        "schema_infer_max_records": {
          "description": "Set a limit in terms of records to scan to infer the schema.",
          "type": "string"
        },
        "tsv_has_header": {
          "description": "Set true to indicate that the first line is a header.",
          "type": "string",
          "enum": [
            "true",
            "false"
          ]
        },
        "tsv_quote": {
          "description": "The quote character in a row.",
          "type": "string"
        },
        "tsv_escape": {
          "description": "The escape character in a row.",
          "type": "string"
        },
        "tsv_schema_infer_max_records": {
          "description": "**DEPRECATED**: use 'schema_infer_max_records' instead\n\nSet a limit in terms of records to scan to infer the schema.",
          "type": "string",
          "deprecated": true
        },
        "csv_has_header": {
          "description": "Set true to indicate that the first line is a header.",
          "type": "string",
          "enum": [
            "true",
            "false"
          ]
        },
        "csv_quote": {
          "description": "The quote character in a row.",
          "type": "string"
        },
        "csv_escape": {
          "description": "The escape character in a row.",
          "type": "string"
        },
        "csv_schema_infer_max_records": {
          "description": "**DEPRECATED**: use 'schema_infer_max_records' instead\n\nSet a limit in terms of records to scan to infer the schema.",
          "type": "string",
          "deprecated": true
        },
        "csv_delimiter": {
          "description": "The character separating values within a row.",
          "type": "string"
        },
        "file_compression_type": {
          "description": "The type of compression used on the file. Supported types are: GZIP, BZIP2, XZ, ZSTD, UNCOMPRESSED",
          "type": "string",
          "enum": [
            "GZIP",
            "BZIP2",
            "XZ",
            "ZSTD",
            "UNCOMPRESSED"
          ]
        },
        "hive_partitioning_enabled": {
          "description": "Enable partitioning using hive-style partitioning from the folder structure. Defaults to false.",
          "type": "string",
          "enum": [
            "true",
            "false"
          ]
        },
        "schema_source_path": {
          "description": "Specify a path to use for schema inference.",
          "type": "string"
        },
        "json_format": {
          "description": "json | jsonl | ndjson | ldjson | array | object | soda | socrata | auto. When 'file_format' is explicitly 'json', effective default is 'json' (no SODA auto-detection).",
          "type": "string",
          "default": "auto",
          "enum": [
            "json",
            "jsonl",
            "ndjson",
            "ldjson",
            "array",
            "object",
            "soda",
            "socrata",
            "auto"
          ]
        },
        "json_pointer": {
          "description": "An RFC 6901 JSON Pointer to extract data from within a JSON value. E.g. '/data' for {\"data\": [...]} or '/response/items' for nested objects. A leading '/' is added automatically if missing.",
          "type": "string"
        },
        "json_path": {
          "description": "Alias for 'json_pointer'. An RFC 6901 JSON Pointer to extract data from within a JSON value.",
          "type": "string"
        },
        "flatten_json": {
          "description": "Set true to flatten nested structs in JSON as separate columns.",
          "type": "string",
          "enum": [
            "true",
            "false"
          ]
        },
        "soda_metadata": {
          "description": "Set to 'enabled' to include Socrata internal metadata columns (sid, id, position, etc.) in the schema for SODA format responses. Defaults to disabled.",
          "type": "string",
          "default": "disabled",
          "enum": [
            "enabled",
            "disabled"
          ]
        },
        "refresh_skip": {
          "description": "Control skipping refreshes for single-file S3 datasets when cached ETag/Version metadata matches. Set to 'enabled' (default) or 'disabled'.",
          "type": "string",
          "default": "enabled",
          "enum": [
            "enabled",
            "disabled"
          ]
        }
      },
      "additionalProperties": true
    },
    "ArrowAcceleratorParams": {
      "title": "ArrowParams",
      "type": "object",
      "properties": {
        "file_watcher": {
          "type": "string"
        },
        "hash_index": {
          "description": "Enable hash index for fast primary key lookups. Set to 'enabled' to enable (requires primary_key). Default: disabled.",
          "type": "string"
        },
        "arrow_sort_columns": {
          "description": "Comma-separated list of columns to sort data by during inserts (e.g., 'timestamp,user_id').",
          "type": "string"
        }
      },
      "additionalProperties": true
    },
    "DuckdbAcceleratorParams": {
      "title": "DuckdbParams",
      "type": "object",
      "properties": {
        "file_watcher": {
          "type": "string"
        },
        "duckdb_file": {
          "type": "string"
        },
        "duckdb_data_dir": {
          "type": "string"
        },
        "duckdb_memory_limit": {
          "type": "string"
        },
        "duckdb_preserve_insertion_order": {
          "type": "string"
        },
        "duckdb_index_scan_percentage": {
          "type": "string"
        },
        "duckdb_index_scan_max_count": {
          "type": "string"
        },
        "partition_mode": {
          "type": "string"
        },
        "duckdb_partitioned_write_flush_threshold_rows": {
          "type": "string"
        },
        "connection_pool_size": {
          "description": "The maximum number of client connections created in the duckdb connection pool.",
          "type": "string"
        },
        "on_refresh_recompute_statistics": {
          "type": "string"
        },
        "on_refresh_sort_columns": {
          "type": "string"
        },
        "partitioned_write_buffer": {
          "type": "string"
        },
        "optimizer_duckdb_aggregate_pushdown": {
          "type": "string"
        }
      },
      "additionalProperties": true
    },
    "TursoAcceleratorParams": {
      "title": "TursoParams",
      "type": "object",
      "properties": {
        "turso_turso_file": {
          "description": "Path to the Turso database file. If not specified, defaults to {spice_data_dir}/{dataset_name}.turso",
          "type": "string"
        },
        "turso_internal_timestamp_format": {
          "description": "Internal timestamp storage format: 'rfc3339' (default, preserves precision/timezone) or 'integer_millis' (performance, millisecond precision only)",
          "type": "string",
          "default": "rfc3339",
          "enum": [
            "rfc3339",
            "integer_millis"
          ]
        }
      },
      "additionalProperties": true
    },
    "SqliteAcceleratorParams": {
      "title": "SqliteParams",
      "type": "object",
      "properties": {
        "sqlite_file": {
          "type": "string"
        },
        "busy_timeout": {
          "type": "string"
        },
        "file_watcher": {
          "type": "string"
        }
      },
      "additionalProperties": true
    },
    "PostgresAcceleratorParams": {
      "title": "PostgresParams",
      "type": "object",
      "properties": {
        "pg_host": {
          "type": "string"
        },
        "pg_port": {
          "type": "string"
        },
        "pg_db": {
          "type": "string"
        },
        "pg_user": {
          "type": "string",
          "x-secret": true
        },
        "pg_pass": {
          "type": "string",
          "x-secret": true
        },
        "pg_sslmode": {
          "type": "string"
        },
        "pg_sslrootcert": {
          "type": "string"
        },
        "pg_connection_pool_min": {
          "description": "The minimum number of connections to keep open in the pool, lazily created when requested.",
          "type": "string",
          "default": "5"
        },
        "file_watcher": {
          "type": "string"
        },
        "connection_pool_size": {
          "description": "The maximum number of connections created in the connection pool.",
          "type": "string",
          "default": "10"
        }
      },
      "additionalProperties": true
    },
    "CayenneAcceleratorParams": {
      "title": "CayenneParams",
      "type": "object",
      "properties": {
        "cayenne_s3_region": {
          "description": "AWS region for S3 Express One Zone storage. If not specified, derived from cayenne_s3_zone_ids.",
          "type": "string"
        },
        "cayenne_s3_endpoint": {
          "description": "Custom S3 endpoint URL for S3 Express One Zone.",
          "type": "string"
        },
        "cayenne_s3_key": {
          "description": "AWS access key ID for S3 authentication.",
          "type": "string",
          "x-secret": true
        },
        "cayenne_s3_secret": {
          "description": "AWS secret access key for S3 authentication.",
          "type": "string",
          "x-secret": true
        },
        "cayenne_s3_session_token": {
          "description": "AWS session token for temporary credentials (optional).",
          "type": "string",
          "x-secret": true
        },
        "cayenne_s3_auth": {
          "description": "Authentication method for S3 Express One Zone. Options: 'iam_role' (default, uses environment credentials), 'key' (uses explicit cayenne_s3_key/cayenne_s3_secret).",
          "type": "string",
          "default": "iam_role",
          "enum": [
            "iam_role",
            "key"
          ]
        },
        "cayenne_s3_client_timeout": {
          "description": "Timeout for S3 client operations (e.g., '30s', '5m'). Default: 120s.",
          "type": "string",
          "default": "120s"
        },
        "cayenne_s3_allow_http": {
          "description": "Allow HTTP (non-TLS) connections to S3. Default: false.",
          "type": "string",
          "default": "false"
        },
        "cayenne_s3_unsigned_payload": {
          "description": "Use unsigned payload for S3 Express One Zone requests. Only applies when S3 Express mode is enabled (via cayenne_s3_zone_ids or directory bucket path). Skips SHA-256 computation for request body, improving upload performance. S3 Express One Zone uses session-based auth, making payload signing unnecessary. Default: true.",
          "type": "string",
          "default": "true"
        },
        "cayenne_s3_zone_ids": {
          "description": "Comma-separated list of Availability Zone IDs for S3 Express One Zone storage (e.g., 'usw2-az1' or 'usw2-az1,usw2-az2'). When specified without 'cayenne_file_path', auto-generates bucket name from app and dataset name, and creates the bucket if needed. For multi-zone redundancy, specify multiple zones. Data is written to all zones with ACID guarantees - writes succeed only if all zones succeed. Reads are served from the primary (first) zone with fallback to replicas.",
          "type": "string"
        },
        "cayenne_file_path": {
          "description": "Path for storing Cayenne data files (Vortex files). Can be a local path or an S3 Express One Zone path. For S3 Express One Zone, use format: 's3://{bucket-name}--{zone-id}--x-s3/{prefix}/'. When S3 Express One Zone is specified, data files are stored exclusively in S3 while metadata (SQLite) remains on local disk.",
          "type": "string"
        },
        "cayenne_metadata_dir": {
          "description": "Path for storing Cayenne metadata (SQLite catalog). If not specified, defaults to '{cayenne_file_path}/metadata'.",
          "type": "string"
        },
        "cayenne_metastore": {
          "description": "Metastore backend for Cayenne catalog. Options: 'sqlite' (default), 'turso' (requires 'turso' feature enabled at build time)",
          "type": "string",
          "default": "sqlite",
          "enum": [
            "sqlite",
            "turso"
          ]
        },
        "file_watcher": {
          "type": "string"
        },
        "cayenne_unsupported_type_action": {
          "description": "How to handle data types not natively supported by Cayenne (internally using Vortex format) (Time32, Time64, Duration, Interval, etc.). Options: 'string' (convert schema to Utf8, default - requires data source to provide string data), 'error' (fail on unsupported types), 'warn' (include in schema, may fail on insert), 'ignore' (skip unsupported fields)",
          "type": "string",
          "default": "string",
          "enum": [
            "string",
            "error",
            "ignore",
            "warn"
          ]
        },
        "cayenne_footer_cache_mb": {
          "description": "Size of the in-memory Vortex footer cache in MB. Larger values improve query performance for repeated scans. Default: 128 MB",
          "type": "string",
          "default": "128"
        },
        "cayenne_segment_cache_mb": {
          "description": "Size of the in-memory Vortex segment cache in MB. Set > 0 to cache decompressed data segments. Default: 256 MB",
          "type": "string",
          "default": "256"
        },
        "cayenne_target_file_size_mb": {
          "description": "Target size for Vortex data files in MB. Default: 256 MB. Adjust as needed for S3 Express or remote upload scenarios.",
          "type": "string",
          "default": "256"
        },
        "cayenne_sort_columns": {
          "description": "Comma-separated list of columns to sort data by during inserts (e.g., 'timestamp,user_id').",
          "type": "string"
        },
        "cayenne_compression_strategy": {
          "description": "Compression strategy to use for Vortex files. Options: 'btrblocks' (default), 'zstd'",
          "type": "string",
          "default": "btrblocks",
          "enum": [
            "btrblocks",
            "zstd"
          ]
        },
        "cayenne_upload_concurrency": {
          "description": "Maximum number of concurrent file uploads when writing multiple Vortex files. Default: 4.",
          "type": "string",
          "default": "4"
        }
      },
      "additionalProperties": true
    },
    "IcebergCatalogParams": {
      "title": "IcebergParams",
      "type": "object",
      "properties": {
        "iceberg_token": {
          "description": "Bearer token value to use for Authorization header.",
          "type": "string",
          "x-secret": true
        },
        "iceberg_oauth2_credential": {
          "description": "Credential to use for OAuth2 client credential flow when initializing the catalog. Separated by a colon as <client_id>:<client_secret>.",
          "type": "string",
          "x-secret": true
        },
        "iceberg_oauth2_token_url": {
          "description": "The URL to use for OAuth2 token endpoint.",
          "type": "string"
        },
        "iceberg_oauth2_scope": {
          "description": "The scope to use for OAuth2 token endpoint (default: catalog).",
          "type": "string",
          "default": "catalog"
        },
        "iceberg_oauth2_server_url": {
          "description": "URL of the OAuth2 server tokens endpoint.",
          "type": "string"
        },
        "iceberg_sigv4_enabled": {
          "description": "Enable SigV4 authentication for the catalog (for connecting to AWS Glue).",
          "type": "string"
        },
        "iceberg_signing_region": {
          "description": "The region to use when signing the request for SigV4. Defaults to the region in the catalog URL if available.",
          "type": "string"
        },
        "iceberg_signing_name": {
          "description": "The name to use when signing the request for SigV4.",
          "type": "string",
          "default": "glue"
        },
        "iceberg_warehouse": {
          "description": "Name of the Iceberg warehouse.",
          "type": "string"
        },
        "iceberg_s3_endpoint": {
          "description": "Configure an alternative endpoint for the S3 service. This can be any s3-compatible object storage service. i.e. Minio, Cloudflare R2, etc.",
          "type": "string",
          "x-secret": true
        },
        "iceberg_s3_access_key_id": {
          "description": "The AWS access key ID to use for S3 storage.",
          "type": "string",
          "x-secret": true
        },
        "iceberg_s3_secret_access_key": {
          "description": "The AWS secret access key to use for S3 storage.",
          "type": "string",
          "x-secret": true
        },
        "iceberg_s3_session_token": {
          "description": "Configure the static session token used for S3 storage.",
          "type": "string",
          "x-secret": true
        },
        "iceberg_s3_region": {
          "description": "The AWS S3 region to use.",
          "type": "string",
          "x-secret": true
        },
        "iceberg_s3_role_session_name": {
          "description": "An optional identifier for the assumed role session for auditing purposes.",
          "type": "string",
          "x-secret": true
        },
        "iceberg_s3_role_arn": {
          "description": "The Amazon Resource Name (ARN) of the role to assume. If provided instead of s3_access_key_id and s3_secret_access_key, temporary credentials will be fetched by assuming this role",
          "type": "string",
          "x-secret": true
        },
        "iceberg_s3_connect_timeout": {
          "description": "Configure socket connection timeout, in seconds (default: 60).",
          "type": "string"
        },
        "iceberg_gcs_project_id": {
          "description": "The Google Cloud project ID for GCS storage.",
          "type": "string"
        },
        "iceberg_gcs_credentials": {
          "description": "Base64-encoded Google Cloud service account credentials JSON for GCS storage.",
          "type": "string",
          "x-secret": true
        },
        "iceberg_gcs_token": {
          "description": "OAuth2 token to use for GCS authentication.",
          "type": "string",
          "x-secret": true
        },
        "iceberg_gcs_service_path": {
          "description": "Custom endpoint URL for GCS (for emulators or custom endpoints).",
          "type": "string"
        },
        "iceberg_gcs_no_auth": {
          "description": "Set to 'true' to allow anonymous access to GCS (for public buckets).",
          "type": "string"
        }
      },
      "additionalProperties": true
    },
    "SpiceAiCatalogParams": {
      "title": "SpiceAiParams",
      "type": "object",
      "properties": {
        "spiceai_api_key": {
          "type": "string",
          "x-secret": true
        },
        "spiceai_token": {
          "type": "string",
          "x-secret": true
        },
        "spiceai_endpoint": {
          "type": "string"
        },
        "spiceai_flight_endpoint": {
          "type": "string"
        },
        "spiceai_http_endpoint": {
          "type": "string"
        }
      },
      "additionalProperties": true
    },
    "UnityCatalogCatalogParams": {
      "title": "UnityCatalogParams",
      "type": "object",
      "properties": {
        "unity_catalog_token": {
          "description": "The personal access token used to authenticate against the Unity Catalog API.",
          "type": "string",
          "x-secret": true
        },
        "unity_catalog_aws_region": {
          "description": "The AWS region to use for S3 storage.",
          "type": "string",
          "x-secret": true
        },
        "unity_catalog_aws_access_key_id": {
          "description": "The AWS access key ID to use for S3 storage.",
          "type": "string",
          "x-secret": true
        },
        "unity_catalog_aws_secret_access_key": {
          "description": "The AWS secret access key to use for S3 storage.",
          "type": "string",
          "x-secret": true
        },
        "unity_catalog_aws_endpoint": {
          "description": "The AWS endpoint to use for S3 storage.",
          "type": "string",
          "x-secret": true
        },
        "unity_catalog_azure_storage_account_name": {
          "description": "The storage account to use for Azure storage.",
          "type": "string",
          "x-secret": true
        },
        "unity_catalog_azure_storage_account_key": {
          "description": "The storage account key to use for Azure storage.",
          "type": "string",
          "x-secret": true
        },
        "unity_catalog_azure_storage_client_id": {
          "description": "The service principal client id for accessing the storage account.",
          "type": "string",
          "x-secret": true
        },
        "unity_catalog_azure_storage_client_secret": {
          "description": "The service principal client secret for accessing the storage account.",
          "type": "string",
          "x-secret": true
        },
        "unity_catalog_azure_storage_sas_key": {
          "description": "The shared access signature key for accessing the storage account.",
          "type": "string",
          "x-secret": true
        },
        "unity_catalog_azure_storage_endpoint": {
          "description": "The endpoint for the Azure Blob storage account.",
          "type": "string",
          "x-secret": true
        },
        "unity_catalog_google_service_account": {
          "description": "Filesystem path to the Google service account JSON key file.",
          "type": "string",
          "x-secret": true
        }
      },
      "additionalProperties": true
    },
    "DatabricksCatalogParams": {
      "title": "DatabricksParams",
      "type": "object",
      "properties": {
        "databricks_endpoint": {
          "description": "The endpoint of the Databricks instance.",
          "type": "string",
          "x-secret": true
        },
        "databricks_token": {
          "description": "The personal access token used to authenticate against the DataBricks API.",
          "type": "string",
          "x-secret": true
        },
        "mode": {
          "description": "The execution mode for querying against Databricks.",
          "type": "string",
          "default": "spark_connect"
        },
        "client_timeout": {
          "description": "The timeout setting for object store client.",
          "type": "string"
        },
        "databricks_cluster_id": {
          "description": "The ID of the compute cluster in Databricks to use for the query. Only valid when mode is spark_connect.",
          "type": "string"
        },
        "databricks_use_ssl": {
          "description": "Use a TLS connection to connect to the Databricks Spark Connect endpoint.",
          "type": "string",
          "default": "true"
        },
        "databricks_sql_warehouse_id": {
          "description": "The SQL Warehouse ID to use when 'mode' is set to 'sql_warehouse'",
          "type": "string",
          "x-secret": true
        },
        "databricks_client_id": {
          "description": "The client ID of the Databricks service principal.",
          "type": "string"
        },
        "databricks_client_secret": {
          "description": "The client secret of the Databricks service principal.",
          "type": "string",
          "x-secret": true
        },
        "databricks_aws_region": {
          "description": "The AWS region to use for S3 storage.",
          "type": "string",
          "x-secret": true
        },
        "databricks_aws_access_key_id": {
          "description": "The AWS access key ID to use for S3 storage.",
          "type": "string",
          "x-secret": true
        },
        "databricks_aws_secret_access_key": {
          "description": "The AWS secret access key to use for S3 storage.",
          "type": "string",
          "x-secret": true
        },
        "databricks_aws_endpoint": {
          "description": "The AWS endpoint to use for S3 storage.",
          "type": "string",
          "x-secret": true
        },
        "databricks_azure_storage_account_name": {
          "description": "The storage account to use for Azure storage.",
          "type": "string",
          "x-secret": true
        },
        "databricks_azure_storage_account_key": {
          "description": "The storage account key to use for Azure storage.",
          "type": "string",
          "x-secret": true
        },
        "databricks_azure_storage_client_id": {
          "description": "The service principal client id for accessing the storage account.",
          "type": "string",
          "x-secret": true
        },
        "databricks_azure_storage_client_secret": {
          "description": "The service principal client secret for accessing the storage account.",
          "type": "string",
          "x-secret": true
        },
        "databricks_azure_storage_sas_key": {
          "description": "The shared access signature key for accessing the storage account.",
          "type": "string",
          "x-secret": true
        },
        "databricks_azure_storage_endpoint": {
          "description": "The endpoint for the Azure Blob storage account.",
          "type": "string",
          "x-secret": true
        },
        "databricks_google_service_account": {
          "description": "Filesystem path to the Google service account JSON key file.",
          "type": "string",
          "x-secret": true
        }
      },
      "required": [
        "databricks_endpoint"
      ],
      "additionalProperties": true
    },
    "OpenaiModelParams": {
      "title": "OpenaiParams",
      "type": "object",
      "properties": {
        "endpoint": {
          "description": "The OpenAI API base endpoint. Can be overridden to use a compatible provider (i.e. Nvidia NIM).",
          "type": "string",
          "default": "https://api.openai.com/v1"
        },
        "openai_api_key": {
          "description": "The OpenAI API key.",
          "type": "string",
          "x-secret": true
        },
        "openai_org_id": {
          "description": "The OpenAI organization ID.",
          "type": "string"
        },
        "openai_project_id": {
          "description": "The OpenAI project ID.",
          "type": "string"
        },
        "openai_usage_tier": {
          "description": "The current usage tier for the OpenAI account associated with the API key: 'free', 'tier1', 'tier2', 'tier3', 'tier4', or 'tier5'.",
          "type": "string",
          "default": "tier1",
          "enum": [
            "free",
            "tier1",
            "tier2",
            "tier3",
            "tier4",
            "tier5"
          ]
        },
        "responses_api": {
          "description": "Whether to enable use of this model via the Responses API. `disabled` by default.",
          "type": "string",
          "default": "disabled"
        },
        "openai_responses_tools": {
          "description": "The OpenAI Responses tools to use when calling the model from the Responses API",
          "type": "string",
          "default": ""
        },
        "tools": {
          "description": "Which tools should be made available to the model. Set to 'auto' to use all available tools.",
          "type": "string"
        },
        "system_prompt": {
          "description": "An additional system prompt used for all chat completions to this model.",
          "type": "string"
        },
        "parameterized_prompt": {
          "type": "string"
        },
        "frequency_penalty": {
          "type": "string"
        },
        "logit_bias": {
          "type": "string"
        },
        "logprobs": {
          "type": "string"
        },
        "top_logprobs": {
          "type": "string"
        },
        "max_completion_tokens": {
          "type": "string"
        },
        "reasoning_effort": {
          "type": "string"
        },
        "store": {
          "type": "string"
        },
        "metadata": {
          "type": "string"
        },
        "n": {
          "type": "string"
        },
        "presence_penalty": {
          "type": "string"
        },
        "response_format": {
          "type": "string"
        },
        "seed": {
          "type": "string"
        },
        "stop": {
          "type": "string"
        },
        "stream": {
          "type": "string"
        },
        "stream_options": {
          "type": "string"
        },
        "temperature": {
          "type": "string"
        },
        "top_p": {
          "type": "string"
        },
        "tool_choice": {
          "type": "string"
        },
        "parallel_tool_calls": {
          "type": "string"
        },
        "user": {
          "type": "string"
        },
        "openai_frequency_penalty": {
          "description": "**DEPRECATED**: Use 'frequency_penalty' without prefix",
          "type": "string",
          "deprecated": true
        },
        "openai_logit_bias": {
          "description": "**DEPRECATED**: Use 'logit_bias' without prefix",
          "type": "string",
          "deprecated": true
        },
        "openai_logprobs": {
          "description": "**DEPRECATED**: Use 'logprobs' without prefix",
          "type": "string",
          "deprecated": true
        },
        "openai_top_logprobs": {
          "description": "**DEPRECATED**: Use 'top_logprobs' without prefix",
          "type": "string",
          "deprecated": true
        },
        "openai_max_completion_tokens": {
          "description": "**DEPRECATED**: Use 'max_completion_tokens' without prefix",
          "type": "string",
          "deprecated": true
        },
        "openai_reasoning_effort": {
          "description": "**DEPRECATED**: Use 'reasoning_effort' without prefix",
          "type": "string",
          "deprecated": true
        },
        "openai_store": {
          "description": "**DEPRECATED**: Use 'store' without prefix",
          "type": "string",
          "deprecated": true
        },
        "openai_metadata": {
          "description": "**DEPRECATED**: Use 'metadata' without prefix",
          "type": "string",
          "deprecated": true
        },
        "openai_n": {
          "description": "**DEPRECATED**: Use 'n' without prefix",
          "type": "string",
          "deprecated": true
        },
        "openai_presence_penalty": {
          "description": "**DEPRECATED**: Use 'presence_penalty' without prefix",
          "type": "string",
          "deprecated": true
        },
        "openai_response_format": {
          "description": "**DEPRECATED**: Use 'response_format' without prefix",
          "type": "string",
          "deprecated": true
        },
        "openai_seed": {
          "description": "**DEPRECATED**: Use 'seed' without prefix",
          "type": "string",
          "deprecated": true
        },
        "openai_stop": {
          "description": "**DEPRECATED**: Use 'stop' without prefix",
          "type": "string",
          "deprecated": true
        },
        "openai_stream": {
          "description": "**DEPRECATED**: Use 'stream' without prefix",
          "type": "string",
          "deprecated": true
        },
        "openai_stream_options": {
          "description": "**DEPRECATED**: Use 'stream_options' without prefix",
          "type": "string",
          "deprecated": true
        },
        "openai_temperature": {
          "description": "**DEPRECATED**: Use 'temperature' without prefix",
          "type": "string",
          "deprecated": true
        },
        "openai_top_p": {
          "description": "**DEPRECATED**: Use 'top_p' without prefix",
          "type": "string",
          "deprecated": true
        },
        "openai_tools": {
          "description": "**DEPRECATED**: Use 'tools' without prefix",
          "type": "string",
          "deprecated": true
        },
        "openai_tool_choice": {
          "description": "**DEPRECATED**: Use 'tool_choice' without prefix",
          "type": "string",
          "deprecated": true
        },
        "openai_parallel_tool_calls": {
          "description": "**DEPRECATED**: Use 'parallel_tool_calls' without prefix",
          "type": "string",
          "deprecated": true
        },
        "openai_user": {
          "description": "**DEPRECATED**: Use 'user' without prefix",
          "type": "string",
          "deprecated": true
        }
      },
      "additionalProperties": true
    },
    "AzureModelParams": {
      "title": "AzureParams",
      "type": "object",
      "properties": {
        "endpoint": {
          "description": "The Azure OpenAI resource endpoint, e.g., <https://resource-name.openai.azure.com>.",
          "type": "string"
        },
        "azure_api_version": {
          "description": "The API version used for the Azure OpenAI service.",
          "type": "string"
        },
        "azure_deployment_name": {
          "description": "The name of the model deployment.",
          "type": "string"
        },
        "azure_api_key": {
          "description": "The Azure OpenAI API key from the models deployment page.",
          "type": "string"
        },
        "azure_entra_token": {
          "description": "The Azure Entra token for authentication.",
          "type": "string"
        },
        "azure_openai_responses_tools": {
          "description": "Comma-separated list of OpenAI-hosted tools exposed via the Responses API for this model.",
          "type": "string",
          "default": ""
        },
        "responses_api": {
          "description": "Whether to enable use of this model via the Responses API. `disabled` by default.",
          "type": "string",
          "default": "disabled"
        },
        "tools": {
          "description": "Which tools should be made available to the model. Set to 'auto' to use all available tools.",
          "type": "string"
        },
        "system_prompt": {
          "description": "An additional system prompt used for all chat completions to this model.",
          "type": "string"
        },
        "parameterized_prompt": {
          "type": "string"
        },
        "azure_frequency_penalty": {
          "type": "string"
        },
        "azure_logit_bias": {
          "type": "string"
        },
        "azure_logprobs": {
          "type": "string"
        },
        "azure_top_logprobs": {
          "type": "string"
        },
        "azure_max_completion_tokens": {
          "type": "string"
        },
        "azure_reasoning_effort": {
          "type": "string"
        },
        "azure_store": {
          "type": "string"
        },
        "azure_metadata": {
          "type": "string"
        },
        "azure_n": {
          "type": "string"
        },
        "azure_presence_penalty": {
          "type": "string"
        },
        "azure_response_format": {
          "type": "string"
        },
        "azure_seed": {
          "type": "string"
        },
        "azure_stop": {
          "type": "string"
        },
        "azure_stream": {
          "type": "string"
        },
        "azure_stream_options": {
          "type": "string"
        },
        "azure_temperature": {
          "type": "string"
        },
        "azure_top_p": {
          "type": "string"
        },
        "azure_tools": {
          "type": "string"
        },
        "azure_tool_choice": {
          "type": "string"
        },
        "azure_parallel_tool_calls": {
          "type": "string"
        },
        "azure_user": {
          "type": "string"
        },
        "openai_frequency_penalty": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_logit_bias": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_logprobs": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_top_logprobs": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_max_completion_tokens": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_reasoning_effort": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_store": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_metadata": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_n": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_presence_penalty": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_response_format": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_seed": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_stop": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_stream": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_stream_options": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_temperature": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_top_p": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_tools": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_tool_choice": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_parallel_tool_calls": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_user": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        }
      },
      "additionalProperties": true
    },
    "FileModelParams": {
      "title": "FileParams",
      "type": "object",
      "properties": {
        "chat_template": {
          "description": "Customizes the transformation of OpenAI chat messages into a character stream for the model.",
          "type": "string"
        },
        "tools": {
          "description": "Which tools should be made available to the model. Set to 'auto' to use all available tools.",
          "type": "string"
        },
        "system_prompt": {
          "description": "An additional system prompt used for all chat completions to this model.",
          "type": "string"
        },
        "parameterized_prompt": {
          "type": "string"
        },
        "file_frequency_penalty": {
          "type": "string"
        },
        "file_logit_bias": {
          "type": "string"
        },
        "file_logprobs": {
          "type": "string"
        },
        "file_top_logprobs": {
          "type": "string"
        },
        "file_max_completion_tokens": {
          "type": "string"
        },
        "file_reasoning_effort": {
          "type": "string"
        },
        "file_store": {
          "type": "string"
        },
        "file_metadata": {
          "type": "string"
        },
        "file_n": {
          "type": "string"
        },
        "file_presence_penalty": {
          "type": "string"
        },
        "file_response_format": {
          "type": "string"
        },
        "file_seed": {
          "type": "string"
        },
        "file_stop": {
          "type": "string"
        },
        "file_stream": {
          "type": "string"
        },
        "file_stream_options": {
          "type": "string"
        },
        "file_temperature": {
          "type": "string"
        },
        "file_top_p": {
          "type": "string"
        },
        "file_tools": {
          "type": "string"
        },
        "file_tool_choice": {
          "type": "string"
        },
        "file_parallel_tool_calls": {
          "type": "string"
        },
        "file_user": {
          "type": "string"
        },
        "openai_frequency_penalty": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_logit_bias": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_logprobs": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_top_logprobs": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_max_completion_tokens": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_reasoning_effort": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_store": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_metadata": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_n": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_presence_penalty": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_response_format": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_seed": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_stop": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_stream": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_stream_options": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_temperature": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_top_p": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_tools": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_tool_choice": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_parallel_tool_calls": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_user": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        }
      },
      "additionalProperties": true
    },
    "DatabricksModelParams": {
      "title": "DatabricksParams",
      "type": "object",
      "properties": {
        "databricks_endpoint": {
          "description": "The Databricks workspace endpoint, e.g., dbc-a12cd3e4-56f7.cloud.databricks.com.",
          "type": "string"
        },
        "databricks_token": {
          "description": "The Databricks API token to authenticate with the Databricks Models API.",
          "type": "string"
        },
        "databricks_client_id": {
          "description": "The Databricks Service Principal Client ID. Can't be used with databricks_token.",
          "type": "string"
        },
        "databricks_client_secret": {
          "description": "The Databricks Service Principal Client Secret. Can't be used with databricks_token.",
          "type": "string"
        },
        "tools": {
          "description": "Which tools should be made available to the model. Set to 'auto' to use all available tools.",
          "type": "string"
        },
        "system_prompt": {
          "description": "An additional system prompt used for all chat completions to this model.",
          "type": "string"
        },
        "parameterized_prompt": {
          "type": "string"
        },
        "databricks_frequency_penalty": {
          "type": "string"
        },
        "databricks_logit_bias": {
          "type": "string"
        },
        "databricks_logprobs": {
          "type": "string"
        },
        "databricks_top_logprobs": {
          "type": "string"
        },
        "databricks_max_completion_tokens": {
          "type": "string"
        },
        "databricks_reasoning_effort": {
          "type": "string"
        },
        "databricks_store": {
          "type": "string"
        },
        "databricks_metadata": {
          "type": "string"
        },
        "databricks_n": {
          "type": "string"
        },
        "databricks_presence_penalty": {
          "type": "string"
        },
        "databricks_response_format": {
          "type": "string"
        },
        "databricks_seed": {
          "type": "string"
        },
        "databricks_stop": {
          "type": "string"
        },
        "databricks_stream": {
          "type": "string"
        },
        "databricks_stream_options": {
          "type": "string"
        },
        "databricks_temperature": {
          "type": "string"
        },
        "databricks_top_p": {
          "type": "string"
        },
        "databricks_tools": {
          "type": "string"
        },
        "databricks_tool_choice": {
          "type": "string"
        },
        "databricks_parallel_tool_calls": {
          "type": "string"
        },
        "databricks_user": {
          "type": "string"
        },
        "openai_frequency_penalty": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_logit_bias": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_logprobs": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_top_logprobs": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_max_completion_tokens": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_reasoning_effort": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_store": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_metadata": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_n": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_presence_penalty": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_response_format": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_seed": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_stop": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_stream": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_stream_options": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_temperature": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_top_p": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_tools": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_tool_choice": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_parallel_tool_calls": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_user": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        }
      },
      "additionalProperties": true
    },
    "HuggingfaceModelParams": {
      "title": "HuggingfaceParams",
      "type": "object",
      "properties": {
        "model_type": {
          "description": "The architecture to load the model as. Supported values: mistral, gemma, mixtral, llama, phi2, phi3, qwen2, gemma2, starcoder2, phi3.5moe, deepseekv2, deepseekv3",
          "type": "string"
        },
        "chat_template": {
          "description": "Customizes the transformation of OpenAI chat messages into a character stream for the model.",
          "type": "string"
        },
        "huggingface_token": {
          "description": "The Huggingface access token.",
          "type": "string"
        },
        "tools": {
          "description": "Which tools should be made available to the model. Set to 'auto' to use all available tools.",
          "type": "string"
        },
        "system_prompt": {
          "description": "An additional system prompt used for all chat completions to this model.",
          "type": "string"
        },
        "parameterized_prompt": {
          "type": "string"
        },
        "huggingface_frequency_penalty": {
          "type": "string"
        },
        "huggingface_logit_bias": {
          "type": "string"
        },
        "huggingface_logprobs": {
          "type": "string"
        },
        "huggingface_top_logprobs": {
          "type": "string"
        },
        "huggingface_max_completion_tokens": {
          "type": "string"
        },
        "huggingface_reasoning_effort": {
          "type": "string"
        },
        "huggingface_store": {
          "type": "string"
        },
        "huggingface_metadata": {
          "type": "string"
        },
        "huggingface_n": {
          "type": "string"
        },
        "huggingface_presence_penalty": {
          "type": "string"
        },
        "huggingface_response_format": {
          "type": "string"
        },
        "huggingface_seed": {
          "type": "string"
        },
        "huggingface_stop": {
          "type": "string"
        },
        "huggingface_stream": {
          "type": "string"
        },
        "huggingface_stream_options": {
          "type": "string"
        },
        "huggingface_temperature": {
          "type": "string"
        },
        "huggingface_top_p": {
          "type": "string"
        },
        "huggingface_tools": {
          "type": "string"
        },
        "huggingface_tool_choice": {
          "type": "string"
        },
        "huggingface_parallel_tool_calls": {
          "type": "string"
        },
        "huggingface_user": {
          "type": "string"
        },
        "openai_frequency_penalty": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_logit_bias": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_logprobs": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_top_logprobs": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_max_completion_tokens": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_reasoning_effort": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_store": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_metadata": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_n": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_presence_penalty": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_response_format": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_seed": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_stop": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_stream": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_stream_options": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_temperature": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_top_p": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_tools": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_tool_choice": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_parallel_tool_calls": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_user": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        }
      },
      "additionalProperties": true
    },
    "AnthropicModelParams": {
      "title": "AnthropicParams",
      "type": "object",
      "properties": {
        "endpoint": {
          "description": "The Anthropic API base endpoint.",
          "type": "string"
        },
        "anthropic_api_key": {
          "description": "The Anthropic API key.",
          "type": "string"
        },
        "anthropic_auth_token": {
          "description": "The Anthropic Auth Token.",
          "type": "string"
        },
        "tools": {
          "description": "Which tools should be made available to the model. Set to 'auto' to use all available tools.",
          "type": "string"
        },
        "system_prompt": {
          "description": "An additional system prompt used for all chat completions to this model.",
          "type": "string"
        },
        "parameterized_prompt": {
          "type": "string"
        },
        "anthropic_frequency_penalty": {
          "type": "string"
        },
        "anthropic_logit_bias": {
          "type": "string"
        },
        "anthropic_logprobs": {
          "type": "string"
        },
        "anthropic_top_logprobs": {
          "type": "string"
        },
        "anthropic_max_completion_tokens": {
          "type": "string"
        },
        "anthropic_reasoning_effort": {
          "type": "string"
        },
        "anthropic_store": {
          "type": "string"
        },
        "anthropic_metadata": {
          "type": "string"
        },
        "anthropic_n": {
          "type": "string"
        },
        "anthropic_presence_penalty": {
          "type": "string"
        },
        "anthropic_response_format": {
          "type": "string"
        },
        "anthropic_seed": {
          "type": "string"
        },
        "anthropic_stop": {
          "type": "string"
        },
        "anthropic_stream": {
          "type": "string"
        },
        "anthropic_stream_options": {
          "type": "string"
        },
        "anthropic_temperature": {
          "type": "string"
        },
        "anthropic_top_p": {
          "type": "string"
        },
        "anthropic_tools": {
          "type": "string"
        },
        "anthropic_tool_choice": {
          "type": "string"
        },
        "anthropic_parallel_tool_calls": {
          "type": "string"
        },
        "anthropic_user": {
          "type": "string"
        },
        "openai_frequency_penalty": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_logit_bias": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_logprobs": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_top_logprobs": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_max_completion_tokens": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_reasoning_effort": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_store": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_metadata": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_n": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_presence_penalty": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_response_format": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_seed": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_stop": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_stream": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_stream_options": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_temperature": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_top_p": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_tools": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_tool_choice": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_parallel_tool_calls": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_user": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        }
      },
      "additionalProperties": true
    },
    "PerplexityModelParams": {
      "title": "PerplexityParams",
      "type": "object",
      "properties": {
        "perplexity_auth_token": {
          "description": "The Anthropic API key.",
          "type": "string"
        },
        "perplexity_return_images": {
          "type": "string"
        },
        "perplexity_return_related_questions": {
          "type": "string"
        },
        "perplexity_search_domain_filter": {
          "type": "string"
        },
        "perplexity_search_recency_filter": {
          "type": "string"
        },
        "tools": {
          "description": "Which tools should be made available to the model. Set to 'auto' to use all available tools.",
          "type": "string"
        },
        "system_prompt": {
          "description": "An additional system prompt used for all chat completions to this model.",
          "type": "string"
        },
        "parameterized_prompt": {
          "type": "string"
        },
        "perplexity_frequency_penalty": {
          "type": "string"
        },
        "perplexity_logit_bias": {
          "type": "string"
        },
        "perplexity_logprobs": {
          "type": "string"
        },
        "perplexity_top_logprobs": {
          "type": "string"
        },
        "perplexity_max_completion_tokens": {
          "type": "string"
        },
        "perplexity_reasoning_effort": {
          "type": "string"
        },
        "perplexity_store": {
          "type": "string"
        },
        "perplexity_metadata": {
          "type": "string"
        },
        "perplexity_n": {
          "type": "string"
        },
        "perplexity_presence_penalty": {
          "type": "string"
        },
        "perplexity_response_format": {
          "type": "string"
        },
        "perplexity_seed": {
          "type": "string"
        },
        "perplexity_stop": {
          "type": "string"
        },
        "perplexity_stream": {
          "type": "string"
        },
        "perplexity_stream_options": {
          "type": "string"
        },
        "perplexity_temperature": {
          "type": "string"
        },
        "perplexity_top_p": {
          "type": "string"
        },
        "perplexity_tools": {
          "type": "string"
        },
        "perplexity_tool_choice": {
          "type": "string"
        },
        "perplexity_parallel_tool_calls": {
          "type": "string"
        },
        "perplexity_user": {
          "type": "string"
        },
        "openai_frequency_penalty": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_logit_bias": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_logprobs": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_top_logprobs": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_max_completion_tokens": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_reasoning_effort": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_store": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_metadata": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_n": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_presence_penalty": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_response_format": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_seed": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_stop": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_stream": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_stream_options": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_temperature": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_top_p": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_tools": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_tool_choice": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_parallel_tool_calls": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_user": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        }
      },
      "additionalProperties": true
    },
    "XaiModelParams": {
      "title": "XaiParams",
      "type": "object",
      "properties": {
        "xai_api_key": {
          "description": "The xAI API key.",
          "type": "string"
        },
        "tools": {
          "description": "Which tools should be made available to the model. Set to 'auto' to use all available tools.",
          "type": "string"
        },
        "system_prompt": {
          "description": "An additional system prompt used for all chat completions to this model.",
          "type": "string"
        },
        "parameterized_prompt": {
          "type": "string"
        },
        "xai_frequency_penalty": {
          "type": "string"
        },
        "xai_logit_bias": {
          "type": "string"
        },
        "xai_logprobs": {
          "type": "string"
        },
        "xai_top_logprobs": {
          "type": "string"
        },
        "xai_max_completion_tokens": {
          "type": "string"
        },
        "xai_reasoning_effort": {
          "type": "string"
        },
        "xai_store": {
          "type": "string"
        },
        "xai_metadata": {
          "type": "string"
        },
        "xai_n": {
          "type": "string"
        },
        "xai_presence_penalty": {
          "type": "string"
        },
        "xai_response_format": {
          "type": "string"
        },
        "xai_seed": {
          "type": "string"
        },
        "xai_stop": {
          "type": "string"
        },
        "xai_stream": {
          "type": "string"
        },
        "xai_stream_options": {
          "type": "string"
        },
        "xai_temperature": {
          "type": "string"
        },
        "xai_top_p": {
          "type": "string"
        },
        "xai_tools": {
          "type": "string"
        },
        "xai_tool_choice": {
          "type": "string"
        },
        "xai_parallel_tool_calls": {
          "type": "string"
        },
        "xai_user": {
          "type": "string"
        },
        "openai_frequency_penalty": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_logit_bias": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_logprobs": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_top_logprobs": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_max_completion_tokens": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_reasoning_effort": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_store": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_metadata": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_n": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_presence_penalty": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_response_format": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_seed": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_stop": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_stream": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_stream_options": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_temperature": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_top_p": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_tools": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_tool_choice": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_parallel_tool_calls": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_user": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        }
      },
      "additionalProperties": true
    },
    "BedrockModelParams": {
      "title": "BedrockParams",
      "type": "object",
      "properties": {
        "aws_access_key_id": {
          "description": "The AWS access key ID to use for Bedrock models",
          "type": "string",
          "x-secret": true
        },
        "aws_secret_access_key": {
          "description": "The AWS secret access key to use for Bedrock models",
          "type": "string",
          "x-secret": true
        },
        "aws_session_token": {
          "description": "The AWS session token to use for Bedrock models.",
          "type": "string",
          "x-secret": true
        },
        "aws_region": {
          "description": "The AWS region to use for Bedrock models.",
          "type": "string"
        },
        "bedrock_guardrail_identifier": {
          "description": "Identifier for the guardrail. Pattern: `(([a-z0-9]+) | (arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:guardrail/[a-z0-9]+))`. Length: 0-2048.",
          "type": "string"
        },
        "bedrock_guardrail_version": {
          "description": "Guardrail version. Pattern: `(([1-9][0-9]{0,7})|(DRAFT))`",
          "type": "string"
        },
        "bedrock_trace": {
          "description": "Trace behavior for the guardrail. Valid values: `enabled`, `disabled`, `enabled_full`",
          "type": "string",
          "enum": [
            "enabled",
            "disabled",
            "enabled_full"
          ]
        },
        "tools": {
          "description": "Which tools should be made available to the model. Set to 'auto' to use all available tools.",
          "type": "string"
        },
        "system_prompt": {
          "description": "An additional system prompt used for all chat completions to this model.",
          "type": "string"
        },
        "parameterized_prompt": {
          "type": "string"
        },
        "bedrock_frequency_penalty": {
          "type": "string"
        },
        "bedrock_logit_bias": {
          "type": "string"
        },
        "bedrock_logprobs": {
          "type": "string"
        },
        "bedrock_top_logprobs": {
          "type": "string"
        },
        "bedrock_max_completion_tokens": {
          "type": "string"
        },
        "bedrock_reasoning_effort": {
          "type": "string"
        },
        "bedrock_store": {
          "type": "string"
        },
        "bedrock_metadata": {
          "type": "string"
        },
        "bedrock_n": {
          "type": "string"
        },
        "bedrock_presence_penalty": {
          "type": "string"
        },
        "bedrock_response_format": {
          "type": "string"
        },
        "bedrock_seed": {
          "type": "string"
        },
        "bedrock_stop": {
          "type": "string"
        },
        "bedrock_stream": {
          "type": "string"
        },
        "bedrock_stream_options": {
          "type": "string"
        },
        "bedrock_temperature": {
          "type": "string"
        },
        "bedrock_top_p": {
          "type": "string"
        },
        "bedrock_tools": {
          "type": "string"
        },
        "bedrock_tool_choice": {
          "type": "string"
        },
        "bedrock_parallel_tool_calls": {
          "type": "string"
        },
        "bedrock_user": {
          "type": "string"
        },
        "openai_frequency_penalty": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_logit_bias": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_logprobs": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_top_logprobs": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_max_completion_tokens": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_reasoning_effort": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_store": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_metadata": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_n": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_presence_penalty": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_response_format": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_seed": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_stop": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_stream": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_stream_options": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_temperature": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_top_p": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_tools": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_tool_choice": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_parallel_tool_calls": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_user": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        }
      },
      "additionalProperties": true
    },
    "GoogleModelParams": {
      "title": "GoogleParams",
      "type": "object",
      "properties": {
        "google_api_key": {
          "description": "The Google Generative AI API key.",
          "type": "string"
        },
        "tools": {
          "description": "Which tools should be made available to the model. Set to 'auto' to use all available tools.",
          "type": "string"
        },
        "system_prompt": {
          "description": "An additional system prompt used for all chat completions to this model.",
          "type": "string"
        },
        "parameterized_prompt": {
          "type": "string"
        },
        "google_frequency_penalty": {
          "type": "string"
        },
        "google_logit_bias": {
          "type": "string"
        },
        "google_logprobs": {
          "type": "string"
        },
        "google_top_logprobs": {
          "type": "string"
        },
        "google_max_completion_tokens": {
          "type": "string"
        },
        "google_reasoning_effort": {
          "type": "string"
        },
        "google_store": {
          "type": "string"
        },
        "google_metadata": {
          "type": "string"
        },
        "google_n": {
          "type": "string"
        },
        "google_presence_penalty": {
          "type": "string"
        },
        "google_response_format": {
          "type": "string"
        },
        "google_seed": {
          "type": "string"
        },
        "google_stop": {
          "type": "string"
        },
        "google_stream": {
          "type": "string"
        },
        "google_stream_options": {
          "type": "string"
        },
        "google_temperature": {
          "type": "string"
        },
        "google_top_p": {
          "type": "string"
        },
        "google_tools": {
          "type": "string"
        },
        "google_tool_choice": {
          "type": "string"
        },
        "google_parallel_tool_calls": {
          "type": "string"
        },
        "google_user": {
          "type": "string"
        },
        "openai_frequency_penalty": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_logit_bias": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_logprobs": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_top_logprobs": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_max_completion_tokens": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_reasoning_effort": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_store": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_metadata": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_n": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_presence_penalty": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_response_format": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_seed": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_stop": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_stream": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_stream_options": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_temperature": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_top_p": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_tools": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_tool_choice": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_parallel_tool_calls": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        },
        "openai_user": {
          "description": "**DEPRECATED**: The `openai_<param>` language model overrides parameter is deprecated and will be removed in a future release. Please use `<model_prefix>_<param>` parameter name instead.",
          "type": "string",
          "deprecated": true
        }
      },
      "additionalProperties": true
    },
    "DynamodbDataset": {
      "type": "object",
      "properties": {
        "from": {
          "description": "Data source path for dynamodb connector. Format: dynamodb:<path>",
          "type": "string",
          "pattern": "^dynamodb:"
        },
        "name": {
          "type": "string"
        },
        "params": {
          "description": "Connection parameters for the dynamodb data connector.",
          "anyOf": [
            {
              "$ref": "#/$defs/DynamodbDataConnectorParams"
            },
            {
              "type": "null"
            }
          ]
        },
        "description": {
          "type": [
            "string",
            "null"
          ]
        },
        "metadata": {
          "type": "object",
          "additionalProperties": true
        },
        "columns": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/Column"
          }
        },
        "access": {
          "$ref": "#/$defs/AccessMode"
        },
        "has_metadata_table": {
          "type": [
            "boolean",
            "null"
          ]
        },
        "replication": {
          "anyOf": [
            {
              "$ref": "#/$defs/Replication"
            },
            {
              "type": "null"
            }
          ]
        },
        "time_column": {
          "type": [
            "string",
            "null"
          ]
        },
        "time_format": {
          "anyOf": [
            {
              "$ref": "#/$defs/TimeFormat"
            },
            {
              "type": "null"
            }
          ]
        },
        "time_partition_column": {
          "type": [
            "string",
            "null"
          ]
        },
        "time_partition_format": {
          "anyOf": [
            {
              "$ref": "#/$defs/TimeFormat"
            },
            {
              "type": "null"
            }
          ]
        },
        "acceleration": {
          "anyOf": [
            {
              "$ref": "#/$defs/Acceleration"
            },
            {
              "type": "null"
            }
          ]
        },
        "embeddings": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/ColumnEmbeddingConfig"
          }
        },
        "dependsOn": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "invalid_type_action": {
          "anyOf": [
            {
              "$ref": "#/$defs/InvalidTypeAction"
            },
            {
              "type": "null"
            }
          ],
          "deprecated": true
        },
        "unsupported_type_action": {
          "anyOf": [
            {
              "$ref": "#/$defs/UnsupportedTypeAction"
            },
            {
              "type": "null"
            }
          ]
        },
        "ready_state": {
          "$ref": "#/$defs/ReadyState"
        },
        "metrics": {
          "anyOf": [
            {
              "$ref": "#/$defs/Metrics"
            },
            {
              "type": "null"
            }
          ]
        },
        "vectors": {
          "anyOf": [
            {
              "$ref": "#/$defs/VectorStore"
            },
            {
              "type": "null"
            }
          ]
        },
        "check_availability": {
          "$ref": "#/$defs/CheckAvailability"
        }
      },
      "required": [
        "from",
        "name"
      ],
      "additionalProperties": false
    },
    "FileDataset": {
      "type": "object",
      "properties": {
        "from": {
          "description": "Data source path for file connector. Format: file:<path>",
          "type": "string",
          "pattern": "^file:"
        },
        "name": {
          "type": "string"
        },
        "params": {
          "description": "Connection parameters for the file data connector.",
          "anyOf": [
            {
              "$ref": "#/$defs/FileDataConnectorParams"
            },
            {
              "type": "null"
            }
          ]
        },
        "description": {
          "type": [
            "string",
            "null"
          ]
        },
        "metadata": {
          "type": "object",
          "additionalProperties": true
        },
        "columns": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/Column"
          }
        },
        "access": {
          "$ref": "#/$defs/AccessMode"
        },
        "has_metadata_table": {
          "type": [
            "boolean",
            "null"
          ]
        },
        "replication": {
          "anyOf": [
            {
              "$ref": "#/$defs/Replication"
            },
            {
              "type": "null"
            }
          ]
        },
        "time_column": {
          "type": [
            "string",
            "null"
          ]
        },
        "time_format": {
          "anyOf": [
            {
              "$ref": "#/$defs/TimeFormat"
            },
            {
              "type": "null"
            }
          ]
        },
        "time_partition_column": {
          "type": [
            "string",
            "null"
          ]
        },
        "time_partition_format": {
          "anyOf": [
            {
              "$ref": "#/$defs/TimeFormat"
            },
            {
              "type": "null"
            }
          ]
        },
        "acceleration": {
          "anyOf": [
            {
              "$ref": "#/$defs/Acceleration"
            },
            {
              "type": "null"
            }
          ]
        },
        "embeddings": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/ColumnEmbeddingConfig"
          }
        },
        "dependsOn": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "invalid_type_action": {
          "anyOf": [
            {
              "$ref": "#/$defs/InvalidTypeAction"
            },
            {
              "type": "null"
            }
          ],
          "deprecated": true
        },
        "unsupported_type_action": {
          "anyOf": [
            {
              "$ref": "#/$defs/UnsupportedTypeAction"
            },
            {
              "type": "null"
            }
          ]
        },
        "ready_state": {
          "$ref": "#/$defs/ReadyState"
        },
        "metrics": {
          "anyOf": [
            {
              "$ref": "#/$defs/Metrics"
            },
            {
              "type": "null"
            }
          ]
        },
        "vectors": {
          "anyOf": [
            {
              "$ref": "#/$defs/VectorStore"
            },
            {
              "type": "null"
            }
          ]
        },
        "check_availability": {
          "$ref": "#/$defs/CheckAvailability"
        }
      },
      "required": [
        "from",
        "name"
      ],
      "additionalProperties": false
    },
    "KafkaDataset": {
      "type": "object",
      "properties": {
        "from": {
          "description": "Data source path for kafka connector. Format: kafka:<path>",
          "type": "string",
          "pattern": "^kafka:"
        },
        "name": {
          "type": "string"
        },
        "params": {
          "description": "Connection parameters for the kafka data connector.",
          "anyOf": [
            {
              "$ref": "#/$defs/KafkaDataConnectorParams"
            },
            {
              "type": "null"
            }
          ]
        },
        "description": {
          "type": [
            "string",
            "null"
          ]
        },
        "metadata": {
          "type": "object",
          "additionalProperties": true
        },
        "columns": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/Column"
          }
        },
        "access": {
          "$ref": "#/$defs/AccessMode"
        },
        "has_metadata_table": {
          "type": [
            "boolean",
            "null"
          ]
        },
        "replication": {
          "anyOf": [
            {
              "$ref": "#/$defs/Replication"
            },
            {
              "type": "null"
            }
          ]
        },
        "time_column": {
          "type": [
            "string",
            "null"
          ]
        },
        "time_format": {
          "anyOf": [
            {
              "$ref": "#/$defs/TimeFormat"
            },
            {
              "type": "null"
            }
          ]
        },
        "time_partition_column": {
          "type": [
            "string",
            "null"
          ]
        },
        "time_partition_format": {
          "anyOf": [
            {
              "$ref": "#/$defs/TimeFormat"
            },
            {
              "type": "null"
            }
          ]
        },
        "acceleration": {
          "anyOf": [
            {
              "$ref": "#/$defs/Acceleration"
            },
            {
              "type": "null"
            }
          ]
        },
        "embeddings": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/ColumnEmbeddingConfig"
          }
        },
        "dependsOn": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "invalid_type_action": {
          "anyOf": [
            {
              "$ref": "#/$defs/InvalidTypeAction"
            },
            {
              "type": "null"
            }
          ],
          "deprecated": true
        },
        "unsupported_type_action": {
          "anyOf": [
            {
              "$ref": "#/$defs/UnsupportedTypeAction"
            },
            {
              "type": "null"
            }
          ]
        },
        "ready_state": {
          "$ref": "#/$defs/ReadyState"
        },
        "metrics": {
          "anyOf": [
            {
              "$ref": "#/$defs/Metrics"
            },
            {
              "type": "null"
            }
          ]
        },
        "vectors": {
          "anyOf": [
            {
              "$ref": "#/$defs/VectorStore"
            },
            {
              "type": "null"
            }
          ]
        },
        "check_availability": {
          "$ref": "#/$defs/CheckAvailability"
        }
      },
      "required": [
        "from",
        "name"
      ],
      "additionalProperties": false
    },
    "SpiceAiDataset": {
      "type": "object",
      "properties": {
        "from": {
          "description": "Data source path for spice.ai connector. Format: spice.ai:<path>",
          "type": "string",
          "pattern": "^spice\\.ai:"
        },
        "name": {
          "type": "string"
        },
        "params": {
          "description": "Connection parameters for the spice.ai data connector.",
          "anyOf": [
            {
              "$ref": "#/$defs/SpiceAiDataConnectorParams"
            },
            {
              "type": "null"
            }
          ]
        },
        "description": {
          "type": [
            "string",
            "null"
          ]
        },
        "metadata": {
          "type": "object",
          "additionalProperties": true
        },
        "columns": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/Column"
          }
        },
        "access": {
          "$ref": "#/$defs/AccessMode"
        },
        "has_metadata_table": {
          "type": [
            "boolean",
            "null"
          ]
        },
        "replication": {
          "anyOf": [
            {
              "$ref": "#/$defs/Replication"
            },
            {
              "type": "null"
            }
          ]
        },
        "time_column": {
          "type": [
            "string",
            "null"
          ]
        },
        "time_format": {
          "anyOf": [
            {
              "$ref": "#/$defs/TimeFormat"
            },
            {
              "type": "null"
            }
          ]
        },
        "time_partition_column": {
          "type": [
            "string",
            "null"
          ]
        },
        "time_partition_format": {
          "anyOf": [
            {
              "$ref": "#/$defs/TimeFormat"
            },
            {
              "type": "null"
            }
          ]
        },
        "acceleration": {
          "anyOf": [
            {
              "$ref": "#/$defs/Acceleration"
            },
            {
              "type": "null"
            }
          ]
        },
        "embeddings": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/ColumnEmbeddingConfig"
          }
        },
        "dependsOn": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "invalid_type_action": {
          "anyOf": [
            {
              "$ref": "#/$defs/InvalidTypeAction"
            },
            {
              "type": "null"
            }
          ],
          "deprecated": true
        },
        "unsupported_type_action": {
          "anyOf": [
            {
              "$ref": "#/$defs/UnsupportedTypeAction"
            },
            {
              "type": "null"
            }
          ]
        },
        "ready_state": {
          "$ref": "#/$defs/ReadyState"
        },
        "metrics": {
          "anyOf": [
            {
              "$ref": "#/$defs/Metrics"
            },
            {
              "type": "null"
            }
          ]
        },
        "vectors": {
          "anyOf": [
            {
              "$ref": "#/$defs/VectorStore"
            },
            {
              "type": "null"
            }
          ]
        },
        "check_availability": {
          "$ref": "#/$defs/CheckAvailability"
        }
      },
      "required": [
        "from",
        "name"
      ],
      "additionalProperties": false
    },
    "DebeziumDataset": {
      "type": "object",
      "properties": {
        "from": {
          "description": "Data source path for debezium connector. Format: debezium:<path>",
          "type": "string",
          "pattern": "^debezium:"
        },
        "name": {
          "type": "string"
        },
        "params": {
          "description": "Connection parameters for the debezium data connector.",
          "anyOf": [
            {
              "$ref": "#/$defs/DebeziumDataConnectorParams"
            },
            {
              "type": "null"
            }
          ]
        },
        "description": {
          "type": [
            "string",
            "null"
          ]
        },
        "metadata": {
          "type": "object",
          "additionalProperties": true
        },
        "columns": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/Column"
          }
        },
        "access": {
          "$ref": "#/$defs/AccessMode"
        },
        "has_metadata_table": {
          "type": [
            "boolean",
            "null"
          ]
        },
        "replication": {
          "anyOf": [
            {
              "$ref": "#/$defs/Replication"
            },
            {
              "type": "null"
            }
          ]
        },
        "time_column": {
          "type": [
            "string",
            "null"
          ]
        },
        "time_format": {
          "anyOf": [
            {
              "$ref": "#/$defs/TimeFormat"
            },
            {
              "type": "null"
            }
          ]
        },
        "time_partition_column": {
          "type": [
            "string",
            "null"
          ]
        },
        "time_partition_format": {
          "anyOf": [
            {
              "$ref": "#/$defs/TimeFormat"
            },
            {
              "type": "null"
            }
          ]
        },
        "acceleration": {
          "anyOf": [
            {
              "$ref": "#/$defs/Acceleration"
            },
            {
              "type": "null"
            }
          ]
        },
        "embeddings": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/ColumnEmbeddingConfig"
          }
        },
        "dependsOn": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "invalid_type_action": {
          "anyOf": [
            {
              "$ref": "#/$defs/InvalidTypeAction"
            },
            {
              "type": "null"
            }
          ],
          "deprecated": true
        },
        "unsupported_type_action": {
          "anyOf": [
            {
              "$ref": "#/$defs/UnsupportedTypeAction"
            },
            {
              "type": "null"
            }
          ]
        },
        "ready_state": {
          "$ref": "#/$defs/ReadyState"
        },
        "metrics": {
          "anyOf": [
            {
              "$ref": "#/$defs/Metrics"
            },
            {
              "type": "null"
            }
          ]
        },
        "vectors": {
          "anyOf": [
            {
              "$ref": "#/$defs/VectorStore"
            },
            {
              "type": "null"
            }
          ]
        },
        "check_availability": {
          "$ref": "#/$defs/CheckAvailability"
        }
      },
      "required": [
        "from",
        "name"
      ],
      "additionalProperties": false
    },
    "GitDataset": {
      "type": "object",
      "properties": {
        "from": {
          "description": "Data source path for git connector. Format: git:<path>",
          "type": "string",
          "pattern": "^git:"
        },
        "name": {
          "type": "string"
        },
        "params": {
          "description": "Connection parameters for the git data connector.",
          "anyOf": [
            {
              "$ref": "#/$defs/GitDataConnectorParams"
            },
            {
              "type": "null"
            }
          ]
        },
        "description": {
          "type": [
            "string",
            "null"
          ]
        },
        "metadata": {
          "type": "object",
          "additionalProperties": true
        },
        "columns": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/Column"
          }
        },
        "access": {
          "$ref": "#/$defs/AccessMode"
        },
        "has_metadata_table": {
          "type": [
            "boolean",
            "null"
          ]
        },
        "replication": {
          "anyOf": [
            {
              "$ref": "#/$defs/Replication"
            },
            {
              "type": "null"
            }
          ]
        },
        "time_column": {
          "type": [
            "string",
            "null"
          ]
        },
        "time_format": {
          "anyOf": [
            {
              "$ref": "#/$defs/TimeFormat"
            },
            {
              "type": "null"
            }
          ]
        },
        "time_partition_column": {
          "type": [
            "string",
            "null"
          ]
        },
        "time_partition_format": {
          "anyOf": [
            {
              "$ref": "#/$defs/TimeFormat"
            },
            {
              "type": "null"
            }
          ]
        },
        "acceleration": {
          "anyOf": [
            {
              "$ref": "#/$defs/Acceleration"
            },
            {
              "type": "null"
            }
          ]
        },
        "embeddings": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/ColumnEmbeddingConfig"
          }
        },
        "dependsOn": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "invalid_type_action": {
          "anyOf": [
            {
              "$ref": "#/$defs/InvalidTypeAction"
            },
            {
              "type": "null"
            }
          ],
          "deprecated": true
        },
        "unsupported_type_action": {
          "anyOf": [
            {
              "$ref": "#/$defs/UnsupportedTypeAction"
            },
            {
              "type": "null"
            }
          ]
        },
        "ready_state": {
          "$ref": "#/$defs/ReadyState"
        },
        "metrics": {
          "anyOf": [
            {
              "$ref": "#/$defs/Metrics"
            },
            {
              "type": "null"
            }
          ]
        },
        "vectors": {
          "anyOf": [
            {
              "$ref": "#/$defs/VectorStore"
            },
            {
              "type": "null"
            }
          ]
        },
        "check_availability": {
          "$ref": "#/$defs/CheckAvailability"
        }
      },
      "required": [
        "from",
        "name"
      ],
      "additionalProperties": false
    },
    "S3Dataset": {
      "type": "object",
      "properties": {
        "from": {
          "description": "Data source path for s3 connector. Format: s3:<path>",
          "type": "string",
          "pattern": "^s3:"
        },
        "name": {
          "type": "string"
        },
        "params": {
          "description": "Connection parameters for the s3 data connector.",
          "anyOf": [
            {
              "$ref": "#/$defs/S3DataConnectorParams"
            },
            {
              "type": "null"
            }
          ]
        },
        "description": {
          "type": [
            "string",
            "null"
          ]
        },
        "metadata": {
          "type": "object",
          "additionalProperties": true
        },
        "columns": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/Column"
          }
        },
        "access": {
          "$ref": "#/$defs/AccessMode"
        },
        "has_metadata_table": {
          "type": [
            "boolean",
            "null"
          ]
        },
        "replication": {
          "anyOf": [
            {
              "$ref": "#/$defs/Replication"
            },
            {
              "type": "null"
            }
          ]
        },
        "time_column": {
          "type": [
            "string",
            "null"
          ]
        },
        "time_format": {
          "anyOf": [
            {
              "$ref": "#/$defs/TimeFormat"
            },
            {
              "type": "null"
            }
          ]
        },
        "time_partition_column": {
          "type": [
            "string",
            "null"
          ]
        },
        "time_partition_format": {
          "anyOf": [
            {
              "$ref": "#/$defs/TimeFormat"
            },
            {
              "type": "null"
            }
          ]
        },
        "acceleration": {
          "anyOf": [
            {
              "$ref": "#/$defs/Acceleration"
            },
            {
              "type": "null"
            }
          ]
        },
        "embeddings": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/ColumnEmbeddingConfig"
          }
        },
        "dependsOn": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "invalid_type_action": {
          "anyOf": [
            {
              "$ref": "#/$defs/InvalidTypeAction"
            },
            {
              "type": "null"
            }
          ],
          "deprecated": true
        },
        "unsupported_type_action": {
          "anyOf": [
            {
              "$ref": "#/$defs/UnsupportedTypeAction"
            },
            {
              "type": "null"
            }
          ]
        },
        "ready_state": {
          "$ref": "#/$defs/ReadyState"
        },
        "metrics": {
          "anyOf": [
            {
              "$ref": "#/$defs/Metrics"
            },
            {
              "type": "null"
            }
          ]
        },
        "vectors": {
          "anyOf": [
            {
              "$ref": "#/$defs/VectorStore"
            },
            {
              "type": "null"
            }
          ]
        },
        "check_availability": {
          "$ref": "#/$defs/CheckAvailability"
        }
      },
      "required": [
        "from",
        "name"
      ],
      "additionalProperties": false
    },
    "GlueDataset": {
      "type": "object",
      "properties": {
        "from": {
          "description": "Data source path for glue connector. Format: glue:<path>",
          "type": "string",
          "pattern": "^glue:"
        },
        "name": {
          "type": "string"
        },
        "params": {
          "description": "Connection parameters for the glue data connector.",
          "anyOf": [
            {
              "$ref": "#/$defs/GlueDataConnectorParams"
            },
            {
              "type": "null"
            }
          ]
        },
        "description": {
          "type": [
            "string",
            "null"
          ]
        },
        "metadata": {
          "type": "object",
          "additionalProperties": true
        },
        "columns": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/Column"
          }
        },
        "access": {
          "$ref": "#/$defs/AccessMode"
        },
        "has_metadata_table": {
          "type": [
            "boolean",
            "null"
          ]
        },
        "replication": {
          "anyOf": [
            {
              "$ref": "#/$defs/Replication"
            },
            {
              "type": "null"
            }
          ]
        },
        "time_column": {
          "type": [
            "string",
            "null"
          ]
        },
        "time_format": {
          "anyOf": [
            {
              "$ref": "#/$defs/TimeFormat"
            },
            {
              "type": "null"
            }
          ]
        },
        "time_partition_column": {
          "type": [
            "string",
            "null"
          ]
        },
        "time_partition_format": {
          "anyOf": [
            {
              "$ref": "#/$defs/TimeFormat"
            },
            {
              "type": "null"
            }
          ]
        },
        "acceleration": {
          "anyOf": [
            {
              "$ref": "#/$defs/Acceleration"
            },
            {
              "type": "null"
            }
          ]
        },
        "embeddings": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/ColumnEmbeddingConfig"
          }
        },
        "dependsOn": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "invalid_type_action": {
          "anyOf": [
            {
              "$ref": "#/$defs/InvalidTypeAction"
            },
            {
              "type": "null"
            }
          ],
          "deprecated": true
        },
        "unsupported_type_action": {
          "anyOf": [
            {
              "$ref": "#/$defs/UnsupportedTypeAction"
            },
            {
              "type": "null"
            }
          ]
        },
        "ready_state": {
          "$ref": "#/$defs/ReadyState"
        },
        "metrics": {
          "anyOf": [
            {
              "$ref": "#/$defs/Metrics"
            },
            {
              "type": "null"
            }
          ]
        },
        "vectors": {
          "anyOf": [
            {
              "$ref": "#/$defs/VectorStore"
            },
            {
              "type": "null"
            }
          ]
        },
        "check_availability": {
          "$ref": "#/$defs/CheckAvailability"
        }
      },
      "required": [
        "from",
        "name"
      ],
      "additionalProperties": false
    },
    "SinkDataset": {
      "type": "object",
      "properties": {
        "from": {
          "description": "Data source path for sink connector. Format: sink:<path>",
          "type": "string",
          "pattern": "^sink:"
        },
        "name": {
          "type": "string"
        },
        "params": {
          "description": "Connection parameters for the sink data connector.",
          "anyOf": [
            {
              "$ref": "#/$defs/SinkDataConnectorParams"
            },
            {
              "type": "null"
            }
          ]
        },
        "description": {
          "type": [
            "string",
            "null"
          ]
        },
        "metadata": {
          "type": "object",
          "additionalProperties": true
        },
        "columns": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/Column"
          }
        },
        "access": {
          "$ref": "#/$defs/AccessMode"
        },
        "has_metadata_table": {
          "type": [
            "boolean",
            "null"
          ]
        },
        "replication": {
          "anyOf": [
            {
              "$ref": "#/$defs/Replication"
            },
            {
              "type": "null"
            }
          ]
        },
        "time_column": {
          "type": [
            "string",
            "null"
          ]
        },
        "time_format": {
          "anyOf": [
            {
              "$ref": "#/$defs/TimeFormat"
            },
            {
              "type": "null"
            }
          ]
        },
        "time_partition_column": {
          "type": [
            "string",
            "null"
          ]
        },
        "time_partition_format": {
          "anyOf": [
            {
              "$ref": "#/$defs/TimeFormat"
            },
            {
              "type": "null"
            }
          ]
        },
        "acceleration": {
          "anyOf": [
            {
              "$ref": "#/$defs/Acceleration"
            },
            {
              "type": "null"
            }
          ]
        },
        "embeddings": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/ColumnEmbeddingConfig"
          }
        },
        "dependsOn": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "invalid_type_action": {
          "anyOf": [
            {
              "$ref": "#/$defs/InvalidTypeAction"
            },
            {
              "type": "null"
            }
          ],
          "deprecated": true
        },
        "unsupported_type_action": {
          "anyOf": [
            {
              "$ref": "#/$defs/UnsupportedTypeAction"
            },
            {
              "type": "null"
            }
          ]
        },
        "ready_state": {
          "$ref": "#/$defs/ReadyState"
        },
        "metrics": {
          "anyOf": [
            {
              "$ref": "#/$defs/Metrics"
            },
            {
              "type": "null"
            }
          ]
        },
        "vectors": {
          "anyOf": [
            {
              "$ref": "#/$defs/VectorStore"
            },
            {
              "type": "null"
            }
          ]
        },
        "check_availability": {
          "$ref": "#/$defs/CheckAvailability"
        }
      },
      "required": [
        "from",
        "name"
      ],
      "additionalProperties": false
    },
    "GithubDataset": {
      "type": "object",
      "properties": {
        "from": {
          "description": "Data source path for github connector. Format: github:<path>",
          "type": "string",
          "pattern": "^github:"
        },
        "name": {
          "type": "string"
        },
        "params": {
          "description": "Connection parameters for the github data connector.",
          "anyOf": [
            {
              "$ref": "#/$defs/GithubDataConnectorParams"
            },
            {
              "type": "null"
            }
          ]
        },
        "description": {
          "type": [
            "string",
            "null"
          ]
        },
        "metadata": {
          "type": "object",
          "additionalProperties": true
        },
        "columns": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/Column"
          }
        },
        "access": {
          "$ref": "#/$defs/AccessMode"
        },
        "has_metadata_table": {
          "type": [
            "boolean",
            "null"
          ]
        },
        "replication": {
          "anyOf": [
            {
              "$ref": "#/$defs/Replication"
            },
            {
              "type": "null"
            }
          ]
        },
        "time_column": {
          "type": [
            "string",
            "null"
          ]
        },
        "time_format": {
          "anyOf": [
            {
              "$ref": "#/$defs/TimeFormat"
            },
            {
              "type": "null"
            }
          ]
        },
        "time_partition_column": {
          "type": [
            "string",
            "null"
          ]
        },
        "time_partition_format": {
          "anyOf": [
            {
              "$ref": "#/$defs/TimeFormat"
            },
            {
              "type": "null"
            }
          ]
        },
        "acceleration": {
          "anyOf": [
            {
              "$ref": "#/$defs/Acceleration"
            },
            {
              "type": "null"
            }
          ]
        },
        "embeddings": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/ColumnEmbeddingConfig"
          }
        },
        "dependsOn": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "invalid_type_action": {
          "anyOf": [
            {
              "$ref": "#/$defs/InvalidTypeAction"
            },
            {
              "type": "null"
            }
          ],
          "deprecated": true
        },
        "unsupported_type_action": {
          "anyOf": [
            {
              "$ref": "#/$defs/UnsupportedTypeAction"
            },
            {
              "type": "null"
            }
          ]
        },
        "ready_state": {
          "$ref": "#/$defs/ReadyState"
        },
        "metrics": {
          "anyOf": [
            {
              "$ref": "#/$defs/Metrics"
            },
            {
              "type": "null"
            }
          ]
        },
        "vectors": {
          "anyOf": [
            {
              "$ref": "#/$defs/VectorStore"
            },
            {
              "type": "null"
            }
          ]
        },
        "check_availability": {
          "$ref": "#/$defs/CheckAvailability"
        }
      },
      "required": [
        "from",
        "name"
      ],
      "additionalProperties": false
    },
    "HttpDataset": {
      "type": "object",
      "properties": {
        "from": {
          "description": "Data source path for http connector. Format: http:<path>",
          "type": "string",
          "pattern": "^http:"
        },
        "name": {
          "type": "string"
        },
        "params": {
          "description": "Connection parameters for the http data connector.",
          "anyOf": [
            {
              "$ref": "#/$defs/HttpDataConnectorParams"
            },
            {
              "type": "null"
            }
          ]
        },
        "description": {
          "type": [
            "string",
            "null"
          ]
        },
        "metadata": {
          "type": "object",
          "additionalProperties": true
        },
        "columns": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/Column"
          }
        },
        "access": {
          "$ref": "#/$defs/AccessMode"
        },
        "has_metadata_table": {
          "type": [
            "boolean",
            "null"
          ]
        },
        "replication": {
          "anyOf": [
            {
              "$ref": "#/$defs/Replication"
            },
            {
              "type": "null"
            }
          ]
        },
        "time_column": {
          "type": [
            "string",
            "null"
          ]
        },
        "time_format": {
          "anyOf": [
            {
              "$ref": "#/$defs/TimeFormat"
            },
            {
              "type": "null"
            }
          ]
        },
        "time_partition_column": {
          "type": [
            "string",
            "null"
          ]
        },
        "time_partition_format": {
          "anyOf": [
            {
              "$ref": "#/$defs/TimeFormat"
            },
            {
              "type": "null"
            }
          ]
        },
        "acceleration": {
          "anyOf": [
            {
              "$ref": "#/$defs/Acceleration"
            },
            {
              "type": "null"
            }
          ]
        },
        "embeddings": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/ColumnEmbeddingConfig"
          }
        },
        "dependsOn": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "invalid_type_action": {
          "anyOf": [
            {
              "$ref": "#/$defs/InvalidTypeAction"
            },
            {
              "type": "null"
            }
          ],
          "deprecated": true
        },
        "unsupported_type_action": {
          "anyOf": [
            {
              "$ref": "#/$defs/UnsupportedTypeAction"
            },
            {
              "type": "null"
            }
          ]
        },
        "ready_state": {
          "$ref": "#/$defs/ReadyState"
        },
        "metrics": {
          "anyOf": [
            {
              "$ref": "#/$defs/Metrics"
            },
            {
              "type": "null"
            }
          ]
        },
        "vectors": {
          "anyOf": [
            {
              "$ref": "#/$defs/VectorStore"
            },
            {
              "type": "null"
            }
          ]
        },
        "check_availability": {
          "$ref": "#/$defs/CheckAvailability"
        }
      },
      "required": [
        "from",
        "name"
      ],
      "additionalProperties": false
    },
    "HttpsDataset": {
      "type": "object",
      "properties": {
        "from": {
          "description": "Data source path for https connector. Format: https:<path>",
          "type": "string",
          "pattern": "^https:"
        },
        "name": {
          "type": "string"
        },
        "params": {
          "description": "Connection parameters for the https data connector.",
          "anyOf": [
            {
              "$ref": "#/$defs/HttpsDataConnectorParams"
            },
            {
              "type": "null"
            }
          ]
        },
        "description": {
          "type": [
            "string",
            "null"
          ]
        },
        "metadata": {
          "type": "object",
          "additionalProperties": true
        },
        "columns": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/Column"
          }
        },
        "access": {
          "$ref": "#/$defs/AccessMode"
        },
        "has_metadata_table": {
          "type": [
            "boolean",
            "null"
          ]
        },
        "replication": {
          "anyOf": [
            {
              "$ref": "#/$defs/Replication"
            },
            {
              "type": "null"
            }
          ]
        },
        "time_column": {
          "type": [
            "string",
            "null"
          ]
        },
        "time_format": {
          "anyOf": [
            {
              "$ref": "#/$defs/TimeFormat"
            },
            {
              "type": "null"
            }
          ]
        },
        "time_partition_column": {
          "type": [
            "string",
            "null"
          ]
        },
        "time_partition_format": {
          "anyOf": [
            {
              "$ref": "#/$defs/TimeFormat"
            },
            {
              "type": "null"
            }
          ]
        },
        "acceleration": {
          "anyOf": [
            {
              "$ref": "#/$defs/Acceleration"
            },
            {
              "type": "null"
            }
          ]
        },
        "embeddings": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/ColumnEmbeddingConfig"
          }
        },
        "dependsOn": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "invalid_type_action": {
          "anyOf": [
            {
              "$ref": "#/$defs/InvalidTypeAction"
            },
            {
              "type": "null"
            }
          ],
          "deprecated": true
        },
        "unsupported_type_action": {
          "anyOf": [
            {
              "$ref": "#/$defs/UnsupportedTypeAction"
            },
            {
              "type": "null"
            }
          ]
        },
        "ready_state": {
          "$ref": "#/$defs/ReadyState"
        },
        "metrics": {
          "anyOf": [
            {
              "$ref": "#/$defs/Metrics"
            },
            {
              "type": "null"
            }
          ]
        },
        "vectors": {
          "anyOf": [
            {
              "$ref": "#/$defs/VectorStore"
            },
            {
              "type": "null"
            }
          ]
        },
        "check_availability": {
          "$ref": "#/$defs/CheckAvailability"
        }
      },
      "required": [
        "from",
        "name"
      ],
      "additionalProperties": false
    },
    "MemoryDataset": {
      "type": "object",
      "properties": {
        "from": {
          "description": "Data source path for memory connector. Format: memory:<path>",
          "type": "string",
          "pattern": "^memory:"
        },
        "name": {
          "type": "string"
        },
        "params": {
          "description": "Connection parameters for the memory data connector.",
          "anyOf": [
            {
              "$ref": "#/$defs/MemoryDataConnectorParams"
            },
            {
              "type": "null"
            }
          ]
        },
        "description": {
          "type": [
            "string",
            "null"
          ]
        },
        "metadata": {
          "type": "object",
          "additionalProperties": true
        },
        "columns": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/Column"
          }
        },
        "access": {
          "$ref": "#/$defs/AccessMode"
        },
        "has_metadata_table": {
          "type": [
            "boolean",
            "null"
          ]
        },
        "replication": {
          "anyOf": [
            {
              "$ref": "#/$defs/Replication"
            },
            {
              "type": "null"
            }
          ]
        },
        "time_column": {
          "type": [
            "string",
            "null"
          ]
        },
        "time_format": {
          "anyOf": [
            {
              "$ref": "#/$defs/TimeFormat"
            },
            {
              "type": "null"
            }
          ]
        },
        "time_partition_column": {
          "type": [
            "string",
            "null"
          ]
        },
        "time_partition_format": {
          "anyOf": [
            {
              "$ref": "#/$defs/TimeFormat"
            },
            {
              "type": "null"
            }
          ]
        },
        "acceleration": {
          "anyOf": [
            {
              "$ref": "#/$defs/Acceleration"
            },
            {
              "type": "null"
            }
          ]
        },
        "embeddings": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/ColumnEmbeddingConfig"
          }
        },
        "dependsOn": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "invalid_type_action": {
          "anyOf": [
            {
              "$ref": "#/$defs/InvalidTypeAction"
            },
            {
              "type": "null"
            }
          ],
          "deprecated": true
        },
        "unsupported_type_action": {
          "anyOf": [
            {
              "$ref": "#/$defs/UnsupportedTypeAction"
            },
            {
              "type": "null"
            }
          ]
        },
        "ready_state": {
          "$ref": "#/$defs/ReadyState"
        },
        "metrics": {
          "anyOf": [
            {
              "$ref": "#/$defs/Metrics"
            },
            {
              "type": "null"
            }
          ]
        },
        "vectors": {
          "anyOf": [
            {
              "$ref": "#/$defs/VectorStore"
            },
            {
              "type": "null"
            }
          ]
        },
        "check_availability": {
          "$ref": "#/$defs/CheckAvailability"
        }
      },
      "required": [
        "from",
        "name"
      ],
      "additionalProperties": false
    },
    "IcebergDataset": {
      "type": "object",
      "properties": {
        "from": {
          "description": "Data source path for iceberg connector. Format: iceberg:<path>",
          "type": "string",
          "pattern": "^iceberg:"
        },
        "name": {
          "type": "string"
        },
        "params": {
          "description": "Connection parameters for the iceberg data connector.",
          "anyOf": [
            {
              "$ref": "#/$defs/IcebergDataConnectorParams"
            },
            {
              "type": "null"
            }
          ]
        },
        "description": {
          "type": [
            "string",
            "null"
          ]
        },
        "metadata": {
          "type": "object",
          "additionalProperties": true
        },
        "columns": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/Column"
          }
        },
        "access": {
          "$ref": "#/$defs/AccessMode"
        },
        "has_metadata_table": {
          "type": [
            "boolean",
            "null"
          ]
        },
        "replication": {
          "anyOf": [
            {
              "$ref": "#/$defs/Replication"
            },
            {
              "type": "null"
            }
          ]
        },
        "time_column": {
          "type": [
            "string",
            "null"
          ]
        },
        "time_format": {
          "anyOf": [
            {
              "$ref": "#/$defs/TimeFormat"
            },
            {
              "type": "null"
            }
          ]
        },
        "time_partition_column": {
          "type": [
            "string",
            "null"
          ]
        },
        "time_partition_format": {
          "anyOf": [
            {
              "$ref": "#/$defs/TimeFormat"
            },
            {
              "type": "null"
            }
          ]
        },
        "acceleration": {
          "anyOf": [
            {
              "$ref": "#/$defs/Acceleration"
            },
            {
              "type": "null"
            }
          ]
        },
        "embeddings": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/ColumnEmbeddingConfig"
          }
        },
        "dependsOn": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "invalid_type_action": {
          "anyOf": [
            {
              "$ref": "#/$defs/InvalidTypeAction"
            },
            {
              "type": "null"
            }
          ],
          "deprecated": true
        },
        "unsupported_type_action": {
          "anyOf": [
            {
              "$ref": "#/$defs/UnsupportedTypeAction"
            },
            {
              "type": "null"
            }
          ]
        },
        "ready_state": {
          "$ref": "#/$defs/ReadyState"
        },
        "metrics": {
          "anyOf": [
            {
              "$ref": "#/$defs/Metrics"
            },
            {
              "type": "null"
            }
          ]
        },
        "vectors": {
          "anyOf": [
            {
              "$ref": "#/$defs/VectorStore"
            },
            {
              "type": "null"
            }
          ]
        },
        "check_availability": {
          "$ref": "#/$defs/CheckAvailability"
        }
      },
      "required": [
        "from",
        "name"
      ],
      "additionalProperties": false
    },
    "LocalpodDataset": {
      "type": "object",
      "properties": {
        "from": {
          "description": "Data source path for localpod connector. Format: localpod:<path>",
          "type": "string",
          "pattern": "^localpod:"
        },
        "name": {
          "type": "string"
        },
        "params": {
          "description": "Connection parameters for the localpod data connector.",
          "anyOf": [
            {
              "$ref": "#/$defs/LocalpodDataConnectorParams"
            },
            {
              "type": "null"
            }
          ]
        },
        "description": {
          "type": [
            "string",
            "null"
          ]
        },
        "metadata": {
          "type": "object",
          "additionalProperties": true
        },
        "columns": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/Column"
          }
        },
        "access": {
          "$ref": "#/$defs/AccessMode"
        },
        "has_metadata_table": {
          "type": [
            "boolean",
            "null"
          ]
        },
        "replication": {
          "anyOf": [
            {
              "$ref": "#/$defs/Replication"
            },
            {
              "type": "null"
            }
          ]
        },
        "time_column": {
          "type": [
            "string",
            "null"
          ]
        },
        "time_format": {
          "anyOf": [
            {
              "$ref": "#/$defs/TimeFormat"
            },
            {
              "type": "null"
            }
          ]
        },
        "time_partition_column": {
          "type": [
            "string",
            "null"
          ]
        },
        "time_partition_format": {
          "anyOf": [
            {
              "$ref": "#/$defs/TimeFormat"
            },
            {
              "type": "null"
            }
          ]
        },
        "acceleration": {
          "anyOf": [
            {
              "$ref": "#/$defs/Acceleration"
            },
            {
              "type": "null"
            }
          ]
        },
        "embeddings": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/ColumnEmbeddingConfig"
          }
        },
        "dependsOn": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "invalid_type_action": {
          "anyOf": [
            {
              "$ref": "#/$defs/InvalidTypeAction"
            },
            {
              "type": "null"
            }
          ],
          "deprecated": true
        },
        "unsupported_type_action": {
          "anyOf": [
            {
              "$ref": "#/$defs/UnsupportedTypeAction"
            },
            {
              "type": "null"
            }
          ]
        },
        "ready_state": {
          "$ref": "#/$defs/ReadyState"
        },
        "metrics": {
          "anyOf": [
            {
              "$ref": "#/$defs/Metrics"
            },
            {
              "type": "null"
            }
          ]
        },
        "vectors": {
          "anyOf": [
            {
              "$ref": "#/$defs/VectorStore"
            },
            {
              "type": "null"
            }
          ]
        },
        "check_availability": {
          "$ref": "#/$defs/CheckAvailability"
        }
      },
      "required": [
        "from",
        "name"
      ],
      "additionalProperties": false
    },
    "GsDataset": {
      "type": "object",
      "properties": {
        "from": {
          "description": "Data source path for gs connector. Format: gs:<path>",
          "type": "string",
          "pattern": "^gs:"
        },
        "name": {
          "type": "string"
        },
        "params": {
          "description": "Connection parameters for the gs data connector.",
          "anyOf": [
            {
              "$ref": "#/$defs/GsDataConnectorParams"
            },
            {
              "type": "null"
            }
          ]
        },
        "description": {
          "type": [
            "string",
            "null"
          ]
        },
        "metadata": {
          "type": "object",
          "additionalProperties": true
        },
        "columns": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/Column"
          }
        },
        "access": {
          "$ref": "#/$defs/AccessMode"
        },
        "has_metadata_table": {
          "type": [
            "boolean",
            "null"
          ]
        },
        "replication": {
          "anyOf": [
            {
              "$ref": "#/$defs/Replication"
            },
            {
              "type": "null"
            }
          ]
        },
        "time_column": {
          "type": [
            "string",
            "null"
          ]
        },
        "time_format": {
          "anyOf": [
            {
              "$ref": "#/$defs/TimeFormat"
            },
            {
              "type": "null"
            }
          ]
        },
        "time_partition_column": {
          "type": [
            "string",
            "null"
          ]
        },
        "time_partition_format": {
          "anyOf": [
            {
              "$ref": "#/$defs/TimeFormat"
            },
            {
              "type": "null"
            }
          ]
        },
        "acceleration": {
          "anyOf": [
            {
              "$ref": "#/$defs/Acceleration"
            },
            {
              "type": "null"
            }
          ]
        },
        "embeddings": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/ColumnEmbeddingConfig"
          }
        },
        "dependsOn": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "invalid_type_action": {
          "anyOf": [
            {
              "$ref": "#/$defs/InvalidTypeAction"
            },
            {
              "type": "null"
            }
          ],
          "deprecated": true
        },
        "unsupported_type_action": {
          "anyOf": [
            {
              "$ref": "#/$defs/UnsupportedTypeAction"
            },
            {
              "type": "null"
            }
          ]
        },
        "ready_state": {
          "$ref": "#/$defs/ReadyState"
        },
        "metrics": {
          "anyOf": [
            {
              "$ref": "#/$defs/Metrics"
            },
            {
              "type": "null"
            }
          ]
        },
        "vectors": {
          "anyOf": [
            {
              "$ref": "#/$defs/VectorStore"
            },
            {
              "type": "null"
            }
          ]
        },
        "check_availability": {
          "$ref": "#/$defs/CheckAvailability"
        }
      },
      "required": [
        "from",
        "name"
      ],
      "additionalProperties": false
    },
    "GcsDataset": {
      "type": "object",
      "properties": {
        "from": {
          "description": "Data source path for gcs connector. Format: gcs:<path>",
          "type": "string",
          "pattern": "^gcs:"
        },
        "name": {
          "type": "string"
        },
        "params": {
          "description": "Connection parameters for the gcs data connector.",
          "anyOf": [
            {
              "$ref": "#/$defs/GcsDataConnectorParams"
            },
            {
              "type": "null"
            }
          ]
        },
        "description": {
          "type": [
            "string",
            "null"
          ]
        },
        "metadata": {
          "type": "object",
          "additionalProperties": true
        },
        "columns": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/Column"
          }
        },
        "access": {
          "$ref": "#/$defs/AccessMode"
        },
        "has_metadata_table": {
          "type": [
            "boolean",
            "null"
          ]
        },
        "replication": {
          "anyOf": [
            {
              "$ref": "#/$defs/Replication"
            },
            {
              "type": "null"
            }
          ]
        },
        "time_column": {
          "type": [
            "string",
            "null"
          ]
        },
        "time_format": {
          "anyOf": [
            {
              "$ref": "#/$defs/TimeFormat"
            },
            {
              "type": "null"
            }
          ]
        },
        "time_partition_column": {
          "type": [
            "string",
            "null"
          ]
        },
        "time_partition_format": {
          "anyOf": [
            {
              "$ref": "#/$defs/TimeFormat"
            },
            {
              "type": "null"
            }
          ]
        },
        "acceleration": {
          "anyOf": [
            {
              "$ref": "#/$defs/Acceleration"
            },
            {
              "type": "null"
            }
          ]
        },
        "embeddings": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/ColumnEmbeddingConfig"
          }
        },
        "dependsOn": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "invalid_type_action": {
          "anyOf": [
            {
              "$ref": "#/$defs/InvalidTypeAction"
            },
            {
              "type": "null"
            }
          ],
          "deprecated": true
        },
        "unsupported_type_action": {
          "anyOf": [
            {
              "$ref": "#/$defs/UnsupportedTypeAction"
            },
            {
              "type": "null"
            }
          ]
        },
        "ready_state": {
          "$ref": "#/$defs/ReadyState"
        },
        "metrics": {
          "anyOf": [
            {
              "$ref": "#/$defs/Metrics"
            },
            {
              "type": "null"
            }
          ]
        },
        "vectors": {
          "anyOf": [
            {
              "$ref": "#/$defs/VectorStore"
            },
            {
              "type": "null"
            }
          ]
        },
        "check_availability": {
          "$ref": "#/$defs/CheckAvailability"
        }
      },
      "required": [
        "from",
        "name"
      ],
      "additionalProperties": false
    },
    "AbfsDataset": {
      "type": "object",
      "properties": {
        "from": {
          "description": "Data source path for abfs connector. Format: abfs:<path>",
          "type": "string",
          "pattern": "^abfs:"
        },
        "name": {
          "type": "string"
        },
        "params": {
          "description": "Connection parameters for the abfs data connector.",
          "anyOf": [
            {
              "$ref": "#/$defs/AbfsDataConnectorParams"
            },
            {
              "type": "null"
            }
          ]
        },
        "description": {
          "type": [
            "string",
            "null"
          ]
        },
        "metadata": {
          "type": "object",
          "additionalProperties": true
        },
        "columns": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/Column"
          }
        },
        "access": {
          "$ref": "#/$defs/AccessMode"
        },
        "has_metadata_table": {
          "type": [
            "boolean",
            "null"
          ]
        },
        "replication": {
          "anyOf": [
            {
              "$ref": "#/$defs/Replication"
            },
            {
              "type": "null"
            }
          ]
        },
        "time_column": {
          "type": [
            "string",
            "null"
          ]
        },
        "time_format": {
          "anyOf": [
            {
              "$ref": "#/$defs/TimeFormat"
            },
            {
              "type": "null"
            }
          ]
        },
        "time_partition_column": {
          "type": [
            "string",
            "null"
          ]
        },
        "time_partition_format": {
          "anyOf": [
            {
              "$ref": "#/$defs/TimeFormat"
            },
            {
              "type": "null"
            }
          ]
        },
        "acceleration": {
          "anyOf": [
            {
              "$ref": "#/$defs/Acceleration"
            },
            {
              "type": "null"
            }
          ]
        },
        "embeddings": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/ColumnEmbeddingConfig"
          }
        },
        "dependsOn": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "invalid_type_action": {
          "anyOf": [
            {
              "$ref": "#/$defs/InvalidTypeAction"
            },
            {
              "type": "null"
            }
          ],
          "deprecated": true
        },
        "unsupported_type_action": {
          "anyOf": [
            {
              "$ref": "#/$defs/UnsupportedTypeAction"
            },
            {
              "type": "null"
            }
          ]
        },
        "ready_state": {
          "$ref": "#/$defs/ReadyState"
        },
        "metrics": {
          "anyOf": [
            {
              "$ref": "#/$defs/Metrics"
            },
            {
              "type": "null"
            }
          ]
        },
        "vectors": {
          "anyOf": [
            {
              "$ref": "#/$defs/VectorStore"
            },
            {
              "type": "null"
            }
          ]
        },
        "check_availability": {
          "$ref": "#/$defs/CheckAvailability"
        }
      },
      "required": [
        "from",
        "name"
      ],
      "additionalProperties": false
    },
    "AbfssDataset": {
      "type": "object",
      "properties": {
        "from": {
          "description": "Data source path for abfss connector. Format: abfss:<path>",
          "type": "string",
          "pattern": "^abfss:"
        },
        "name": {
          "type": "string"
        },
        "params": {
          "description": "Connection parameters for the abfss data connector.",
          "anyOf": [
            {
              "$ref": "#/$defs/AbfssDataConnectorParams"
            },
            {
              "type": "null"
            }
          ]
        },
        "description": {
          "type": [
            "string",
            "null"
          ]
        },
        "metadata": {
          "type": "object",
          "additionalProperties": true
        },
        "columns": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/Column"
          }
        },
        "access": {
          "$ref": "#/$defs/AccessMode"
        },
        "has_metadata_table": {
          "type": [
            "boolean",
            "null"
          ]
        },
        "replication": {
          "anyOf": [
            {
              "$ref": "#/$defs/Replication"
            },
            {
              "type": "null"
            }
          ]
        },
        "time_column": {
          "type": [
            "string",
            "null"
          ]
        },
        "time_format": {
          "anyOf": [
            {
              "$ref": "#/$defs/TimeFormat"
            },
            {
              "type": "null"
            }
          ]
        },
        "time_partition_column": {
          "type": [
            "string",
            "null"
          ]
        },
        "time_partition_format": {
          "anyOf": [
            {
              "$ref": "#/$defs/TimeFormat"
            },
            {
              "type": "null"
            }
          ]
        },
        "acceleration": {
          "anyOf": [
            {
              "$ref": "#/$defs/Acceleration"
            },
            {
              "type": "null"
            }
          ]
        },
        "embeddings": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/ColumnEmbeddingConfig"
          }
        },
        "dependsOn": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "invalid_type_action": {
          "anyOf": [
            {
              "$ref": "#/$defs/InvalidTypeAction"
            },
            {
              "type": "null"
            }
          ],
          "deprecated": true
        },
        "unsupported_type_action": {
          "anyOf": [
            {
              "$ref": "#/$defs/UnsupportedTypeAction"
            },
            {
              "type": "null"
            }
          ]
        },
        "ready_state": {
          "$ref": "#/$defs/ReadyState"
        },
        "metrics": {
          "anyOf": [
            {
              "$ref": "#/$defs/Metrics"
            },
            {
              "type": "null"
            }
          ]
        },
        "vectors": {
          "anyOf": [
            {
              "$ref": "#/$defs/VectorStore"
            },
            {
              "type": "null"
            }
          ]
        },
        "check_availability": {
          "$ref": "#/$defs/CheckAvailability"
        }
      },
      "required": [
        "from",
        "name"
      ],
      "additionalProperties": false
    },
    "ArrowAcceleratedDataset": {
      "description": "Dataset with arrow acceleration engine.",
      "type": "object",
      "properties": {
        "from": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "acceleration": {
          "type": "object",
          "properties": {
            "engine": {
              "type": "string",
              "const": "arrow"
            },
            "params": {
              "description": "Configuration parameters for the arrow acceleration engine.",
              "anyOf": [
                {
                  "$ref": "#/$defs/ArrowAcceleratorParams"
                },
                {
                  "type": "null"
                }
              ]
            }
          },
          "additionalProperties": true
        },
        "description": {
          "type": [
            "string",
            "null"
          ]
        },
        "metadata": {
          "type": "object",
          "additionalProperties": true
        },
        "columns": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/Column"
          }
        },
        "access": {
          "$ref": "#/$defs/AccessMode"
        },
        "params": {
          "anyOf": [
            {
              "$ref": "#/$defs/Params"
            },
            {
              "type": "null"
            }
          ]
        },
        "has_metadata_table": {
          "type": [
            "boolean",
            "null"
          ]
        },
        "replication": {
          "anyOf": [
            {
              "$ref": "#/$defs/Replication"
            },
            {
              "type": "null"
            }
          ]
        },
        "time_column": {
          "type": [
            "string",
            "null"
          ]
        },
        "time_format": {
          "anyOf": [
            {
              "$ref": "#/$defs/TimeFormat"
            },
            {
              "type": "null"
            }
          ]
        },
        "time_partition_column": {
          "type": [
            "string",
            "null"
          ]
        },
        "time_partition_format": {
          "anyOf": [
            {
              "$ref": "#/$defs/TimeFormat"
            },
            {
              "type": "null"
            }
          ]
        },
        "embeddings": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/ColumnEmbeddingConfig"
          }
        },
        "dependsOn": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "invalid_type_action": {
          "anyOf": [
            {
              "$ref": "#/$defs/InvalidTypeAction"
            },
            {
              "type": "null"
            }
          ],
          "deprecated": true
        },
        "unsupported_type_action": {
          "anyOf": [
            {
              "$ref": "#/$defs/UnsupportedTypeAction"
            },
            {
              "type": "null"
            }
          ]
        },
        "ready_state": {
          "$ref": "#/$defs/ReadyState"
        },
        "metrics": {
          "anyOf": [
            {
              "$ref": "#/$defs/Metrics"
            },
            {
              "type": "null"
            }
          ]
        },
        "vectors": {
          "anyOf": [
            {
              "$ref": "#/$defs/VectorStore"
            },
            {
              "type": "null"
            }
          ]
        },
        "check_availability": {
          "$ref": "#/$defs/CheckAvailability"
        }
      },
      "required": [
        "from",
        "name"
      ],
      "additionalProperties": false
    },
    "DuckdbAcceleratedDataset": {
      "description": "Dataset with duckdb acceleration engine.",
      "type": "object",
      "properties": {
        "from": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "acceleration": {
          "type": "object",
          "properties": {
            "engine": {
              "type": "string",
              "const": "duckdb"
            },
            "params": {
              "description": "Configuration parameters for the duckdb acceleration engine.",
              "anyOf": [
                {
                  "$ref": "#/$defs/DuckdbAcceleratorParams"
                },
                {
                  "type": "null"
                }
              ]
            }
          },
          "additionalProperties": true
        },
        "description": {
          "type": [
            "string",
            "null"
          ]
        },
        "metadata": {
          "type": "object",
          "additionalProperties": true
        },
        "columns": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/Column"
          }
        },
        "access": {
          "$ref": "#/$defs/AccessMode"
        },
        "params": {
          "anyOf": [
            {
              "$ref": "#/$defs/Params"
            },
            {
              "type": "null"
            }
          ]
        },
        "has_metadata_table": {
          "type": [
            "boolean",
            "null"
          ]
        },
        "replication": {
          "anyOf": [
            {
              "$ref": "#/$defs/Replication"
            },
            {
              "type": "null"
            }
          ]
        },
        "time_column": {
          "type": [
            "string",
            "null"
          ]
        },
        "time_format": {
          "anyOf": [
            {
              "$ref": "#/$defs/TimeFormat"
            },
            {
              "type": "null"
            }
          ]
        },
        "time_partition_column": {
          "type": [
            "string",
            "null"
          ]
        },
        "time_partition_format": {
          "anyOf": [
            {
              "$ref": "#/$defs/TimeFormat"
            },
            {
              "type": "null"
            }
          ]
        },
        "embeddings": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/ColumnEmbeddingConfig"
          }
        },
        "dependsOn": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "invalid_type_action": {
          "anyOf": [
            {
              "$ref": "#/$defs/InvalidTypeAction"
            },
            {
              "type": "null"
            }
          ],
          "deprecated": true
        },
        "unsupported_type_action": {
          "anyOf": [
            {
              "$ref": "#/$defs/UnsupportedTypeAction"
            },
            {
              "type": "null"
            }
          ]
        },
        "ready_state": {
          "$ref": "#/$defs/ReadyState"
        },
        "metrics": {
          "anyOf": [
            {
              "$ref": "#/$defs/Metrics"
            },
            {
              "type": "null"
            }
          ]
        },
        "vectors": {
          "anyOf": [
            {
              "$ref": "#/$defs/VectorStore"
            },
            {
              "type": "null"
            }
          ]
        },
        "check_availability": {
          "$ref": "#/$defs/CheckAvailability"
        }
      },
      "required": [
        "from",
        "name"
      ],
      "additionalProperties": false
    },
    "TursoAcceleratedDataset": {
      "description": "Dataset with turso acceleration engine.",
      "type": "object",
      "properties": {
        "from": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "acceleration": {
          "type": "object",
          "properties": {
            "engine": {
              "type": "string",
              "const": "turso"
            },
            "params": {
              "description": "Configuration parameters for the turso acceleration engine.",
              "anyOf": [
                {
                  "$ref": "#/$defs/TursoAcceleratorParams"
                },
                {
                  "type": "null"
                }
              ]
            }
          },
          "additionalProperties": true
        },
        "description": {
          "type": [
            "string",
            "null"
          ]
        },
        "metadata": {
          "type": "object",
          "additionalProperties": true
        },
        "columns": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/Column"
          }
        },
        "access": {
          "$ref": "#/$defs/AccessMode"
        },
        "params": {
          "anyOf": [
            {
              "$ref": "#/$defs/Params"
            },
            {
              "type": "null"
            }
          ]
        },
        "has_metadata_table": {
          "type": [
            "boolean",
            "null"
          ]
        },
        "replication": {
          "anyOf": [
            {
              "$ref": "#/$defs/Replication"
            },
            {
              "type": "null"
            }
          ]
        },
        "time_column": {
          "type": [
            "string",
            "null"
          ]
        },
        "time_format": {
          "anyOf": [
            {
              "$ref": "#/$defs/TimeFormat"
            },
            {
              "type": "null"
            }
          ]
        },
        "time_partition_column": {
          "type": [
            "string",
            "null"
          ]
        },
        "time_partition_format": {
          "anyOf": [
            {
              "$ref": "#/$defs/TimeFormat"
            },
            {
              "type": "null"
            }
          ]
        },
        "embeddings": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/ColumnEmbeddingConfig"
          }
        },
        "dependsOn": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "invalid_type_action": {
          "anyOf": [
            {
              "$ref": "#/$defs/InvalidTypeAction"
            },
            {
              "type": "null"
            }
          ],
          "deprecated": true
        },
        "unsupported_type_action": {
          "anyOf": [
            {
              "$ref": "#/$defs/UnsupportedTypeAction"
            },
            {
              "type": "null"
            }
          ]
        },
        "ready_state": {
          "$ref": "#/$defs/ReadyState"
        },
        "metrics": {
          "anyOf": [
            {
              "$ref": "#/$defs/Metrics"
            },
            {
              "type": "null"
            }
          ]
        },
        "vectors": {
          "anyOf": [
            {
              "$ref": "#/$defs/VectorStore"
            },
            {
              "type": "null"
            }
          ]
        },
        "check_availability": {
          "$ref": "#/$defs/CheckAvailability"
        }
      },
      "required": [
        "from",
        "name"
      ],
      "additionalProperties": false
    },
    "SqliteAcceleratedDataset": {
      "description": "Dataset with sqlite acceleration engine.",
      "type": "object",
      "properties": {
        "from": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "acceleration": {
          "type": "object",
          "properties": {
            "engine": {
              "type": "string",
              "const": "sqlite"
            },
            "params": {
              "description": "Configuration parameters for the sqlite acceleration engine.",
              "anyOf": [
                {
                  "$ref": "#/$defs/SqliteAcceleratorParams"
                },
                {
                  "type": "null"
                }
              ]
            }
          },
          "additionalProperties": true
        },
        "description": {
          "type": [
            "string",
            "null"
          ]
        },
        "metadata": {
          "type": "object",
          "additionalProperties": true
        },
        "columns": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/Column"
          }
        },
        "access": {
          "$ref": "#/$defs/AccessMode"
        },
        "params": {
          "anyOf": [
            {
              "$ref": "#/$defs/Params"
            },
            {
              "type": "null"
            }
          ]
        },
        "has_metadata_table": {
          "type": [
            "boolean",
            "null"
          ]
        },
        "replication": {
          "anyOf": [
            {
              "$ref": "#/$defs/Replication"
            },
            {
              "type": "null"
            }
          ]
        },
        "time_column": {
          "type": [
            "string",
            "null"
          ]
        },
        "time_format": {
          "anyOf": [
            {
              "$ref": "#/$defs/TimeFormat"
            },
            {
              "type": "null"
            }
          ]
        },
        "time_partition_column": {
          "type": [
            "string",
            "null"
          ]
        },
        "time_partition_format": {
          "anyOf": [
            {
              "$ref": "#/$defs/TimeFormat"
            },
            {
              "type": "null"
            }
          ]
        },
        "embeddings": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/ColumnEmbeddingConfig"
          }
        },
        "dependsOn": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "invalid_type_action": {
          "anyOf": [
            {
              "$ref": "#/$defs/InvalidTypeAction"
            },
            {
              "type": "null"
            }
          ],
          "deprecated": true
        },
        "unsupported_type_action": {
          "anyOf": [
            {
              "$ref": "#/$defs/UnsupportedTypeAction"
            },
            {
              "type": "null"
            }
          ]
        },
        "ready_state": {
          "$ref": "#/$defs/ReadyState"
        },
        "metrics": {
          "anyOf": [
            {
              "$ref": "#/$defs/Metrics"
            },
            {
              "type": "null"
            }
          ]
        },
        "vectors": {
          "anyOf": [
            {
              "$ref": "#/$defs/VectorStore"
            },
            {
              "type": "null"
            }
          ]
        },
        "check_availability": {
          "$ref": "#/$defs/CheckAvailability"
        }
      },
      "required": [
        "from",
        "name"
      ],
      "additionalProperties": false
    },
    "PostgresAcceleratedDataset": {
      "description": "Dataset with postgres acceleration engine.",
      "type": "object",
      "properties": {
        "from": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "acceleration": {
          "type": "object",
          "properties": {
            "engine": {
              "type": "string",
              "const": "postgres"
            },
            "params": {
              "description": "Configuration parameters for the postgres acceleration engine.",
              "anyOf": [
                {
                  "$ref": "#/$defs/PostgresAcceleratorParams"
                },
                {
                  "type": "null"
                }
              ]
            }
          },
          "additionalProperties": true
        },
        "description": {
          "type": [
            "string",
            "null"
          ]
        },
        "metadata": {
          "type": "object",
          "additionalProperties": true
        },
        "columns": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/Column"
          }
        },
        "access": {
          "$ref": "#/$defs/AccessMode"
        },
        "params": {
          "anyOf": [
            {
              "$ref": "#/$defs/Params"
            },
            {
              "type": "null"
            }
          ]
        },
        "has_metadata_table": {
          "type": [
            "boolean",
            "null"
          ]
        },
        "replication": {
          "anyOf": [
            {
              "$ref": "#/$defs/Replication"
            },
            {
              "type": "null"
            }
          ]
        },
        "time_column": {
          "type": [
            "string",
            "null"
          ]
        },
        "time_format": {
          "anyOf": [
            {
              "$ref": "#/$defs/TimeFormat"
            },
            {
              "type": "null"
            }
          ]
        },
        "time_partition_column": {
          "type": [
            "string",
            "null"
          ]
        },
        "time_partition_format": {
          "anyOf": [
            {
              "$ref": "#/$defs/TimeFormat"
            },
            {
              "type": "null"
            }
          ]
        },
        "embeddings": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/ColumnEmbeddingConfig"
          }
        },
        "dependsOn": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "invalid_type_action": {
          "anyOf": [
            {
              "$ref": "#/$defs/InvalidTypeAction"
            },
            {
              "type": "null"
            }
          ],
          "deprecated": true
        },
        "unsupported_type_action": {
          "anyOf": [
            {
              "$ref": "#/$defs/UnsupportedTypeAction"
            },
            {
              "type": "null"
            }
          ]
        },
        "ready_state": {
          "$ref": "#/$defs/ReadyState"
        },
        "metrics": {
          "anyOf": [
            {
              "$ref": "#/$defs/Metrics"
            },
            {
              "type": "null"
            }
          ]
        },
        "vectors": {
          "anyOf": [
            {
              "$ref": "#/$defs/VectorStore"
            },
            {
              "type": "null"
            }
          ]
        },
        "check_availability": {
          "$ref": "#/$defs/CheckAvailability"
        }
      },
      "required": [
        "from",
        "name"
      ],
      "additionalProperties": false
    },
    "CayenneAcceleratedDataset": {
      "description": "Dataset with cayenne acceleration engine.",
      "type": "object",
      "properties": {
        "from": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "acceleration": {
          "type": "object",
          "properties": {
            "engine": {
              "type": "string",
              "const": "cayenne"
            },
            "params": {
              "description": "Configuration parameters for the cayenne acceleration engine.",
              "anyOf": [
                {
                  "$ref": "#/$defs/CayenneAcceleratorParams"
                },
                {
                  "type": "null"
                }
              ]
            }
          },
          "additionalProperties": true
        },
        "description": {
          "type": [
            "string",
            "null"
          ]
        },
        "metadata": {
          "type": "object",
          "additionalProperties": true
        },
        "columns": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/Column"
          }
        },
        "access": {
          "$ref": "#/$defs/AccessMode"
        },
        "params": {
          "anyOf": [
            {
              "$ref": "#/$defs/Params"
            },
            {
              "type": "null"
            }
          ]
        },
        "has_metadata_table": {
          "type": [
            "boolean",
            "null"
          ]
        },
        "replication": {
          "anyOf": [
            {
              "$ref": "#/$defs/Replication"
            },
            {
              "type": "null"
            }
          ]
        },
        "time_column": {
          "type": [
            "string",
            "null"
          ]
        },
        "time_format": {
          "anyOf": [
            {
              "$ref": "#/$defs/TimeFormat"
            },
            {
              "type": "null"
            }
          ]
        },
        "time_partition_column": {
          "type": [
            "string",
            "null"
          ]
        },
        "time_partition_format": {
          "anyOf": [
            {
              "$ref": "#/$defs/TimeFormat"
            },
            {
              "type": "null"
            }
          ]
        },
        "embeddings": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/ColumnEmbeddingConfig"
          }
        },
        "dependsOn": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "invalid_type_action": {
          "anyOf": [
            {
              "$ref": "#/$defs/InvalidTypeAction"
            },
            {
              "type": "null"
            }
          ],
          "deprecated": true
        },
        "unsupported_type_action": {
          "anyOf": [
            {
              "$ref": "#/$defs/UnsupportedTypeAction"
            },
            {
              "type": "null"
            }
          ]
        },
        "ready_state": {
          "$ref": "#/$defs/ReadyState"
        },
        "metrics": {
          "anyOf": [
            {
              "$ref": "#/$defs/Metrics"
            },
            {
              "type": "null"
            }
          ]
        },
        "vectors": {
          "anyOf": [
            {
              "$ref": "#/$defs/VectorStore"
            },
            {
              "type": "null"
            }
          ]
        },
        "check_availability": {
          "$ref": "#/$defs/CheckAvailability"
        }
      },
      "required": [
        "from",
        "name"
      ],
      "additionalProperties": false
    },
    "IcebergCatalog": {
      "type": "object",
      "properties": {
        "from": {
          "description": "Catalog source for iceberg connector. Format: iceberg:<catalog_path>",
          "type": "string",
          "pattern": "^iceberg:"
        },
        "name": {
          "type": "string"
        },
        "params": {
          "description": "Connection parameters for the iceberg catalog connector.",
          "anyOf": [
            {
              "$ref": "#/$defs/IcebergCatalogParams"
            },
            {
              "type": "null"
            }
          ]
        },
        "description": {
          "type": [
            "string",
            "null"
          ]
        },
        "metadata": {
          "type": "object",
          "additionalProperties": true
        },
        "access": {
          "$ref": "#/$defs/AccessMode"
        },
        "include": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "dataset_params": {
          "anyOf": [
            {
              "$ref": "#/$defs/Params"
            },
            {
              "type": "null"
            }
          ]
        },
        "dependsOn": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "metrics": {
          "anyOf": [
            {
              "$ref": "#/$defs/Metrics"
            },
            {
              "type": "null"
            }
          ]
        }
      },
      "required": [
        "from",
        "name"
      ],
      "additionalProperties": false
    },
    "SpiceAiCatalog": {
      "type": "object",
      "properties": {
        "from": {
          "description": "Catalog source for spice.ai connector. Format: spice.ai:<catalog_path>",
          "type": "string",
          "pattern": "^spice\\.ai:"
        },
        "name": {
          "type": "string"
        },
        "params": {
          "description": "Connection parameters for the spice.ai catalog connector.",
          "anyOf": [
            {
              "$ref": "#/$defs/SpiceAiCatalogParams"
            },
            {
              "type": "null"
            }
          ]
        },
        "description": {
          "type": [
            "string",
            "null"
          ]
        },
        "metadata": {
          "type": "object",
          "additionalProperties": true
        },
        "access": {
          "$ref": "#/$defs/AccessMode"
        },
        "include": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "dataset_params": {
          "anyOf": [
            {
              "$ref": "#/$defs/Params"
            },
            {
              "type": "null"
            }
          ]
        },
        "dependsOn": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "metrics": {
          "anyOf": [
            {
              "$ref": "#/$defs/Metrics"
            },
            {
              "type": "null"
            }
          ]
        }
      },
      "required": [
        "from",
        "name"
      ],
      "additionalProperties": false
    },
    "UnityCatalogCatalog": {
      "type": "object",
      "properties": {
        "from": {
          "description": "Catalog source for unity_catalog connector. Format: unity_catalog:<catalog_path>",
          "type": "string",
          "pattern": "^unity_catalog:"
        },
        "name": {
          "type": "string"
        },
        "params": {
          "description": "Connection parameters for the unity_catalog catalog connector.",
          "anyOf": [
            {
              "$ref": "#/$defs/UnityCatalogCatalogParams"
            },
            {
              "type": "null"
            }
          ]
        },
        "description": {
          "type": [
            "string",
            "null"
          ]
        },
        "metadata": {
          "type": "object",
          "additionalProperties": true
        },
        "access": {
          "$ref": "#/$defs/AccessMode"
        },
        "include": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "dataset_params": {
          "anyOf": [
            {
              "$ref": "#/$defs/Params"
            },
            {
              "type": "null"
            }
          ]
        },
        "dependsOn": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "metrics": {
          "anyOf": [
            {
              "$ref": "#/$defs/Metrics"
            },
            {
              "type": "null"
            }
          ]
        }
      },
      "required": [
        "from",
        "name"
      ],
      "additionalProperties": false
    },
    "DatabricksCatalog": {
      "type": "object",
      "properties": {
        "from": {
          "description": "Catalog source for databricks connector. Format: databricks:<catalog_path>",
          "type": "string",
          "pattern": "^databricks:"
        },
        "name": {
          "type": "string"
        },
        "params": {
          "description": "Connection parameters for the databricks catalog connector.",
          "anyOf": [
            {
              "$ref": "#/$defs/DatabricksCatalogParams"
            },
            {
              "type": "null"
            }
          ]
        },
        "description": {
          "type": [
            "string",
            "null"
          ]
        },
        "metadata": {
          "type": "object",
          "additionalProperties": true
        },
        "access": {
          "$ref": "#/$defs/AccessMode"
        },
        "include": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "dataset_params": {
          "anyOf": [
            {
              "$ref": "#/$defs/Params"
            },
            {
              "type": "null"
            }
          ]
        },
        "dependsOn": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "metrics": {
          "anyOf": [
            {
              "$ref": "#/$defs/Metrics"
            },
            {
              "type": "null"
            }
          ]
        }
      },
      "required": [
        "from",
        "name"
      ],
      "additionalProperties": false
    },
    "OpenaiModel": {
      "type": "object",
      "properties": {
        "from": {
          "description": "Model source for openai provider. Format: openai:<model_id>",
          "type": "string",
          "pattern": "^openai:"
        },
        "name": {
          "type": "string"
        },
        "params": {
          "description": "Configuration parameters for the openai model provider.",
          "anyOf": [
            {
              "$ref": "#/$defs/OpenaiModelParams"
            },
            {
              "type": "null"
            }
          ]
        },
        "description": {
          "type": [
            "string",
            "null"
          ]
        },
        "metadata": {
          "type": "object",
          "additionalProperties": true
        },
        "files": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/ModelFile"
          }
        },
        "datasets": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "dependsOn": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "metrics": {
          "anyOf": [
            {
              "$ref": "#/$defs/Metrics"
            },
            {
              "type": "null"
            }
          ]
        }
      },
      "required": [
        "from",
        "name"
      ],
      "additionalProperties": false
    },
    "AzureModel": {
      "type": "object",
      "properties": {
        "from": {
          "description": "Model source for azure provider. Format: azure:<model_id>",
          "type": "string",
          "pattern": "^azure:"
        },
        "name": {
          "type": "string"
        },
        "params": {
          "description": "Configuration parameters for the azure model provider.",
          "anyOf": [
            {
              "$ref": "#/$defs/AzureModelParams"
            },
            {
              "type": "null"
            }
          ]
        },
        "description": {
          "type": [
            "string",
            "null"
          ]
        },
        "metadata": {
          "type": "object",
          "additionalProperties": true
        },
        "files": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/ModelFile"
          }
        },
        "datasets": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "dependsOn": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "metrics": {
          "anyOf": [
            {
              "$ref": "#/$defs/Metrics"
            },
            {
              "type": "null"
            }
          ]
        }
      },
      "required": [
        "from",
        "name"
      ],
      "additionalProperties": false
    },
    "FileModel": {
      "type": "object",
      "properties": {
        "from": {
          "description": "Model source for file provider. Format: file:<model_id>",
          "type": "string",
          "pattern": "^file:"
        },
        "name": {
          "type": "string"
        },
        "params": {
          "description": "Configuration parameters for the file model provider.",
          "anyOf": [
            {
              "$ref": "#/$defs/FileModelParams"
            },
            {
              "type": "null"
            }
          ]
        },
        "description": {
          "type": [
            "string",
            "null"
          ]
        },
        "metadata": {
          "type": "object",
          "additionalProperties": true
        },
        "files": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/ModelFile"
          }
        },
        "datasets": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "dependsOn": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "metrics": {
          "anyOf": [
            {
              "$ref": "#/$defs/Metrics"
            },
            {
              "type": "null"
            }
          ]
        }
      },
      "required": [
        "from",
        "name"
      ],
      "additionalProperties": false
    },
    "DatabricksModel": {
      "type": "object",
      "properties": {
        "from": {
          "description": "Model source for databricks provider. Format: databricks:<model_id>",
          "type": "string",
          "pattern": "^databricks:"
        },
        "name": {
          "type": "string"
        },
        "params": {
          "description": "Configuration parameters for the databricks model provider.",
          "anyOf": [
            {
              "$ref": "#/$defs/DatabricksModelParams"
            },
            {
              "type": "null"
            }
          ]
        },
        "description": {
          "type": [
            "string",
            "null"
          ]
        },
        "metadata": {
          "type": "object",
          "additionalProperties": true
        },
        "files": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/ModelFile"
          }
        },
        "datasets": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "dependsOn": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "metrics": {
          "anyOf": [
            {
              "$ref": "#/$defs/Metrics"
            },
            {
              "type": "null"
            }
          ]
        }
      },
      "required": [
        "from",
        "name"
      ],
      "additionalProperties": false
    },
    "HuggingfaceModel": {
      "type": "object",
      "properties": {
        "from": {
          "description": "Model source for huggingface provider. Format: huggingface:<model_id>",
          "type": "string",
          "pattern": "^huggingface:"
        },
        "name": {
          "type": "string"
        },
        "params": {
          "description": "Configuration parameters for the huggingface model provider.",
          "anyOf": [
            {
              "$ref": "#/$defs/HuggingfaceModelParams"
            },
            {
              "type": "null"
            }
          ]
        },
        "description": {
          "type": [
            "string",
            "null"
          ]
        },
        "metadata": {
          "type": "object",
          "additionalProperties": true
        },
        "files": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/ModelFile"
          }
        },
        "datasets": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "dependsOn": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "metrics": {
          "anyOf": [
            {
              "$ref": "#/$defs/Metrics"
            },
            {
              "type": "null"
            }
          ]
        }
      },
      "required": [
        "from",
        "name"
      ],
      "additionalProperties": false
    },
    "AnthropicModel": {
      "type": "object",
      "properties": {
        "from": {
          "description": "Model source for anthropic provider. Format: anthropic:<model_id>",
          "type": "string",
          "pattern": "^anthropic:"
        },
        "name": {
          "type": "string"
        },
        "params": {
          "description": "Configuration parameters for the anthropic model provider.",
          "anyOf": [
            {
              "$ref": "#/$defs/AnthropicModelParams"
            },
            {
              "type": "null"
            }
          ]
        },
        "description": {
          "type": [
            "string",
            "null"
          ]
        },
        "metadata": {
          "type": "object",
          "additionalProperties": true
        },
        "files": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/ModelFile"
          }
        },
        "datasets": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "dependsOn": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "metrics": {
          "anyOf": [
            {
              "$ref": "#/$defs/Metrics"
            },
            {
              "type": "null"
            }
          ]
        }
      },
      "required": [
        "from",
        "name"
      ],
      "additionalProperties": false
    },
    "PerplexityModel": {
      "type": "object",
      "properties": {
        "from": {
          "description": "Model source for perplexity provider. Format: perplexity:<model_id>",
          "type": "string",
          "pattern": "^perplexity:"
        },
        "name": {
          "type": "string"
        },
        "params": {
          "description": "Configuration parameters for the perplexity model provider.",
          "anyOf": [
            {
              "$ref": "#/$defs/PerplexityModelParams"
            },
            {
              "type": "null"
            }
          ]
        },
        "description": {
          "type": [
            "string",
            "null"
          ]
        },
        "metadata": {
          "type": "object",
          "additionalProperties": true
        },
        "files": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/ModelFile"
          }
        },
        "datasets": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "dependsOn": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "metrics": {
          "anyOf": [
            {
              "$ref": "#/$defs/Metrics"
            },
            {
              "type": "null"
            }
          ]
        }
      },
      "required": [
        "from",
        "name"
      ],
      "additionalProperties": false
    },
    "XaiModel": {
      "type": "object",
      "properties": {
        "from": {
          "description": "Model source for xai provider. Format: xai:<model_id>",
          "type": "string",
          "pattern": "^xai:"
        },
        "name": {
          "type": "string"
        },
        "params": {
          "description": "Configuration parameters for the xai model provider.",
          "anyOf": [
            {
              "$ref": "#/$defs/XaiModelParams"
            },
            {
              "type": "null"
            }
          ]
        },
        "description": {
          "type": [
            "string",
            "null"
          ]
        },
        "metadata": {
          "type": "object",
          "additionalProperties": true
        },
        "files": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/ModelFile"
          }
        },
        "datasets": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "dependsOn": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "metrics": {
          "anyOf": [
            {
              "$ref": "#/$defs/Metrics"
            },
            {
              "type": "null"
            }
          ]
        }
      },
      "required": [
        "from",
        "name"
      ],
      "additionalProperties": false
    },
    "BedrockModel": {
      "type": "object",
      "properties": {
        "from": {
          "description": "Model source for bedrock provider. Format: bedrock:<model_id>",
          "type": "string",
          "pattern": "^bedrock:"
        },
        "name": {
          "type": "string"
        },
        "params": {
          "description": "Configuration parameters for the bedrock model provider.",
          "anyOf": [
            {
              "$ref": "#/$defs/BedrockModelParams"
            },
            {
              "type": "null"
            }
          ]
        },
        "description": {
          "type": [
            "string",
            "null"
          ]
        },
        "metadata": {
          "type": "object",
          "additionalProperties": true
        },
        "files": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/ModelFile"
          }
        },
        "datasets": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "dependsOn": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "metrics": {
          "anyOf": [
            {
              "$ref": "#/$defs/Metrics"
            },
            {
              "type": "null"
            }
          ]
        }
      },
      "required": [
        "from",
        "name"
      ],
      "additionalProperties": false
    },
    "GoogleModel": {
      "type": "object",
      "properties": {
        "from": {
          "description": "Model source for google provider. Format: google:<model_id>",
          "type": "string",
          "pattern": "^google:"
        },
        "name": {
          "type": "string"
        },
        "params": {
          "description": "Configuration parameters for the google model provider.",
          "anyOf": [
            {
              "$ref": "#/$defs/GoogleModelParams"
            },
            {
              "type": "null"
            }
          ]
        },
        "description": {
          "type": [
            "string",
            "null"
          ]
        },
        "metadata": {
          "type": "object",
          "additionalProperties": true
        },
        "files": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/ModelFile"
          }
        },
        "datasets": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "dependsOn": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "metrics": {
          "anyOf": [
            {
              "$ref": "#/$defs/Metrics"
            },
            {
              "type": "null"
            }
          ]
        }
      },
      "required": [
        "from",
        "name"
      ],
      "additionalProperties": false
    },
    "GenericDataset": {
      "description": "Generic dataset for custom or unknown connectors.",
      "type": "object",
      "properties": {
        "from": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "params": {
          "description": "Connection parameters for the data connector.",
          "anyOf": [
            {
              "$ref": "#/$defs/Params"
            },
            {
              "type": "null"
            }
          ]
        },
        "description": {
          "type": [
            "string",
            "null"
          ]
        },
        "metadata": {
          "type": "object",
          "additionalProperties": true
        },
        "columns": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/Column"
          }
        },
        "access": {
          "$ref": "#/$defs/AccessMode"
        },
        "has_metadata_table": {
          "type": [
            "boolean",
            "null"
          ]
        },
        "replication": {
          "anyOf": [
            {
              "$ref": "#/$defs/Replication"
            },
            {
              "type": "null"
            }
          ]
        },
        "time_column": {
          "type": [
            "string",
            "null"
          ]
        },
        "time_format": {
          "anyOf": [
            {
              "$ref": "#/$defs/TimeFormat"
            },
            {
              "type": "null"
            }
          ]
        },
        "time_partition_column": {
          "type": [
            "string",
            "null"
          ]
        },
        "time_partition_format": {
          "anyOf": [
            {
              "$ref": "#/$defs/TimeFormat"
            },
            {
              "type": "null"
            }
          ]
        },
        "acceleration": {
          "anyOf": [
            {
              "$ref": "#/$defs/Acceleration"
            },
            {
              "type": "null"
            }
          ]
        },
        "embeddings": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/ColumnEmbeddingConfig"
          }
        },
        "dependsOn": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "invalid_type_action": {
          "anyOf": [
            {
              "$ref": "#/$defs/InvalidTypeAction"
            },
            {
              "type": "null"
            }
          ],
          "deprecated": true
        },
        "unsupported_type_action": {
          "anyOf": [
            {
              "$ref": "#/$defs/UnsupportedTypeAction"
            },
            {
              "type": "null"
            }
          ]
        },
        "ready_state": {
          "$ref": "#/$defs/ReadyState"
        },
        "metrics": {
          "anyOf": [
            {
              "$ref": "#/$defs/Metrics"
            },
            {
              "type": "null"
            }
          ]
        },
        "vectors": {
          "anyOf": [
            {
              "$ref": "#/$defs/VectorStore"
            },
            {
              "type": "null"
            }
          ]
        },
        "check_availability": {
          "$ref": "#/$defs/CheckAvailability"
        }
      },
      "required": [
        "from",
        "name"
      ],
      "additionalProperties": false
    },
    "GenericCatalog": {
      "description": "Generic catalog for custom or unknown connectors.",
      "type": "object",
      "properties": {
        "from": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "params": {
          "description": "Connection parameters for the catalog connector.",
          "anyOf": [
            {
              "$ref": "#/$defs/Params"
            },
            {
              "type": "null"
            }
          ]
        },
        "description": {
          "type": [
            "string",
            "null"
          ]
        },
        "metadata": {
          "type": "object",
          "additionalProperties": true
        },
        "access": {
          "$ref": "#/$defs/AccessMode"
        },
        "include": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "dataset_params": {
          "anyOf": [
            {
              "$ref": "#/$defs/Params"
            },
            {
              "type": "null"
            }
          ]
        },
        "dependsOn": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "metrics": {
          "anyOf": [
            {
              "$ref": "#/$defs/Metrics"
            },
            {
              "type": "null"
            }
          ]
        }
      },
      "required": [
        "from",
        "name"
      ],
      "additionalProperties": false
    },
    "GenericModel": {
      "description": "Generic model for custom or unknown model sources.",
      "type": "object",
      "properties": {
        "from": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "params": {
          "description": "Configuration parameters for the model provider.",
          "anyOf": [
            {
              "$ref": "#/$defs/Params"
            },
            {
              "type": "null"
            }
          ]
        },
        "description": {
          "type": [
            "string",
            "null"
          ]
        },
        "metadata": {
          "type": "object",
          "additionalProperties": true
        },
        "files": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/ModelFile"
          }
        },
        "datasets": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "dependsOn": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "metrics": {
          "anyOf": [
            {
              "$ref": "#/$defs/Metrics"
            },
            {
              "type": "null"
            }
          ]
        }
      },
      "required": [
        "from",
        "name"
      ],
      "additionalProperties": false
    }
  },
  "x-spice-connectors": {
    "dataConnectors": [
      {
        "name": "dynamodb",
        "prefix": "dynamodb",
        "paramsRef": "#/$defs/DynamodbDataConnectorParams",
        "schemaRef": "#/$defs/DynamodbDataset"
      },
      {
        "name": "file",
        "prefix": "file",
        "paramsRef": "#/$defs/FileDataConnectorParams",
        "schemaRef": "#/$defs/FileDataset"
      },
      {
        "name": "kafka",
        "prefix": "kafka",
        "paramsRef": "#/$defs/KafkaDataConnectorParams",
        "schemaRef": "#/$defs/KafkaDataset"
      },
      {
        "name": "spice.ai",
        "prefix": "spiceai",
        "paramsRef": "#/$defs/SpiceAiDataConnectorParams",
        "schemaRef": "#/$defs/SpiceAiDataset"
      },
      {
        "name": "debezium",
        "prefix": "debezium",
        "paramsRef": "#/$defs/DebeziumDataConnectorParams",
        "schemaRef": "#/$defs/DebeziumDataset"
      },
      {
        "name": "git",
        "prefix": "git",
        "paramsRef": "#/$defs/GitDataConnectorParams",
        "schemaRef": "#/$defs/GitDataset"
      },
      {
        "name": "s3",
        "prefix": "s3",
        "paramsRef": "#/$defs/S3DataConnectorParams",
        "schemaRef": "#/$defs/S3Dataset"
      },
      {
        "name": "glue",
        "prefix": "glue",
        "paramsRef": "#/$defs/GlueDataConnectorParams",
        "schemaRef": "#/$defs/GlueDataset"
      },
      {
        "name": "sink",
        "prefix": "sink",
        "paramsRef": "#/$defs/SinkDataConnectorParams",
        "schemaRef": "#/$defs/SinkDataset"
      },
      {
        "name": "github",
        "prefix": "github",
        "paramsRef": "#/$defs/GithubDataConnectorParams",
        "schemaRef": "#/$defs/GithubDataset"
      },
      {
        "name": "http",
        "prefix": "http",
        "paramsRef": "#/$defs/HttpDataConnectorParams",
        "schemaRef": "#/$defs/HttpDataset"
      },
      {
        "name": "https",
        "prefix": "http",
        "paramsRef": "#/$defs/HttpsDataConnectorParams",
        "schemaRef": "#/$defs/HttpsDataset"
      },
      {
        "name": "memory",
        "prefix": "memory",
        "paramsRef": "#/$defs/MemoryDataConnectorParams",
        "schemaRef": "#/$defs/MemoryDataset"
      },
      {
        "name": "iceberg",
        "prefix": "iceberg",
        "paramsRef": "#/$defs/IcebergDataConnectorParams",
        "schemaRef": "#/$defs/IcebergDataset"
      },
      {
        "name": "localpod",
        "prefix": "localpod",
        "paramsRef": "#/$defs/LocalpodDataConnectorParams",
        "schemaRef": "#/$defs/LocalpodDataset"
      },
      {
        "name": "gs",
        "prefix": "gcs",
        "paramsRef": "#/$defs/GsDataConnectorParams",
        "schemaRef": "#/$defs/GsDataset"
      },
      {
        "name": "gcs",
        "prefix": "gcs",
        "paramsRef": "#/$defs/GcsDataConnectorParams",
        "schemaRef": "#/$defs/GcsDataset"
      },
      {
        "name": "abfs",
        "prefix": "abfs",
        "paramsRef": "#/$defs/AbfsDataConnectorParams",
        "schemaRef": "#/$defs/AbfsDataset"
      },
      {
        "name": "abfss",
        "prefix": "abfs",
        "paramsRef": "#/$defs/AbfssDataConnectorParams",
        "schemaRef": "#/$defs/AbfssDataset"
      }
    ],
    "dataAccelerators": [
      {
        "name": "arrow",
        "prefix": "arrow",
        "paramsRef": "#/$defs/ArrowAcceleratorParams"
      },
      {
        "name": "duckdb",
        "prefix": "duckdb",
        "paramsRef": "#/$defs/DuckdbAcceleratorParams"
      },
      {
        "name": "duckdb",
        "prefix": "duckdb",
        "paramsRef": "#/$defs/DuckdbAcceleratorParams"
      },
      {
        "name": "arrow",
        "prefix": "arrow",
        "paramsRef": "#/$defs/ArrowAcceleratorParams"
      },
      {
        "name": "turso",
        "prefix": "turso",
        "paramsRef": "#/$defs/TursoAcceleratorParams"
      },
      {
        "name": "duckdb",
        "prefix": "duckdb",
        "paramsRef": "#/$defs/DuckdbAcceleratorParams"
      },
      {
        "name": "sqlite",
        "prefix": "sqlite",
        "paramsRef": "#/$defs/SqliteAcceleratorParams"
      },
      {
        "name": "postgres",
        "prefix": "pg",
        "paramsRef": "#/$defs/PostgresAcceleratorParams"
      },
      {
        "name": "cayenne",
        "prefix": "cayenne",
        "paramsRef": "#/$defs/CayenneAcceleratorParams"
      }
    ],
    "catalogConnectors": [
      {
        "name": "iceberg",
        "prefix": "iceberg",
        "paramsRef": "#/$defs/IcebergCatalogParams",
        "schemaRef": "#/$defs/IcebergCatalog"
      },
      {
        "name": "spice.ai",
        "prefix": "spiceai",
        "paramsRef": "#/$defs/SpiceAiCatalogParams",
        "schemaRef": "#/$defs/SpiceAiCatalog"
      },
      {
        "name": "unity_catalog",
        "prefix": "unity_catalog",
        "paramsRef": "#/$defs/UnityCatalogCatalogParams",
        "schemaRef": "#/$defs/UnityCatalogCatalog"
      },
      {
        "name": "databricks",
        "prefix": "databricks",
        "paramsRef": "#/$defs/DatabricksCatalogParams",
        "schemaRef": "#/$defs/DatabricksCatalog"
      }
    ],
    "modelSources": [
      {
        "name": "openai",
        "prefix": "openai",
        "paramsRef": "#/$defs/OpenaiModelParams",
        "schemaRef": "#/$defs/OpenaiModel"
      },
      {
        "name": "azure",
        "prefix": "azure",
        "paramsRef": "#/$defs/AzureModelParams",
        "schemaRef": "#/$defs/AzureModel"
      },
      {
        "name": "file",
        "prefix": "file",
        "paramsRef": "#/$defs/FileModelParams",
        "schemaRef": "#/$defs/FileModel"
      },
      {
        "name": "databricks",
        "prefix": "databricks",
        "paramsRef": "#/$defs/DatabricksModelParams",
        "schemaRef": "#/$defs/DatabricksModel"
      },
      {
        "name": "huggingface",
        "prefix": "huggingface",
        "paramsRef": "#/$defs/HuggingfaceModelParams",
        "schemaRef": "#/$defs/HuggingfaceModel"
      },
      {
        "name": "anthropic",
        "prefix": "anthropic",
        "paramsRef": "#/$defs/AnthropicModelParams",
        "schemaRef": "#/$defs/AnthropicModel"
      },
      {
        "name": "perplexity",
        "prefix": "perplexity",
        "paramsRef": "#/$defs/PerplexityModelParams",
        "schemaRef": "#/$defs/PerplexityModel"
      },
      {
        "name": "xai",
        "prefix": "xai",
        "paramsRef": "#/$defs/XaiModelParams",
        "schemaRef": "#/$defs/XaiModel"
      },
      {
        "name": "bedrock",
        "prefix": "bedrock",
        "paramsRef": "#/$defs/BedrockModelParams",
        "schemaRef": "#/$defs/BedrockModel"
      },
      {
        "name": "google",
        "prefix": "google",
        "paramsRef": "#/$defs/GoogleModelParams",
        "schemaRef": "#/$defs/GoogleModel"
      }
    ]
  }
}
