Skip to main content

HTTP API reference › GalaSwap DEX › trade

GalaSwap DEX — trade

Source commit: unknown. Generated: 2026-10-26T22:08:07.598Z.

13 operations in this group.

GET /v1/trade/pool​

TradeController_getPoolDetails

Get details of a liquidity pool

Get detailed information about a specific liquidity pool.

Security: []

Parameters​

NameInRequiredTypeDescription
token0queryyesTokenDTOFirst token in the pool (format: collection$category$type$additionalKey)
token1queryyesTokenDTOSecond token in the pool (format: collection$category$type$additionalKey)
feequeryyesnumber enum: 500, 3000, 10000Fee tier: 500 (0.05%), 3000 (0.3%), or 10000 (1%)

Responses​

200 — Successful response​

Content type: application/json

Schema: BaseResponseDto

FieldTypeRequiredDescription
statusnumberyes
messagestringyes
errorobjectyes
dataobjectyes

400 — Bad Request​

No body.

default — An error response using the shared backend error envelope.​

Content type: application/json

Schema: ApiErrorEnvelope

FieldTypeRequiredDescription
statusintegeryes
errorbooleanyes
messagestringyes
errorKeystringno

Example response​

[]

GET /v1/trade/positions​

TradeController_getUserPositions

Get all positions for a user

Get all liquidity positions for a user

Security: []

Parameters​

NameInRequiredTypeDescription
userqueryyesstringUser wallet address (format: eth|<address> or client|<id>)
limitqueryyesnumberMaximum number of positions to return (1-10)
bookmarkquerynostringBookmark for pagination (from previous response)

Responses​

200 — Successful response​

Content type: application/json

Schema: BaseResponseDto

FieldTypeRequiredDescription
statusnumberyes
messagestringyes
errorobjectyes
dataobjectyes

400 — Bad Request​

No body.

default — An error response using the shared backend error envelope.​

Content type: application/json

Schema: ApiErrorEnvelope

FieldTypeRequiredDescription
statusintegeryes
errorbooleanyes
messagestringyes
errorKeystringno

Example response​

[]

GET /v1/trade/position​

TradeController_getUserPosition

Get a specific position

Get details of a specific liquidity position.

Security: []

Parameters​

NameInRequiredTypeDescription
token0queryyesTokenDTOFirst token in the position (format: collection$category$type$additionalKey)
token1queryyesTokenDTOSecond token in the position (format: collection$category$type$additionalKey)
feequeryyesnumber enum: 500, 3000, 10000Fee tier: 500 (0.05%), 3000 (0.3%), or 10000 (1%)
tickUpperqueryyesnumberUpper tick boundary of the position
tickLowerqueryyesnumberLower tick boundary of the position
tickRangeCheckquerynoboolean
ownerquerynostringOwner wallet address (format: eth|<address> or client|<id>)
positionIdquerynostringPosition ID (for existing positions)

Responses​

200 — Successful response​

Content type: application/json

Schema: BaseResponseDto

FieldTypeRequiredDescription
statusnumberyes
messagestringyes
errorobjectyes
dataobjectyes

400 — Bad Request​

No body.

default — An error response using the shared backend error envelope.​

Content type: application/json

Schema: ApiErrorEnvelope

FieldTypeRequiredDescription
statusintegeryes
errorbooleanyes
messagestringyes
errorKeystringno

Example response​

[]

GET /v1/trade/remove-liq-estimate​

TradeController_removeLiquidityEsimate

Estimate gas and impact for removing liquidity

Estimate gas and price impact for removing liquidity. Query params: token0, token1 (format: GALA$Unit$none$none), fee, tickLower, tickUpper, liquidity, owner. Example: ?token0=GALA$Unit$none$none&token1=GUSDC$Unit$none$none&fee=3000&tickLower=-886800&tickUpper=886800&liquidity=1000&owner=eth|6742903677106B3156434F61f2731c3516B1aD68

Security: []

Parameters​

NameInRequiredTypeDescription
token0queryyesTokenDTOFirst token in the pool (format: collection$category$type$additionalKey)
token1queryyesTokenDTOSecond token in the pool (format: collection$category$type$additionalKey)
feequeryyesnumber enum: 500, 3000, 10000Fee tier: 500 (0.05%), 3000 (0.3%), or 10000 (1%)
tickUpperqueryyesnumber
tickLowerqueryyesnumber
tickRangeCheckquerynoboolean
amountqueryyesstring
ownerqueryyesstringOwner wallet address (format: eth|<address> or client|<id>)
positionIdquerynostringPosition ID (for existing positions)

Responses​

200 — Successful response​

Content type: application/json

Schema: BaseResponseDto

FieldTypeRequiredDescription
statusnumberyes
messagestringyes
errorobjectyes
dataobjectyes

400 — Bad Request​

No body.

default — An error response using the shared backend error envelope.​

Content type: application/json

Schema: ApiErrorEnvelope

FieldTypeRequiredDescription
statusintegeryes
errorbooleanyes
messagestringyes
errorKeystringno

Example response​

[]

GET /v1/trade/slot0​

TradeController_getSlot0

GET /v1/trade/slot0

