← API reference
CANONICAL TYPE REFERENCE

MLModelConfigOutput

ML model configuration for training pipelines

sourceString!

Author-owned XML source envelope used to reproduce and edit this model configuration; runtime results are stored separately.

Monotonic source/configuration revision used to reject stale authoring updates; independent of trained model versions.

Unique identifier

Tenant this config belongs to

nameString!

Config name

Config description

Type of ML model

Engine that trains/serves this model

MicroSQL query for data retrieval. Each SQL page has a 30-second statement timeout; preview sampling does not limit the full training query.

Concept-specific configuration (tabular or time-series)

Status of the latest training run. A published version remains available for serving while retraining or after a failed run.

Blob storage key for the trained model

When the model was last trained (ISO8601)

Duration of last training run in milliseconds

Metrics from last training run

Error message if last training failed; SQL source pages have a 30-second statement timeout

Feature importance from trained model

Per-round evaluation history

Original CSV filename (if CSV data source)

Size of uploaded CSV in bytes

Whether a CSV file has been uploaded as training data

csvPreviewRows[[String!]!]

First few rows of CSV data for preview (header + up to 10 rows)

JSON Schema describing the model's input features (types, enum values). Generated after training.

The pipeline's emitted columns + types (cached from the last preview of the saved config)

ID of the version currently used for predictions

Version number of the published version (e.g. 1, 2, 3)

autoPublishBoolean!

Whether new versions are automatically published after training

isSystemBoolean!

Whether this model is system-managed (auto-created and auto-retrained by the platform)

createdAtString!

Creation timestamp (ISO8601)

updatedAtString!

Last update timestamp (ISO8601)

View exact SDL
"""ML model configuration for training pipelines"""
type MLModelConfigOutput @iac_resource(name: "ml_model_config") @iac_precondition(field: "authoringRevision", input: "expectedRevision") @iac_guide(ref: "ml-guide") @iac_ops(create: "upsertMLModelSource", read: "getMLModelConfig", update: "upsertMLModelSource", delete: "deleteMLModelConfig") {
  """
  Author-owned XML source envelope used to reproduce and edit this model configuration; runtime results are stored separately.
  """
  source: String! @iac_validate(with: ["ml-model-source"]) @iac_artifact(language: XML) @iac_input(path: "sourceXML")
  """
  Monotonic source/configuration revision used to reject stale authoring updates; independent of trained model versions.
  """
  authoringRevision: Int! @iac_computed
  """Unique identifier"""
  id: MLModelConfigID! @iac_identity(assignedBy: SERVER) @iac_computed
  """Tenant this config belongs to"""
  tenantId: TenantID! @iac_computed
  """Config name"""
  name: String! @iac_computed
  """Config description"""
  description: String @iac_computed
  """Type of ML model"""
  modelType: MLModelType! @iac_computed
  """Engine that trains/serves this model"""
  backend: MLBackend! @iac_computed
  """
  MicroSQL query for data retrieval. Each SQL page has a 30-second statement timeout; preview sampling does not limit the full training query.
  """
  dataQuerySQL: String @iac_computed @iac_artifact(language: SQL)
  """Concept-specific configuration (tabular or time-series)"""
  spec: MLModelSpec! @iac_computed @iac_validate(with: ["ml-model-spec"])
  """
  Status of the latest training run. A published version remains available for serving while retraining or after a failed run.
  """
  status: MLModelTrainingStatus! @iac_computed
  """Blob storage key for the trained model"""
  trainedModelID: String @iac_computed
  """When the model was last trained (ISO8601)"""
  lastTrainedAt: String @iac_computed
  """Duration of last training run in milliseconds"""
  trainingDurationMs: Int @iac_computed
  """Metrics from last training run"""
  trainingMetrics: TrainingMetrics @iac_computed
  """
  Error message if last training failed; SQL source pages have a 30-second statement timeout
  """
  trainingError: String @iac_computed
  """Feature importance from trained model"""
  featureImportance: [MLFeatureImportance!] @iac_computed
  """Per-round evaluation history"""
  evaluationHistory: [MLEvaluationEntry!] @iac_computed
  """Original CSV filename (if CSV data source)"""
  csvFilename: String @iac_computed
  """Size of uploaded CSV in bytes"""
  csvSizeBytes: Int @iac_computed
  """Whether a CSV file has been uploaded as training data"""
  hasTrainingCSV: Boolean! @iac_computed
  """First few rows of CSV data for preview (header + up to 10 rows)"""
  csvPreviewRows: [[String!]!] @iac_computed
  """
  JSON Schema describing the model's input features (types, enum values). Generated after training.
  """
  inferenceSchema: String @iac_computed
  """
  The pipeline's emitted columns + types (cached from the last preview of the saved config)
  """
  emittedSchema: [MLEmittedColumn!] @iac_computed
  """ID of the version currently used for predictions"""
  publishedVersionId: MLModelConfigVersionID @iac_writtenBy(operation: "publishMLModelVersion", argument: "versionId")
  """Version number of the published version (e.g. 1, 2, 3)"""
  publishedVersionNumber: Int @iac_computed
  """Whether new versions are automatically published after training"""
  autoPublish: Boolean! @iac_computed
  """
  Whether this model is system-managed (auto-created and auto-retrained by the platform)
  """
  isSystem: Boolean! @iac_computed
  """Creation timestamp (ISO8601)"""
  createdAt: String! @iac_computed
  """Last update timestamp (ISO8601)"""
  updatedAt: String! @iac_computed
}

One stable address across all schema views. Follow a field’s type to explore connections between domains.