> ## Documentation Index
> Fetch the complete documentation index at: https://docs.elementary-data.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Table Assets

Table assets represent tables or views in your data warehouse. Register table assets to track metadata, ownership, and descriptions in Elementary Cloud.

## TableAsset Object

```python theme={null}
from elementary_python_sdk import TableAsset

asset = TableAsset(
    name="string",                  # Required: Table name
    database_name="string",         # Required: Database name
    schema_name="string",           # Required: Schema name
    table_name="string",            # Required: Table name
    description="string",           # Optional: Table description
    owners=["string"],              # Optional: List of owners (emails or usernames)
    tags=["string"],               # Optional: List of tags
    depends_on=["string"]           # Optional: List of upstream fully qualified table names
)
```

## Required Fields

| Field           | Type   | Description                               |
| --------------- | ------ | ----------------------------------------- |
| `name`          | string | Display name for the table                |
| `database_name` | string | Name of the database containing the table |
| `schema_name`   | string | Name of the schema containing the table   |
| `table_name`    | string | Name of the table                         |

## Optional Fields

| Field         | Type          | Description                                                                                                                 |
| ------------- | ------------- | --------------------------------------------------------------------------------------------------------------------------- |
| `description` | string        | Human-readable description of the table                                                                                     |
| `owners`      | list\[string] | List of owners (email addresses or usernames)                                                                               |
| `tags`        | list\[string] | List of tags for categorization                                                                                             |
| `depends_on`  | list\[string] | List of upstream fully qualified table names (e.g., `["prod.public.customers", "prod.public.orders"]`) for lineage tracking |

## Example

```python theme={null}
from elementary_python_sdk import TableAsset

# Create a table asset
asset = TableAsset(
    name="users",
    database_name="prod",
    schema_name="public",
    table_name="users",
    description="Users table",
    owners=["data-team"],
    tags=["pii", "production"],
    depends_on=["prod.public.customers", "prod.public.orders"]
)
```

## Best Practices

1. **Include descriptions** - Add meaningful descriptions to help your team understand what each table contains

2. **Set owners** - Assign owners to tables so they receive alerts and notifications

3. **Use tags** - Tag tables to enable filtering and grouping in the Elementary UI

4. **Define dependencies** - Use `depends_on` to establish lineage connections to upstream assets

5. **Update regularly** - Send updated table assets when metadata changes (descriptions, owners, tags, dependencies)

<Tip>
  Table assets are updated on each ingest, so include all current metadata in every request.
</Tip>

## Related Documentation

* [Test Decorators](/python-sdk/api-reference/test-decorators) - Define tests for your table assets
* [API Reference](/python-sdk/api-reference/overview) - Overview of the SDK API
