Skip to main content
GET
/
2
/
system-metadata
Get system metadata
curl --request GET \
  --url https://demo-api.mobula.io/api/2/system-metadata
{
  "data": {
    "poolTypes": [
      "<string>"
    ],
    "chains": [
      {
        "id": "<string>",
        "name": "<string>",
        "type": "<string>",
        "chainId": 123,
        "testnet": true,
        "indexing": true,
        "averageBlockTimeInSeconds": 123,
        "native": {
          "name": "<string>",
          "symbol": "<string>",
          "decimals": 123,
          "address": "<string>"
        },
        "branding": {
          "logo": "<string>",
          "color": "<string>"
        },
        "blockExplorers": {
          "default": {
            "name": "<string>",
            "url": "<string>",
            "apiUrl": "<string>"
          }
        },
        "integrations": {
          "geckoterminal": "<string>",
          "dexscreener": "<string>",
          "coingecko": "<string>"
        }
      }
    ],
    "factories": [
      {
        "chainId": "<string>",
        "address": "<string>",
        "status": "<string>",
        "name": "<string>",
        "metadata": {
          "ui_name": "<string>",
          "logo": "<string>",
          "website": "<string>"
        }
      }
    ]
  }
}

Overview

The System Metadata endpoint provides reference data about the Mobula platform: the list of supported pool types (DEX types), all indexed blockchains with their configuration, and registered factories with optional metadata. By default all three sections are returned. Pass poolTypes=true, chains=true, or factories=true to select specific sections and reduce payload size.

Query Parameters

Section selectors

  • poolTypes (optional, boolean) — Include the list of supported pool types (e.g. uniswap-v2, pumpfun, raydium, etc.)
  • chains (optional, boolean) — Include the list of supported blockchains
  • factories (optional, boolean) — Include the list of registered factories
When none of these are specified, all sections are returned.

Chain filters

  • indexed (optional, boolean) — Filter chains by indexing status (true = actively indexed)
  • type (optional, string) — Filter chains by type (e.g. evm, solana, sui, starknet)

Factory filters

  • hasMetadata (optional, boolean) — Only return factories that have metadata (true) or don’t (false)
  • status (optional, string) — Filter by approval status: APPROVED, WAITING_APPROVAL, or NOT_APPROVED
  • chainId (optional, string) — Filter factories by chain ID (e.g. evm:1, solana)
  • name (optional, string) — Case-insensitive partial match on factory name

Usage Examples

# Get everything (pool types + chains + factories)
curl -X GET "https://api.mobula.io/api/2/system-metadata"

# Get only supported pool types
curl -X GET "https://api.mobula.io/api/2/system-metadata?poolTypes=true"

# Get only indexed EVM chains
curl -X GET "https://api.mobula.io/api/2/system-metadata?chains=true&indexed=true&type=evm"

# Get approved factories on Base
curl -X GET "https://api.mobula.io/api/2/system-metadata?factories=true&status=APPROVED&chainId=evm:8453"

# Get factories with metadata
curl -X GET "https://api.mobula.io/api/2/system-metadata?factories=true&hasMetadata=true"

Response Format

{
  "data": {
    "poolTypes": [
      "uniswap-v2",
      "uniswap-v3",
      "uniswap-v4",
      "pumpfun",
      "raydium",
      "meteora",
      "..."
    ],
    "chains": [
      {
        "id": "evm:1",
        "name": "Ethereum",
        "type": "evm",
        "chainId": 1,
        "testnet": false,
        "indexing": true,
        "averageBlockTimeInSeconds": 12,
        "native": {
          "name": "Ethereum",
          "symbol": "ETH",
          "decimals": 18,
          "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2"
        },
        "branding": {
          "logo": "https://metadata.mobula.io/assets/logos/...",
          "color": "#7E87A7"
        },
        "blockExplorers": {
          "default": {
            "name": "Etherscan",
            "url": "https://etherscan.io",
            "apiUrl": "https://api.etherscan.io/api"
          }
        },
        "integrations": {
          "geckoterminal": "eth",
          "dexscreener": "ethereum",
          "coingecko": "ethereum"
        }
      }
    ],
    "factories": [
      {
        "chainId": "evm:56",
        "address": "0xee638aa41e12b6c6df71f88410eb1ddd2fb28973",
        "status": "APPROVED",
        "name": "PancakeSwap V2",
        "metadata": {
          "ui_name": "PancakeSwap",
          "logo": "https://...",
          "website": "https://pancakeswap.finance"
        }
      }
    ]
  }
}

Response Field Definitions

Pool Types

A flat array of strings representing all DEX/AMM types supported by the indexer.

Chain Object

FieldTypeDescription
idstringUnique chain identifier (e.g. evm:1, solana)
namestringHuman-readable chain name
typestringChain type (evm, solana, sui, starknet, etc.)
chainIdnumber | stringNumeric chain ID (EVM) or string identifier
testnetbooleanWhether this is a testnet
indexingbooleanWhether Mobula actively indexes this chain
averageBlockTimeInSecondsnumber | nullAverage block time
nativeobjectNative token info (name, symbol, decimals, address)
brandingobjectChain logo URL and theme color
blockExplorersobject | undefinedDefault block explorer (name, url, apiUrl)
integrationsobject | undefinedThird-party platform identifiers (GeckoTerminal, DexScreener, CoinGecko)

Factory Object

FieldTypeDescription
chainIdstringChain identifier
addressstringFactory contract address
statusstringApproval status
namestring | undefinedFactory name
metadataobject | undefinedDisplay metadata (ui_name, logo, website)

Use Cases

  • UI configuration — Populate chain selectors, DEX type filters, and factory dropdowns
  • Integration discovery — Find which chains and DEXs are supported
  • Factory lookup — Search for specific factories by name, chain, or approval status

Query Parameters

factories
boolean

Include the list of registered factories.

poolTypes
boolean

Include the list of supported pool types.

chains
boolean

Include the list of supported chains.

hasMetadata
boolean

Filter factories by metadata presence.

status
enum<string>

Filter factories by approval status.

Available options:
APPROVED,
WAITING_APPROVAL,
NOT_APPROVED
chainId
string

Filter factories by chain ID.

name
string

Case-insensitive partial match on factory name.

indexed
boolean

Filter chains by indexing status.

type
string

Filter chains by type (e.g. "evm", "solana").

Response

200 - application/json

System metadata response

data
object
required