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

> ## Agent Instructions
> To query the Token Terminal data catalog, read https://tokenterminal.com/docs/catalog/agents-manual.md first. It is the whole catalog as one page: table naming grammar, key columns, partition and cluster rules, units, additivity, and the tables that are documented but not served yet.
> Never query a catalog table on a time bound alone. Also filter its cluster key, which you read from INFORMATION_SCHEMA.COLUMNS; an empty result means the object is a view, whose pruning contract is on its page. Compute is billed to the caller's own Google Cloud project.

# Assets

> Every curated asset issued on Gnosis, with daily supply, holders and transfer activity.

An asset is a financial instrument someone has put onchain, and a deployment is one asset on one chain at one contract address. Gnosis carries deployments of every asset kind we track, stablecoins to tokenized stocks.

* [`dimensions.asset_tokens`](/docs/catalog/assets/registry): one row per deployment.
* [`metrics_asset_tokens`](/docs/catalog/assets/metrics): one table per measure, one row per deployment per day.

Every column is documented at [Assets](/docs/catalog/assets/index). Market verticals scope this layer further: [Stablecoins](/docs/catalog/chain-verticals/evm/gnosis/stablecoins) and [Tokenized assets](/docs/catalog/chain-verticals/evm/gnosis/tokenized-assets).

## Sample queries

<Tabs>
  <Tab title="Largest assets">
    **Rank the assets on Gnosis by circulating market cap.** Circulating market cap is the supply held by the public, valued in USD, with tokens the issuer has minted but not released left out.

    ```sql theme={null}
    select
        assets.symbol,
        assets.asset_type,
        daily.market_cap_circulating_total
    from `metrics_asset_tokens.market_cap_circulating_total_daily` as daily
    join `dimensions.asset_tokens` as deployments
        using (asset_token_id)
    join `dimensions.assets` as assets
        using (asset_id)
    where daily.timestamp >= timestamp('2026-08-22')
      and daily.timestamp < timestamp('2026-08-23')
      and deployments.chain_id = 'gnosis'
    order by daily.market_cap_circulating_total desc
    limit 20
    ```
  </Tab>

  <Tab title="Deployments by kind">
    **Count Gnosis deployments by asset kind, and how many were issued on Gnosis itself.** A deployment is native when the issuer minted the token on Gnosis, and bridged when the token stands in for supply issued somewhere else.

    ```sql theme={null}
    select
        assets.asset_type,
        count(*) as deployments,
        countif(deployments.bridged_status = 'native') as native
    from `dimensions.asset_tokens` as deployments
    join `dimensions.assets` as assets
        using (asset_id)
    where deployments.chain_id = 'gnosis'
    group by assets.asset_type
    order by deployments desc
    ```
  </Tab>

  <Tab title="One deployment's series">
    **Read one Gnosis deployment's daily supply and holders.** `asset_token_id` is the asset, the token address and the chain with dashes. Each measure is its own table, so reading two means a join on `asset_token_id` and `timestamp`. Both tables here read the native side of the deployment. A bridged deployment reads the `_bridged` pair instead.

    ```sql theme={null}
    with supply as (
        select
            timestamp,
            market_cap_circulating_native
        from `metrics_asset_tokens.market_cap_circulating_native_daily`
        where asset_token_id = 'agnoeure-0xedbc7449a9b594ca4e053d9737ec5dc4cbccbfb2-gnosis'
          and timestamp >= timestamp('2026-08-16')
          and timestamp < timestamp('2026-08-23')
    ),

    holders as (
        select
            timestamp,
            holders_native
        from `metrics_asset_tokens.holders_native_daily`
        where asset_token_id = 'agnoeure-0xedbc7449a9b594ca4e053d9737ec5dc4cbccbfb2-gnosis'
          and timestamp >= timestamp('2026-08-16')
          and timestamp < timestamp('2026-08-23')
    )

    select
        timestamp,
        supply.market_cap_circulating_native,
        holders.holders_native
    from supply
    left join holders
        using (timestamp)
    order by timestamp
    ```
  </Tab>
</Tabs>
