The watsonx_data service has 17 resource kinds, each listed below with its endpoints, fields, and dependencies. Values resolve late, so you reference another resource with ${kind.ref_name}. For defaults, validation rules, and examples, run wxctl explain <kind>.
  • Envelope: A config is one or more YAML documents separated by ---. Each has top-level kind and ref_name, then the fields below at the top level (not nested under spec).
  • ref_name: Unique handle for this resource within the config. Used to reference it from other resources, then stripped before the API call (not a schema field).
  • References: Reference another resource by its ref_name: ${<kind>.<ref_name>} resolves to its id, ${<kind>.<ref_name>.<field>} to a specific field. Values resolve late, at plan/apply time.

database_connection

Credential-holding kind for external database connections consumed by database_registration. Runs on SaaS + Software · ID field ref_name Endpoints
OperationMethodPath
CreatePOST/local/database_connections
ReadGET/local/database_connections/{ref_name}
DeleteDELETE/local/database_connections/{ref_name}
Fields
FieldTypeRequiredDescription
typestringRequiredConnector type. Drives the active variant, fields outside the active variant emit WXCTL-V401 (warn); unknown types likewise warn rather than block.
Consumers
  • database_registration.connection (required)

database_registration

Registers an external database (Db2, PostgreSQL, MySQL, Kafka, etc.) with watsonx.data and atomically creates its associated catalog. Runs on SaaS + Software · ID field id Endpoints
OperationMethodPath
CreatePOST/v3/database_registrations
ReadGET/v3/database_registrations/{id}
ListGET/v3/database_registrations
UpdatePATCH/v3/database_registrations/{id}
DeleteDELETE/v3/database_registrations/{id}
Fields
FieldTypeRequiredDescription
display_namestringRequired
descriptionstringOptional
connectionstringRequiredReference to a database_connection. The handler derives the type: and every connection.* wire-body field from the linked connection’s active variant. Immutable, rotating credentials happens on the connection; changing which connection backs a registration changes the registration’s identity.
tagsarray<string>Optional
associated_catalogobjectRequiredCatalog created atomically with the registration.
Computed outputs: id, catalog_name. Depends on
  • connectiondatabase_connection (required)
Consumers
  • ingestion_job.target.catalog (optional)
  • prestissimo_engine.associated_catalogs (optional)
  • presto_engine.associated_catalogs (optional)
  • sal_enrichment_job.changes.catalog (optional)
  • spark_engine.associated_catalogs (optional)

db2_engine

A Db2 Engine registers an external IBM Db2 instance as a federated query engine in watsonx.data. Runs on SaaS + Software · ID field id Endpoints
OperationMethodPath
CreatePOST/v3/db2_engines
ReadGET/v3/db2_engines/{id}
ListGET/v3/db2_engines?limit=100
UpdatePATCH/v3/db2_engines/{id}
DeleteDELETE/v3/db2_engines/{id}
Fields
FieldTypeRequiredDescription
display_namestringRequiredHuman-readable engine name; unique within the instance.
originstringRequiredEngine origin. External Db2 registration uses external.
descriptionstringOptional
tagsarray<string>Optional
configurationobjectRequiredExternal connection details. Sent on create only; the API enriches this object on reads, so it is excluded from drift detection.
Computed outputs: id.

ingestion_job

An Ingestion Job loads data from object storage (CSV, Parquet, JSON, ORC, Avro, or txt) into a watsonx.data lakehouse table. Runs on SaaS + Software · ID field id Endpoints
OperationMethodPath
CreatePOST/v3/lhingestion/api/v1/ingestion/jobs
ReadGET/v3/lhingestion/api/v1/ingestion/jobs/{id}
ListGET/v3/lhingestion/api/v1/ingestion/jobs?limit=100
DeleteDELETE/v3/lhingestion/api/v1/ingestion/jobs/{id}
Fields
FieldTypeRequiredDescription
idstringRequiredUser-supplied job identifier (unique per instance). Also used as the resource id in get and delete paths.
engine_idstringOptionalId of the Spark engine to run this ingestion on. Optional, when omitted the instance default engine is used. References a spark_engine resource.
sourceobjectRequiredSource descriptor, file paths, format, and bucket details. See the OpenAPI SourceDetails schema for the full shape.
targetobjectRequiredTarget table descriptor, catalog, schema, table, and write mode.
partition_bystringOptionalComma-delimited list of target table columns to partition by (e.g., date,region).
execute_configobjectOptionalDriver/executor resource configuration (cores, memory, instances). Defaults are instance-wide; provide only to override.
generationstringOptionalOptional nonce folded into the identity hash. Set any new value to force a fresh ingestion run with all other inputs unchanged; the prior run is retained (accumulate). LocalOnly, never sent to the API body.
Computed outputs: status. Depends on
  • engine_idspark_engine (optional)
  • source.file_pathss3_bucket (optional)
  • source.file_pathss3_object (optional)
  • target.catalogstorage_registration (required)
  • target.catalogdatabase_registration (optional)
  • target.schemaschema (required)

