Skip to main content
Get a list of all discovered assets across your data sources. Use this to build integrations, sync with data catalogs, or audit your inventory.

When to Use

  • Data catalog sync: Export assets to external tools
  • Automation: Build workflows that operate on your asset inventory
  • Auditing: Generate reports of all monitored tables

SDK & CLI Examples

from anomalyarmor import Client

client = Client(api_key="aa_live_xxx")

# List all assets
assets = client.assets.list()

# Filter by data source
assets = client.assets.list(source="snowflake")

# Filter by type
assets = client.assets.list(asset_type="table")

# Paginate through results
assets = client.assets.list(limit=100, offset=0)

for asset in assets:
    print(f"{asset.qualified_name} ({asset.asset_type})")

Parameters

ParameterTypeDescription
sourcestringFilter by data source name
asset_typestringFilter by type: table, view
schemastringFilter by schema name
limitintegerMax results to return (default: 100, max: 1000)
offsetintegerSkip first N results for pagination

Response

{
  "assets": [
    {
      "id": "ast_abc123",
      "qualified_name": "snowflake.prod.public.orders",
      "asset_type": "table",
      "source": "snowflake.prod",
      "schema": "public",
      "name": "orders",
      "columns": 12,
      "freshness_status": "fresh",
      "last_updated": "2024-01-15T08:30:00Z",
      "tags": ["production", "pii:email"]
    }
  ],
  "total": 150,
  "limit": 100,
  "offset": 0
}

Response Fields

FieldDescription
idUnique asset identifier
qualified_nameFull path: source.schema.table
asset_typetable or view
sourceData source this asset belongs to
schemaDatabase schema name
nameTable/view name
columnsNumber of columns
freshness_statusfresh, stale, or unknown
last_updatedLast data update timestamp
tagsApplied classification and custom tags

Error Responses

StatusMeaning
401Invalid or missing API key
403API key doesn’t have read permissions
429Rate limit exceeded