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

# EnhancedToken

> Metadata for a token.

### TypeScript shape

```ts theme={null}
interface EnhancedToken {
  id: string;
  address: string;
  cmcId: number | null;
  decimals: number;
  isScam: boolean | null;
  name: string | null;
  networkId: number;
  symbol: string | null;
  totalSupply: string | null;
  socialLinks: SocialLinks | null;
  info: TokenInfo | null;
  mobula: MobulaTokenData | null;
  gridAssetId: string | null;
  bluechipRating: string | null;
  organization: Organization | null;
  asset: Asset | null;
  explorerData: ExplorerTokenData | null;
  exchanges: Exchange[] | null;
  imageThumbUrl: string | null;
  imageSmallUrl: string | null;
  imageLargeUrl: string | null;
  circulatingSupply: string | null;
  pooled: string | null;
  creatorAddress: string | null;
  createBlockNumber: number | null;
  createTransactionHash: string | null;
  createdAt: number | null;
  mintable: string | null;
  freezable: string | null;
  isFreezableValid: boolean | null;
  isMintableValid: boolean | null;
  launchpad: LaunchpadData | null;
  top10HoldersPercent: number | null;
  profanity: boolean | null;
  extrema: TokenExtrema | null;
  coinCommunity: CoinCommunity | null;
}
```

<ResponseField name="id" type="String!">
  The ID of the token (address:networkId).
</ResponseField>

<ResponseField name="address" type="String!">
  The contract address of the token.
</ResponseField>

<ResponseField name="cmcId" type="Int">
  The token ID on CoinMarketCap.
</ResponseField>

<ResponseField name="decimals" type="Int!">
  The precision to which the token can be divided. For example, the smallest unit for USDC is 0.000001 (6 decimals).
</ResponseField>

<ResponseField name="isScam" type="Boolean">
  Whether the token has been flagged as a scam.
</ResponseField>

<ResponseField name="name" type="String">
  The token name. For example, ApeCoin.
</ResponseField>

<ResponseField name="networkId" type="Int!">
  The network ID the token is deployed on.
</ResponseField>

<ResponseField name="symbol" type="String">
  The token symbol. For example, APE.
</ResponseField>

<ResponseField name="socialLinks" type="SocialLinks">
  Community gathered links for the socials of this token. See [SocialLinks](/api-reference/graphql/types/SocialLinks).
</ResponseField>

<ResponseField name="info" type="TokenInfo">
  More metadata about the token. See [TokenInfo](/api-reference/graphql/types/TokenInfo).
</ResponseField>

<ResponseField name="mobula" type="MobulaTokenData">
  Mobula-native enrichment for this token: pricing engine data, real-time stats, holder concentration, security flags, launchpad/liquidity fields, live/trending signals and source metadata. See [MobulaTokenData](/api-reference/graphql/types/MobulaTokenData).
</ResponseField>

<ResponseField name="exchanges" type="[Exchange!]">
  A list of exchanges where the token has been traded. See [Exchange](/api-reference/graphql/types/Exchange).
</ResponseField>

<ResponseField name="creatorAddress" type="String">
  The token creator's wallet address.
</ResponseField>

<ResponseField name="createBlockNumber" type="Int">
  The block height the token was created at.
</ResponseField>

<ResponseField name="createTransactionHash" type="String">
  The transaction hash of the token's creation.
</ResponseField>

<ResponseField name="createdAt" type="Int">
  The unix timestamp for the creation of the token.
</ResponseField>

<ResponseField name="mintable" type="String">
  Returns mint authority address if token is mintable. If null, verify against isMintableValid.
</ResponseField>

<ResponseField name="freezable" type="String">
  Returns freeze authority address if token is freezable. If null, verify against isFreezableValid.
</ResponseField>

<ResponseField name="isFreezableValid" type="Boolean">
  Determines if freezable is a valid address or null value for the authority, or if the freezable state has not yet been determined.
</ResponseField>

<ResponseField name="isMintableValid" type="Boolean">
  Determines if mintable is a valid address or null value for the authority, or if the mintable state has not yet been determined.
</ResponseField>

<ResponseField name="launchpad" type="LaunchpadData">
  The launchpad data for the token, if applicable. See [LaunchpadData](/api-reference/graphql/types/LaunchpadData).
