# Token Transfers

## Get TGM Transfers Data

> Track all token transfer activity including direct transfers, DEX trades, and CEX movements. This endpoint is particularly useful for monitoring exchange flows - both centralized (CEX) and decentralized (DEX) - to identify accumulation or distribution patterns.

```json
{"openapi":"3.1.0","info":{"title":"Nansen API","version":"1.0.0"},"servers":[{"url":"https://api.nansen.ai"}],"security":[{"ApiKeyAuth":[]}],"components":{"securitySchemes":{"ApiKeyAuth":{"type":"apiKey","in":"header","name":"apiKey","description":"API key for authentication"}},"schemas":{"TGMTransfersRequest":{"properties":{"chain":{"$ref":"#/components/schemas/TGMTransfersChain","description":"Blockchain chain"},"token_address":{"type":"string","title":"Token Address","description":"Token address"},"date":{"$ref":"#/components/schemas/DateRangeMaxOneYear","description":"ISO 8601 date-time range object with from and to fields (max 1 year)."},"pagination":{"$ref":"#/components/schemas/PaginationRequest","description":"Pagination parameters"},"filters":{"anyOf":[{"$ref":"#/components/schemas/TGMTransfersFilters"}],"description":"Additional filters to apply to the query."},"order_by":{"anyOf":[{"items":{"$ref":"#/components/schemas/SortOrder_TGMTransfersSortField_"},"type":"array"}],"title":"Order By","description":"Custom sort order to override the endpoint's default ordering.\n\nExamples:\n- [{\"field\": \"transfer_value_usd\", \"direction\": \"ASC\"}] - Sort by transfer value ascending\n- [{\"field\": \"transfer_amount\", \"direction\": \"DESC\"}] - Sort by transfer amount descending"}},"additionalProperties":false,"type":"object","required":["chain","token_address","date"],"title":"TGMTransfersRequest","description":"Request model for TGM transfers endpoint.\n\nThis endpoint provides top token transfers for a specific token, with support for ERC-20 tokens. The model selection is dynamic based\non the token address."},"TGMTransfersChain":{"type":"string","enum":["arbitrum","avalanche","base","bitcoin","bnb","ethereum","hyperevm","injective","iotaevm","linea","mantle","monad","near","optimism","plasma","polygon","ronin","scroll","sei","solana","sonic","starknet","sui","ton","tron"],"title":"TGMTransfersChain","description":"Chains supported for TGM transfers endpoint."},"DateRangeMaxOneYear":{"properties":{"from":{"anyOf":[{"type":"string"}],"title":"From","description":"Start date in ISO 8601 format (e.g., 2025-01-01T00:00:00Z or 2025-01-01)"},"to":{"anyOf":[{"type":"string"}],"title":"To","description":"End date in ISO 8601 format (e.g., 2025-01-31T23:59:59Z or 2025-01-31)"}},"type":"object","title":"DateRangeMaxOneYear","description":"Date range model with a maximum duration of 1 year.\n\nInherits all functionality from DateRange but adds validation to ensure\nthe date range does not exceed 366 days (to account for leap years).\n\nThis limit ensures optimal query performance."},"PaginationRequest":{"properties":{"page":{"type":"integer","minimum":1,"title":"Page","description":"Page number (1-based)","default":1},"per_page":{"type":"integer","maximum":1000,"minimum":1,"title":"Per Page","description":"Number of records per page (max 1000)","default":10}},"type":"object","title":"PaginationRequest","description":"Pagination parameters for API requests."},"TGMTransfersFilters":{"properties":{"include_dex":{"anyOf":[{"type":"boolean"}],"title":"Include Dex","description":"Whether to include DEX transfers"},"include_cex":{"anyOf":[{"type":"boolean"}],"title":"Include Cex","description":"Whether to include CEX transfers"},"non_exchange_transfers":{"anyOf":[{"type":"boolean"}],"title":"Non Exchange Transfers","description":"Whether to include non-exchange transfers"},"only_smart_money":{"anyOf":[{"type":"boolean"}],"title":"Only Smart Money","description":"Whether to include only smart money transfers"},"from_include_smart_money_labels":{"anyOf":[{"items":{"$ref":"#/components/schemas/LabelType"},"type":"array"}],"title":"From Include Smart Money Labels","description":"Include smart money labels for from address"},"from_exclude_smart_money_labels":{"anyOf":[{"items":{"$ref":"#/components/schemas/LabelType"},"type":"array"}],"title":"From Exclude Smart Money Labels","description":"Exclude smart money labels for from address"},"to_include_smart_money_labels":{"anyOf":[{"items":{"$ref":"#/components/schemas/LabelType"},"type":"array"}],"title":"To Include Smart Money Labels","description":"Include smart money labels for to address"},"to_exclude_smart_money_labels":{"anyOf":[{"items":{"$ref":"#/components/schemas/LabelType"},"type":"array"}],"title":"To Exclude Smart Money Labels","description":"Exclude smart money labels for to address"},"transaction_hash":{"anyOf":[{"type":"string"},{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Transaction Hash","description":"Transaction hash filter"},"from_address":{"anyOf":[{"type":"string"},{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"From Address","description":"From address filter"},"to_address":{"anyOf":[{"type":"string"},{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"To Address","description":"To address filter"},"from_address_label":{"anyOf":[{"type":"string"},{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"From Address Label","description":"From address label filter"},"to_address_label":{"anyOf":[{"type":"string"},{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"To Address Label","description":"To address label filter"},"transaction_type":{"anyOf":[{"type":"string"}],"title":"Transaction Type","description":"Transaction type filter"},"transfer_amount":{"anyOf":[{"$ref":"#/components/schemas/NumericRangeFilter"}],"description":"Transfer amount range filter"},"transfer_value_usd":{"anyOf":[{"$ref":"#/components/schemas/NumericRangeFilter"}],"description":"Transfer value range filter in USD"}},"additionalProperties":false,"type":"object","title":"TGMTransfersFilters","description":"Filters for TGM transfers endpoint.\n\nThese filters control which transfers are included in the analysis."},"LabelType":{"type":"string","enum":["30D Smart Trader","90D Smart Trader","180D Smart Trader","Fund","Smart Trader","Public Figure","Exchange","Whale","BananaGun Bot User","Top Maestro Bot User","Top BananaGun Bot User","Maestro Bot User","Early MAGIC Miner","First Mover LP","First Mover Staking","Profitable LP","Smart HL Perps Trader"],"title":"LabelType","description":"Enum for label filter options."},"NumericRangeFilter":{"properties":{"min":{"anyOf":[{"type":"number"}],"title":"Min","description":"Minimum value (inclusive)"},"max":{"anyOf":[{"type":"number"}],"title":"Max","description":"Maximum value (inclusive)"}},"type":"object","title":"NumericRangeFilter","description":"Filter for numeric values (floats) with optional min/max bounds.\nUse for prices, volumes, ratios, and other decimal values. - Values between -10.5 and 100.75"},"SortOrder_TGMTransfersSortField_":{"properties":{"field":{"$ref":"#/components/schemas/TGMTransfersSortField","description":"Field to sort by"},"direction":{"$ref":"#/components/schemas/SortDirection","description":"Sort direction (ASC or DESC)"}},"type":"object","required":["field","direction"],"title":"SortOrder[TGMTransfersSortField]"},"TGMTransfersSortField":{"type":"string","enum":["block_timestamp","transaction_hash","from_address","to_address","from_address_label","to_address_label","transaction_type","transfer_amount","transfer_value_usd"],"title":"TGMTransfersSortField","description":"Enum for sortable fields in TGM transfers."},"SortDirection":{"type":"string","enum":["ASC","DESC"],"title":"SortDirection","description":"Enum for sort directions."},"TGMTransfersResponse":{"properties":{"data":{"items":{"$ref":"#/components/schemas/TGMTransfer"},"type":"array","title":"Data","description":"List of TGM transfer records"},"pagination":{"$ref":"#/components/schemas/PaginationInfo","description":"Pagination information"}},"type":"object","required":["data","pagination"],"title":"TGMTransfersResponse","description":"Response model for TGM transfers endpoint.\n\nContains a list of transfer records with pagination and metadata."},"TGMTransfer":{"properties":{"block_timestamp":{"type":"string","title":"Block Timestamp","description":"The block timestamp for the transaction"},"transaction_hash":{"type":"string","title":"Transaction Hash","description":"The transaction hash for the transaction"},"from_address":{"type":"string","title":"From Address","description":"from address"},"to_address":{"type":"string","title":"To Address","description":"to address"},"from_address_label":{"anyOf":[{"type":"string"}],"title":"From Address Label","description":"from address label"},"to_address_label":{"anyOf":[{"type":"string"}],"title":"To Address Label","description":"to address label"},"transaction_type":{"anyOf":[{"type":"string"}],"title":"Transaction Type","description":"Transaction type"},"transfer_amount":{"anyOf":[{"type":"number"}],"title":"Transfer Amount","description":"value of the token traded"},"transfer_value_usd":{"anyOf":[{"type":"number"}],"title":"Transfer Value Usd","description":"value of the token traded in USD"}},"type":"object","required":["block_timestamp","transaction_hash","from_address","to_address"],"title":"TGMTransfer","description":"Individual TGM transfer record.\n\nRepresents a single token transfer with transaction details and participant information."},"PaginationInfo":{"properties":{"page":{"type":"integer","minimum":1,"title":"Page","description":"Current page number","default":1},"per_page":{"type":"integer","maximum":1000,"minimum":1,"title":"Per Page","description":"Number of records per page","default":10},"is_last_page":{"type":"boolean","title":"Is Last Page","description":"Whether this is the last page","default":true}},"type":"object","title":"PaginationInfo","description":"Pagination information for API responses."}},"headers":{"XNansenCreditsUsed":{"description":"Number of credits consumed by this API request","schema":{"type":"string"}},"XNansenCreditsRemaining":{"description":"Total credits remaining in the user's account after this request","schema":{"type":"string"}},"PaymentReceipt":{"description":"Base64url-encoded MPP receipt returned on successful paid requests via Authorization: Payment","schema":{"type":"string"}},"RateLimitLimit":{"description":"Combined rate limit across all configured time windows","schema":{"type":"string"}},"RateLimitRemaining":{"description":"Number of requests remaining in the current limiting window","schema":{"type":"string"}},"RateLimitReset":{"description":"Time in seconds until the rate limit window resets","schema":{"type":"string"}},"XRateLimitLimitSecond":{"description":"Maximum requests allowed per second","schema":{"type":"string"}},"XRateLimitRemainingSecond":{"description":"Requests remaining in the current second","schema":{"type":"string"}},"XRateLimitLimitMinute":{"description":"Maximum requests allowed per minute","schema":{"type":"string"}},"XRateLimitRemainingMinute":{"description":"Requests remaining in the current minute","schema":{"type":"string"}},"PaymentRequired":{"description":"Base64-encoded x402 payment options returned on 402 responses for x402 clients","schema":{"type":"string"}},"WWWAuthenticatePayment":{"description":"MPP payment challenge returned on 402 responses, for example `Payment id=\"...\", realm=\"api.nansen.ai\", method=\"tempo\", intent=\"charge\", request=\"...\"`","schema":{"type":"string"}},"RetryAfter":{"description":"Number of seconds to wait before making a new request","schema":{"type":"string"}}},"responses":{"BadRequestError":{"description":"Bad Request - Invalid request parameters or malformed request","content":{"application/json":{"schema":{"type":"object","properties":{"detail":{"type":"string"}}}}}},"UnauthorizedError":{"description":"Authentication error - No API key found in request","content":{"application/json":{"schema":{"type":"object","properties":{"detail":{"type":"string"}}}}}},"PaymentRequiredError":{"description":"Payment Required - This endpoint supports pay-per-request via x402 and MPP. x402 responses advertise payment options in `Payment-Required`; MPP responses advertise a fresh `WWW-Authenticate: Payment ...` challenge. Successful MPP responses may include `Payment-Receipt`.","headers":{"Payment-Required":{"$ref":"#/components/headers/PaymentRequired"},"WWW-Authenticate":{"$ref":"#/components/headers/WWWAuthenticatePayment"}},"content":{"application/json":{"schema":{"type":"object","description":"Problem-details body for x402 or MPP payment challenges."}}}},"ForbiddenError":{"description":"Forbidden - User does not have required subscription tier or has exceeded credit limit","content":{"application/json":{"schema":{"type":"object","properties":{"detail":{"type":"string"}}}}}},"NotFoundError":{"description":"Not Found - The requested resource was not found","content":{"application/json":{"schema":{"type":"object","properties":{"detail":{"type":"string"}}}}}},"ValidationError":{"description":"Validation error - Invalid request parameters","content":{"application/json":{"schema":{"type":"object","properties":{"detail":{"type":"array","items":{"type":"object","properties":{"loc":{"type":"array","items":{"type":"string"}},"msg":{"type":"string"},"type":{"type":"string"}}}}}}}}},"TooManyRequestsError":{"description":"Too Many Requests - Rate limit exceeded","content":{"application/json":{"schema":{"type":"object","properties":{"detail":{"type":"string"},"retry_after":{"type":"integer","description":"Seconds to wait before retrying"}}}}},"headers":{"Retry-After":{"$ref":"#/components/headers/RetryAfter"}}},"InternalServerError":{"description":"Internal Server Error - An unexpected error occurred","content":{"application/json":{"schema":{"type":"object","properties":{"detail":{"type":"string"}}}}}}}},"paths":{"/api/v1/tgm/transfers":{"post":{"tags":["Token God Mode"],"summary":"Get TGM Transfers Data","description":"Track all token transfer activity including direct transfers, DEX trades, and CEX movements. This endpoint is particularly useful for monitoring exchange flows - both centralized (CEX) and decentralized (DEX) - to identify accumulation or distribution patterns.","operationId":"get_tgm_transfers_api_v1_tgm_transfers_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TGMTransfersRequest"}}},"required":true},"responses":{"200":{"description":"TGM transfers data","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TGMTransfersResponse"}}},"headers":{"X-Nansen-Credits-Used":{"$ref":"#/components/headers/XNansenCreditsUsed"},"X-Nansen-Credits-Remaining":{"$ref":"#/components/headers/XNansenCreditsRemaining"},"Payment-Receipt":{"$ref":"#/components/headers/PaymentReceipt"},"RateLimit-Limit":{"$ref":"#/components/headers/RateLimitLimit"},"RateLimit-Remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"RateLimit-Reset":{"$ref":"#/components/headers/RateLimitReset"},"X-RateLimit-Limit-Second":{"$ref":"#/components/headers/XRateLimitLimitSecond"},"X-RateLimit-Remaining-Second":{"$ref":"#/components/headers/XRateLimitRemainingSecond"},"X-RateLimit-Limit-Minute":{"$ref":"#/components/headers/XRateLimitLimitMinute"},"X-RateLimit-Remaining-Minute":{"$ref":"#/components/headers/XRateLimitRemainingMinute"}}},"400":{"description":"Bad Request","$ref":"#/components/responses/BadRequestError"},"401":{"description":"Unauthorized","$ref":"#/components/responses/UnauthorizedError"},"402":{"description":"Payment Required","$ref":"#/components/responses/PaymentRequiredError"},"403":{"description":"Forbidden","$ref":"#/components/responses/ForbiddenError"},"404":{"description":"Not Found","$ref":"#/components/responses/NotFoundError"},"422":{"description":"Unprocessable Content","$ref":"#/components/responses/ValidationError"},"429":{"description":"Too Many Requests","$ref":"#/components/responses/TooManyRequestsError"},"500":{"description":"Internal Server Error","$ref":"#/components/responses/InternalServerError"}}}}}}
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.nansen.ai/api/token-god-mode/token-transfers.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
