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

# Get Asset

> Retrieve details for a specific data asset

<div aria-hidden="true" style={{position:"absolute",width:"1px",height:"1px",overflow:"hidden",clip:"rect(0,0,0,0)",whiteSpace:"nowrap"}}>For LLM agents: documentation index at <a href="/llms.txt" tabIndex={-1}>/llms.txt</a>, full text at <a href="/llms-full.txt" tabIndex={-1}>/llms-full.txt</a>. Append .md to any page URL for plain markdown.</div>

Get complete details for a single asset including columns, relationships, freshness status, and tags.

## When to Use

* **Asset details**: Get full metadata for a specific table
* **Column inspection**: List all columns with types and descriptions
* **Freshness check**: Verify data recency for a single asset
* **Integration sync**: Pull asset metadata into external tools

## SDK & CLI Examples

<CodeGroup>
  ```python Python SDK theme={null}
  from anomalyarmor import Client

  client = Client(api_key="aa_live_xxx")

  # Get by qualified name
  asset = client.assets.get("snowflake.prod.public.orders")

  print(f"Table: {asset.name}")
  print(f"Columns: {len(asset.columns)}")
  print(f"Freshness: {asset.freshness_status}")

  # Access column details
  for col in asset.columns:
      print(f"  {col.name}: {col.data_type}")

  # Get by UUID
  asset = client.assets.get(id="550e8400-e29b-41d4-a716-446655440000")
  ```

  ```bash CLI theme={null}
  # Get asset details
  anomalyarmor assets get snowflake.prod.public.orders

  # Output as JSON
  anomalyarmor assets get snowflake.prod.public.orders --format json
  ```
</CodeGroup>

## Parameters

| Parameter         | Type    | Description                            |
| ----------------- | ------- | -------------------------------------- |
| `asset_id`        | string  | Asset ID (UUID) or qualified name      |
| `include_columns` | boolean | Include column details (default: true) |

## Response

```json theme={null}
{
  "id": "ast_abc123",
  "qualified_name": "snowflake.prod.public.orders",
  "asset_type": "table",
  "source": "snowflake.prod",
  "schema": "public",
  "name": "orders",
  "description": "Customer order records including order details and fulfillment status",
  "freshness": {
    "status": "fresh",
    "last_updated": "2024-01-15T08:30:00Z",
    "sla_threshold": "2h",
    "checked_at": "2024-01-15T09:00:00Z"
  },
  "columns": [
    {
      "name": "order_id",
      "data_type": "integer",
      "nullable": false,
      "description": "Unique identifier for each order",
      "tags": []
    },
    {
      "name": "user_email",
      "data_type": "varchar(255)",
      "nullable": true,
      "description": "Customer email address",
      "tags": ["pii:email"]
    }
  ],
  "tags": ["production", "critical"],
  "created_at": "2024-01-01T00:00:00Z",
  "updated_at": "2024-01-15T08:30:00Z"
}
```

## Response Fields

| Field                     | Description                                      |
| ------------------------- | ------------------------------------------------ |
| `id`                      | Unique asset identifier                          |
| `qualified_name`          | Full path: `source.schema.table`                 |
| `description`             | Human-readable description (generated or manual) |
| `freshness.status`        | `fresh`, `stale`, or `unknown`                   |
| `freshness.last_updated`  | Timestamp of most recent data                    |
| `freshness.sla_threshold` | Configured freshness SLA                         |
| `columns`                 | Array of column definitions                      |
| `columns[].tags`          | Classification tags on this column               |
| `tags`                    | Asset-level tags                                 |

## Error Responses

| Status | Meaning                    |
| ------ | -------------------------- |
| `401`  | Invalid or missing API key |
| `404`  | Asset not found            |
| `429`  | Rate limit exceeded        |


## OpenAPI

````yaml GET /api/v1/assets/{asset_id}
openapi: 3.1.0
info:
  title: AnomalyArmor API
  description: |2-

        ## AnomalyArmor Security Platform API

        This API provides comprehensive database monitoring and schema change detection capabilities.

        ### Key Features
        - **Multi-Database Support**: PostgreSQL, MySQL, Databricks, Snowflake, Redshift, SQLite
        - **Schema Discovery**: Automated schema detection and metadata capture
        - **Change Detection**: Real-time schema drift monitoring with severity classification
        - **Connection Testing**: Live database connectivity validation
        - **Multi-Tenant**: Company-isolated data with role-based access control

        ### Authentication
        All endpoints require JWT authentication. Use `/auth/login` to obtain tokens.

        ### Rate Limits
        - Authentication: 5 req/min
        - Asset operations: 100 req/min
        - Schema discovery: 10 req/hour per asset

        ### Support
        - **Documentation**: Available at `/docs` (this page) and `/redoc`
        - **Health Check**: `/api/v1/health`
        - **OpenAPI Spec**: `/openapi.json`
        
  contact:
    name: AnomalyArmor Support
    url: https://anomalyarmor.ai/support
  license:
    name: Proprietary
  version: 1.0.0
servers:
  - url: http://localhost:8000
    description: Development server
  - url: https://api.anomalyarmor.ai
    description: Production server