</ResponseField>

<ResponseField name="top10HoldersPercent" type="Float">
  The percentage of total supply held by the top 10 holders (excluding exchanges/pairs).
</ResponseField>

<ResponseField name="isMintable" type="Boolean">
  Whether the token is mintable.
</ResponseField>

<ResponseField name="isFreezable" type="Boolean">
  Whether the token is freezable.
</ResponseField>

<ResponseField name="profanity" type="Boolean">
  Whether the token's name or symbol contains profanity.
</ResponseField>

<ResponseField name="gridAssetId" type="String">
  The Grid asset ID linking this token to its logical [Asset](/api-reference/graphql/types/Asset).
</ResponseField>

<ResponseField name="bluechipRating" type="String">
  Bluechip rating for the token, when available.
</ResponseField>

<ResponseField name="extrema" type="TokenExtrema!">
  All-time high / all-time low records (price, FDV, circulating market cap) for the token. See [TokenExtrema](/api-reference/graphql/types/TokenExtrema).

  <Expandable title="TokenExtrema">
    <ResponseField name="id" type="String!">Token ID (address:networkId).</ResponseField>
    <ResponseField name="address" type="String!">Token contract address.</ResponseField>
    <ResponseField name="networkId" type="Int!">Network ID.</ResponseField>
    <ResponseField name="athPrice" type="String!">All-time high price (USD).</ResponseField>
    <ResponseField name="athPriceTimestamp" type="Int!">Unix timestamp of the all-time high price.</ResponseField>
    <ResponseField name="atlPrice" type="String!">All-time low price (USD).</ResponseField>
    <ResponseField name="atlPriceTimestamp" type="Int!">Unix timestamp of the all-time low price.</ResponseField>
    <ResponseField name="athFdv" type="String!">All-time high fully diluted valuation (USD).</ResponseField>
    <ResponseField name="athFdvTimestamp" type="Int!">Unix timestamp of the all-time high FDV.</ResponseField>
    <ResponseField name="atlFdv" type="String!">All-time low fully diluted valuation (USD).</ResponseField>
    <ResponseField name="atlFdvTimestamp" type="Int!">Unix timestamp of the all-time low FDV.</ResponseField>
    <ResponseField name="athCircMc" type="String!">All-time high circulating market cap (USD).</ResponseField>
    <ResponseField name="athCircMcTimestamp" type="Int!">Unix timestamp of the all-time high circulating market cap.</ResponseField>
    <ResponseField name="atlCircMc" type="String!">All-time low circulating market cap (USD).</ResponseField>
    <ResponseField name="atlCircMcTimestamp" type="Int!">Unix timestamp of the all-time low circulating market cap.</ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="asset" type="Asset">
  The logical Grid asset this token belongs to, which may span multiple deployments. See [Asset](/api-reference/graphql/types/Asset).

  <Expandable title="Asset">
    <ResponseField name="id" type="String!">Asset identifier.</ResponseField>
    <ResponseField name="name" type="String">Asset name.</ResponseField>
    <ResponseField name="description" type="String">Asset description.</ResponseField>
    <ResponseField name="ticker" type="String">Asset ticker symbol.</ResponseField>
    <ResponseField name="type" type="String">Asset type classification.</ResponseField>
    <ResponseField name="status" type="String">Asset status.</ResponseField>
    <ResponseField name="icon" type="String">Icon image URL.</ResponseField>
    <ResponseField name="rootId" type="String!">Root identifier shared across deployments.</ResponseField>
    <ResponseField name="assetDeployments" type="[AssetDeployment!]!">On-chain deployments of this asset. See [AssetDeployment](/api-reference/graphql/types/AssetDeployment).</ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="assetDeployments" type="[AssetDeployment!]">
  On-chain deployments of this token's asset across networks. See [AssetDeployment](/api-reference/graphql/types/AssetDeployment).

  <Expandable title="AssetDeployment">
    <ResponseField name="id" type="String!">Deployment identifier.</ResponseField>
    <ResponseField name="networkId" type="Int!">Network ID this deployment lives on.</ResponseField>
    <ResponseField name="address" type="String!">Contract address of the deployment.</ResponseField>
    <ResponseField name="standard" type="String">Token standard (e.g. ERC20, SPL).</ResponseField>
    <ResponseField name="assetId" type="String!">ID of the parent asset.</ResponseField>
    <ResponseField name="rootId" type="String!">Root identifier shared across deployments.</ResponseField>
    <ResponseField name="token" type="EnhancedToken">Enriched token for this deployment. See [EnhancedToken](/api-reference/graphql/types/EnhancedToken).</ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="organization" type="Organization">
  Metadata about the issuer of the token's asset, for established/verified projects. See [Organization](/api-reference/graphql/types/Organization).

  <Expandable title="Organization">
    <ResponseField name="name" type="String!">Organization name.</ResponseField>
    <ResponseField name="foundingDate" type="String">Date the organization was founded.</ResponseField>
    <ResponseField name="descriptionShort" type="String">Short organization description.</ResponseField>
    <ResponseField name="descriptionLong" type="String">Long organization description.</ResponseField>
    <ResponseField name="tagLine" type="String">Organization tagline.</ResponseField>
    <ResponseField name="type" type="String">Organization type classification.</ResponseField>
    <ResponseField name="sector" type="String">Sector the organization operates in.</ResponseField>

    <ResponseField name="urls" type="[OrganizationUrl!]!">
      Organization-related URLs. See [OrganizationUrl](/api-reference/graphql/types/OrganizationUrl).

      <Expandable title="OrganizationUrl">
        <ResponseField name="url" type="String!">The URL.</ResponseField>
        <ResponseField name="type" type="String">URL type (e.g. website, docs, blog).</ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="socials" type="[OrganizationSocial!]!">
      Organization social profiles. See [OrganizationSocial](/api-reference/graphql/types/OrganizationSocial).

      <Expandable title="OrganizationSocial">
        <ResponseField name="url" type="String!">The social profile URL.</ResponseField>
        <ResponseField name="type" type="String">Social type (e.g. twitter, telegram, discord).</ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="logo" type="String">Logo image URL.</ResponseField>
    <ResponseField name="icon" type="String">Icon image URL.</ResponseField>
    <ResponseField name="header" type="String">Header image URL.</ResponseField>
    <ResponseField name="rootId" type="String!">Root identifier shared across the organization's assets.</ResponseField>
    <ResponseField name="assets" type="[Asset!]!">Assets issued by this organization. See [Asset](/api-reference/graphql/types/Asset).</ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="coinCommunity" type="CoinCommunity">
  Community coin metadata associated with the token. See [CoinCommunity](/api-reference/graphql/types/CoinCommunity).

  <Expandable title="CoinCommunity">
    <ResponseField name="id" type="String!">The community identifier.</ResponseField>
    <ResponseField name="createdAt" type="Int">Unix timestamp for when the community coin was created.</ResponseField>
  </Expandable>
