# Nansen Token God Mode (TGM) Flows

> Nansen Token God Mode (TGM) Flows is a paid API for AI agents from api.nansen.ai, paid per call via x402, $0.01/call, status unknown (last checked 2026-09-14).

Retrieves Token God Mode (TGM) flow intelligence data showing token movement and transfer activity tracked by Nansen's smart money analytics

## Facts

- Endpoint: GET https://api.nansen.ai/api/v1/tgm/flows
- Price: $0.01/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-14
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/api-nansen-ai-54b62832
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_F8o3Ns2nelfEn14NVjBtL

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability api-nansen-ai-54b62832
```

Example prompt: Pull the Token God Mode flows data from Nansen for ETH on Ethereum mainnet over the last 24 hours so I can see what smart money is doing with it.

## When to prefer this

Use this endpoint when you need granular token-level flow data (inflows, outflows, transfer volumes) from Nansen's Token God Mode product, especially to track smart money activity around a specific token. Prefer over generic on-chain data sources when Nansen's wallet labeling and smart money classification is important.

## Known failure modes

- Invalid or unsupported token address returns an error or empty result
- Unsupported chain identifier causes a 400 bad request
- Exceeding rate limits or insufficient USDC payment triggers a 402 payment required error
- Time range outside available data history returns empty or partial results
- Malformed request body causes a 422 validation error

## How this service works

Get "Token God Mode" (TGM) flows data

## Output

Returns Token God Mode (TGM) flow data including token transfer volumes, inflow/outflow metrics, and smart money movement intelligence for the queried token(s) and time range.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "title": "TGMFlowsRequest",
 "required": [
  "chain",
  "token_address",
  "date"
 ],
 "properties": {
  "date": {
   "type": "object",
   "title": "DateRange",
   "properties": {
    "to": {
     "anyOf": [
      {
       "type": "string"
      }
     ],
     "title": "To",
     "examples": [
      "2025-01-31T23:59:59Z"
     ],
     "description": "End date in ISO 8601 format (e.g., 2025-01-31T23:59:59Z or 2025-01-31)"
    },
    "from": {
     "anyOf": [
      {
       "type": "string"
      }
     ],
     "title": "From",
     "examples": [
      "2025-01-01T00:00:00Z"
     ],
     "description": "Start date in ISO 8601 format (e.g., 2025-01-01T00:00:00Z or 2025-01-01)"
    }
   },
   "description": "Date range model matching the API schema."
  },
  "chain": {
   "enum": [
    "arbitrum",
    "avalanche",
    "base",
    "bnb",
    "ethereum",
    "hyperevm",
    "hyperliquid",
    "injective",
    "iotaevm",
    "linea",
    "mantle",
    "mantra",
    "monad",
    "near",
    "optimism",
    "plasma",
    "polygon",
    "ronin",
    "scroll",
    "sei",
    "solana",
    "sonic",
    "starknet",
    "sui",
    "ton",
    "tron"
   ],
   "type": "string",
   "title": "TGMFlowsChain",
   "description": "Chains supported for the TGM flows endpoint."
  },
  "label": {
   "enum": [
    "whale",
    "public_figure",
    "smart_money",
    "top_100_holders",
    "exchange"
   ],
   "type": "string",
   "title": "TGMFlowsLabel",
   "description": "TGM flow label types."
  },
  "filters": {
   "anyOf": [
    {
     "type": "object",
     "title": "TGMFlowsFilters",
     "properties": {
      "price_usd": {
       "anyOf": [
        {
         "type": "object",
         "title": "NumericRangeFilter",
         "properties": {
          "max": {
           "anyOf": [
            {
             "type": "number"
            }
           ],
           "title": "Max",
           "examples": [
            50000,
            10000000,
            100
           ],
           "description": "Maximum value (inclusive)"
          },
          "min": {
           "anyOf": [
            {
             "type": "number"
            }
           ],
           "title": "Min",
           "examples": [
            1000,
            1000000,
            -50,
            0
           ],
           "description": "Minimum value (inclusive)"
          }
         },
         "description": "Filter for numeric values (floats) with optional min/max bounds.\nUse fo
… (truncated)
```

## Response schema (JSON Schema)

```json
{
 "type": "object",
 "title": "TGMFlowsResponse",
 "required": [
  "data",
  "pagination"
 ],
 "properties": {
  "data": {
   "type": "array",
   "items": {
    "type": "object",
    "title": "TGMFlows",
    "required": [
     "date"
    ],
    "properties": {
     "date": {
      "type": "string",
      "title": "Date",
      "description": "Block date of the flow data point"
     },
     "price_usd": {
      "anyOf": [
       {
        "type": "number"
       }
      ],
      "title": "Price Usd",
      "description": "Daily median token price in USD. For the current day, uses the latest spot price."
     },
     "value_usd": {
      "anyOf": [
       {
        "type": "number"
       }
      ],
      "title": "Value Usd",
      "description": "Total token value in USD"
     },
     "token_amount": {
      "anyOf": [
       {
        "type": "number"
       }
      ],
      "title": "Token Amount",
      "description": "Total token amount"
     },
     "holders_count": {
      "anyOf": [
       {
        "type": "integer"
       }
      ],
      "title": "Holders Count",
      "description": "Number of token holders"
     },
     "total_inflows_cex": {
      "anyOf": [
       {
        "type": "number"
       }
      ],
      "title": "Total Inflows Cex",
      "description": "Total CEX inflows (token amount). Only populated when label=exchange, null otherwise."
     },
     "total_inflows_dex": {
      "anyOf": [
       {
        "type": "number"
       }
      ],
      "title": "Total Inflows Dex",
      "description": "Total DEX inflows (token amount). Only populated when label=exchange, null otherwise."
     },
     "total_outflows_cex": {
      "anyOf": [
       {
        "type": "number"
       }
      ],
      "title": "Total Outflows Cex",
      "description": "Total CEX outflows (token amount). Only populated when label=exchange, null otherwise."
     },
     "total_outflows_dex": {
      "anyOf": [
       {
        "type": "number"
       }
      ],
      "title": "Total Outflows Dex",
      "description": "Total DEX outflows (token amount). Only populated when label=exchange, null otherwise."
     },
     "total_inflows_count": {
      "anyOf": [
       {
        "type": "number"
       }
      ],
      "title": "Total Inflows Count",
      "description": "Total inflows"
     },
     "total_outflows_count": {
      "anyOf": [
       {
        "type": "number"
       }
      ],
      "title": "Total Outflows Count",
      "description": "Total
… (truncated)
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/api-nansen-ai-54b62832/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from api.nansen.ai](https://www.zero.xyz/host/api.nansen.ai/llms.txt)