GET /v1/trade/slot0

Security: []

Parameters​

NameInRequiredTypeDescription
token0queryyesTokenDTOFirst token in the pool (format: collection$category$type$additionalKey)
token1queryyesTokenDTOSecond token in the pool (format: collection$category$type$additionalKey)
feequeryyesnumber enum: 500, 3000, 10000Fee tier: 500 (0.05%), 3000 (0.3%), or 10000 (1%)

Responses​

200 —​

Content type: application/json

Schema: TradeSlot0ResponseDto

FieldTypeRequiredDescription
statusnumberyes
errorboolean enum: falseyes
messagestringno
dataoneOf: TradeSlot0ChainResponseDto | objectyes

400 —​

Content type: application/json

Schema: oneOf: TradeCustomErrorResponseDto | TradeValidationErrorResponseDto

FieldTypeRequiredDescription
statusnumberyes
errorbooleanyes
messagestringyes
statusCodenumberyes
messageoneOf: string | array<string>yes
errorstringno

403 —​

Content type: application/json

Schema: TradeCustomErrorResponseDto

FieldTypeRequiredDescription
statusnumberyes
errorbooleanyes
messagestringyes

default — An error response using the shared backend error envelope.​

Content type: application/json

Schema: ApiErrorEnvelope

FieldTypeRequiredDescription
statusintegeryes
errorbooleanyes
messagestringyes
errorKeystringno

Example response​

[]

GET /v1/trade/transaction-status​

TradeController_transactionStatus

Get launchpad transaction status

Looks up a launchpad bundler transaction by ID. This read does not relay DEX writes.

Security: []

Parameters​

NameInRequiredTypeDescription
idqueryyesstringTransaction ID returned by the launchpad bundler for status lookup

Responses​

200 — Successful response​

Content type: application/json

Schema: BaseResponseDto

FieldTypeRequiredDescription
statusnumberyes
messagestringyes
errorobjectyes
dataobjectyes

400 — Bad Request​

No body.

default — An error response using the shared backend error envelope.​

Content type: application/json

Schema: ApiErrorEnvelope

FieldTypeRequiredDescription
statusintegeryes
errorbooleanyes
messagestringyes
errorKeystringno

Example response​

[]

GET /v1/trade/pools​

TradeController_legacyPools

Get legacy DexV3Contract pools

Pools on the legacy contract only.

Security: []

Parameters​

NameInRequiredTypeDescription
sortByquerynostring enum: tvl, volume30d, volume1dSort by field
sortOrderquerynostring enum: asc, descSort order
searchquerynostringSearch term for filtering pools
pagequerynonumberPage number for pagination (starts at 1)
limitquerynonumberMaximum number of pools per page; omit to return all
poolVersionquerynostring enum: v1, v2, allWhich 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: TradePoolListResponseDto

FieldTypeRequiredDescription
statusnumberyes
errorboolean enum: falseyes
messagestringno
dataTradePoolListDataResponseDtoyes

400 —​

Content type: application/json

Schema: oneOf: TradeCustomErrorResponseDto | TradeValidationErrorResponseDto

FieldTypeRequiredDescription
statusnumberyes
errorbooleanyes
messagestringyes
statusCodenumberyes
messageoneOf: string | array<string>yes
errorstringno

default — An error response using the shared backend error envelope.​

Content type: application/json

Schema: ApiErrorEnvelope

FieldTypeRequiredDescription
statusintegeryes
errorbooleanyes
messagestringyes
errorKeystringno

Example response​

[]

GET /v1/trade/pool-by-hash​

TradeController_legacyPoolByHash

Get a legacy pool by hash

Legacy DexV3Contract pool detail by hash.

Security: []

Parameters​

NameInRequiredTypeDescription
poolHashqueryyesstringThe 64-character hexadecimal hash or v2 pool reference identifying the pool

Responses​

200 —​

Content type: application/json

Schema: TradePoolDetailResponseDto

FieldTypeRequiredDescription
statusnumberyes
errorboolean enum: falseyes
messagestringno
dataTradePoolAttributesResponseDtoyes

400 —​

Content type: application/json

Schema: oneOf: TradeCustomErrorResponseDto | TradeValidationErrorResponseDto

FieldTypeRequiredDescription
statusnumberyes
errorbooleanyes
messagestringyes
statusCodenumberyes
messageoneOf: string | array<string>yes
errorstringno

default — An error response using the shared backend error envelope.​

Content type: application/json

Schema: ApiErrorEnvelope

FieldTypeRequiredDescription
statusintegeryes
errorbooleanyes
messagestringyes
errorKeystringno

Example response​

[]

GET /v1/trade/volume​

TradeController_legacyVolume

Get legacy protocol volume

Aggregate volume/TVL for legacy pools.

Security: []

Responses​

200 —​

Content type: application/json

Schema: TradeVolumeResponseDto

FieldTypeRequiredDescription
statusnumberyes
errorboolean enum: falseyes
messagestringno
dataTradeVolumeDataResponseDtoyes

400 —​

Content type: application/json

Schema: TradeCustomErrorResponseDto

FieldTypeRequiredDescription
statusnumberyes
errorbooleanyes
messagestringyes