integration

Registers an external governance / lineage service with watsonx.data, IBM Knowledge Catalog (ikc), Apache Ranger (ranger), Manta lineage (manta), or Databand (databand). Runs on SaaS + Software · ID field id Endpoints
OperationMethodPath
CreatePOST/v3/integrations
ReadGET/v3/integrations/{id}
ListGET/v3/integrations
UpdatePATCH/v3/integrations/{id}
DeleteDELETE/v3/integrations/{id}
Fields
FieldTypeRequiredDescription
typestringRequiredIntegration type, the identity field (one integration per type). Sent verbatim as type. (The IBM OpenAPI’s service_type name is REJECTED by the live 2.3.x Software API, json: unknown field "service_type"; live-discovered on CP4D 2026-06-05.)
urlstringOptionalIntegration endpoint URL (all types).
apikeystringOptionalAPI key (ikc, manta). ${env:}-sourced; excluded from drift.
usernamestringOptionalUsername (ikc, manta, ranger).
passwordstringOptionalPassword (ranger). ${env:}-sourced; excluded from drift.
access_tokenstringOptionalAccess token (databand). ${env:}-sourced; excluded from drift.
catalogsobjectOptionalBucket catalogs governed by this integration (the UI’s “Bucket catalog” field). Sent as catalogs.catalog_names. (The OpenAPI’s flat storage_catalogs array is REJECTED by the live 2.3.x Software API, json: unknown field "storage_catalogs"; live-discovered on CP4D 2026-06-05.)
connection_modestringOptionalConnection mode (manta), e.g. external.
cross_account_integrationbooleanOptionalEnable cross-account IKC integration (IBM Cloud / MCSP).
enable_data_policy_within_wxdbooleanOptionalEnable watsonx.data policy enforcement (ranger).
ikc_user_account_idstringOptionalAccount id for cross-account IKC (use with cross_account_integration).
sslbooleanOptionalSSL enabled (ranger; ikc on CPD). NOT in the published OpenAPI, live-discovered. ⚠️ DO NOT set ssl: true for ikc on watsonx.data 2.3.x Software: although the create then succeeds (with certificate + certificate_extension, below), the backend stores an integration that PANICS the read path, every subsequent GET/list of integrations returns 500 (recovered panic in lhconsole-api-v3 uiMiddleware), which breaks discovery / re-plan / destroy. The watsonx.data UI’s IKC flow does not expose SSL at all; leave ssl unset (the integration then creates AND reads cleanly). Verified on CP4D 2026-06-05.
certificatestringOptionalPEM contents of the endpoint certificate, required when ssl: true. Live-discovered (not in the OpenAPI). Pair with certificate_extension.
certificate_extensionstringOptionalCertificate file extension, pem or crt. Required alongside certificate when ssl: true. Live-discovered (not in the OpenAPI).
resourcestringOptionalSelected resource (ranger).
Computed outputs: id.

milvus_service

