Up/Down

List Assets

GET
/api/v1/updown/assets
The Up/Down assets of this deployment: one entry per configured asset, joined with its indexed on-chain listing. Use a slug or asset index from this list as the token parameter of the rounds endpoints.
Auth: API Key

listed is false (and the on-chain fields are null) until the asset's listing has been indexed. mismatch is a sentence when the indexed listing disagrees with the config (the site switches that market off and the rounds endpoints answer 409), else null. Read from the database only: whether an asset is bettable right now (pause flags, the pair) needs a chain read and is not here.

Units: priceDecimals is the price feed's own decimals (divide a round's prices by 10^priceDecimals). virtFloor is in pool-token wei (18 decimals); minStakePoolTokens = virtFloor / 10000, the smallest net stake the contract accepts. All three are null while the stored value has not been read yet, never a guessed constant. Payouts are in the settle asset (pairAsset, pairDecimals).

Response
{
  "contract": "0x...",
  "timeframes": [
    { "slug": "5m", "tf": 0, "durationSec": 300 },
    { "slug": "15m", "tf": 1, "durationSec": 900 },
    { "slug": "1h", "tf": 2, "durationSec": 3600 },
    { "slug": "4h", "tf": 3, "durationSec": 14400 },
    { "slug": "24h", "tf": 4, "durationSec": 86400 }
  ],
  "assets": [
    {
      "slug": "btc",
      "label": "Bitcoin",
      "ticker": "BTC",
      "asset": 0,
      "enabled": true,
      "listed": true,
      "mismatch": null,
      "mainKey": "usd",
      "main": "0x...",
      "settle": "0x...",
      "pairAsset": "0x...",
      "pairSymbol": "USDG",
      "pairDecimals": 6,
      "poolToken": "0x...",
      "priceFeed": "0x...",
      "paused": false,
      "priceDecimals": 8,
      "virtFloor": "1000000000000000000000",
      "minStakePoolTokens": "100000000000000000"
    }
  ]
}
200 Assets returned401 Missing or invalid API key503 Up/Down not deployed on this network