This endpoint is only available to Enterprise plans.

Endpoint details

  • URL: wss://production-feed.mobula.io
  • Message (string):

V2 :

You can specify the assets you want to track by two methods:

  1. By asset_id
  2. By tokens

By asset_id

{
  "type": "feed",
  "authorization": "YOUR-API-KEY",
  "kind":"asset_ids",
  "asset_ids": [123, 456], // optional (default all)
  "quote_id": 456 // optional (default USD)
}

You can find asset IDs in the /all endpoint.

By tokens

{
   "type": "feed",
   "authorization": "YOUR-API-KEY",
   "kind": "address",
   "tokens": [
      {
        "blockchain": "solana",
        "address": "So11111111111111111111111111111111111111112"
      }
    ] // optional (default all)
   "quote": {
    "blockchain": "solana",
    "address": "So11111111111111111111111111111111111111112"
   }// optional (default USD)
}

Unsubscribing from the stream

You can unsubscribe from the stream by sending an unsubscribe message, and specifying the tokens you want to unsubscribe from:


{
  type: "unsubscribe",
  payload: {
    "type": "feed",
    "asset_ids": [123],
    // or
    "tokens": [{"blockchain": "solana", "address": "0x0000000000000000000000000000000000000000"}]
  },
};

V1 :

You can subscribe to the feed to receive updates about all assets registered in our database

{
  "type": "feed",
  "authorization": "YOUR-API-KEY",
}

Add new asset to the feed

curl --request GET \
  --url https://production-api.mobula.io/api/1/feed/create?assetId=<assetId>&quoteId=<quoteId> \
  --header 'Authorization: YOUR-API-KEY' \
  --header 'Content-Type: application/json' \

You can leave quoteId empty to use default USD. You can find asset IDs in the /all endpoint.

Data model

Data reponses includes:

  • Asset updates:
{
  "timestamp": 1733173907000,
  "price": 3881.328639607063,
  "marketDepthUSDUp": 418639.4559697787,
  "marketDepthUSDDown": 623414.4447679224,
  "volume24h": 874713.342519723,
  "baseSymbol": "SWETH",
  "quoteSymbol": "USD",
  "extra": {
    "priceUSD": 3881.328639607063,
    "quoteAssetPrice": 1,
    "blockNumber": "21317425"
  }
}

Pricing methodology

Our basic pricing methodology is explained here. We use a weighted average price based on market depth and volume for each contract, and re-weight based on each contract volume to get final multichain price. Our asset list can be explored via the /all endpoint.

Can’t find what you’re looking for? Reach out to us, response times < 1h.