> For the complete documentation index, see [llms.txt](https://docs.decube.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.decube.io/public-api/overview/index/virtual-sources.md).

# Virtual Sources

The Virtual Sources API lets you manage virtual sources and their objects programmatically. Use these endpoints to bulk-create asset hierarchies, integrate virtual source management into your data pipelines, or automate the lifecycle of virtual assets.

All write operations require the `admin_data_source:edit` permission. Read operations require `admin_data_source:view`.

{% hint style="info" %}
Virtual objects created via API follow the same Decube data model as those created in the UI. See [Overview](/virtual-sources-and-objects/virtual-sources.md) for an overview of supported object types.
{% endhint %}

## Virtual Sources

### Create a virtual source

Creates a new virtual source. The source name must be unique across all sources in your workspace.

## Create Virtual Source

> Creates a new virtual source using the provided request body.

```json
{"openapi":"3.1.0","info":{"title":"Decube Public API (BETA)","version":"1.0.0"},"servers":[{"url":"https://connect.<REGION>.decube.io/api/v1/data"}],"paths":{"/virtual_sources":{"post":{"tags":["Virtual Sources"],"summary":"Create Virtual Source","description":"Creates a new virtual source using the provided request body.","operationId":"create_virtual_source_virtual_sources_post","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateVirtualSource"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VirtualSourceResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}},"components":{"schemas":{"CreateVirtualSource":{"properties":{"name":{"type":"string","title":"Name"}},"type":"object","required":["name"],"title":"CreateVirtualSource"},"VirtualSourceResponse":{"properties":{"source_id":{"type":"integer","title":"Source Id"}},"type":"object","required":["source_id"],"title":"VirtualSourceResponse"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}}}}
```

### Update a virtual source

Updates the name or description of an existing virtual source.

## Update Virtual Source

> Updates an existing virtual source using the provided request body.

```json
{"openapi":"3.1.0","info":{"title":"Decube Public API (BETA)","version":"1.0.0"},"servers":[{"url":"https://connect.<REGION>.decube.io/api/v1/data"}],"paths":{"/virtual_sources":{"put":{"tags":["Virtual Sources"],"summary":"Update Virtual Source","description":"Updates an existing virtual source using the provided request body.","operationId":"update_virtual_source_virtual_sources_put","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateVirtualSource"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}},"components":{"schemas":{"UpdateVirtualSource":{"properties":{"source_id":{"type":"integer","title":"Source Id"},"name":{"type":"string","title":"Name"}},"type":"object","required":["source_id","name"],"title":"UpdateVirtualSource"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}}}}
```

### Delete a virtual source

Permanently deletes a virtual source and all virtual objects under it. This is irreversible.

## Delete Virtual Source

> Deletes a virtual source by ID.

```json
{"openapi":"3.1.0","info":{"title":"Decube Public API (BETA)","version":"1.0.0"},"servers":[{"url":"https://connect.<REGION>.decube.io/api/v1/data"}],"paths":{"/virtual_sources":{"delete":{"tags":["Virtual Sources"],"summary":"Delete Virtual Source","description":"Deletes a virtual source by ID.","operationId":"delete_virtual_source_virtual_sources_delete","parameters":[{"name":"source_id","in":"query","required":true,"schema":{"type":"integer","title":"Source Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}},"components":{"schemas":{"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}}}}
```

## Virtual Objects

All virtual object endpoints operate only on assets under a virtual source. Passing an identifier that resolves to a native source asset returns a `400`.

### Create a virtual object

Creates a virtual object under a virtual source. Pass a `type` field to specify the asset type — supported values are `COLLECTION` (Schema), `DATASET` (Table), `PROPERTY` (Column), `DATA_JOB`, `DATA_TASK`, `DASHBOARD`, and `CHART`. The asset type cannot be changed after creation.

## Create Virtual Asset

> Creates a new virtual asset using the provided request body.

```json
{"openapi":"3.1.0","info":{"title":"Decube Public API (BETA)","version":"1.0.0"},"servers":[{"url":"https://connect.<REGION>.decube.io/api/v1/data"}],"paths":{"/virtual_assets":{"post":{"tags":["Virtual Assets"],"summary":"Create Virtual Asset","description":"Creates a new virtual asset using the provided request body.","operationId":"create_virtual_asset_virtual_assets_post","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/CreateVirtualSchema"},{"$ref":"#/components/schemas/CreateVirtualTable"},{"$ref":"#/components/schemas/CreateVirtualColumn"},{"$ref":"#/components/schemas/CreateVirtualDataJob"},{"$ref":"#/components/schemas/CreateVirtualDataTask"},{"$ref":"#/components/schemas/CreateVirtualDashboard"},{"$ref":"#/components/schemas/CreateVirtualChart"}],"discriminator":{"propertyName":"type","mapping":{"collection":"#/components/schemas/CreateVirtualSchema","dataset":"#/components/schemas/CreateVirtualTable","property":"#/components/schemas/CreateVirtualColumn","data_job":"#/components/schemas/CreateVirtualDataJob","data_task":"#/components/schemas/CreateVirtualDataTask","dashboard":"#/components/schemas/CreateVirtualDashboard","chart":"#/components/schemas/CreateVirtualChart"}},"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/app__models__public__asset__AssetData"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}},"components":{"schemas":{"CreateVirtualSchema":{"properties":{"type":{"type":"string","const":"collection","title":"Type"},"parent":{"$ref":"#/components/schemas/SourceIdentifier"},"name":{"type":"string","title":"Name"}},"type":"object","required":["type","parent","name"],"title":"CreateVirtualSchema"},"SourceIdentifier":{"properties":{"type":{"type":"string","const":"source","title":"Type"},"id":{"type":"integer","minimum":1,"title":"Id","description":"Unique identifier of the source asset"}},"type":"object","required":["type","id"],"title":"SourceIdentifier"},"CreateVirtualTable":{"properties":{"type":{"type":"string","const":"dataset","title":"Type"},"parent":{"$ref":"#/components/schemas/CollectionIdentifier"},"name":{"type":"string","title":"Name"},"definition":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Definition"}},"type":"object","required":["type","parent","name"],"title":"CreateVirtualTable"},"CollectionIdentifier":{"properties":{"type":{"type":"string","const":"collection","title":"Type"},"id":{"type":"integer","minimum":1,"title":"Id","description":"Unique identifier of the collection asset"}},"type":"object","required":["type","id"],"title":"CollectionIdentifier"},"CreateVirtualColumn":{"properties":{"type":{"type":"string","const":"property","title":"Type"},"parent":{"$ref":"#/components/schemas/DatasetIdentifier"},"name":{"type":"string","title":"Name"},"unified_type":{"$ref":"#/components/schemas/DataType","default":"STRING"},"raw_type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Raw Type"},"constraints":{"anyOf":[{"items":{"$ref":"#/components/schemas/ConstraintType"},"type":"array"},{"type":"null"}],"title":"Constraints"}},"type":"object","required":["type","parent","name"],"title":"CreateVirtualColumn"},"DatasetIdentifier":{"properties":{"type":{"type":"string","const":"dataset","title":"Type"},"id":{"type":"integer","minimum":1,"title":"Id","description":"Unique identifier of the dataset asset"}},"type":"object","required":["type","id"],"title":"DatasetIdentifier"},"DataType":{"type":"string","enum":["INTEGER","STRING","NUMERIC","BOOLEAN","DATETIME","INTERVAL","DATE","ARRAY","JSON","OTHER","ENUM","TIME"],"title":"DataType"},"ConstraintType":{"type":"string","enum":["Not Null","Unique","Primary Key","Foreign Key"],"title":"ConstraintType"},"CreateVirtualDataJob":{"properties":{"type":{"type":"string","const":"data_job","title":"Type"},"parent":{"$ref":"#/components/schemas/SourceIdentifier"},"name":{"type":"string","title":"Name"},"definition":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Definition"},"schedule":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Schedule"}},"type":"object","required":["type","parent","name"],"title":"CreateVirtualDataJob"},"CreateVirtualDataTask":{"properties":{"type":{"type":"string","const":"data_task","title":"Type"},"parent":{"$ref":"#/components/schemas/DataJobIdentifier"},"name":{"type":"string","title":"Name"},"definition":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Definition"}},"type":"object","required":["type","parent","name"],"title":"CreateVirtualDataTask"},"DataJobIdentifier":{"properties":{"type":{"type":"string","const":"data_job","title":"Type"},"id":{"type":"integer","minimum":1,"title":"Id","description":"Unique identifier of the data job asset"}},"type":"object","required":["type","id"],"title":"DataJobIdentifier"},"CreateVirtualDashboard":{"properties":{"type":{"type":"string","const":"dashboard","title":"Type"},"parent":{"$ref":"#/components/schemas/SourceIdentifier"},"name":{"type":"string","title":"Name"},"url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Url"}},"type":"object","required":["type","parent","name"],"title":"CreateVirtualDashboard"},"CreateVirtualChart":{"properties":{"type":{"type":"string","const":"chart","title":"Type"},"parent":{"$ref":"#/components/schemas/SourceIdentifier"},"name":{"type":"string","title":"Name"},"url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Url"}},"type":"object","required":["type","parent","name"],"title":"CreateVirtualChart"},"app__models__public__asset__AssetData":{"properties":{"asset":{"$ref":"#/components/schemas/AssetObject"},"parents":{"items":{"$ref":"#/components/schemas/AssetObject"},"type":"array","title":"Parents"},"attrs":{"anyOf":[{"$ref":"#/components/schemas/SourceAttributes"},{"$ref":"#/components/schemas/CollectionAttributes"},{"$ref":"#/components/schemas/DatasetAttributes"},{"$ref":"#/components/schemas/PropertyAttributes"},{"$ref":"#/components/schemas/DashboardAttributes"},{"$ref":"#/components/schemas/ChartAttributes"},{"$ref":"#/components/schemas/DataJobAttributes"},{"$ref":"#/components/schemas/DataTaskAttributes"},{"$ref":"#/components/schemas/PolicyAttributes"},{"$ref":"#/components/schemas/GlossaryAttributes"},{"$ref":"#/components/schemas/CategoryAttributes"},{"$ref":"#/components/schemas/TermAttributes"}],"title":"Attrs"}},"type":"object","required":["asset","parents","attrs"],"title":"AssetData"},"AssetObject":{"properties":{"id":{"type":"integer","title":"Id"},"name":{"type":"string","title":"Name"},"type":{"$ref":"#/components/schemas/AssetMetadataTypes"}},"type":"object","required":["id","name","type"],"title":"AssetObject"},"AssetMetadataTypes":{"type":"string","enum":["source","collection","dataset","property","data_job","data_task","data_run","file","glossary","category","term","monitor","dashboard","report","chart","policy","policy_rule","data_domain","data_subdomain","data_product","data_asset","data_asset_property","data_contract"],"title":"AssetMetadataTypes"},"SourceAttributes":{"properties":{"source_type":{"$ref":"#/components/schemas/DbType"},"data_owners":{"items":{"$ref":"#/components/schemas/Users"},"type":"array","title":"Data Owners"},"business_owners":{"items":{"$ref":"#/components/schemas/Users"},"type":"array","title":"Business Owners"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"linked_terms":{"items":{"$ref":"#/components/schemas/AssetIdentifier-Output"},"type":"array","title":"Linked Terms"},"custom_attributes":{"items":{"anyOf":[{"$ref":"#/components/schemas/app__models__public__custom_attributes__IntegerAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__TextAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__BooleanAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__EnumAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__UserAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__KVAttribute"}]},"type":"array","title":"Custom Attributes"}},"type":"object","required":["source_type","data_owners","business_owners","description","linked_terms","custom_attributes"],"title":"SourceAttributes"},"DbType":{"type":"string","enum":["bigquery","redshift","postgresql","mysql","snowflake","databricks","sql_server","azure_server","singlestore","synapse","oracle","cloudera_hive","hive","power_bi","tableau","looker","dbt_cloud","dbt_core","fivetran","airflow","adf","glue","s3dl","adls","gcsdl","open_lineage","spark","iceberg","cloudera_atlas","atlas","unknown","virtual_source"],"title":"DbType"},"Users":{"properties":{"email":{"type":"string","title":"Email"},"id":{"type":"string","title":"Id"}},"type":"object","required":["email","id"],"title":"Users"},"AssetIdentifier-Output":{"properties":{"id":{"type":"integer","minimum":0,"title":"Id","description":"Unique identifier of the specific asset"},"type":{"$ref":"#/components/schemas/AssetMetadataTypes","description":"Type of the specific asset"}},"type":"object","required":["id","type"],"title":"AssetIdentifier"},"app__models__public__custom_attributes__IntegerAttribute":{"properties":{"id":{"type":"integer","title":"Id","description":"Unique identifier for the custom attribute"},"type":{"type":"string","const":"integer","title":"Type"},"value":{"type":"integer","title":"Value","description":"Integer value of the custom attribute"}},"type":"object","required":["id","type","value"],"title":"IntegerAttribute"},"app__models__public__custom_attributes__TextAttribute":{"properties":{"id":{"type":"integer","title":"Id","description":"Unique identifier for the custom attribute"},"type":{"type":"string","const":"text","title":"Type"},"value":{"type":"string","title":"Value","description":"Text value of the custom attribute"}},"type":"object","required":["id","type","value"],"title":"TextAttribute"},"app__models__public__custom_attributes__BooleanAttribute":{"properties":{"id":{"type":"integer","title":"Id","description":"Unique identifier for the custom attribute"},"type":{"type":"string","const":"boolean","title":"Type"},"value":{"type":"boolean","title":"Value","description":"Boolean value of the custom attribute"}},"type":"object","required":["id","type","value"],"title":"BooleanAttribute"},"app__models__public__custom_attributes__EnumAttribute":{"properties":{"id":{"type":"integer","title":"Id","description":"Unique identifier for the custom attribute"},"type":{"type":"string","const":"enum","title":"Type"},"value":{"items":{"$ref":"#/components/schemas/app__models__public__custom_attributes__EnumValue"},"type":"array","title":"Value","description":"List of enum values"}},"type":"object","required":["id","type","value"],"title":"EnumAttribute"},"app__models__public__custom_attributes__EnumValue":{"properties":{"id":{"type":"integer","title":"Id","description":"ID of the enum option"},"label":{"type":"string","title":"Label","description":"Label of the enum option"},"color":{"type":"string","title":"Color","description":"Color associated with the enum option"}},"type":"object","required":["id","label","color"],"title":"EnumValue"},"app__models__public__custom_attributes__UserAttribute":{"properties":{"id":{"type":"integer","title":"Id","description":"Unique identifier for the custom attribute"},"type":{"type":"string","const":"user","title":"Type"},"value":{"anyOf":[{"type":"string"},{"items":{"type":"string"},"type":"array"}],"title":"Value","description":"User or list of users associated with the custom attribute. If the attribute is multi-select, this will be a list."}},"type":"object","required":["id","type","value"],"title":"UserAttribute"},"app__models__public__custom_attributes__KVAttribute":{"properties":{"id":{"type":"integer","title":"Id","description":"Unique identifier for the custom attribute"},"label":{"type":"string","title":"Label","description":"Label of the custom attribute"},"type":{"type":"string","const":"kv","title":"Type"},"value":{"items":{"oneOf":[{"$ref":"#/components/schemas/KVTextEntryValue"},{"$ref":"#/components/schemas/KVEnumEntryValue"}],"discriminator":{"propertyName":"type","mapping":{"enum":"#/components/schemas/KVEnumEntryValue","text":"#/components/schemas/KVTextEntryValue"}}},"type":"array","title":"Value","description":"List of key-value entries on the asset"}},"type":"object","required":["id","label","type","value"],"title":"KVAttribute"},"KVTextEntryValue":{"properties":{"id":{"type":"integer","title":"Id","description":"Unique identifier of the key definition"},"label":{"type":"string","title":"Label","description":"Name of the key"},"type":{"type":"string","const":"text","title":"Type"},"value":{"type":"string","title":"Value","description":"String value of the key-value entry"}},"type":"object","required":["id","label","type","value"],"title":"KVTextEntryValue"},"KVEnumEntryValue":{"properties":{"id":{"type":"integer","title":"Id","description":"Unique identifier of the key definition"},"label":{"type":"string","title":"Label","description":"Name of the key"},"type":{"type":"string","const":"enum","title":"Type"},"value":{"items":{"$ref":"#/components/schemas/app__models__public__custom_attributes__KVKeyEnumOption"},"type":"array","title":"Value","description":"List of enum options for the key-value entry"}},"type":"object","required":["id","label","type","value"],"title":"KVEnumEntryValue"},"app__models__public__custom_attributes__KVKeyEnumOption":{"properties":{"id":{"type":"integer","title":"Id","description":"Unique identifier of the enum option"},"label":{"type":"string","title":"Label","description":"Label of the enum option"},"color":{"type":"string","title":"Color","description":"Color associated with the enum option"}},"type":"object","required":["id","label","color"],"title":"KVKeyEnumOption"},"CollectionAttributes":{"properties":{"data_owners":{"items":{"$ref":"#/components/schemas/Users"},"type":"array","title":"Data Owners"},"business_owners":{"items":{"$ref":"#/components/schemas/Users"},"type":"array","title":"Business Owners"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"source_description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Source Description"},"linked_terms":{"items":{"$ref":"#/components/schemas/AssetIdentifier-Output"},"type":"array","title":"Linked Terms"},"custom_attributes":{"items":{"anyOf":[{"$ref":"#/components/schemas/app__models__public__custom_attributes__IntegerAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__TextAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__BooleanAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__EnumAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__UserAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__KVAttribute"}]},"type":"array","title":"Custom Attributes"}},"type":"object","required":["data_owners","business_owners","description","source_description","linked_terms","custom_attributes"],"title":"CollectionAttributes"},"DatasetAttributes":{"properties":{"data_owners":{"items":{"$ref":"#/components/schemas/Users"},"type":"array","title":"Data Owners"},"business_owners":{"items":{"$ref":"#/components/schemas/Users"},"type":"array","title":"Business Owners"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"source_description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Source Description"},"property_count":{"type":"integer","title":"Property Count"},"is_view":{"type":"boolean","title":"Is View"},"is_virtual":{"type":"boolean","title":"Is Virtual"},"linked_terms":{"items":{"$ref":"#/components/schemas/AssetIdentifier-Output"},"type":"array","title":"Linked Terms"},"custom_attributes":{"items":{"anyOf":[{"$ref":"#/components/schemas/app__models__public__custom_attributes__IntegerAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__TextAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__BooleanAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__EnumAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__UserAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__KVAttribute"}]},"type":"array","title":"Custom Attributes"}},"type":"object","required":["data_owners","business_owners","description","source_description","property_count","is_view","is_virtual","linked_terms","custom_attributes"],"title":"DatasetAttributes"},"PropertyAttributes":{"properties":{"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"source_description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Source Description"},"unified_type":{"$ref":"#/components/schemas/DataType"},"raw_type":{"type":"string","title":"Raw Type"},"is_virtual":{"type":"boolean","title":"Is Virtual"},"classifications":{"items":{"$ref":"#/components/schemas/AssetIdentifier-Output"},"type":"array","title":"Classifications"},"linked_terms":{"items":{"$ref":"#/components/schemas/AssetIdentifier-Output"},"type":"array","title":"Linked Terms"},"custom_attributes":{"items":{"anyOf":[{"$ref":"#/components/schemas/app__models__public__custom_attributes__IntegerAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__TextAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__BooleanAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__EnumAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__UserAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__KVAttribute"}]},"type":"array","title":"Custom Attributes"}},"type":"object","required":["description","source_description","unified_type","raw_type","is_virtual","classifications","linked_terms","custom_attributes"],"title":"PropertyAttributes"},"DashboardAttributes":{"properties":{"data_owners":{"items":{"$ref":"#/components/schemas/Users"},"type":"array","title":"Data Owners"},"business_owners":{"items":{"$ref":"#/components/schemas/Users"},"type":"array","title":"Business Owners"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"linked_terms":{"items":{"$ref":"#/components/schemas/AssetIdentifier-Output"},"type":"array","title":"Linked Terms"},"custom_attributes":{"items":{"anyOf":[{"$ref":"#/components/schemas/app__models__public__custom_attributes__IntegerAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__TextAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__BooleanAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__EnumAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__UserAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__KVAttribute"}]},"type":"array","title":"Custom Attributes"}},"type":"object","required":["data_owners","business_owners","description","linked_terms","custom_attributes"],"title":"DashboardAttributes"},"ChartAttributes":{"properties":{"data_owners":{"items":{"$ref":"#/components/schemas/Users"},"type":"array","title":"Data Owners"},"business_owners":{"items":{"$ref":"#/components/schemas/Users"},"type":"array","title":"Business Owners"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"linked_terms":{"items":{"$ref":"#/components/schemas/AssetIdentifier-Output"},"type":"array","title":"Linked Terms"},"custom_attributes":{"items":{"anyOf":[{"$ref":"#/components/schemas/app__models__public__custom_attributes__IntegerAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__TextAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__BooleanAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__EnumAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__UserAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__KVAttribute"}]},"type":"array","title":"Custom Attributes"}},"type":"object","required":["data_owners","business_owners","description","linked_terms","custom_attributes"],"title":"ChartAttributes"},"DataJobAttributes":{"properties":{"data_owners":{"items":{"$ref":"#/components/schemas/Users"},"type":"array","title":"Data Owners"},"business_owners":{"items":{"$ref":"#/components/schemas/Users"},"type":"array","title":"Business Owners"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"linked_terms":{"items":{"$ref":"#/components/schemas/AssetIdentifier-Output"},"type":"array","title":"Linked Terms"},"custom_attributes":{"items":{"anyOf":[{"$ref":"#/components/schemas/app__models__public__custom_attributes__IntegerAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__TextAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__BooleanAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__EnumAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__UserAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__KVAttribute"}]},"type":"array","title":"Custom Attributes"}},"type":"object","required":["data_owners","business_owners","description","linked_terms","custom_attributes"],"title":"DataJobAttributes"},"DataTaskAttributes":{"properties":{},"type":"object","title":"DataTaskAttributes"},"PolicyAttributes":{"properties":{"policy_tag":{"type":"string","title":"Policy Tag"},"stewards":{"items":{"$ref":"#/components/schemas/Users"},"type":"array","title":"Stewards"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"purpose":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Purpose"},"color":{"type":"string","title":"Color"},"masking_type":{"$ref":"#/components/schemas/RuleMasking"}},"type":"object","required":["policy_tag","stewards","description","purpose","color","masking_type"],"title":"PolicyAttributes"},"RuleMasking":{"type":"string","enum":["none","hash","email","last_four","first_four","nullify","sha256"],"title":"RuleMasking"},"GlossaryAttributes":{"properties":{"data_owners":{"items":{"$ref":"#/components/schemas/Users"},"type":"array","title":"Data Owners"},"business_owners":{"items":{"$ref":"#/components/schemas/Users"},"type":"array","title":"Business Owners"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"created_by":{"$ref":"#/components/schemas/Users"},"created_at":{"type":"string","format":"date-time","title":"Created At"},"reviewed_by":{"anyOf":[{"$ref":"#/components/schemas/Users"},{"type":"null"}]},"children_count":{"type":"integer","title":"Children Count"},"custom_attributes":{"items":{"anyOf":[{"$ref":"#/components/schemas/app__models__public__custom_attributes__IntegerAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__TextAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__BooleanAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__EnumAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__UserAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__KVAttribute"}]},"type":"array","title":"Custom Attributes"}},"type":"object","required":["data_owners","business_owners","description","created_by","created_at","reviewed_by","children_count","custom_attributes"],"title":"GlossaryAttributes"},"CategoryAttributes":{"properties":{"data_owners":{"items":{"$ref":"#/components/schemas/Users"},"type":"array","title":"Data Owners"},"business_owners":{"items":{"$ref":"#/components/schemas/Users"},"type":"array","title":"Business Owners"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"created_by":{"$ref":"#/components/schemas/Users"},"created_at":{"type":"string","format":"date-time","title":"Created At"},"reviewed_by":{"anyOf":[{"$ref":"#/components/schemas/Users"},{"type":"null"}]},"children_count":{"type":"integer","title":"Children Count"},"custom_attributes":{"items":{"anyOf":[{"$ref":"#/components/schemas/app__models__public__custom_attributes__IntegerAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__TextAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__BooleanAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__EnumAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__UserAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__KVAttribute"}]},"type":"array","title":"Custom Attributes"}},"type":"object","required":["data_owners","business_owners","description","created_by","created_at","reviewed_by","children_count","custom_attributes"],"title":"CategoryAttributes"},"TermAttributes":{"properties":{"data_owners":{"items":{"$ref":"#/components/schemas/Users"},"type":"array","title":"Data Owners"},"business_owners":{"items":{"$ref":"#/components/schemas/Users"},"type":"array","title":"Business Owners"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"created_by":{"$ref":"#/components/schemas/Users"},"created_at":{"type":"string","format":"date-time","title":"Created At"},"reviewed_by":{"anyOf":[{"$ref":"#/components/schemas/Users"},{"type":"null"}]},"classifications":{"items":{"$ref":"#/components/schemas/AssetIdentifier-Output"},"type":"array","title":"Classifications"},"related_terms":{"items":{"$ref":"#/components/schemas/AssetIdentifier-Output"},"type":"array","title":"Related Terms"},"linked_assets":{"items":{"$ref":"#/components/schemas/AssetIdentifier-Output"},"type":"array","title":"Linked Assets"},"custom_attributes":{"items":{"anyOf":[{"$ref":"#/components/schemas/app__models__public__custom_attributes__IntegerAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__TextAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__BooleanAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__EnumAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__UserAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__KVAttribute"}]},"type":"array","title":"Custom Attributes"}},"type":"object","required":["data_owners","business_owners","description","created_by","created_at","reviewed_by","classifications","related_terms","linked_assets","custom_attributes"],"title":"TermAttributes"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}}}}
```

### Update a virtual object

Updates one or more fields on an existing virtual object. Only fields included in the request are updated.

## Patch Virtual Asset

> Updates (partially) an existing virtual asset using the provided request body.

```json
{"openapi":"3.1.0","info":{"title":"Decube Public API (BETA)","version":"1.0.0"},"servers":[{"url":"https://connect.<REGION>.decube.io/api/v1/data"}],"paths":{"/virtual_assets":{"patch":{"tags":["Virtual Assets"],"summary":"Patch Virtual Asset","description":"Updates (partially) an existing virtual asset using the provided request body.","operationId":"patch_virtual_asset_virtual_assets_patch","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/app__models__virtual_assets__UpdateVirtualSchema"},{"$ref":"#/components/schemas/app__models__virtual_assets__UpdateVirtualTable"},{"$ref":"#/components/schemas/app__models__virtual_assets__UpdateVirtualColumn"},{"$ref":"#/components/schemas/app__models__virtual_assets__UpdateVirtualDataJob"},{"$ref":"#/components/schemas/app__models__virtual_assets__UpdateVirtualDataTask"},{"$ref":"#/components/schemas/app__models__virtual_assets__UpdateVirtualDashboard"},{"$ref":"#/components/schemas/app__models__virtual_assets__UpdateVirtualChart"}],"discriminator":{"propertyName":"type","mapping":{"collection":"#/components/schemas/app__models__virtual_assets__UpdateVirtualSchema","dataset":"#/components/schemas/app__models__virtual_assets__UpdateVirtualTable","property":"#/components/schemas/app__models__virtual_assets__UpdateVirtualColumn","data_job":"#/components/schemas/app__models__virtual_assets__UpdateVirtualDataJob","data_task":"#/components/schemas/app__models__virtual_assets__UpdateVirtualDataTask","dashboard":"#/components/schemas/app__models__virtual_assets__UpdateVirtualDashboard","chart":"#/components/schemas/app__models__virtual_assets__UpdateVirtualChart"}},"title":"Payload"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/app__models__public__asset__AssetData"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}},"components":{"schemas":{"app__models__virtual_assets__UpdateVirtualSchema":{"properties":{"type":{"type":"string","const":"collection","title":"Type"},"asset":{"$ref":"#/components/schemas/CollectionIdentifier"},"name":{"anyOf":[{"$ref":"#/components/schemas/Change_str_"},{"$ref":"#/components/schemas/NotChanged"}],"title":"Name","default":{}}},"type":"object","required":["type","asset"],"title":"UpdateVirtualSchema"},"CollectionIdentifier":{"properties":{"type":{"type":"string","const":"collection","title":"Type"},"id":{"type":"integer","minimum":1,"title":"Id","description":"Unique identifier of the collection asset"}},"type":"object","required":["type","id"],"title":"CollectionIdentifier"},"Change_str_":{"properties":{"value":{"type":"string","title":"Value"}},"type":"object","required":["value"],"title":"Change[str]"},"NotChanged":{"properties":{},"type":"object","title":"NotChanged"},"app__models__virtual_assets__UpdateVirtualTable":{"properties":{"type":{"type":"string","const":"dataset","title":"Type"},"asset":{"$ref":"#/components/schemas/DatasetIdentifier"},"name":{"anyOf":[{"$ref":"#/components/schemas/Change_str_"},{"$ref":"#/components/schemas/NotChanged"}],"title":"Name","default":{}},"definition":{"anyOf":[{"$ref":"#/components/schemas/Change_Union_str__NoneType__"},{"$ref":"#/components/schemas/NotChanged"}],"title":"Definition","default":{}}},"type":"object","required":["type","asset"],"title":"UpdateVirtualTable"},"DatasetIdentifier":{"properties":{"type":{"type":"string","const":"dataset","title":"Type"},"id":{"type":"integer","minimum":1,"title":"Id","description":"Unique identifier of the dataset asset"}},"type":"object","required":["type","id"],"title":"DatasetIdentifier"},"Change_Union_str__NoneType__":{"properties":{"value":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Value"}},"type":"object","required":["value"],"title":"Change[Union[str, NoneType]]"},"app__models__virtual_assets__UpdateVirtualColumn":{"properties":{"type":{"type":"string","const":"property","title":"Type"},"asset":{"$ref":"#/components/schemas/PropertyIdentifier"},"name":{"anyOf":[{"$ref":"#/components/schemas/Change_str_"},{"$ref":"#/components/schemas/NotChanged"}],"title":"Name","default":{}},"unified_type":{"anyOf":[{"$ref":"#/components/schemas/Change_DataType_"},{"$ref":"#/components/schemas/NotChanged"}],"title":"Unified Type","default":{}},"raw_type":{"anyOf":[{"$ref":"#/components/schemas/Change_str_"},{"$ref":"#/components/schemas/NotChanged"}],"title":"Raw Type","default":{}},"constraints":{"anyOf":[{"$ref":"#/components/schemas/Change_Union_list_ConstraintType___NoneType__"},{"$ref":"#/components/schemas/NotChanged"}],"title":"Constraints","default":{}}},"type":"object","required":["type","asset"],"title":"UpdateVirtualColumn"},"PropertyIdentifier":{"properties":{"type":{"type":"string","const":"property","title":"Type"},"id":{"type":"integer","minimum":1,"title":"Id","description":"Unique identifier of the property asset"}},"type":"object","required":["type","id"],"title":"PropertyIdentifier"},"Change_DataType_":{"properties":{"value":{"$ref":"#/components/schemas/DataType"}},"type":"object","required":["value"],"title":"Change[DataType]"},"DataType":{"type":"string","enum":["INTEGER","STRING","NUMERIC","BOOLEAN","DATETIME","INTERVAL","DATE","ARRAY","JSON","OTHER","ENUM","TIME"],"title":"DataType"},"Change_Union_list_ConstraintType___NoneType__":{"properties":{"value":{"anyOf":[{"items":{"$ref":"#/components/schemas/ConstraintType"},"type":"array"},{"type":"null"}],"title":"Value"}},"type":"object","required":["value"],"title":"Change[Union[list[ConstraintType], NoneType]]"},"ConstraintType":{"type":"string","enum":["Not Null","Unique","Primary Key","Foreign Key"],"title":"ConstraintType"},"app__models__virtual_assets__UpdateVirtualDataJob":{"properties":{"type":{"type":"string","const":"data_job","title":"Type"},"asset":{"$ref":"#/components/schemas/DataJobIdentifier"},"name":{"anyOf":[{"$ref":"#/components/schemas/Change_str_"},{"$ref":"#/components/schemas/NotChanged"}],"title":"Name","default":{}},"definition":{"anyOf":[{"$ref":"#/components/schemas/Change_Union_str__NoneType__"},{"$ref":"#/components/schemas/NotChanged"}],"title":"Definition","default":{}},"schedule":{"anyOf":[{"$ref":"#/components/schemas/Change_Union_str__NoneType__"},{"$ref":"#/components/schemas/NotChanged"}],"title":"Schedule","default":{}}},"type":"object","required":["type","asset"],"title":"UpdateVirtualDataJob"},"DataJobIdentifier":{"properties":{"type":{"type":"string","const":"data_job","title":"Type"},"id":{"type":"integer","minimum":1,"title":"Id","description":"Unique identifier of the data job asset"}},"type":"object","required":["type","id"],"title":"DataJobIdentifier"},"app__models__virtual_assets__UpdateVirtualDataTask":{"properties":{"type":{"type":"string","const":"data_task","title":"Type"},"asset":{"$ref":"#/components/schemas/DataTaskIdentifier"},"name":{"anyOf":[{"$ref":"#/components/schemas/Change_str_"},{"$ref":"#/components/schemas/NotChanged"}],"title":"Name","default":{}},"definition":{"anyOf":[{"$ref":"#/components/schemas/Change_Union_str__NoneType__"},{"$ref":"#/components/schemas/NotChanged"}],"title":"Definition","default":{}}},"type":"object","required":["type","asset"],"title":"UpdateVirtualDataTask"},"DataTaskIdentifier":{"properties":{"type":{"type":"string","const":"data_task","title":"Type"},"id":{"type":"integer","minimum":1,"title":"Id","description":"Unique identifier of the data task asset"}},"type":"object","required":["type","id"],"title":"DataTaskIdentifier"},"app__models__virtual_assets__UpdateVirtualDashboard":{"properties":{"type":{"type":"string","const":"dashboard","title":"Type"},"asset":{"$ref":"#/components/schemas/DashboardIdentifier"},"name":{"anyOf":[{"$ref":"#/components/schemas/Change_str_"},{"$ref":"#/components/schemas/NotChanged"}],"title":"Name","default":{}},"url":{"anyOf":[{"$ref":"#/components/schemas/Change_Union_str__NoneType__"},{"$ref":"#/components/schemas/NotChanged"}],"title":"Url","default":{}}},"type":"object","required":["type","asset"],"title":"UpdateVirtualDashboard"},"DashboardIdentifier":{"properties":{"type":{"type":"string","const":"dashboard","title":"Type"},"id":{"type":"integer","minimum":1,"title":"Id","description":"Unique identifier of the dashboard asset"}},"type":"object","required":["type","id"],"title":"DashboardIdentifier"},"app__models__virtual_assets__UpdateVirtualChart":{"properties":{"type":{"type":"string","const":"chart","title":"Type"},"asset":{"$ref":"#/components/schemas/ChartIdentifier"},"name":{"anyOf":[{"$ref":"#/components/schemas/Change_str_"},{"$ref":"#/components/schemas/NotChanged"}],"title":"Name","default":{}},"url":{"anyOf":[{"$ref":"#/components/schemas/Change_Union_str__NoneType__"},{"$ref":"#/components/schemas/NotChanged"}],"title":"Url","default":{}}},"type":"object","required":["type","asset"],"title":"UpdateVirtualChart"},"ChartIdentifier":{"properties":{"type":{"type":"string","const":"chart","title":"Type"},"id":{"type":"integer","minimum":1,"title":"Id","description":"Unique identifier of the chart asset"}},"type":"object","required":["type","id"],"title":"ChartIdentifier"},"app__models__public__asset__AssetData":{"properties":{"asset":{"$ref":"#/components/schemas/AssetObject"},"parents":{"items":{"$ref":"#/components/schemas/AssetObject"},"type":"array","title":"Parents"},"attrs":{"anyOf":[{"$ref":"#/components/schemas/SourceAttributes"},{"$ref":"#/components/schemas/CollectionAttributes"},{"$ref":"#/components/schemas/DatasetAttributes"},{"$ref":"#/components/schemas/PropertyAttributes"},{"$ref":"#/components/schemas/DashboardAttributes"},{"$ref":"#/components/schemas/ChartAttributes"},{"$ref":"#/components/schemas/DataJobAttributes"},{"$ref":"#/components/schemas/DataTaskAttributes"},{"$ref":"#/components/schemas/PolicyAttributes"},{"$ref":"#/components/schemas/GlossaryAttributes"},{"$ref":"#/components/schemas/CategoryAttributes"},{"$ref":"#/components/schemas/TermAttributes"}],"title":"Attrs"}},"type":"object","required":["asset","parents","attrs"],"title":"AssetData"},"AssetObject":{"properties":{"id":{"type":"integer","title":"Id"},"name":{"type":"string","title":"Name"},"type":{"$ref":"#/components/schemas/AssetMetadataTypes"}},"type":"object","required":["id","name","type"],"title":"AssetObject"},"AssetMetadataTypes":{"type":"string","enum":["source","collection","dataset","property","data_job","data_task","data_run","file","glossary","category","term","monitor","dashboard","report","chart","policy","policy_rule","data_domain","data_subdomain","data_product","data_asset","data_asset_property","data_contract"],"title":"AssetMetadataTypes"},"SourceAttributes":{"properties":{"source_type":{"$ref":"#/components/schemas/DbType"},"data_owners":{"items":{"$ref":"#/components/schemas/Users"},"type":"array","title":"Data Owners"},"business_owners":{"items":{"$ref":"#/components/schemas/Users"},"type":"array","title":"Business Owners"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"linked_terms":{"items":{"$ref":"#/components/schemas/AssetIdentifier-Output"},"type":"array","title":"Linked Terms"},"custom_attributes":{"items":{"anyOf":[{"$ref":"#/components/schemas/app__models__public__custom_attributes__IntegerAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__TextAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__BooleanAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__EnumAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__UserAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__KVAttribute"}]},"type":"array","title":"Custom Attributes"}},"type":"object","required":["source_type","data_owners","business_owners","description","linked_terms","custom_attributes"],"title":"SourceAttributes"},"DbType":{"type":"string","enum":["bigquery","redshift","postgresql","mysql","snowflake","databricks","sql_server","azure_server","singlestore","synapse","oracle","cloudera_hive","hive","power_bi","tableau","looker","dbt_cloud","dbt_core","fivetran","airflow","adf","glue","s3dl","adls","gcsdl","open_lineage","spark","iceberg","cloudera_atlas","atlas","unknown","virtual_source"],"title":"DbType"},"Users":{"properties":{"email":{"type":"string","title":"Email"},"id":{"type":"string","title":"Id"}},"type":"object","required":["email","id"],"title":"Users"},"AssetIdentifier-Output":{"properties":{"id":{"type":"integer","minimum":0,"title":"Id","description":"Unique identifier of the specific asset"},"type":{"$ref":"#/components/schemas/AssetMetadataTypes","description":"Type of the specific asset"}},"type":"object","required":["id","type"],"title":"AssetIdentifier"},"app__models__public__custom_attributes__IntegerAttribute":{"properties":{"id":{"type":"integer","title":"Id","description":"Unique identifier for the custom attribute"},"type":{"type":"string","const":"integer","title":"Type"},"value":{"type":"integer","title":"Value","description":"Integer value of the custom attribute"}},"type":"object","required":["id","type","value"],"title":"IntegerAttribute"},"app__models__public__custom_attributes__TextAttribute":{"properties":{"id":{"type":"integer","title":"Id","description":"Unique identifier for the custom attribute"},"type":{"type":"string","const":"text","title":"Type"},"value":{"type":"string","title":"Value","description":"Text value of the custom attribute"}},"type":"object","required":["id","type","value"],"title":"TextAttribute"},"app__models__public__custom_attributes__BooleanAttribute":{"properties":{"id":{"type":"integer","title":"Id","description":"Unique identifier for the custom attribute"},"type":{"type":"string","const":"boolean","title":"Type"},"value":{"type":"boolean","title":"Value","description":"Boolean value of the custom attribute"}},"type":"object","required":["id","type","value"],"title":"BooleanAttribute"},"app__models__public__custom_attributes__EnumAttribute":{"properties":{"id":{"type":"integer","title":"Id","description":"Unique identifier for the custom attribute"},"type":{"type":"string","const":"enum","title":"Type"},"value":{"items":{"$ref":"#/components/schemas/app__models__public__custom_attributes__EnumValue"},"type":"array","title":"Value","description":"List of enum values"}},"type":"object","required":["id","type","value"],"title":"EnumAttribute"},"app__models__public__custom_attributes__EnumValue":{"properties":{"id":{"type":"integer","title":"Id","description":"ID of the enum option"},"label":{"type":"string","title":"Label","description":"Label of the enum option"},"color":{"type":"string","title":"Color","description":"Color associated with the enum option"}},"type":"object","required":["id","label","color"],"title":"EnumValue"},"app__models__public__custom_attributes__UserAttribute":{"properties":{"id":{"type":"integer","title":"Id","description":"Unique identifier for the custom attribute"},"type":{"type":"string","const":"user","title":"Type"},"value":{"anyOf":[{"type":"string"},{"items":{"type":"string"},"type":"array"}],"title":"Value","description":"User or list of users associated with the custom attribute. If the attribute is multi-select, this will be a list."}},"type":"object","required":["id","type","value"],"title":"UserAttribute"},"app__models__public__custom_attributes__KVAttribute":{"properties":{"id":{"type":"integer","title":"Id","description":"Unique identifier for the custom attribute"},"label":{"type":"string","title":"Label","description":"Label of the custom attribute"},"type":{"type":"string","const":"kv","title":"Type"},"value":{"items":{"oneOf":[{"$ref":"#/components/schemas/KVTextEntryValue"},{"$ref":"#/components/schemas/KVEnumEntryValue"}],"discriminator":{"propertyName":"type","mapping":{"enum":"#/components/schemas/KVEnumEntryValue","text":"#/components/schemas/KVTextEntryValue"}}},"type":"array","title":"Value","description":"List of key-value entries on the asset"}},"type":"object","required":["id","label","type","value"],"title":"KVAttribute"},"KVTextEntryValue":{"properties":{"id":{"type":"integer","title":"Id","description":"Unique identifier of the key definition"},"label":{"type":"string","title":"Label","description":"Name of the key"},"type":{"type":"string","const":"text","title":"Type"},"value":{"type":"string","title":"Value","description":"String value of the key-value entry"}},"type":"object","required":["id","label","type","value"],"title":"KVTextEntryValue"},"KVEnumEntryValue":{"properties":{"id":{"type":"integer","title":"Id","description":"Unique identifier of the key definition"},"label":{"type":"string","title":"Label","description":"Name of the key"},"type":{"type":"string","const":"enum","title":"Type"},"value":{"items":{"$ref":"#/components/schemas/app__models__public__custom_attributes__KVKeyEnumOption"},"type":"array","title":"Value","description":"List of enum options for the key-value entry"}},"type":"object","required":["id","label","type","value"],"title":"KVEnumEntryValue"},"app__models__public__custom_attributes__KVKeyEnumOption":{"properties":{"id":{"type":"integer","title":"Id","description":"Unique identifier of the enum option"},"label":{"type":"string","title":"Label","description":"Label of the enum option"},"color":{"type":"string","title":"Color","description":"Color associated with the enum option"}},"type":"object","required":["id","label","color"],"title":"KVKeyEnumOption"},"CollectionAttributes":{"properties":{"data_owners":{"items":{"$ref":"#/components/schemas/Users"},"type":"array","title":"Data Owners"},"business_owners":{"items":{"$ref":"#/components/schemas/Users"},"type":"array","title":"Business Owners"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"source_description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Source Description"},"linked_terms":{"items":{"$ref":"#/components/schemas/AssetIdentifier-Output"},"type":"array","title":"Linked Terms"},"custom_attributes":{"items":{"anyOf":[{"$ref":"#/components/schemas/app__models__public__custom_attributes__IntegerAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__TextAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__BooleanAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__EnumAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__UserAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__KVAttribute"}]},"type":"array","title":"Custom Attributes"}},"type":"object","required":["data_owners","business_owners","description","source_description","linked_terms","custom_attributes"],"title":"CollectionAttributes"},"DatasetAttributes":{"properties":{"data_owners":{"items":{"$ref":"#/components/schemas/Users"},"type":"array","title":"Data Owners"},"business_owners":{"items":{"$ref":"#/components/schemas/Users"},"type":"array","title":"Business Owners"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"source_description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Source Description"},"property_count":{"type":"integer","title":"Property Count"},"is_view":{"type":"boolean","title":"Is View"},"is_virtual":{"type":"boolean","title":"Is Virtual"},"linked_terms":{"items":{"$ref":"#/components/schemas/AssetIdentifier-Output"},"type":"array","title":"Linked Terms"},"custom_attributes":{"items":{"anyOf":[{"$ref":"#/components/schemas/app__models__public__custom_attributes__IntegerAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__TextAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__BooleanAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__EnumAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__UserAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__KVAttribute"}]},"type":"array","title":"Custom Attributes"}},"type":"object","required":["data_owners","business_owners","description","source_description","property_count","is_view","is_virtual","linked_terms","custom_attributes"],"title":"DatasetAttributes"},"PropertyAttributes":{"properties":{"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"source_description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Source Description"},"unified_type":{"$ref":"#/components/schemas/DataType"},"raw_type":{"type":"string","title":"Raw Type"},"is_virtual":{"type":"boolean","title":"Is Virtual"},"classifications":{"items":{"$ref":"#/components/schemas/AssetIdentifier-Output"},"type":"array","title":"Classifications"},"linked_terms":{"items":{"$ref":"#/components/schemas/AssetIdentifier-Output"},"type":"array","title":"Linked Terms"},"custom_attributes":{"items":{"anyOf":[{"$ref":"#/components/schemas/app__models__public__custom_attributes__IntegerAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__TextAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__BooleanAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__EnumAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__UserAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__KVAttribute"}]},"type":"array","title":"Custom Attributes"}},"type":"object","required":["description","source_description","unified_type","raw_type","is_virtual","classifications","linked_terms","custom_attributes"],"title":"PropertyAttributes"},"DashboardAttributes":{"properties":{"data_owners":{"items":{"$ref":"#/components/schemas/Users"},"type":"array","title":"Data Owners"},"business_owners":{"items":{"$ref":"#/components/schemas/Users"},"type":"array","title":"Business Owners"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"linked_terms":{"items":{"$ref":"#/components/schemas/AssetIdentifier-Output"},"type":"array","title":"Linked Terms"},"custom_attributes":{"items":{"anyOf":[{"$ref":"#/components/schemas/app__models__public__custom_attributes__IntegerAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__TextAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__BooleanAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__EnumAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__UserAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__KVAttribute"}]},"type":"array","title":"Custom Attributes"}},"type":"object","required":["data_owners","business_owners","description","linked_terms","custom_attributes"],"title":"DashboardAttributes"},"ChartAttributes":{"properties":{"data_owners":{"items":{"$ref":"#/components/schemas/Users"},"type":"array","title":"Data Owners"},"business_owners":{"items":{"$ref":"#/components/schemas/Users"},"type":"array","title":"Business Owners"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"linked_terms":{"items":{"$ref":"#/components/schemas/AssetIdentifier-Output"},"type":"array","title":"Linked Terms"},"custom_attributes":{"items":{"anyOf":[{"$ref":"#/components/schemas/app__models__public__custom_attributes__IntegerAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__TextAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__BooleanAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__EnumAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__UserAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__KVAttribute"}]},"type":"array","title":"Custom Attributes"}},"type":"object","required":["data_owners","business_owners","description","linked_terms","custom_attributes"],"title":"ChartAttributes"},"DataJobAttributes":{"properties":{"data_owners":{"items":{"$ref":"#/components/schemas/Users"},"type":"array","title":"Data Owners"},"business_owners":{"items":{"$ref":"#/components/schemas/Users"},"type":"array","title":"Business Owners"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"linked_terms":{"items":{"$ref":"#/components/schemas/AssetIdentifier-Output"},"type":"array","title":"Linked Terms"},"custom_attributes":{"items":{"anyOf":[{"$ref":"#/components/schemas/app__models__public__custom_attributes__IntegerAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__TextAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__BooleanAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__EnumAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__UserAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__KVAttribute"}]},"type":"array","title":"Custom Attributes"}},"type":"object","required":["data_owners","business_owners","description","linked_terms","custom_attributes"],"title":"DataJobAttributes"},"DataTaskAttributes":{"properties":{},"type":"object","title":"DataTaskAttributes"},"PolicyAttributes":{"properties":{"policy_tag":{"type":"string","title":"Policy Tag"},"stewards":{"items":{"$ref":"#/components/schemas/Users"},"type":"array","title":"Stewards"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"purpose":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Purpose"},"color":{"type":"string","title":"Color"},"masking_type":{"$ref":"#/components/schemas/RuleMasking"}},"type":"object","required":["policy_tag","stewards","description","purpose","color","masking_type"],"title":"PolicyAttributes"},"RuleMasking":{"type":"string","enum":["none","hash","email","last_four","first_four","nullify","sha256"],"title":"RuleMasking"},"GlossaryAttributes":{"properties":{"data_owners":{"items":{"$ref":"#/components/schemas/Users"},"type":"array","title":"Data Owners"},"business_owners":{"items":{"$ref":"#/components/schemas/Users"},"type":"array","title":"Business Owners"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"created_by":{"$ref":"#/components/schemas/Users"},"created_at":{"type":"string","format":"date-time","title":"Created At"},"reviewed_by":{"anyOf":[{"$ref":"#/components/schemas/Users"},{"type":"null"}]},"children_count":{"type":"integer","title":"Children Count"},"custom_attributes":{"items":{"anyOf":[{"$ref":"#/components/schemas/app__models__public__custom_attributes__IntegerAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__TextAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__BooleanAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__EnumAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__UserAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__KVAttribute"}]},"type":"array","title":"Custom Attributes"}},"type":"object","required":["data_owners","business_owners","description","created_by","created_at","reviewed_by","children_count","custom_attributes"],"title":"GlossaryAttributes"},"CategoryAttributes":{"properties":{"data_owners":{"items":{"$ref":"#/components/schemas/Users"},"type":"array","title":"Data Owners"},"business_owners":{"items":{"$ref":"#/components/schemas/Users"},"type":"array","title":"Business Owners"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"created_by":{"$ref":"#/components/schemas/Users"},"created_at":{"type":"string","format":"date-time","title":"Created At"},"reviewed_by":{"anyOf":[{"$ref":"#/components/schemas/Users"},{"type":"null"}]},"children_count":{"type":"integer","title":"Children Count"},"custom_attributes":{"items":{"anyOf":[{"$ref":"#/components/schemas/app__models__public__custom_attributes__IntegerAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__TextAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__BooleanAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__EnumAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__UserAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__KVAttribute"}]},"type":"array","title":"Custom Attributes"}},"type":"object","required":["data_owners","business_owners","description","created_by","created_at","reviewed_by","children_count","custom_attributes"],"title":"CategoryAttributes"},"TermAttributes":{"properties":{"data_owners":{"items":{"$ref":"#/components/schemas/Users"},"type":"array","title":"Data Owners"},"business_owners":{"items":{"$ref":"#/components/schemas/Users"},"type":"array","title":"Business Owners"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Description"},"created_by":{"$ref":"#/components/schemas/Users"},"created_at":{"type":"string","format":"date-time","title":"Created At"},"reviewed_by":{"anyOf":[{"$ref":"#/components/schemas/Users"},{"type":"null"}]},"classifications":{"items":{"$ref":"#/components/schemas/AssetIdentifier-Output"},"type":"array","title":"Classifications"},"related_terms":{"items":{"$ref":"#/components/schemas/AssetIdentifier-Output"},"type":"array","title":"Related Terms"},"linked_assets":{"items":{"$ref":"#/components/schemas/AssetIdentifier-Output"},"type":"array","title":"Linked Assets"},"custom_attributes":{"items":{"anyOf":[{"$ref":"#/components/schemas/app__models__public__custom_attributes__IntegerAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__TextAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__BooleanAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__EnumAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__UserAttribute"},{"$ref":"#/components/schemas/app__models__public__custom_attributes__KVAttribute"}]},"type":"array","title":"Custom Attributes"}},"type":"object","required":["data_owners","business_owners","description","created_by","created_at","reviewed_by","classifications","related_terms","linked_assets","custom_attributes"],"title":"TermAttributes"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}}}}
```

### Delete a virtual object

Soft-deletes a virtual object and all its children. Soft-deleted objects are removed from the Catalog, lineage, and search results but remain in the database until the parent virtual source is deleted.

## Delete Virtual Asset

> Deletes a virtual asset by ID.

```json
{"openapi":"3.1.0","info":{"title":"Decube Public API (BETA)","version":"1.0.0"},"servers":[{"url":"https://connect.<REGION>.decube.io/api/v1/data"}],"paths":{"/virtual_assets":{"delete":{"tags":["Virtual Assets"],"summary":"Delete Virtual Asset","description":"Deletes a virtual asset by ID.","operationId":"delete_virtual_asset_virtual_assets_delete","parameters":[{"name":"asset_id","in":"query","required":true,"schema":{"type":"integer","title":"Asset Id"}},{"name":"asset_type","in":"query","required":true,"schema":{"enum":["collection","dataset","property","data_job","data_task","dashboard","chart"],"type":"string","title":"Asset Type"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}},"components":{"schemas":{"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}}}}
```