A Milvus Service is the managed Milvus vector store in watsonx.data, the vector backend for embeddings / similarity search (e.g. RAG knowledge bases). Runs on SaaS + Software · ID field id Endpoints
OperationMethodPath
CreatePOST/v3/milvus_services
ReadGET/v3/milvus_services/{id}
ListGET/v3/milvus_services?limit=100
UpdatePATCH/v3/milvus_services/{id}
DeleteDELETE/v3/milvus_services/{id}
Fields
FieldTypeRequiredDescription
display_namestringRequiredHuman-readable service name shown in the watsonx.data UI. Unique within the instance.
originstringRequiredService origin. native is a Milvus service provisioned inside watsonx.data. The only supported value at creation time.
root_pathstringRequiredPath prefix within the backing storage where Milvus vectors are stored, e.g. milvus/vectors. Create-only.
tshirt_sizestringRequiredPredefined size profile for the service. Create-only, resizing goes through the /scale endpoint (out of scope), so a change here is ignored (excluded from drift detection).
storage_namestringOptionalThe registered watsonx.data storage that backs this service’s vector data. Accepts a ${storage_registration.<ref>} ref (resolved to the registration’s id) or a plain storage name string.
descriptionstringOptionalOptional free-text description of the service’s purpose (max 50 chars).
tagsarray<string>OptionalFree-form tags for organizing and filtering services.
index_typestringOptionalVector index algorithm. Accepted by the create API only when tshirt_size: custom, the predefined sizes carry a fixed index type and reject an override (HTTP 400). Create-only; excluded from drift detection.
vector_dimensionintegerOptionalDimensionality of stored vectors (384-4000). Accepted by the create API only when tshirt_size: custom, predefined sizes reject it with HTTP 400 “VectorDimension can only be used with tshirt_size: custom”. Create-only; excluded from drift detection.
statusstringOptionalDesired lifecycle state. Setting paused triggers POST /v3/milvus_services/{id}/pause; setting running triggers /resume. Handled in pre_update via HookOutcome::Handled so the transition does not flow through the normal PATCH path. The pre_create handler strips this field from the create payload, the Milvus create API does not accept a status input.
Computed outputs: id. Depends on
  • storage_namestorage_registration (optional)

other_engine

An Other Engine registers a generic external query engine (anything not covered by the typed presto/spark/db2 kinds) with watsonx.data, identified by a display name plus a connection_string and an engine type. Runs on SaaS + Software · ID field id Endpoints
OperationMethodPath
CreatePOST/v3/other_engines
ReadGET/v3/other_engines/{id}
ListGET/v3/other_engines?limit=100
DeleteDELETE/v3/other_engines/{id}
Fields
FieldTypeRequiredDescription
display_namestringRequiredHuman-readable engine name; unique within the instance.
originstringRequired
descriptionstringOptional
tagsarray<string>Optional
configurationobjectRequiredExternal engine connection details. Sent on create only; excluded from drift detection.
Computed outputs: id.

prestissimo_engine

A Prestissimo Engine is the C++ (Velox-backed) distributed SQL query engine in watsonx.data, the high-performance twin of the Java Presto engine. Runs on SaaS + Software · ID field id Endpoints
OperationMethodPath
CreatePOST/v3/prestissimo_engines
ReadGET/v3/prestissimo_engines/{id}
ListGET/v3/prestissimo_engines?limit=100
UpdatePATCH/v3/prestissimo_engines/{id}
DeleteDELETE/v3/prestissimo_engines/{id}
Fields
FieldTypeRequiredDescription
display_namestringRequiredHuman-readable engine name shown in the watsonx.data UI. Must be unique within the instance.
originstringRequiredEngine origin. native is a Prestissimo engine provisioned inside watsonx.data. The only supported value at creation time.
descriptionstringOptionalOptional free-text description of the engine’s purpose (max 50 chars).
associated_catalogsarray<string>OptionalCatalogs attached to this engine. Accepts either wxctl-managed registrations via &#123;storage_registration.name&#125; / {database_registration.name} refs (resolved to their associated_catalog.catalog_name via the catalog_name computed field) or plain catalog-name strings for catalogs that already exist on the instance and are not managed by wxctl.
tagsarray<string>OptionalFree-form tags for organizing and filtering engines.
configurationobjectRequiredEngine node topology and sizing. Sent on create only; the API enriches this object with runtime fields on subsequent reads, so it is excluded from drift detection.
statusstringOptionalDesired lifecycle state. Setting paused triggers POST /v3/prestissimo_engines/{id}/pause; setting running triggers /resume. Handled in pre_update via HookOutcome::Handled so the transition does not flow through the normal PATCH path. The pre_create handler strips this field from the create payload, the Prestissimo create API does not accept a status input.
Computed outputs: id. Depends on
  • associated_catalogsstorage_registration (optional)
  • associated_catalogsdatabase_registration (optional)
Consumers
  • sal_integration.engine_id (optional)

presto_engine

