> For the complete documentation index, see [llms.txt](https://docs.nansen.ai/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.nansen.ai/api/profiler/address-dex-trades.md).

# Address DEX Trades

## Get Wallet DEX Trades

> Get DEX trade history for a wallet address on a specific chain. Each record includes the bought/sold tokens, amounts, symbols, token age, market cap, FDV, and the USD value of the trade.\
> \
> \*\*What it helps to answer:\*\*\
> \
> 1\. \*\*What DEX trades has this wallet executed on a chain within a date range?\*\*\
> 2\. \*\*Which tokens are being bought and sold, and at what sizes?\*\*\
> 3\. \*\*What is the USD value of each trade, and what was the token's market cap and FDV at trade time?\*\*

```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":{"ProfilerDexTradeRequest":{"properties":{"address":{"type":"string","title":"Address","description":"Trader address"},"chain":{"$ref":"#/components/schemas/ProfilerDexTradesChain","description":"Chain to query"},"date":{"$ref":"#/components/schemas/DateRange","description":"Date range for the trades"},"filters":{"anyOf":[{"$ref":"#/components/schemas/ProfilerDexTradeFilters"}],"description":"Additional filters for the trades"},"pagination":{"$ref":"#/components/schemas/PaginationRequest","description":"Pagination parameters"},"order_by":{"anyOf":[{"items":{"$ref":"#/components/schemas/SortOrder_ProfilerDexTradeSortField_"},"type":"array"}],"title":"Order By","description":"Sort order for the trades"}},"additionalProperties":false,"type":"object","required":["address","chain","date"],"title":"ProfilerDexTradeRequest","description":"Request model for the Profiler DEX Trades endpoint."},"ProfilerDexTradesChain":{"type":"string","enum":["arbitrum","avalanche","base","bnb","ethereum","hyperevm","injective","iotaevm","linea","mantle","mantra","monad","near","optimism","plasma","polygon","ronin","scroll","sei","solana","sonic","starknet","sui","ton","tron"],"title":"ProfilerDexTradesChain","description":"Chains supported in profiler DEX trades analysis."},"DateRange":{"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":"DateRange","description":"Date range model matching the API schema."},"ProfilerDexTradeFilters":{"properties":{"token_bought_address":{"anyOf":[{"type":"string"}],"title":"Token Bought Address","description":"Filter by bought token address"},"token_sold_address":{"anyOf":[{"type":"string"}],"title":"Token Sold Address","description":"Filter by sold token address"},"token_bought_symbol":{"anyOf":[{"type":"string"}],"title":"Token Bought Symbol","description":"Filter by bought token symbol"},"token_sold_symbol":{"anyOf":[{"type":"string"}],"title":"Token Sold Symbol","description":"Filter by sold token symbol"},"token_bought_amount":{"anyOf":[{"$ref":"#/components/schemas/NumericRangeFilter"}],"description":"Bought amount range filter"},"token_sold_amount":{"anyOf":[{"$ref":"#/components/schemas/NumericRangeFilter"}],"description":"Sold amount range filter"},"token_bought_age_days":{"anyOf":[{"$ref":"#/components/schemas/IntegerRangeFilter"}],"description":"Bought token age (in days) range filter"},"token_sold_age_days":{"anyOf":[{"$ref":"#/components/schemas/IntegerRangeFilter"}],"description":"Sold token age (in days) range filter"},"token_bought_market_cap":{"anyOf":[{"$ref":"#/components/schemas/NumericRangeFilter"}],"description":"Bought token market cap range filter"},"token_sold_market_cap":{"anyOf":[{"$ref":"#/components/schemas/NumericRangeFilter"}],"description":"Sold token market cap range filter"},"token_bought_fdv":{"anyOf":[{"$ref":"#/components/schemas/NumericRangeFilter"}],"description":"Bought token FDV range filter"},"token_sold_fdv":{"anyOf":[{"$ref":"#/components/schemas/NumericRangeFilter"}],"description":"Sold token FDV range filter"},"trade_value_usd":{"anyOf":[{"$ref":"#/components/schemas/NumericRangeFilter"}],"description":"Trade value (USD) range filter"}},"additionalProperties":false,"type":"object","title":"ProfilerDexTradeFilters","description":"Filters for DEX trades."},"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"},"IntegerRangeFilter":{"properties":{"min":{"anyOf":[{"type":"integer"}],"title":"Min","description":"Minimum value (inclusive)"},"max":{"anyOf":[{"type":"integer"}],"title":"Max","description":"Maximum value (inclusive)"}},"type":"object","title":"IntegerRangeFilter","description":"Filter for integer values with optional min/max bounds.\nUse for counts, numbers of items, and other whole number values. - Values between 5 and 100"},"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."},"SortOrder_ProfilerDexTradeSortField_":{"properties":{"field":{"$ref":"#/components/schemas/ProfilerDexTradeSortField","description":"Field to sort by"},"direction":{"$ref":"#/components/schemas/SortDirection","description":"Sort direction (ASC or DESC)"}},"type":"object","required":["field","direction"],"title":"SortOrder[ProfilerDexTradeSortField]"},"ProfilerDexTradeSortField":{"type":"string","enum":["chain","block_timestamp","transaction_hash","token_bought_amount","token_sold_amount","token_bought_symbol","token_sold_symbol","token_bought_age_days","token_sold_age_days","token_bought_market_cap","token_sold_market_cap","token_bought_fdv","token_sold_fdv","trade_value_usd"],"title":"ProfilerDexTradeSortField","description":"Enum for DEX trade sort fields."},"SortDirection":{"type":"string","enum":["ASC","DESC"],"title":"SortDirection","description":"Enum for sort directions."},"ProfilerDexTradeResponse":{"properties":{"pagination":{"$ref":"#/components/schemas/PaginationInfo","description":"Pagination information"},"data":{"items":{"$ref":"#/components/schemas/ProfilerDexTrade"},"type":"array","title":"Data","description":"List of DEX trades"}},"additionalProperties":false,"type":"object","required":["pagination","data"],"title":"ProfilerDexTradeResponse","description":"Response model for the Profiler DEX Trades endpoint."},"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."},"ProfilerDexTrade":{"properties":{"chain":{"type":"string","title":"Chain","description":"Chain on which the trade occurred"},"block_timestamp":{"type":"string","title":"Block Timestamp","description":"Block timestamp of the trade"},"transaction_hash":{"type":"string","title":"Transaction Hash","description":"Transaction hash of the trade"},"trader_address":{"type":"string","title":"Trader Address","description":"Address that executed the trade"},"trader_address_label":{"anyOf":[{"type":"string"}],"title":"Trader Address Label","description":"Label associated with the trader address"},"token_bought_address":{"type":"string","title":"Token Bought Address","description":"Address of the bought token"},"token_sold_address":{"type":"string","title":"Token Sold Address","description":"Address of the sold token"},"token_bought_amount":{"anyOf":[{"type":"number"}],"title":"Token Bought Amount","description":"Amount of the bought token"},"token_sold_amount":{"anyOf":[{"type":"number"}],"title":"Token Sold Amount","description":"Amount of the sold token"},"token_bought_symbol":{"anyOf":[{"type":"string"}],"title":"Token Bought Symbol","description":"Symbol of the bought token"},"token_sold_symbol":{"anyOf":[{"type":"string"}],"title":"Token Sold Symbol","description":"Symbol of the sold token"},"token_bought_age_days":{"anyOf":[{"type":"integer"}],"title":"Token Bought Age Days","description":"Age (in days) of the bought token"},"token_sold_age_days":{"anyOf":[{"type":"integer"}],"title":"Token Sold Age Days","description":"Age (in days) of the sold token"},"token_bought_market_cap":{"anyOf":[{"type":"number"}],"title":"Token Bought Market Cap","description":"Market cap of the bought token at trade time"},"token_sold_market_cap":{"anyOf":[{"type":"number"}],"title":"Token Sold Market Cap","description":"Market cap of the sold token at trade time"},"token_bought_fdv":{"anyOf":[{"type":"number"}],"title":"Token Bought Fdv","description":"Fully diluted valuation of the bought token"},"token_sold_fdv":{"anyOf":[{"type":"number"}],"title":"Token Sold Fdv","description":"Fully diluted valuation of the sold token"},"trade_value_usd":{"anyOf":[{"type":"number"}],"title":"Trade Value Usd","description":"USD value of the trade"}},"additionalProperties":false,"type":"object","required":["chain","block_timestamp","transaction_hash","trader_address","token_bought_address","token_sold_address"],"title":"ProfilerDexTrade","description":"A single DEX trade by the profiled address."}},"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/profiler/dex-trades":{"post":{"tags":["Profiler"],"summary":"Get Wallet DEX Trades","description":"Get DEX trade history for a wallet address on a specific chain. Each record includes the bought/sold tokens, amounts, symbols, token age, market cap, FDV, and the USD value of the trade.\n\n**What it helps to answer:**\n\n1. **What DEX trades has this wallet executed on a chain within a date range?**\n2. **Which tokens are being bought and sold, and at what sizes?**\n3. **What is the USD value of each trade, and what was the token's market cap and FDV at trade time?**","operationId":"get_profiler_dex_trades_api_v1_profiler_dex_trades_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProfilerDexTradeRequest"}}},"required":true},"responses":{"200":{"description":"DEX trade history for the address","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProfilerDexTradeResponse"}}},"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
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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, and the optional `goal` query parameter:

```
GET https://docs.nansen.ai/api/profiler/address-dex-trades.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
