Skip to main content

api

This module exposes the SDK's GMX API endpoint lookup helpers.

Functions

getApiUrl

getApiUrl(chainId: number): string | undefined

Returns the configured GMX API base URL for a chain, or undefined when that chain does not have API support.

import { getApiUrl } from "@gmx-io/sdk/configs/api";

console.log(getApiUrl(42161)); // Arbitrum API URL
console.log(getApiUrl(43114)); // Avalanche API URL
console.log(getApiUrl(3637)); // Botanix API URL
console.log(getApiUrl(4326)); // MegaETH API URL
console.log(getApiUrl(421614)); // Arbitrum Sepolia API URL
console.log(getApiUrl(43113)); // undefined (no GMX API URL)

getApiFallbackUrls

getApiFallbackUrls(chainId: number): string[]

Returns additional GMX API peer base URLs for a chain. Mainnet API chains use a .gmxapi.io primary host and may expose a .gmxapi.ai fallback host. Testnets can return an empty array.

import { getApiFallbackUrls } from "@gmx-io/sdk/configs/api";

console.log(getApiFallbackUrls(42161)); // ["https://arbitrum.gmxapi.ai/v1"]
console.log(getApiFallbackUrls(421614)); // []

isApiSupported

isApiSupported(chainId: number): boolean

Returns true when getApiUrl(chainId) resolves to a GMX API endpoint.

Current support:

  • Arbitrum (42161)
  • Avalanche (43114)
  • Botanix (3637)
  • MegaETH (4326)
  • Arbitrum Sepolia (421614)

Current non-support:

  • Avalanche Fuji (43113)
import { isApiSupported } from "@gmx-io/sdk/configs/api";

isApiSupported(42161); // true
isApiSupported(3637); // true
isApiSupported(4326); // true
isApiSupported(421614); // true
isApiSupported(43113); // false