A Presto Engine is a distributed SQL query engine in watsonx.data that runs analytical queries across lakehouse catalogs and object storage. Runs on SaaS + Software · ID field id Endpoints
OperationMethodPath
CreatePOST/v3/presto_engines
ReadGET/v3/presto_engines/{id}
ListGET/v3/presto_engines?limit=100
UpdatePATCH/v3/presto_engines/{id}
DeleteDELETE/v3/presto_engines/{id}
Fields
FieldTypeRequiredDescription
display_namestringRequiredHuman-readable engine name shown in the watsonx.data UI. Must be unique within the instance.
originstringRequiredEngine origin. native is a Presto engine provisioned inside watsonx.data. The only supported value at creation time.
descriptionstringOptionalOptional free-text description of the engine’s purpose (max 50 chars).
associated_catalogsarray<string>OptionalCatalogs attached to this engine. Accepts either wxctl-managed registrations via &#123;storage_registration.name&#125; / {database_registration.name} refs (resolved to their associated_catalog.catalog_name via the catalog_name computed field) or plain catalog-name strings for catalogs that already exist on the instance and are not managed by wxctl.
tagsarray<string>OptionalFree-form tags for organizing and filtering engines.
configurationobjectRequiredEngine node topology and sizing. Sent on create only; the API enriches this object with runtime fields on subsequent reads, so it is excluded from drift detection.
statusstringOptionalDesired lifecycle state. Setting paused triggers POST /v3/presto_engines/{id}/pause; setting running triggers /resume. Handled in pre_update via HookOutcome::Handled so the transition does not flow through the normal PATCH path. The pre_create handler strips this field from the create payload, the Presto create API does not accept a status input.
Computed outputs: id, external_host_name, host_name. Depends on
  • associated_catalogsstorage_registration (optional)
  • associated_catalogsdatabase_registration (optional)
Consumers
  • sal_integration.engine_id (required)
  • schema.engine_id (required)

sal_enrichment_job

Runs a Semantic Automation Layer (SAL) metadata-enrichment job over a catalog/schema’s tables. Runs on SaaS + Software · ID field id Endpoints
OperationMethodPath
CreatePOST/v3/sal_integration/enrichment
ReadGET/v3/sal_integration/enrichment/jobs
DeleteDELETE/v3/sal_integration/enrichment/jobs
Fields
FieldTypeRequiredDescription
project_idstringOptionalOptional project for sal_enrichment_settings correlation. NOT used for the job-status poll and NOT sent on the create POST (the POST ignores project_id; SAL auto-creates a SAL Mapping /{catalog}/{schema} project per target, which the handler resolves from changes to poll the SAL_MDE job runs). Source via ${env:}.
changesarray<object>RequiredEnrichment job spec, the v3 SalEnrichmentPrototype.changes array. Each element (EnrichmentObj) targets one catalog/schema. (v2 sent a single enrichment_prototype object; v3 wraps it in this array.)
generationstringOptionalOptional nonce folded into the identity hash. Set any new value to force a fresh enrichment run with all other inputs unchanged; prior runs are retained (accumulate). LocalOnly, never sent to the API body.
Computed outputs: id. Depends on
  • changes.catalogstorage_registration (required)
  • changes.catalogdatabase_registration (optional)

sal_enrichment_settings

Per-project metadata-enrichment settings for the Semantic Automation Layer (SAL) on watsonx.data. Runs on SaaS + Software · ID field id Endpoints
OperationMethodPath
CreatePOST/v3/sal_integration/enrichment/project_settings
ReadGET/v3/sal_integration/enrichment/project_settings
DeleteDELETE/v3/sal_integration/enrichment/project_settings
Fields
FieldTypeRequiredDescription
project_idstringRequiredProject these enrichment settings apply to. Sent as the project_id query param on GET (discovery) and POST (create). Source via ${env:}.
semantic_expansionobjectOptionalSemantic-expansion config, description/name generation toggles and assignment/suggestion thresholds. Pass-through object per the SAL spec.
term_assignmentobjectOptionalTerm-assignment config, class/LLM/ML-based assignment toggles and term assignment/suggestion thresholds. Pass-through object per the SAL spec.
Computed outputs: id.

sal_global_settings

Global metadata-enrichment defaults for the Semantic Automation Layer (SAL) on watsonx.data. Runs on SaaS + Software · ID field id Endpoints
OperationMethodPath
CreatePOST/v3/sal_integration/enrichment/global_settings
ReadGET/v3/sal_integration/enrichment/global_settings
DeleteDELETE/v3/sal_integration/enrichment/global_settings
Fields
FieldTypeRequiredDescription
semantic_expansionobjectOptionalSemantic-expansion config, description/name generation toggles and assignment/suggestion thresholds. Pass-through object per the SAL spec.
term_assignmentobjectOptionalTerm-assignment config, class/LLM/ML-based assignment toggles and term assignment/suggestion thresholds. Pass-through object per the SAL spec.
Computed outputs: id.