security: []
paths:
  /api/v1/assets/{asset_id}:
    get:
      tags:
        - assets
      summary: Get asset by ID
      description: Retrieve a specific asset by its ID, short UUID, name, or qualified name
      operationId: get_asset_api_v1_assets__asset_id__get
      parameters:
        - name: asset_id
          in: path
          required: true
          schema:
            type: string
            title: Asset Id
        - name: Authorization
          in: header
          required: false
          schema:
            type: string
            title: Authorization
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AssetResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
components:
  schemas:
    AssetResponse:
      properties:
        id:
          type: string
          title: Id
          description: Public UUID of the asset
        name:
          type: string
          title: Name
          description: Display name
        asset_type:
          type: string
          title: Asset Type
          description: 'Type: table, view, etc.'
        is_active:
          type: boolean
          title: Is Active
          description: Whether monitoring is active
        description:
          anyOf:
            - type: string
            - type: 'null'
          title: Description
        connection_status:
          anyOf:
            - type: string
            - type: 'null'
          title: Connection Status
        discovery_state:
          anyOf:
            - type: string
            - type: 'null'
          title: Discovery State
        last_refresh_at:
          anyOf:
            - type: string
            - type: 'null'
          title: Last Refresh At
        table_count:
          anyOf:
            - type: integer
            - type: 'null'
          title: Table Count
        column_count:
          anyOf:
            - type: integer
            - type: 'null'
          title: Column Count
        schema_count:
          anyOf:
            - type: integer
            - type: 'null'
          title: Schema Count
        catalog_count:
          anyOf:
            - type: integer
            - type: 'null'
          title: Catalog Count
        created_at:
          anyOf:
            - type: string
            - type: 'null'
          title: Created At
        updated_at:
          anyOf:
            - type: string
            - type: 'null'
          title: Updated At
        host:
          anyOf:
            - type: string
            - type: 'null'
          title: Host
        port:
          anyOf:
            - type: integer
            - type: 'null'
          title: Port
        database_name:
          anyOf:
            - type: string
            - type: 'null'
          title: Database Name
        username:
          anyOf:
            - type: string
            - type: 'null'
          title: Username
        ssl_enabled:
          anyOf:
            - type: boolean
            - type: 'null'
          title: Ssl Enabled
        default_catalog:
          anyOf:
            - type: string
            - type: 'null'
          title: Default Catalog
        http_path:
          anyOf:
            - type: string
            - type: 'null'
          title: Http Path
        extra_params:
          anyOf:
            - additionalProperties:
                type: string
              type: object
            - type: 'null'
          title: Extra Params
        schema_status:
          anyOf:
            - type: string
            - type: 'null'
          title: Schema Status
        schema_message:
          anyOf:
            - type: string
            - type: 'null'
          title: Schema Message
        schema_change_status:
          anyOf:
            - type: string
            - type: 'null'
          title: Schema Change Status
        schema_change_message:
          anyOf:
            - type: string
            - type: 'null'
          title: Schema Change Message
        schema_change_summary:
          anyOf:
            - type: string
            - type: 'null'
          title: Schema Change Summary
        freshness_status:
          anyOf:
            - type: string
            - type: 'null'
          title: Freshness Status
        freshness_message:
          anyOf:
            - type: string
            - type: 'null'
          title: Freshness Message
        freshness_summary:
          anyOf:
            - type: string
            - type: 'null'
          title: Freshness Summary
        lineage_status:
          anyOf:
            - type: string
            - type: 'null'
          title: Lineage Status
        lineage_message:
          anyOf:
            - type: string
            - type: 'null'
          title: Lineage Message
        tags_status:
          anyOf:
            - type: string
            - type: 'null'
          title: Tags Status
        tags_message:
          anyOf:
            - type: string
            - type: 'null'
          title: Tags Message
        tags_counts:
          anyOf:
            - additionalProperties:
                type: integer
              type: object
            - type: 'null'
          title: Tags Counts
        intelligence_status:
          anyOf:
            - type: string
            - type: 'null'
          title: Intelligence Status
        intelligence_message:
          anyOf:
            - type: string
            - type: 'null'
          title: Intelligence Message
        data_quality_status:
          anyOf:
            - type: string
            - type: 'null'
          title: Data Quality Status
        data_quality_message:
          anyOf:
            - type: string
            - type: 'null'
          title: Data Quality Message
        query_access_level:
          anyOf:
            - type: string
            - type: 'null'
          title: Query Access Level
        tags_mode:
          anyOf:
            - type: string
            - type: 'null'
          title: Tags Mode
        intelligence_mode:
          anyOf:
            - type: string
            - type: 'null'
          title: Intelligence Mode
        auto_tag_enabled:
          type: boolean
          title: Auto Tag Enabled
          default: false
        effective_access_level:
          anyOf:
            - type: string
            - type: 'null'
          title: Effective Access Level
        features:
          anyOf:
            - additionalProperties:
                items:
                  type: string
                type: array
              type: object
            - type: 'null'
          title: Features
      type: object
      required:
        - id
        - name
        - asset_type
        - is_active
        - created_at
      title: AssetResponse
      description: Schema for asset responses.
    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
      type: object
      required:
        - loc
        - msg
        - type
      title: ValidationError

````