</ResponseField>

<Warning>
  The following fields are deprecated — supply and image fields have moved to [TokenInfo](/api-reference/graphql/types/TokenInfo); `pooled` lives on the pair instead. They remain in the schema for backwards compatibility and may be removed in a future version.
</Warning>

<ResponseField name="totalSupply" type="String" deprecated>Deprecated — use the [TokenInfo](/api-reference/graphql/types/TokenInfo) type.</ResponseField>
<ResponseField name="circulatingSupply" type="String" deprecated>Deprecated — use the [TokenInfo](/api-reference/graphql/types/TokenInfo) type.</ResponseField>
<ResponseField name="imageThumbUrl" type="String" deprecated>Deprecated — use the [TokenInfo](/api-reference/graphql/types/TokenInfo) type.</ResponseField>
<ResponseField name="imageSmallUrl" type="String" deprecated>Deprecated — use the [TokenInfo](/api-reference/graphql/types/TokenInfo) type.</ResponseField>
<ResponseField name="imageLargeUrl" type="String" deprecated>Deprecated — use the [TokenInfo](/api-reference/graphql/types/TokenInfo) type.</ResponseField>
<ResponseField name="explorerData" type="ExplorerTokenData" deprecated>Deprecated — use the [TokenInfo](/api-reference/graphql/types/TokenInfo) type. See [ExplorerTokenData](/api-reference/graphql/types/ExplorerTokenData).</ResponseField>
<ResponseField name="pooled" type="String" deprecated>Deprecated — pooled values can be found on the [Pair](/api-reference/graphql/types/Pair) type instead.</ResponseField>