default — An error response using the shared backend error envelope.​

Content type: application/json

Schema: ApiErrorEnvelope

FieldTypeRequiredDescription
statusintegeryes
errorbooleanyes
messagestringyes
errorKeystringno

Example response​

[]

GET /v1/trade/opportunities​

TradeController_legacyOpportunities

Get ranked legacy opportunity pools

Curated feed, legacy pools only.

Security: []

Parameters​

NameInRequiredTypeDescription
limitquerynonumberMaximum ranked pools to return (default 20)

Responses​

200 —​

Content type: application/json

Schema: TradePoolListResponseDto

FieldTypeRequiredDescription
statusnumberyes
errorboolean enum: falseyes
messagestringno
dataTradePoolListDataResponseDtoyes

400 —​

Content type: application/json

Schema: oneOf: TradeCustomErrorResponseDto | TradeValidationErrorResponseDto

FieldTypeRequiredDescription
statusnumberyes
errorbooleanyes
messagestringyes
statusCodenumberyes
messageoneOf: string | array<string>yes
errorstringno

default — An error response using the shared backend error envelope.​

Content type: application/json

Schema: ApiErrorEnvelope

FieldTypeRequiredDescription
statusintegeryes
errorbooleanyes
messagestringyes
errorKeystringno

Example response​

[]

GET /v1/trade/transactions​

TradeController_explorerTransactions

Get transactions for a pool

Paged transaction history. poolHash accepts either a legacy hash or a v2:<ref> pool reference.

Security: []

Parameters​

NameInRequiredTypeDescription
limitqueryyesnumberMaximum number of transactions per page
pagequeryyesnumberPage number for pagination (starts at 1)
poolHashquerynostringThe 64-character hexadecimal hash or v2 pool reference identifying the pool (optional filter)

Responses​

200 —​

Content type: application/json

Schema: TradeTransactionsResponseDto

FieldTypeRequiredDescription
statusnumberyes
errorboolean enum: falseyes
messagestringno
dataTradeTransactionsDataResponseDtoyes

400 —​

Content type: application/json

Schema: oneOf: TradeCustomErrorResponseDto | TradeValidationErrorResponseDto

FieldTypeRequiredDescription
statusnumberyes
errorbooleanyes
messagestringyes
statusCodenumberyes
messageoneOf: string | array<string>yes
errorstringno

default — An error response using the shared backend error envelope.​

Content type: application/json

Schema: ApiErrorEnvelope

FieldTypeRequiredDescription
statusintegeryes
errorbooleanyes
messagestringyes
errorKeystringno

Example response​

[]

GET /v1/trade/transaction​

TradeController_explorerTransaction

Get an indexed transaction by unique key

Works for a transaction on either contract.

Security: []

Parameters​

NameInRequiredTypeDescription
uniqueKeyqueryyesstringThe durable correlation key assigned to the submitted transaction

Responses​

200 —​

Content type: application/json

Schema: TradeIndexedTransactionEnvelopeResponseDto

FieldTypeRequiredDescription
statusnumberyes
errorboolean enum: falseyes
messagestringno
dataTradeIndexedTransactionResponseDtoyes

400 —​

Content type: application/json

Schema: TradeValidationErrorResponseDto

FieldTypeRequiredDescription
statusCodenumberyes
messageoneOf: string | array<string>yes
errorstringno

404 —​

Content type: application/json

Schema: TradeCustomErrorResponseDto

FieldTypeRequiredDescription
statusnumberyes
errorbooleanyes
messagestringyes

default — An error response using the shared backend error envelope.​

Content type: application/json

Schema: ApiErrorEnvelope

FieldTypeRequiredDescription
statusintegeryes
errorbooleanyes
messagestringyes
errorKeystringno

Example response​

[]

GET /v1/trade/graph-data​

TradeController_explorerGraphData

Get volume graph data for a pool

Works for a pool on either contract (poolHash accepts a legacy hash or v2:<ref>).

Security: []

Parameters​

NameInRequiredTypeDescription
actualDatequeryyesstringThe reference date for the graph data (ISO 8601 format)
durationqueryyesstring enum: 1d, 1w, 1M, 1yTime period for the graph data
poolHashqueryyesstringThe 64-character hexadecimal hash or v2 pool reference identifying the pool

Responses​

200 —​

Content type: application/json

Schema: TradeGraphDataResponseDto

FieldTypeRequiredDescription
statusnumberyes
errorboolean enum: falseyes
messagestringno
dataarray<TradeGraphDataPointResponseDto>yes

400 —​

Content type: application/json

Schema: oneOf: TradeCustomErrorResponseDto | TradeValidationErrorResponseDto

FieldTypeRequiredDescription
statusnumberyes
errorbooleanyes
messagestringyes
statusCodenumberyes
messageoneOf: string | array<string>yes
errorstringno

default — An error response using the shared backend error envelope.​

Content type: application/json

Schema: ApiErrorEnvelope

FieldTypeRequiredDescription
statusintegeryes
errorbooleanyes
messagestringyes
errorKeystringno

Example response​

[]

Previous group: user · Next group: trade-v2