Search by name, SuiNS, address, digest, object ID, coin type or checkpoint.

API
coins.prices

Coins

coins.prices

USD prices for up to 100 coins, now or at a past time.

Details

Endpoint
POST /v1/prices
Credits
varies
Pricing
Depends on the input and the size of the result. The description says how.
Rate class
Light. Counts against your light requests per second.

Send coinTypes (up to 100 Move types) and get one row per type in the same order: usd and priceAsOf, which is the time of the price. A coin with a pool holding at least $1,000 of liquidity (at that time, for at), a live bonding curve or a major market gets its price. A coin that trades without such a pool gets its last trade price with lowLiquidity: true; treat that price as indicative, since the pool cannot absorb a real sale. Any other coin returns usd null and priceAsOf null. Pass at (unix seconds or an ISO date) for the price at that time from the trade history; the live price is the default. Costs 1 credit per 10 coins.

Parameters

NameTypeDescription
coinTypesrequiredarray of stringMove coin types, at most 100.Up to 100 items.
atstringOptional: unix seconds or ISO date for a past price. Omit for the live price.

Request

Send your key in the x-api-key header, or leave it out to use the keyless tier.

curl
curl -X POST "https://api.tide.ad/v1/prices" \
  -H "x-api-key: YOUR_API_KEY" \
  -H "content-type: application/json" \
  -d '{
  "coinTypes": [
    "0x2::sui::SUI",
    "0xdeeb7a4662eec9f2f3def03fb937a663dddaa2e215b8078a284d026b7946c270::deep::DEEP",
    "0xdba34672e30cb065b1f93e3ab55318768fd6fef66c15942c9f7cb846e2f900e7::usdc::USDC"
  ]
}'
TypeScript
const res = await fetch("https://api.tide.ad/v1/prices", {
  method: "POST",
  headers: {
    "x-api-key": process.env.TIDE_API_KEY!,
    "content-type": "application/json",
  },
  body: JSON.stringify({
    "coinTypes": [
      "0x2::sui::SUI",
      "0xdeeb7a4662eec9f2f3def03fb937a663dddaa2e215b8078a284d026b7946c270::deep::DEEP",
      "0xdba34672e30cb065b1f93e3ab55318768fd6fef66c15942c9f7cb846e2f900e7::usdc::USDC"
    ]
  }),
});
const data = await res.json();

Response

JSON
{
  "items": [
    {
      "coinType": "0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI",
      "symbol": "SUI",
      "usd": 0.9004006497946312,
      "priceAsOf": "2026-11-04T07:32:08.897Z"
    },
    {
      "coinType": "0xdeeb7a4662eec9f2f3def03fb937a663dddaa2e215b8078a284d026b7946c270::deep::DEEP",
      "symbol": "DEEP",
      "usd": 0.01591637266762021,
      "priceAsOf": "2026-11-04T07:32:08.897Z"
    },
    {
      "coinType": "0xdba34672e30cb065b1f93e3ab55318768fd6fef66c15942c9f7cb846e2f900e7::usdc::USDC",
      "symbol": "USDC",
      "usd": 1,
      "priceAsOf": "2026-11-04T07:32:08.896Z"
    }
  ],
  "at": null,
  "asOf": {
    "checkpoint": 341484275,
    "timestamp": "2026-11-04T07:32:07.383Z",
    "lagMs": 1514
  }
}