sal_glossary

Uploads a business-glossary CSV into the watsonx.data Semantic Automation Layer (SAL) and polls the upload process to a terminal state, so a glossary can be uploaded before/around enrichment (richer term assignment). Runs on Software · ID field id Endpoints
OperationMethodPath
CreatePOST/v3/sal_integration/glossary/upload_processes
ReadGET/v3/sal_integration/glossary/upload_processes
DeleteDELETE/v3/sal_integration/glossary/upload_processes
Fields
FieldTypeRequiredDescription
glossary_csvstringRequiredPath to the business-glossary CSV (relative to the config file or absolute). is_path: true ⇒ build.rs adds it to PATH_FIELDS ⇒ resolved against the config dir by resolve_file_paths; LocalOnly so the path is never sent to the API.
replace_optionstringOptionalField-merge strategy for the uploaded terms, sent as an extra multipart text field. Live-confirmed (CP4D) ∈ [all, specified, empty]: all replaces all fields of matching terms, specified only non-empty imported fields, empty only currently-empty fields. NOT a glossary wipe, terms absent from the CSV are retained (no DELETE surface). Omit when unset (do not guess a default into the form).
generationstringOptionalOptional nonce folded into the identity hash. Set any new value to force a fresh upload with all other inputs unchanged; uploaded terms accumulate/merge per replace_option. LocalOnly, never sent to the API body.
csv_content_hashstringOptionalBLAKE3 of the glossary CSV CONTENT, stamped by the handler’s post_validate (do not set by hand). It, not the machine-dependent file path, is folded into the identity hash, so editing the CSV re-runs the upload while moving the file does not. Absent when the file is missing at validation time (an apply-create then still fails in pre_create with a clear file-not-found).
Computed outputs: id.

sal_integration

Enables the Semantic Automation Layer (SAL) on watsonx.data, the metadata-enrichment / auto-cataloging integration that backs IKC governance. Runs on SaaS + Software · ID field engine_id Endpoints
OperationMethodPath
CreatePOST/v3/sal_integration
ReadGET/v3/sal_integration
UpdatePATCH/v3/sal_integration
DeleteDELETE/v3/sal_integration
Fields
FieldTypeRequiredDescription
apikeystringRequiredIAM apikey SAL uses to drive enrichment. ${env:}-sourced; excluded from drift.
engine_idstringRequiredQuery engine SAL runs against. Accepts a ${presto_engine.<ref>.id} ref (also spark_engine / prestissimo_engine) or a plain engine id.
storage_resource_crnstringOptionalCOS storage resource CRN backing SAL metadata.
storage_typestringOptionalStorage type, e.g. bmcos_object_storage. Required in practice on 2.3.x Software: omitting it enables SAL but leaves it in an error state (SAL0050E), whereas sending bmcos_object_storage yields a clean status: active. NOTE the backend REWRITES the stored value (bmcos_object_storageassetfiles on CP4D), so it is deliberately excluded from state_fields below to avoid spurious drift on re-plan. Live-discovered on CP4D 2026-06-05.
trial_planbooleanOptionalWhether SAL runs under a trial plan.
Depends on
  • engine_idpresto_engine (required)
  • engine_idspark_engine (optional)
  • engine_idprestissimo_engine (optional)

schema

A Schema is a logical grouping of tables within a watsonx.data catalog. Runs on SaaS + Software · ID field name Endpoints
OperationMethodPath
CreatePOST/v3/catalogs/{catalog_id}/schemas
ReadGET/v3/catalogs/{catalog_id}/schemas
ListGET/v3/catalogs/{catalog_id}/schemas
DeleteDELETE/v3/catalogs/{catalog_id}/schemas/{name}
Fields
FieldTypeRequiredDescription
namestringRequiredSchema name (unique within the catalog). Also used as the {name} path segment on delete.
custom_pathstringRequiredPath within the catalog’s backing bucket where the schema will be created (e.g., sales/raw). Must not collide with other schemas in the same bucket.
storage_namestringOptionalName of the bucket associated with the catalog. Defaults to the catalog’s primary bucket when omitted.
catalog_idstringRequiredId of the parent catalog. Interpolated into the create, list, and delete paths.
engine_idstringRequiredId of the Presto engine to run the schema DDL against. Sent as ?engine_id=... on both create and delete. References a presto_engine resource.
Depends on
  • catalog_idcatalog (required)
  • catalog_idstorage_registration (optional)
  • engine_idpresto_engine (required)
