HTTP API reference › GalaSwap DEX › trade-v2
GalaSwap DEX — trade-v2
Source commit: unknown. Generated: 2026-10-26T22:08:07.601Z.
16 operations in this group.
- GET /v2/trade/quote — Offline-simulated quote against new-contract pools
- GET /v2/trade/symbols — Registered trading symbols (class key ↔ symbol) for the new contract
- GET /v2/trade/pools — All new-contract pools with price and TVL (chain-direct)
- GET /v2/trade/pool — Single pool metadata
- GET /v2/trade/slot0 — Current price / sqrtPrice / tick
- GET /v2/trade/composite-pool — Full composite pool snapshot (FetchCompositePoolData)
- GET /v2/trade/positions — A wallet's positions across all new-contract pools
- GET /v2/trade/position — One position incl. uncollected fees (escrow balance)
- GET /v2/trade/add-liq-estimate — Other-side amount + liquidity for a deposit
- GET /v2/trade/remove-liq-estimate — Token amounts released by burning liquidity
- GET /v2/trade/pool-by-hash — Single pool by its v2:<poolRef> hash (or bare poolRef)
- GET /v2/trade/volume — Aggregate new-contract protocol volume/TVL
- GET /v2/trade/opportunities — Ranked new-contract opportunity pools
- GET /v2/trade/transactions — Paged transaction history for a new-contract pool
- GET /v2/trade/transaction — One indexed transaction by its durable correlation key
- GET /v2/trade/graph-data — Time-bucketed volume for a new-contract pool
GET /v2/trade/quote
TradeV2Controller_quote
Offline-simulated quote against new-contract pools
Offline-simulated quote against new-contract pools
Security: []
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| tokenIn | query | yes | string | Input token class key or SDK trading symbol. |
| tokenOut | query | yes | string | Output token class key or SDK trading symbol. |
| amountIn | query | no | string | Input amount as a decimal string. |
| amountOut | query | no | string | Output amount as a decimal string. |
| fee | query | no | number enum: 0, 500, 3000, 10000 | Fee tier in basis points. |
Responses
200 —
Content type: application/json
Schema: QuoteResponseDto
| Field | Type | Required | Description |
|---|---|---|---|
| status | number | yes | |
| message | string | yes | |
| error | boolean | yes | |
| data | QuoteDataResponseDto | yes |
400 —
Content type: application/json
Schema: TradeV2ErrorResponseDto
| Field | Type | Required | Description |
|---|---|---|---|
| status | number | yes | |
| error | boolean | yes | |
| message | string | yes | |
| errorKey | string | no |
default — An error response using the shared backend error envelope.
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| status | integer | yes | |
| error | boolean | yes | |
| message | string | yes | |
| errorKey | string | no |
Example response
[]
GET /v2/trade/symbols
TradeV2Controller_symbols
Registered trading symbols (class key ↔ symbol) for the new contract
Registered trading symbols (class key ↔ symbol) for the new contract
Security: []
Responses
200 —
Content type: application/json
Schema: SymbolsResponseDto
| Field | Type | Required | Description |
|---|---|---|---|
| status | number | yes | |
| message | string | yes | |
| error | boolean | yes | |
| data | array<TradingSymbolResponseDto> | yes |
400 —
Content type: application/json
Schema: TradeV2ErrorResponseDto
| Field | Type | Required | Description |
|---|---|---|---|
| status | number | yes | |
| error | boolean | yes | |
| message | string | yes | |
| errorKey | string | no |
default — An error response using the shared backend error envelope.
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| status | integer | yes | |
| error | boolean | yes | |
| message | string | yes | |
| errorKey | string | no |
Example response
[]
GET /v2/trade/pools
TradeV2Controller_pools
All new-contract pools with price and TVL (chain-direct)
search/sortBy/sortOrder/page/limit are optional — omit all of them for the original unsorted full array (SDK/bot contract, unchanged); pass any of them for the same search+sort+paginate behavior /explore/pools offered its v2 rows.
Security: []
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| sortBy | query | no | string enum: tvl, volume30d, volume1d | Sort by field |
| sortOrder | query | no | string enum: asc, desc | Sort order |
| search | query | no | string | Search term for filtering pools |
| page | query | no | number | Page number for pagination (starts at 1) |
| limit | query | no | number | Maximum number of pools per page; omit to return all |
| poolVersion | query | no | string enum: v1, v2, all | Which contract's pools to include. Comma-separated: "v1" (legacy DexV3Contract), "v2" (new GalaChainDex), "all", or a combination such as "v1,v2" (equivalent to "all"). Omit to include both. |
Responses
200 —
Content type: application/json
Schema: PoolsResponseDto
| Field | Type | Required | Description |
|---|---|---|---|
| status | number | yes | |
| message | string | yes | |
| error | boolean | yes | |
| data | array<PoolListRowResponseDto> | yes |
400 —
Content type: application/json
Schema: TradeV2ErrorResponseDto
| Field | Type | Required | Description |
|---|---|---|---|
| status | number | yes | |
| error | boolean | yes | |
| message | string | yes | |
| errorKey | string | no |
default — An error response using the shared backend error envelope.
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| status | integer | yes | |
| error | boolean | yes | |
| message | string | yes | |
| errorKey | string | no |
Example response
[]
GET /v2/trade/pool
TradeV2Controller_pool
Single pool metadata
Single pool metadata
Security: []
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| token0 | query | yes | string | |
| token1 | query | yes | string | |
| fee | query | yes | number enum: 0, 500, 3000, 10000 |
Responses
200 —
Content type: application/json
Schema: PoolResponseDto
| Field | Type | Required | Description |
|---|---|---|---|
| status | number | yes | |
| message | string | yes | |
| error | boolean | yes | |
| data | PoolResponseDataDto | yes |
400 —
Content type: application/json
Schema: TradeV2ErrorResponseDto
| Field | Type | Required | Description |
|---|---|---|---|
| status | number | yes | |
| error | boolean | yes | |
| message | string | yes | |
| errorKey | string | no |
404 —
Content type: application/json
Schema: TradeV2ErrorResponseDto
| Field | Type | Required | Description |
|---|---|---|---|
| status | number | yes | |
| error | boolean | yes | |
| message | string | yes | |
| errorKey | string | no |
default — An error response using the shared backend error envelope.
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| status | integer | yes | |
| error | boolean | yes | |
| message | string | yes | |
| errorKey | string | no |
Example response
[]
GET /v2/trade/slot0
TradeV2Controller_slot0
Current price / sqrtPrice / tick
Current price / sqrtPrice / tick
Security: []
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| token0 | query | yes | string | |
| token1 | query | yes | string | |
| fee | query | yes | number enum: 0, 500, 3000, 10000 |
Responses
200 —
Content type: application/json
Schema: Slot0ResponseDto
| Field | Type | Required | Description |
|---|---|---|---|
| status | number | yes | |
| message | string | yes | |
| error | boolean | yes | |
| data | Slot0ResponseDataDto | yes |
400 —
Content type: application/json
Schema: TradeV2ErrorResponseDto
| Field | Type | Required | Description |
|---|---|---|---|
| status | number | yes | |
| error | boolean | yes | |
| message | string | yes | |
| errorKey | string | no |
404 —
Content type: application/json
Schema: TradeV2ErrorResponseDto
| Field | Type | Required | Description |
|---|---|---|---|
| status | number | yes | |
| error | boolean | yes | |
| message | string | yes | |
| errorKey | string | no |
default — An error response using the shared backend error envelope.
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| status | integer | yes | |
| error | boolean | yes | |
| message | string | yes | |
| errorKey | string | no |
Example response
[]
GET /v2/trade/composite-pool
TradeV2Controller_compositePool
Full composite pool snapshot (FetchCompositePoolData)
Full composite pool snapshot (FetchCompositePoolData)
Security: []
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| token0 | query | yes | string | |
| token1 | query | yes | string | |
| fee | query | yes | number enum: 0, 500, 3000, 10000 |
Responses
200 —
Content type: application/json
Schema: CompositePoolResponseDto
| Field | Type | Required | Description |
|---|---|---|---|
| status | number | yes | |
| message | string | yes | |
| error | boolean | yes | |
| data | CompositePoolResponseDataDto | yes |
400 —
Content type: application/json
Schema: TradeV2ErrorResponseDto
| Field | Type | Required | Description |
|---|---|---|---|
| status | number | yes | |
| error | boolean | yes | |
| message | string | yes | |
| errorKey | string | no |
default — An error response using the shared backend error envelope.
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| status | integer | yes | |
| error | boolean | yes | |
| message | string | yes | |
| errorKey | string | no |
Example response
[]
GET /v2/trade/positions
TradeV2Controller_positions
A wallet's positions across all new-contract pools
A wallet's positions across all new-contract pools
Security: []
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| user | query | yes | string |
Responses
200 —
Content type: application/json
Schema: PositionsResponseDto
| Field | Type | Required | Description |
|---|---|---|---|
| status | number | yes | |
| message | string | yes | |
| error | boolean | yes | |
| data | array<PositionResponseDataDto> | yes |
400 —
Content type: application/json
Schema: TradeV2ErrorResponseDto
| Field | Type | Required | Description |
|---|---|---|---|
| status | number | yes | |
| error | boolean | yes | |
| message | string | yes | |
| errorKey | string | no |
default — An error response using the shared backend error envelope.
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| status | integer | yes | |
| error | boolean | yes | |
| message | string | yes | |
| errorKey | string | no |
Example response
[]
GET /v2/trade/position
TradeV2Controller_position
One position incl. uncollected fees (escrow balance)
One position incl. uncollected fees (escrow balance)
Security: []
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| token0 | query | yes | string | |
| token1 | query | yes | string | |
| fee | query | yes | number enum: 0, 500, 3000, 10000 | |
| owner | query | yes | string | |
| tickLower | query | yes | number | |
| tickUpper | query | yes | number |
Responses
200 —
Content type: application/json
Schema: PositionResponseDto
| Field | Type | Required | Description |
|---|---|---|---|
| status | number | yes | |
| message | string | yes | |
| error | boolean | yes | |
| data | SinglePositionResponseDataDto | yes |
400 —
Content type: application/json
Schema: TradeV2ErrorResponseDto
| Field | Type | Required | Description |
|---|---|---|---|
| status | number | yes | |
| error | boolean | yes | |
| message | string | yes | |
| errorKey | string | no |
404 —
Content type: application/json
Schema: TradeV2ErrorResponseDto
| Field | Type | Required | Description |
|---|---|---|---|
| status | number | yes | |
| error | boolean | yes | |
| message | string | yes | |
| errorKey | string | no |
default — An error response using the shared backend error envelope.
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| status | integer | yes | |
| error | boolean | yes | |
| message | string | yes | |
| errorKey | string | no |
Example response
[]
GET /v2/trade/add-liq-estimate
TradeV2Controller_addLiquidityEstimate
Other-side amount + liquidity for a deposit
Other-side amount + liquidity for a deposit
Security: []
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| token0 | query | yes | string | |
| token1 | query | yes | string | |
| fee | query | yes | number enum: 0, 500, 3000, 10000 | |
| tickLower | query | yes | number | |
| tickUpper | query | yes | number | |
| amount | query | yes | string | |
| amountIsToken0 | query | yes | boolean |
Responses
200 —
Content type: application/json
Schema: AddLiquidityEstimateResponseEnvelopeDto
| Field | Type | Required | Description |
|---|---|---|---|
| status | number | yes | |
| message | string | yes | |
| error | boolean | yes | |
| data | AddLiquidityEstimateResponseDto | yes |
400 —
Content type: application/json
Schema: TradeV2ErrorResponseDto
| Field | Type | Required | Description |
|---|---|---|---|
| status | number | yes | |
| error | boolean | yes | |
| message | string | yes | |
| errorKey | string | no |
default — An error response using the shared backend error envelope.
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| status | integer | yes | |
| error | boolean | yes | |
| message | string | yes | |
| errorKey | string | no |
Example response
[]
GET /v2/trade/remove-liq-estimate
TradeV2Controller_removeLiquidityEstimate
Token amounts released by burning liquidity
Token amounts released by burning liquidity
Security: []
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| token0 | query | yes | string | |
| token1 | query | yes | string | |
| fee | query | yes | number enum: 0, 500, 3000, 10000 | |
| tickLower | query | yes | number | |
| tickUpper | query | yes | number | |
| liquidity | query | yes | string |
Responses
200 —
Content type: application/json
Schema: RemoveLiquidityEstimateResponseEnvelopeDto
| Field | Type | Required | Description |
|---|---|---|---|
| status | number | yes | |
| message | string | yes | |
| error | boolean | yes | |
| data | RemoveLiquidityEstimateResponseDto | yes |
400 —
Content type: application/json
Schema: TradeV2ErrorResponseDto
| Field | Type | Required | Description |
|---|---|---|---|
| status | number | yes | |
| error | boolean | yes | |
| message | string | yes | |
| errorKey | string | no |
default — An error response using the shared backend error envelope.
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| status | integer | yes | |
| error | boolean | yes | |
| message | string | yes | |
| errorKey | string | no |
Example response
[]
GET /v2/trade/pool-by-hash
TradeV2Controller_poolByHash
Single pool by its v2:<poolRef> hash (or bare poolRef)
Single pool by its v2:<poolRef> hash (or bare poolRef)
Security: []
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| poolHash | query | yes | string | The 64-character hexadecimal hash or v2 pool reference identifying the pool |
Responses
200 —
Content type: application/json
Schema: TradeV2PoolByHashResponseDto
| Field | Type | Required | Description |
|---|---|---|---|
| status | number | yes | |
| message | string | yes | |
| error | boolean | yes | |
| data | PoolListRowResponseDto | yes |
400 —
Content type: application/json
Schema: oneOf: TradeV2ErrorResponseDto | TradeV2ValidationErrorResponseDto
| Field | Type | Required | Description |
|---|---|---|---|
| status | number | yes | |
| error | boolean | yes | |
| message | string | yes | |
| errorKey | string | no | |
| statusCode | number | yes | |
| message | oneOf: string | array<string> | yes | |
| error | string | no |
404 —
Content type: application/json
Schema: TradeV2ErrorResponseDto
| Field | Type | Required | Description |
|---|---|---|---|
| status | number | yes | |
| error | boolean | yes | |
| message | string | yes | |
| errorKey | string | no |
default — An error response using the shared backend error envelope.
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| status | integer | yes | |
| error | boolean | yes | |
| message | string | yes | |
| errorKey | string | no |
Example response
[]
GET /v2/trade/volume
TradeV2Controller_volume
Aggregate new-contract protocol volume/TVL
Aggregate new-contract protocol volume/TVL
Security: []
Responses
200 —
Content type: application/json
Schema: VolumeSummaryResponseEnvelopeDto
| Field | Type | Required | Description |
|---|---|---|---|
| status | number | yes | |
| message | string | yes | |
| error | boolean | yes | |
| data | VolumeSummaryResponseDto | yes |
400 —
Content type: application/json
Schema: TradeV2ErrorResponseDto
| Field | Type | Required | Description |
|---|---|---|---|
| status | number | yes | |
| error | boolean | yes | |
| message | string | yes | |
| errorKey | string | no |
default — An error response using the shared backend error envelope.
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| status | integer | yes | |
| error | boolean | yes | |
| message | string | yes | |
| errorKey | string | no |
Example response
[]
GET /v2/trade/opportunities
TradeV2Controller_opportunities
Ranked new-contract opportunity pools
Ranked new-contract opportunity pools
Security: []
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| limit | query | no | number | Maximum ranked pools to return (default 20) |
Responses
200 —
Content type: application/json
Schema: TradeV2OpportunitiesResponseDto
| Field | Type | Required | Description |
|---|---|---|---|
| status | number | yes | |
| message | string | yes | |
| error | boolean | yes | |
| data | TradeV2OpportunitiesDataResponseDto | yes |
400 —
Content type: application/json
Schema: oneOf: TradeV2ErrorResponseDto | TradeV2ValidationErrorResponseDto
| Field | Type | Required | Description |
|---|---|---|---|
| status | number | yes | |
| error | boolean | yes | |
| message | string | yes | |
| errorKey | string | no | |
| statusCode | number | yes | |
| message | oneOf: string | array<string> | yes | |
| error | string | no |
default — An error response using the shared backend error envelope.
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| status | integer | yes | |
| error | boolean | yes | |
| message | string | yes | |
| errorKey | string | no |
Example response
[]
GET /v2/trade/transactions
TradeV2Controller_transactions
Paged transaction history for a new-contract pool
Paged transaction history for a new-contract pool
Security: []
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| limit | query | yes | number | Maximum number of transactions per page |
| page | query | yes | number | Page number for pagination (starts at 1) |
| poolHash | query | no | string | The 64-character hexadecimal hash or v2 pool reference identifying the pool (optional filter) |
Responses
200 —
Content type: application/json
Schema: TradeV2TransactionsResponseDto
| Field | Type | Required | Description |
|---|---|---|---|
| status | number | yes | |
| message | string | yes | |
| error | boolean | yes | |
| data | TradeV2TransactionsDataResponseDto | yes |
400 —
Content type: application/json
Schema: oneOf: TradeV2ErrorResponseDto | TradeV2ValidationErrorResponseDto
| Field | Type | Required | Description |
|---|---|---|---|
| status | number | yes | |
| error | boolean | yes | |
| message | string | yes | |
| errorKey | string | no | |
| statusCode | number | yes | |
| message | oneOf: string | array<string> | yes | |
| error | string | no |
default — An error response using the shared backend error envelope.
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| status | integer | yes | |
| error | boolean | yes | |
| message | string | yes | |
| errorKey | string | no |
Example response
[]
GET /v2/trade/transaction
TradeV2Controller_transaction
One indexed transaction by its durable correlation key
One indexed transaction by its durable correlation key
Security: []
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| uniqueKey | query | yes | string | The durable correlation key assigned to the submitted transaction |
Responses
200 —
Content type: application/json
Schema: TradeV2TransactionByUniqueKeyResponseDto
| Field | Type | Required | Description |
|---|---|---|---|
| status | number | yes | |
| message | string | yes | |
| error | boolean | yes | |
| data | TradeV2IndexedTransactionResponseDto | yes |
400 —
Content type: application/json
Schema: oneOf: TradeV2ErrorResponseDto | TradeV2ValidationErrorResponseDto
| Field | Type | Required | Description |
|---|---|---|---|
| status | number | yes | |
| error | boolean | yes | |
| message | string | yes | |
| errorKey | string | no | |
| statusCode | number | yes | |
| message | oneOf: string | array<string> | yes | |
| error | string | no |
404 —
Content type: application/json
Schema: TradeV2ErrorResponseDto
| Field | Type | Required | Description |
|---|---|---|---|
| status | number | yes | |
| error | boolean | yes | |
| message | string | yes | |
| errorKey | string | no |
default — An error response using the shared backend error envelope.
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| status | integer | yes | |
| error | boolean | yes | |
| message | string | yes | |
| errorKey | string | no |
Example response
[]
GET /v2/trade/graph-data
TradeV2Controller_graphData
Time-bucketed volume for a new-contract pool
Time-bucketed volume for a new-contract pool
Security: []
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| actualDate | query | yes | string | The reference date for the graph data (ISO 8601 format) |
| duration | query | yes | string enum: 1d, 1w, 1M, 1y | Time period for the graph data |
| poolHash | query | yes | string | The 64-character hexadecimal hash or v2 pool reference identifying the pool |
Responses
200 —
Content type: application/json
Schema: TradeV2GraphDataResponseDto
| Field | Type | Required | Description |
|---|---|---|---|
| status | number | yes | |
| message | string | yes | |
| error | boolean | yes | |
| data | array<TradeV2GraphDataPointResponseDto> | yes |
400 —
Content type: application/json
Schema: oneOf: TradeV2ErrorResponseDto | TradeV2ValidationErrorResponseDto
| Field | Type | Required | Description |
|---|---|---|---|
| status | number | yes | |
| error | boolean | yes | |
| message | string | yes | |
| errorKey | string | no | |
| statusCode | number | yes | |
| message | oneOf: string | array<string> | yes | |
| error | string | no |
default — An error response using the shared backend error envelope.
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| status | integer | yes | |
| error | boolean | yes | |
| message | string | yes | |
| errorKey | string | no |
Example response
[]