Skip to main content

Variable: GSWAP_ERROR_CATALOG

const GSWAP_ERROR_CATALOG: object

The whole DEX catalog. Add a code here before throwing it anywhere in gswap-sdk.

Type Declaration​

NameType
AMOUNT_IS_JS_NUMBERobject
AMOUNT_IS_JS_NUMBER.paramsobject
AMOUNT_IS_JS_NUMBER.params.field"string"
AMOUNT_IS_JS_NUMBER.phase"pre_send"
AMOUNT_IS_JS_NUMBER.template"Invalid {field}: use a decimal string or BigNumber, not a JavaScript number"
AMOUNT_NEGATIVEobject
AMOUNT_NEGATIVE.paramsobject
AMOUNT_NEGATIVE.params.field"string"
AMOUNT_NEGATIVE.params.value"string"
AMOUNT_NEGATIVE.phase"pre_send"
AMOUNT_NEGATIVE.template"Invalid {field}: must not be negative (got {value})"
AMOUNT_NOT_FINITEobject
AMOUNT_NOT_FINITE.paramsobject
AMOUNT_NOT_FINITE.params.field"string"
AMOUNT_NOT_FINITE.params.value"string"
AMOUNT_NOT_FINITE.phase"pre_send"
AMOUNT_NOT_FINITE.template"Invalid {field}: must be a finite number (got {value})"
AMOUNT_NOT_POSITIVEobject
AMOUNT_NOT_POSITIVE.paramsobject
AMOUNT_NOT_POSITIVE.params.field"string"
AMOUNT_NOT_POSITIVE.params.value"string"
AMOUNT_NOT_POSITIVE.phase"pre_send"
AMOUNT_NOT_POSITIVE.template"Invalid {field}: must be positive (got {value})"
AT_MOST_ONE_OF_ALLOWEDobject
AT_MOST_ONE_OF_ALLOWED.paramsobject
AT_MOST_ONE_OF_ALLOWED.params.first"string"
AT_MOST_ONE_OF_ALLOWED.params.second"string"
AT_MOST_ONE_OF_ALLOWED.phase"pre_send"
AT_MOST_ONE_OF_ALLOWED.template"Provide at most one of {first} or {second}."
BOUNDS_VIOLATIONobject
BOUNDS_VIOLATION.paramsobject
BOUNDS_VIOLATION.params.serverMessage"string"
BOUNDS_VIOLATION.phase"post_send"
BOUNDS_VIOLATION.template"The gateway rejected a numeric, tick, symbol or range bound: {serverMessage}"
CHAIN_DISPATCH_FAILEDobject
CHAIN_DISPATCH_FAILED.paramsobject
CHAIN_DISPATCH_FAILED.params.errorKey"string"
CHAIN_DISPATCH_FAILED.params.serverMessage"string"
CHAIN_DISPATCH_FAILED.phase"post_send"
CHAIN_DISPATCH_FAILED.template"The chain dispatch failed (chain error key \"{errorKey}\"): {serverMessage}"
CHAIN_REJECTEDobject
CHAIN_REJECTED.paramsobject
CHAIN_REJECTED.params.errorKey"string"
CHAIN_REJECTED.params.serverMessage"string"
CHAIN_REJECTED.phase"post_send"
CHAIN_REJECTED.template"GalaChain error {errorKey}: {serverMessage}"
CONFIRMATION_ABORTEDobject
CONFIRMATION_ABORTED.paramsobject
CONFIRMATION_ABORTED.phase"post_send"
CONFIRMATION_ABORTED.template"Transaction confirmation was aborted."
CONFIRMATION_FAILEDobject
CONFIRMATION_FAILED.paramsobject
CONFIRMATION_FAILED.params.serverMessage"string"
CONFIRMATION_FAILED.params.status"number"
CONFIRMATION_FAILED.phase"post_send"
CONFIRMATION_FAILED.template"Transaction confirmation failed with HTTP {status}."
CONFIRMATION_FAILED.unrenderedreadonly ["serverMessage"]
CONFIRMATION_KEY_MISMATCHobject
CONFIRMATION_KEY_MISMATCH.paramsobject
CONFIRMATION_KEY_MISMATCH.phase"post_send"
CONFIRMATION_KEY_MISMATCH.template"Apply result key did not match the requested key."
CONFIRMATION_MALFORMEDobject
CONFIRMATION_MALFORMED.paramsobject
CONFIRMATION_MALFORMED.phase"post_send"
CONFIRMATION_MALFORMED.template"Transaction confirmation returned a malformed body."
CONFIRMATION_TIMEOUTobject
CONFIRMATION_TIMEOUT.paramsobject
CONFIRMATION_TIMEOUT.phase"post_send"
CONFIRMATION_TIMEOUT.template"Transaction confirmation timed out; the trade may still apply. Confirm the same uniqueKey again later instead of resubmitting."
CREATE_POOL_NEEDS_CLASS_KEYobject
CREATE_POOL_NEEDS_CLASS_KEY.paramsobject
CREATE_POOL_NEEDS_CLASS_KEY.params.token"string"
CREATE_POOL_NEEDS_CLASS_KEY.phase"pre_send"
CREATE_POOL_NEEDS_CLASS_KEY.template"createPool needs each token as a class key; {token} is a bare trading symbol, which does not carry one."
DTO_INVALIDobject
DTO_INVALID.paramsobject
DTO_INVALID.params.serverMessage"string"
DTO_INVALID.phase"post_send"
DTO_INVALID.template"The gateway rejected the DTO shape: {serverMessage}"
DTO_NOT_CANONICALobject
DTO_NOT_CANONICAL.paramsobject
DTO_NOT_CANONICAL.params.method"string"
DTO_NOT_CANONICAL.phase"pre_send"
DTO_NOT_CANONICAL.template"The {method} DTO is not in the form the SDK builders produce; build it with the matching build function and submit that."
EXACT_AMOUNT_REQUIREDobject
EXACT_AMOUNT_REQUIRED.paramsobject
EXACT_AMOUNT_REQUIRED.params.field"string"
EXACT_AMOUNT_REQUIRED.phase"pre_send"
EXACT_AMOUNT_REQUIRED.template"{field} is required for this swap."
EXACTLY_ONE_OF_REQUIREDobject
EXACTLY_ONE_OF_REQUIRED.paramsobject
EXACTLY_ONE_OF_REQUIRED.params.first"string"
EXACTLY_ONE_OF_REQUIRED.params.second"string"
EXACTLY_ONE_OF_REQUIRED.phase"pre_send"
EXACTLY_ONE_OF_REQUIRED.template"Provide exactly one of {first} or {second}."
GATEWAY_DATA_MISSINGobject
GATEWAY_DATA_MISSING.paramsobject
GATEWAY_DATA_MISSING.phase"post_send"
GATEWAY_DATA_MISSING.template"The gateway response is missing its data object."
GATEWAY_MODE_INVALIDobject
GATEWAY_MODE_INVALID.paramsobject
GATEWAY_MODE_INVALID.phase"post_send"
GATEWAY_MODE_INVALID.template"Gateway response must contain data.mode=\"sync\" with data.result, or data.mode=\"queued\"."
GATEWAY_REJECTEDobject
GATEWAY_REJECTED.paramsobject
GATEWAY_REJECTED.params.gatewayCode"string"
GATEWAY_REJECTED.params.serverMessage"string"
GATEWAY_REJECTED.phase"post_send"
GATEWAY_REJECTED.template"Gateway rejected {gatewayCode}: {serverMessage}"
GATEWAY_REPORTED_ERRORobject
GATEWAY_REPORTED_ERROR.paramsobject
GATEWAY_REPORTED_ERROR.params.serverMessage"string"
GATEWAY_REPORTED_ERROR.phase"post_send"
GATEWAY_REPORTED_ERROR.template"The gateway reported an error for this write: {serverMessage}"
GATEWAY_SYNC_REQUEST_TRADEobject
GATEWAY_SYNC_REQUEST_TRADE.paramsobject
GATEWAY_SYNC_REQUEST_TRADE.phase"post_send"
GATEWAY_SYNC_REQUEST_TRADE.template"The gateway executed RequestTrade synchronously, which this SDK refuses; RequestTrade must be queued."
HTTP_ERRORobject
HTTP_ERROR.paramsobject
HTTP_ERROR.params.serverMessage"string"
HTTP_ERROR.params.status"number"
HTTP_ERROR.params.url"string"
HTTP_ERROR.phase"post_send"
HTTP_ERROR.template"Unexpected HTTP error {status} from {url}."
HTTP_ERROR.unrenderedreadonly ["serverMessage"]
INCOMPLETE_TOKEN_CLASS_KEYobject
INCOMPLETE_TOKEN_CLASS_KEY.paramsobject
INCOMPLETE_TOKEN_CLASS_KEY.params.compositeKey"string"
INCOMPLETE_TOKEN_CLASS_KEY.params.part"string"
INCOMPLETE_TOKEN_CLASS_KEY.phase"pre_send"
INCOMPLETE_TOKEN_CLASS_KEY.template"Token class key \"{compositeKey}\" is missing {part}."
INSUFFICIENT_LIQUIDITYobject
INSUFFICIENT_LIQUIDITY.paramsobject
INSUFFICIENT_LIQUIDITY.params.fee"string"
INSUFFICIENT_LIQUIDITY.params.tokenIn"string"
INSUFFICIENT_LIQUIDITY.params.tokenOut"string"
INSUFFICIENT_LIQUIDITY.phase"post_send"
INSUFFICIENT_LIQUIDITY.template"The selected pool has insufficient liquidity for {tokenIn}/{tokenOut} (fee tier {fee})."
INVALID_CHAIN_RESPONSEobject
INVALID_CHAIN_RESPONSE.paramsobject
INVALID_CHAIN_RESPONSE.params.resource"string"
INVALID_CHAIN_RESPONSE.phase"post_send"
INVALID_CHAIN_RESPONSE.template"Backend returned an invalid {resource}."
INVALID_DTOobject
INVALID_DTO.paramsobject
INVALID_DTO.params.expected"string"
INVALID_DTO.params.field"string"
INVALID_DTO.params.method"string"
INVALID_DTO.phase"pre_send"
INVALID_DTO.template"{method} DTO field {field} is invalid (expected {expected})."
INVALID_FEEobject
INVALID_FEE.paramsobject
INVALID_FEE.params.allowed"string"
INVALID_FEE.params.field"string"
INVALID_FEE.params.value"number"
INVALID_FEE.phase"pre_send"
INVALID_FEE.template"Invalid {field}: {value} is not a supported fee tier; must be one of {allowed}."
INVALID_LIMITobject
INVALID_LIMIT.paramsobject
INVALID_LIMIT.params.max"number"
INVALID_LIMIT.params.min"number"
INVALID_LIMIT.params.value"number"
INVALID_LIMIT.phase"pre_send"
INVALID_LIMIT.template"limit must be an integer from {min} to {max} (got {value})."
INVALID_MARKET_TOKENobject
INVALID_MARKET_TOKEN.paramsobject
INVALID_MARKET_TOKEN.params.token"string"
INVALID_MARKET_TOKEN.phase"pre_send"
INVALID_MARKET_TOKEN.template"A market read names a token by a symbol or class key of 1 to 120 letters, digits and . _ $ + / : | - characters (got \"{token}\")."
INVALID_PAGEobject
INVALID_PAGE.paramsobject
INVALID_PAGE.params.value"number"
INVALID_PAGE.phase"pre_send"
INVALID_PAGE.template"page must be an integer of at least 1 (got {value})."
INVALID_POLL_INTERVALobject
INVALID_POLL_INTERVAL.paramsobject
INVALID_POLL_INTERVAL.params.value"string"
INVALID_POLL_INTERVAL.phase"pre_send"
INVALID_POLL_INTERVAL.template"intervalMs must be a finite number of milliseconds of at least 1 (got {value})."
INVALID_POSITION_RESPONSEobject
INVALID_POSITION_RESPONSE.paramsobject
INVALID_POSITION_RESPONSE.params.reason"string"
INVALID_POSITION_RESPONSE.phase"post_send"
INVALID_POSITION_RESPONSE.template"Backend returned an invalid position ({reason})."
INVALID_PRICE_BOUNDSobject
INVALID_PRICE_BOUNDS.paramsobject
INVALID_PRICE_BOUNDS.params.maxPrice"string"
INVALID_PRICE_BOUNDS.params.minPrice"string"
INVALID_PRICE_BOUNDS.phase"pre_send"
INVALID_PRICE_BOUNDS.template"Price bounds must be finite and positive (minPrice {minPrice}, maxPrice {maxPrice})."
INVALID_PRICE_RANGEobject
INVALID_PRICE_RANGE.paramsobject
INVALID_PRICE_RANGE.params.lowerPrice"string"
INVALID_PRICE_RANGE.params.upperPrice"string"
INVALID_PRICE_RANGE.phase"pre_send"
INVALID_PRICE_RANGE.template"Invalid price range: lower price {lowerPrice} must be less than or equal to upper price {upperPrice}"
INVALID_PRICE_VALUESobject
INVALID_PRICE_VALUES.paramsobject
INVALID_PRICE_VALUES.params.lowerPrice"string"
INVALID_PRICE_VALUES.params.spotPrice"string"
INVALID_PRICE_VALUES.params.upperPrice"string"
INVALID_PRICE_VALUES.phase"pre_send"
INVALID_PRICE_VALUES.template"Invalid price values: all prices must be finite and positive (spot {spotPrice}, lower {lowerPrice}, upper {upperPrice})"
INVALID_SEASON_IDobject
INVALID_SEASON_ID.paramsobject
INVALID_SEASON_ID.params.value"string"
INVALID_SEASON_ID.phase"pre_send"
INVALID_SEASON_ID.template"seasonId must be an integer of at least 1 (got {value})."
INVALID_SORT_BYobject
INVALID_SORT_BY.paramsobject
INVALID_SORT_BY.params.allowed"string"
INVALID_SORT_BY.params.value"string"
INVALID_SORT_BY.phase"pre_send"
INVALID_SORT_BY.template"sortBy \"{value}\" is not allowed; it must be one of {allowed}."
INVALID_SORT_ORDERobject
INVALID_SORT_ORDER.paramsobject
INVALID_SORT_ORDER.params.value"string"
INVALID_SORT_ORDER.phase"pre_send"
INVALID_SORT_ORDER.template"sortOrder \"{value}\" is not allowed; it must be asc or desc."
INVALID_SQRT_PRICEobject
INVALID_SQRT_PRICE.paramsobject
INVALID_SQRT_PRICE.params.sqrtPrice"string"
INVALID_SQRT_PRICE.phase"pre_send"
INVALID_SQRT_PRICE.template"Cannot invert a non-positive sqrt price ({sqrtPrice})."
INVALID_STARTING_PRICEobject
INVALID_STARTING_PRICE.paramsobject
INVALID_STARTING_PRICE.params.value"string"
INVALID_STARTING_PRICE.phase"pre_send"
INVALID_STARTING_PRICE.template"Starting price must be finite and positive (got {value})."
INVALID_TICK_RANGEobject
INVALID_TICK_RANGE.paramsobject
INVALID_TICK_RANGE.params.tickLower"number"
INVALID_TICK_RANGE.params.tickUpper"number"
INVALID_TICK_RANGE.phase"pre_send"
INVALID_TICK_RANGE.template"Invalid tick range: tickLower {tickLower} must be less than tickUpper {tickUpper}"
INVALID_TICK_SPACINGobject
INVALID_TICK_SPACING.paramsobject
INVALID_TICK_SPACING.params.value"number"
INVALID_TICK_SPACING.phase"pre_send"
INVALID_TICK_SPACING.template"Invalid tick spacing: must be a positive integer (got {value})"
INVALID_TIMEFRAMEobject
INVALID_TIMEFRAME.paramsobject
INVALID_TIMEFRAME.params.allowed"string"
INVALID_TIMEFRAME.params.value"string"
INVALID_TIMEFRAME.phase"pre_send"
INVALID_TIMEFRAME.template"timeframe \"{value}\" is not allowed; it must be one of {allowed}."
INVALID_TOKEN_CLASS_KEYobject
INVALID_TOKEN_CLASS_KEY.paramsobject
INVALID_TOKEN_CLASS_KEY.params.tokenClassKey"string"
INVALID_TOKEN_CLASS_KEY.phase"pre_send"
INVALID_TOKEN_CLASS_KEY.template"Invalid token class key \"{tokenClassKey}\": expected a collection followed by category, type and additionalKey"
INVALID_TOKEN_DECIMALSobject
INVALID_TOKEN_DECIMALS.paramsobject
INVALID_TOKEN_DECIMALS.params.field"string"
INVALID_TOKEN_DECIMALS.params.value"number"
INVALID_TOKEN_DECIMALS.phase"pre_send"
INVALID_TOKEN_DECIMALS.template"Invalid {field}: must be a non-negative integer (got {value})"
INVALID_TRADING_SYMBOLobject
INVALID_TRADING_SYMBOL.paramsobject
INVALID_TRADING_SYMBOL.params.symbol"string"
INVALID_TRADING_SYMBOL.phase"pre_send"
INVALID_TRADING_SYMBOL.template"Invalid trading symbol \"{symbol}\": must be 1-32 ASCII letters and digits and not a reserved word (Token, Unit, none)."
METHOD_NOT_ALLOWEDobject
METHOD_NOT_ALLOWED.paramsobject
METHOD_NOT_ALLOWED.params.serverMessage"string"
METHOD_NOT_ALLOWED.phase"post_send"
METHOD_NOT_ALLOWED.template"The gateway does not expose this contract method: {serverMessage}"
METHOD_NOT_SUPPORTEDobject
METHOD_NOT_SUPPORTED.paramsobject
METHOD_NOT_SUPPORTED.params.method"string"
METHOD_NOT_SUPPORTED.phase"pre_send"
METHOD_NOT_SUPPORTED.template"The method {method} is not supported; swaps are queued through RequestTrade."
MISSING_UNIQUE_KEYobject
MISSING_UNIQUE_KEY.paramsobject
MISSING_UNIQUE_KEY.phase"post_send"
MISSING_UNIQUE_KEY.template"The gateway acknowledged RequestTrade without echoing its uniqueKey, so it cannot be tied to the signed request."
MISSING_WALLET_ADDRESSobject
MISSING_WALLET_ADDRESS.paramsobject
MISSING_WALLET_ADDRESS.phase"pre_send"
MISSING_WALLET_ADDRESS.template"Invalid wallet address: No wallet address provided. Either provide a wallet address to the function you are calling, or set one when instantiating GSwapSDK."
NO_POOL_AVAILABLEobject
NO_POOL_AVAILABLE.paramsobject
NO_POOL_AVAILABLE.params.fee"string"
NO_POOL_AVAILABLE.params.tokenIn"string"
NO_POOL_AVAILABLE.params.tokenOut"string"
NO_POOL_AVAILABLE.phase"post_send"
NO_POOL_AVAILABLE.template"No pool is available for {tokenIn}/{tokenOut} (fee tier {fee})."
NO_SIGNERobject
NO_SIGNER.paramsobject
NO_SIGNER.phase"pre_send"
NO_SIGNER.template"This method requires a signer. Please provide a signer to the GSwap constructor."
NO_VALID_TRADING_SYMBOLobject
NO_VALID_TRADING_SYMBOL.paramsobject
NO_VALID_TRADING_SYMBOL.params.classKey"string"
NO_VALID_TRADING_SYMBOL.params.displaySymbol"string"
NO_VALID_TRADING_SYMBOL.phase"pre_send"
NO_VALID_TRADING_SYMBOL.template"No valid trading symbol for token class {classKey}: \"{displaySymbol}\" is not an acceptable symbol and none is registered"
NO_WALLET_ADDRESSobject
NO_WALLET_ADDRESS.paramsobject
NO_WALLET_ADDRESS.phase"post_send"
NO_WALLET_ADDRESS.template"Cannot confirm this write: no walletAddress was provided to the GSwap constructor, so the resulting position cannot be looked up to confirm it landed on chain."
NON_CANONICAL_PAIRobject
NON_CANONICAL_PAIR.paramsobject
NON_CANONICAL_PAIR.params.token0"string"
NON_CANONICAL_PAIR.params.token1"string"
NON_CANONICAL_PAIR.phase"pre_send"
NON_CANONICAL_PAIR.template"The pair {token0}/{token1} is not in canonical order: token0 must sort before token1."
POOL_MISMATCHobject
POOL_MISMATCH.paramsobject
POOL_MISMATCH.params.poolToken0"string"
POOL_MISMATCH.params.poolToken1"string"
POOL_MISMATCH.params.tokenIn"string"
POOL_MISMATCH.params.tokenOut"string"
POOL_MISMATCH.phase"pre_send"
POOL_MISMATCH.template"tokenIn {tokenIn} and tokenOut {tokenOut} must be the two tokens of the pinned pool {poolToken0}/{poolToken1}."
PRICE_BOUNDS_ORDERobject
PRICE_BOUNDS_ORDER.paramsobject
PRICE_BOUNDS_ORDER.params.maxPrice"string"
PRICE_BOUNDS_ORDER.params.minPrice"string"
PRICE_BOUNDS_ORDER.phase"pre_send"
PRICE_BOUNDS_ORDER.template"minPrice {minPrice} must be less than or equal to maxPrice {maxPrice}."
PRICE_VALUES_IS_JS_NUMBERobject
PRICE_VALUES_IS_JS_NUMBER.paramsobject
PRICE_VALUES_IS_JS_NUMBER.phase"pre_send"
PRICE_VALUES_IS_JS_NUMBER.template"Invalid price values: use decimal strings or BigNumber values, not JavaScript numbers"
RATE_LIMITEDobject
RATE_LIMITED.paramsobject
RATE_LIMITED.params.serverMessage"string"
RATE_LIMITED.phase"post_send"
RATE_LIMITED.template"The gateway rate-limited this signer: {serverMessage}"
REQUEST_FAILEDobject
REQUEST_FAILED.paramsobject
REQUEST_FAILED.params.operation"string"
REQUEST_FAILED.phase"in_flight"
REQUEST_FAILED.template"The {operation} request failed."
SEARCH_TOO_LONGobject
SEARCH_TOO_LONG.paramsobject
SEARCH_TOO_LONG.params.length"number"
SEARCH_TOO_LONG.params.maxLength"number"
SEARCH_TOO_LONG.phase"pre_send"
SEARCH_TOO_LONG.template"search must be at most {maxLength} characters (got {length})."
SHADOW_NOT_QUEUEDobject
SHADOW_NOT_QUEUED.paramsobject
SHADOW_NOT_QUEUED.phase"post_send"
SHADOW_NOT_QUEUED.template"The swap backend did not queue the shadow request."
SHADOW_SUBMIT_NEEDS_WALLET_ADDRESSobject
SHADOW_SUBMIT_NEEDS_WALLET_ADDRESS.paramsobject
SHADOW_SUBMIT_NEEDS_WALLET_ADDRESS.phase"pre_send"
SHADOW_SUBMIT_NEEDS_WALLET_ADDRESS.template"A shadow submission needs a walletAddress (the X-Wallet-Address header): pass one to the GSwap constructor or to this call."
SIGNATURE_INVALIDobject
SIGNATURE_INVALID.paramsobject
SIGNATURE_INVALID.params.serverMessage"string"
SIGNATURE_INVALID.phase"post_send"
SIGNATURE_INVALID.template"The gateway could not verify the signature: {serverMessage}"
SIGNER_MISMATCHobject
SIGNER_MISMATCH.paramsobject
SIGNER_MISMATCH.params.serverMessage"string"
SIGNER_MISMATCH.phase"post_send"
SIGNER_MISMATCH.template"The recovered signer does not match an actor named by the operation: {serverMessage}"
STREAM_API_KEY_UNUSABLEobject
STREAM_API_KEY_UNUSABLE.paramsobject
STREAM_API_KEY_UNUSABLE.phase"pre_send"
STREAM_API_KEY_UNUSABLE.template"GdexStreamConfig.apiKey needs a non-empty key and an explicit webSocketImpl that accepts upgrade headers as its third argument (the \"ws\" package, or React Native). A browser WebSocket cannot send x-api-key, so the key would be silently dropped."
STREAM_CLOSED_BEFORE_CONNECTobject
STREAM_CLOSED_BEFORE_CONNECT.paramsobject
STREAM_CLOSED_BEFORE_CONNECT.params.closeCode"number"
STREAM_CLOSED_BEFORE_CONNECT.phase"in_flight"
STREAM_CLOSED_BEFORE_CONNECT.template"GDEX stream closed before connecting (code {closeCode})."
STREAM_CONNECT_FAILEDobject
STREAM_CONNECT_FAILED.paramsobject
STREAM_CONNECT_FAILED.params.url"string"
STREAM_CONNECT_FAILED.phase"in_flight"
STREAM_CONNECT_FAILED.template"Failed to connect to GDEX stream at {url}."
STREAM_CONNECTION_CLOSEDobject
STREAM_CONNECTION_CLOSED.paramsobject
STREAM_CONNECTION_CLOSED.params.closeCode"number"
STREAM_CONNECTION_CLOSED.phase"in_flight"
STREAM_CONNECTION_CLOSED.template"GDEX stream connection closed (code {closeCode})."
STREAM_DISCONNECTEDobject
STREAM_DISCONNECTED.paramsobject
STREAM_DISCONNECTED.phase"in_flight"
STREAM_DISCONNECTED.template"GDEX stream disconnected."
STREAM_NOT_CONNECTEDobject
STREAM_NOT_CONNECTED.paramsobject
STREAM_NOT_CONNECTED.phase"pre_send"
STREAM_NOT_CONNECTED.template"GDEX stream is not connected. Call connect() first."
STREAM_REQUEST_TIMEOUTobject
STREAM_REQUEST_TIMEOUT.paramsobject
STREAM_REQUEST_TIMEOUT.params.method"string"
STREAM_REQUEST_TIMEOUT.params.timeoutMs"number"
STREAM_REQUEST_TIMEOUT.phase"in_flight"
STREAM_REQUEST_TIMEOUT.template"GDEX request \"{method}\" timed out after {timeoutMs} ms."
STREAM_WEBSOCKET_UNAVAILABLEobject
STREAM_WEBSOCKET_UNAVAILABLE.paramsobject
STREAM_WEBSOCKET_UNAVAILABLE.phase"pre_send"
STREAM_WEBSOCKET_UNAVAILABLE.template"GdexStreamService requires a standards-compatible WebSocket constructor. Node.js versions before 22 must provide one with config.webSocketImpl (for example, from the \"ws\" package)."
SUBMISSION_OUTCOME_UNKNOWNobject
SUBMISSION_OUTCOME_UNKNOWN.paramsobject
SUBMISSION_OUTCOME_UNKNOWN.params.reasonreadonly ["timeout", "transport"]
SUBMISSION_OUTCOME_UNKNOWN.phase"in_flight"
SUBMISSION_OUTCOME_UNKNOWN.template"The submission outcome is unknown ({reason}): the request may have reached the gateway. Confirm before retrying."
SYMBOL_CONFLICTobject
SYMBOL_CONFLICT.paramsobject
SYMBOL_CONFLICT.params.serverMessage"string"
SYMBOL_CONFLICT.phase"post_send"
SYMBOL_CONFLICT.template"The CreatePool symbol is already owned by another class: {serverMessage}"
SYMBOL_DISAGREES_WITH_REGISTRYobject
SYMBOL_DISAGREES_WITH_REGISTRY.paramsobject
SYMBOL_DISAGREES_WITH_REGISTRY.params.registeredSymbol"string"
SYMBOL_DISAGREES_WITH_REGISTRY.params.suppliedSymbol"string"
SYMBOL_DISAGREES_WITH_REGISTRY.params.token"string"
SYMBOL_DISAGREES_WITH_REGISTRY.phase"pre_send"
SYMBOL_DISAGREES_WITH_REGISTRY.template"Supplied symbol {suppliedSymbol} for {token} disagrees with the registered trading symbol {registeredSymbol}."
SYMBOL_NOT_FOUNDobject
SYMBOL_NOT_FOUND.paramsobject
SYMBOL_NOT_FOUND.params.token"string"
SYMBOL_NOT_FOUND.phase"pre_send"
SYMBOL_NOT_FOUND.template"Token {token} could not be resolved to a trading symbol."
TICKS_NOT_ALIGNEDobject
TICKS_NOT_ALIGNED.paramsobject
TICKS_NOT_ALIGNED.params.spacing"number"
TICKS_NOT_ALIGNED.params.tickLower"number"
TICKS_NOT_ALIGNED.params.tickUpper"number"
TICKS_NOT_ALIGNED.phase"pre_send"
TICKS_NOT_ALIGNED.template"Ticks {tickLower} and {tickUpper} must be aligned to spacing {spacing}."
TICKS_NOT_INTEGERSobject
TICKS_NOT_INTEGERS.paramsobject
TICKS_NOT_INTEGERS.params.tickLower"number"
TICKS_NOT_INTEGERS.params.tickUpper"number"
TICKS_NOT_INTEGERS.phase"pre_send"
TICKS_NOT_INTEGERS.template"Invalid tick values: ticks must be integers (got {tickLower} and {tickUpper})"
TICKS_OUT_OF_BOUNDSobject
TICKS_OUT_OF_BOUNDS.paramsobject
TICKS_OUT_OF_BOUNDS.params.maxTick"number"
TICKS_OUT_OF_BOUNDS.params.minTick"number"
TICKS_OUT_OF_BOUNDS.params.tickLower"number"
TICKS_OUT_OF_BOUNDS.params.tickUpper"number"
TICKS_OUT_OF_BOUNDS.phase"pre_send"
TICKS_OUT_OF_BOUNDS.template"Invalid tick range: ticks {tickLower} and {tickUpper} must be between {minTick} and {maxTick}"
TOKEN_RESOLUTION_FAILEDobject
TOKEN_RESOLUTION_FAILED.paramsobject
TOKEN_RESOLUTION_FAILED.params.token"string"
TOKEN_RESOLUTION_FAILED.phase"pre_send"
TOKEN_RESOLUTION_FAILED.template"Token {token} could not be looked up; nothing was sent."
TOKEN_SYMBOL_NOT_REGISTEREDobject
TOKEN_SYMBOL_NOT_REGISTERED.paramsobject
TOKEN_SYMBOL_NOT_REGISTERED.params.token"string"
TOKEN_SYMBOL_NOT_REGISTERED.phase"pre_send"
TOKEN_SYMBOL_NOT_REGISTERED.template"Token {token} is not registered in the trading-symbol registry yet; pass token0Symbol/token1Symbol (the token class symbol) to propose one. A symbol cannot be derived from a class key."
UNIQUE_KEY_MISMATCHobject
UNIQUE_KEY_MISMATCH.paramsobject
UNIQUE_KEY_MISMATCH.phase"post_send"
UNIQUE_KEY_MISMATCH.template"Gateway response data.uniqueKey must match the signed RequestTrade uniqueKey."
UNKNOWN_TOKENobject
UNKNOWN_TOKEN.paramsobject
UNKNOWN_TOKEN.params.token"string"
UNKNOWN_TOKEN.phase"pre_send"
UNKNOWN_TOKEN.template"Token {token} is not registered on the DEX contract: it has no trading symbol."
UNORDERABLE_SYMBOLSobject
UNORDERABLE_SYMBOLS.paramsobject
UNORDERABLE_SYMBOLS.params.received"string"
UNORDERABLE_SYMBOLS.phase"pre_send"
UNORDERABLE_SYMBOLS.template"Unable to order trading symbols: expected a pair of symbols, got {received}."
UPDATE_REQUIREDobject
UPDATE_REQUIRED.paramsobject
UPDATE_REQUIRED.params.status"number"
UPDATE_REQUIRED.phase"post_send"
UPDATE_REQUIRED.template"The backend refused this app version and requires an update (HTTP {status}); nothing was queued."