Consumers
  • ingestion_job.target.schema (required)

spark_engine

A Spark Engine is a serverless Apache Spark execution environment in watsonx.data used for data ingestion jobs, Spark SQL, and general Spark applications. Runs on SaaS + Software · ID field id Endpoints
OperationMethodPath
CreatePOST/v3/spark_engines
ReadGET/v3/spark_engines/{id}
ListGET/v3/spark_engines
UpdatePATCH/v3/spark_engines/{id}
DeleteDELETE/v3/spark_engines/{id}
Fields
FieldTypeRequiredDescription
display_namestringRequiredHuman-readable engine name shown in the watsonx.data UI. Must be unique within the instance.
originstringRequiredEngine origin. native is a Spark engine provisioned inside watsonx.data, supported on classic (lakehouse-enterprise), MCSP (lakehouse-enterprise-mcsp), and CPD. external registers a bring-your-own Spark cluster and requires an api_key field on create.
descriptionstringOptionalOptional free-text description (max 50 chars).
associated_catalogsarray<string>OptionalCatalogs this engine can operate against. Accepts either wxctl-managed registrations via &#123;storage_registration.name&#125; / {database_registration.name} refs (resolved to their associated_catalog.catalog_name via the catalog_name computed field) or plain catalog-name strings for catalogs that already exist on the instance and are not managed by wxctl.
dataplane_namestringOptionalRemote-dataplane placement identifier (CPD only). Leave unset for SaaS.
tagsarray<string>OptionalFree-form tags for organizing and filtering engines.
typestringRequiredEngine flavour. spark is the standard Apache Spark runtime; gluten is the vectorised Velox-backed runtime. Required at the top level of the create body, the API’s opaque 500 on POST is typically caused by this field being omitted.
configurationobjectRequiredEngine configuration, sent on create only (the API enriches this object on reads, so it’s excluded from drift detection). Required sub-fields for origin: native: • default_version, one of 3.4, 3.5, 4.0 (query GET /v3/spark_versions for live values) • engine_home.storage_name, id of a registered storage_registration that will host engine metadata (SAAS; use engine_home.volume_id on CPD instead) • scale_config.node_type + scale_config.number_of_nodes, MCSP accepts tier names (starter, small, medium, large); CPD uses volume-backed sizing. Node counts are capped at 1000. For origin: external, include api_key, connection_string, and instance_id pointing at the existing IBM Analytics Engine deployment.
statusstringOptionalDesired lifecycle state. Setting paused triggers POST /v3/spark_engines/{id}/pause; setting running triggers /resume. Handled in pre_update via HookOutcome::Handled.
Computed outputs: id. Depends on
  • associated_catalogsstorage_registration (optional)
  • associated_catalogsdatabase_registration (optional)
  • associated_catalogss3_bucket (optional)
Consumers
  • ingestion_job.engine_id (optional)
  • sal_integration.engine_id (optional)

storage_registration

Registers an object-store bucket with watsonx.data and atomically creates its associated lakehouse catalog (iceberg or hive). Runs on SaaS + Software · ID field id Endpoints
OperationMethodPath
CreatePOST/v3/storage_registrations
ReadGET/v3/storage_registrations/{id}
ListGET/v3/storage_registrations
UpdatePATCH/v3/storage_registrations/{id}
DeleteDELETE/v3/storage_registrations/{id}
Fields
FieldTypeRequiredDescription
display_namestringRequired
descriptionstringOptional
bucketstringRequiredReference to an s3_bucket (primary), adls_container, or gcs_bucket. The handler derives type:, bucket name, region, endpoint, and credentials from this edge + the bucket’s linked storage_connection. Never a user-set type or inline connection block anymore.
managed_bystringOptional
tagsarray<string>Optional
associated_catalogobjectRequiredCatalog created atomically with the registration.
Computed outputs: id, catalog_name. Depends on
  • buckets3_bucket (required)
  • bucketadls_container (optional)
  • bucketgcs_bucket (optional)
Consumers
  • ingestion_job.target.catalog (required)
  • milvus_service.storage_name (optional)
  • prestissimo_engine.associated_catalogs (optional)
  • presto_engine.associated_catalogs (optional)
  • sal_enrichment_job.changes.catalog (required)
  • schema.catalog_id (optional)
  • spark_engine.associated_catalogs (optional)