{"format":"opendoc-document","version":1,"url":"https://docs.upscale.trade/es/developers/operations/getmarket","title":"Obtener mercado por id","description":"GET /v2/markets/{id}: Un mercado con la misma instantánea que devuelve la lista. Responde 404 cuando el mercado no existe, está deslistado o está oculto para el llamador.","kind":"api-operation","locale":"es","inLanguage":"es","translation":{"sourceLanguage":"en","targetLanguage":"es","status":"complete","translatedUnits":61,"totalUnits":61},"lastModified":"2026-09-28T20:05:09.350Z","revision":"3c2fd254d25c5fe88817d5c939afd24407f25862bdfb7b9dc8ab5105728c7abe","section":{"title":"Developers","url":"https://docs.upscale.trade/es/developers"},"representations":{"html":"https://docs.upscale.trade/es/developers/operations/getmarket","markdown":"https://docs.upscale.trade/es/developers/operations/getmarket.md","json":"https://docs.upscale.trade/es/developers/operations/getmarket.json"},"translations":{"en":"https://docs.upscale.trade/developers/operations/getmarket","ru":"https://docs.upscale.trade/ru/developers/operations/getmarket","es":"https://docs.upscale.trade/es/developers/operations/getmarket"},"operation":{"id":"getMarket","method":"GET","path":"/v2/markets/{id}","summary":"Obtener mercado por id","description":"Un mercado con la misma instantánea que devuelve la lista.\n\nResponde `404` cuando el mercado no existe, está deslistado o está oculto para el llamador.","tags":["Config"],"tagLabels":{"Accounts":"Cuentas","Config":"Configuración","Trading":"Trading"},"deprecated":false,"parameters":[{"name":"id","location":"path","schema":{"type":"string · uuid","types":["string"],"nullable":false,"readOnly":false,"writeOnly":false,"constraints":{"format":"uuid"},"properties":[],"variants":[]},"type":"string · uuid","required":true,"description":"Identificador de mercado, tal como lo devuelve `GET /v2/markets`.","example":"00000000-0000-4000-8000-000000000000"},{"name":"accountId","location":"query","schema":{"type":"string · uuid","types":["string"],"nullable":false,"readOnly":false,"writeOnly":false,"constraints":{"format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$"},"properties":[],"variants":[]},"type":"string · uuid","required":false,"description":"Cuenta de trader respecto a la cual resolver la lista de mercados: los límites de apalancamiento y la disponibilidad se devuelven tal como se aplican a esa cuenta. Omitida — se devuelven los valores predeterminados de toda la plataforma.","example":"00000000-0000-4000-8000-000000000000"}],"bodies":[],"responses":[{"status":"401","description":"No autorizado","properties":[],"headers":[]},{"status":"404","description":"Mercado no encontrado, deslistado u oculto para el llamador.","properties":[],"headers":[]},{"status":"429","description":"Se superó el límite de velocidad de la clave de API (`api_key_rate_limit_exceeded`). `Retry-After` indica cuándo volver; el cuerpo incluye el bucket (`read` / `write`), la ventana que se activó, su límite y `retryAt`.","properties":[],"headers":[]},{"status":"default","description":"Respuesta","mediaType":"application/json","properties":[{"name":"id","type":"string · uuid","required":true,"description":"Market identifier — the value order creation takes as `marketId`.","example":"00000000-0000-4000-8000-000000000000","schema":{"type":"string · uuid","types":["string"],"description":"Market identifier — the value order creation takes as `marketId`.","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{"format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$"},"properties":[],"variants":[]}},{"name":"config","type":"object","required":true,"description":"Static description of the market: assets, naming and category.","example":"{\n  \"baseAsset\": \"BTC\",\n  \"quoteAsset\": \"USD\",\n  \"settlementToken\": \"USD\",\n  \"type\": \"base\",\n  \"name\": \"BTC\",\n  \"description\": \"Market description\",\n  \"ticker\": \"BTC/USD\",\n  \"imageLink\": \"https://app.storm.tg/markets/btc.png\",\n  \"tags\": [\n    \"Crypto\"\n  ],\n  \"category\": \"crypto\",\n  \"priority\": 0\n}","schema":{"type":"object","types":["object"],"description":"Static description of the market: assets, naming and category.","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[{"name":"baseAsset","type":"string","required":true,"description":"Base asset ticker — the value the per-market endpoints take as `asset`.","example":"BTC","schema":{"type":"string","types":["string"],"description":"Base asset ticker — the value the per-market endpoints take as `asset`.","example":"BTC","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}},{"name":"quoteAsset","type":"string","required":true,"description":"Asset prices and notionals are quoted in.","example":"USD","schema":{"type":"string","types":["string"],"description":"Asset prices and notionals are quoted in.","example":"USD","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}},{"name":"settlementToken","type":"string","required":true,"description":"Asset positions settle in.","example":"USD","schema":{"type":"string","types":["string"],"description":"Asset positions settle in.","example":"USD","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}},{"name":"type","type":"string","required":true,"description":"Pricing model of the market.","example":"base","schema":{"type":"string","types":["string"],"description":"Pricing model of the market.","example":"base","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}},{"name":"name","type":"string","required":true,"description":"Display name of the market.","example":"BTC","schema":{"type":"string","types":["string"],"description":"Display name of the market.","example":"BTC","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}},{"name":"description","type":"string","required":true,"description":"Free-form description shown in the app.","example":"Market description","schema":{"type":"string","types":["string"],"description":"Free-form description shown in the app.","example":"Market description","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}},{"name":"ticker","type":"string","required":true,"description":"Full pair label.","example":"BTC/USD","schema":{"type":"string","types":["string"],"description":"Full pair label.","example":"BTC/USD","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}},{"name":"imageLink","type":"string","required":true,"description":"Icon of the market.","example":"https://app.storm.tg/markets/btc.png","schema":{"type":"string","types":["string"],"description":"Icon of the market.","example":"https://app.storm.tg/markets/btc.png","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}},{"name":"tags","type":"string[]","required":true,"description":"Tags the app groups markets by.","example":"[\n  \"Crypto\"\n]","schema":{"type":"string[]","types":["array"],"description":"Tags the app groups markets by.","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"items":{"type":"string","types":["string"],"example":"Crypto","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]},"variants":[]}},{"name":"category","type":"string · enum","required":true,"description":"Whether the market is crypto or a real-world asset — an account may be limited to one of the two.","example":"crypto","schema":{"type":"string · enum","types":["string"],"description":"Whether the market is crypto or a real-world asset — an account may be limited to one of the two.","enum":["crypto","rwa"],"nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}},{"name":"priority","type":"number · nullable","required":true,"description":"Sort weight in the market list; higher comes first. Null when unranked.","example":"0","schema":{"type":"number · nullable","types":["number","null"],"description":"Sort weight in the market list; higher comes first. Null when unranked.","nullable":true,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}}],"variants":[]}},{"name":"state","type":"object","required":true,"description":"Live state: index price, funding and the depth an order is priced against.","example":"{\n  \"indexPrice\": \"1000000000\",\n  \"blockTimestamp\": 0,\n  \"fundingRate\": \"1000000000\",\n  \"nextFundingAt\": 0,\n  \"lastFundingAt\": 0,\n  \"vpiSpread\": \"1000000000\",\n  \"vpiMarketDepthLong\": \"1000000000\",\n  \"vpiMarketDepthShort\": \"1000000000\",\n  \"vpiCoefficientLong\": \"1000000000\",\n  \"vpiCoefficientShort\": \"1000000000\"\n}","schema":{"type":"object","types":["object"],"description":"Live state: index price, funding and the depth an order is priced against.","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[{"name":"indexPrice","type":"string · int32","required":true,"description":"Current index price of the market, fp9 raw — what orders are priced and triggers compared against.","example":"1000000000","schema":{"type":"string · int32","types":["string"],"description":"Current index price of the market, fp9 raw — what orders are priced and triggers compared against.","example":"1000000000","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{"format":"int32","pattern":"^(?:-?[1-9][0-9]*|0)$"},"properties":[],"variants":[]}},{"name":"blockTimestamp","type":"number","required":true,"description":"When this state snapshot was produced, unix timestamp in milliseconds.","example":"0","schema":{"type":"number","types":["number"],"description":"When this state snapshot was produced, unix timestamp in milliseconds.","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}},{"name":"fundingRate","type":"string · int32","required":true,"description":"Funding rate of the running interval, fp9 raw fraction. Positive means longs pay shorts.","example":"1000000000","schema":{"type":"string · int32","types":["string"],"description":"Funding rate of the running interval, fp9 raw fraction. Positive means longs pay shorts.","example":"1000000000","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{"format":"int32","pattern":"^(?:-?[1-9][0-9]*|0)$"},"properties":[],"variants":[]}},{"name":"nextFundingAt","type":"number","required":true,"description":"When funding is settled next, unix timestamp in milliseconds.","example":"0","schema":{"type":"number","types":["number"],"description":"When funding is settled next, unix timestamp in milliseconds.","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}},{"name":"lastFundingAt","type":"number · nullable","required":true,"description":"When funding was last settled, unix timestamp in milliseconds. Null before the first settlement.","example":"0","schema":{"type":"number · nullable","types":["number","null"],"description":"When funding was last settled, unix timestamp in milliseconds. Null before the first settlement.","nullable":true,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}},{"name":"vpiSpread","type":"string · int32","required":true,"description":"Current spread charged on top of the index price, fp9 raw fraction.","example":"1000000000","schema":{"type":"string · int32","types":["string"],"description":"Current spread charged on top of the index price, fp9 raw fraction.","example":"1000000000","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{"format":"int32","pattern":"^(?:-?[1-9][0-9]*|0)$"},"properties":[],"variants":[]}},{"name":"vpiMarketDepthLong","type":"string · int32","required":true,"description":"Depth available on the long side, fp9 raw. Orders large against it move the execution price.","example":"1000000000","schema":{"type":"string · int32","types":["string"],"description":"Depth available on the long side, fp9 raw. Orders large against it move the execution price.","example":"1000000000","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{"format":"int32","pattern":"^(?:-?[1-9][0-9]*|0)$"},"properties":[],"variants":[]}},{"name":"vpiMarketDepthShort","type":"string · int32","required":true,"description":"Depth available on the short side, fp9 raw.","example":"1000000000","schema":{"type":"string · int32","types":["string"],"description":"Depth available on the short side, fp9 raw.","example":"1000000000","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{"format":"int32","pattern":"^(?:-?[1-9][0-9]*|0)$"},"properties":[],"variants":[]}},{"name":"vpiCoefficientLong","type":"string · int32","required":true,"description":"Price-impact coefficient applied to long orders, fp9 raw.","example":"1000000000","schema":{"type":"string · int32","types":["string"],"description":"Price-impact coefficient applied to long orders, fp9 raw.","example":"1000000000","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{"format":"int32","pattern":"^(?:-?[1-9][0-9]*|0)$"},"properties":[],"variants":[]}},{"name":"vpiCoefficientShort","type":"string · int32","required":true,"description":"Price-impact coefficient applied to short orders, fp9 raw.","example":"1000000000","schema":{"type":"string · int32","types":["string"],"description":"Price-impact coefficient applied to short orders, fp9 raw.","example":"1000000000","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{"format":"int32","pattern":"^(?:-?[1-9][0-9]*|0)$"},"properties":[],"variants":[]}}],"variants":[]}},{"name":"settings","type":"object","required":true,"description":"Trading rules of the market: fees, margin ratios and the caps an order is checked against.","example":"{\n  \"fee\": \"1000000000\",\n  \"minInitMarginRatio\": \"1000000000\",\n  \"initMarginRatio\": \"1000000000\",\n  \"maintenanceMarginRatio\": \"1000000000\",\n  \"maxLeverageByAccount\": {\n    \"key\": \"1000000000\"\n  },\n  \"spreadLimit\": \"1000000000\",\n  \"maxPriceImpact\": \"1000000000\",\n  \"maxPriceSpread\": \"1000000000\",\n  \"maxOpenNotionalLong\": \"1000000000\",\n  \"maxOpenNotionalShort\": \"1000000000\",\n  \"minStopTriggerDistanceRatio\": \"1000000000\",\n  \"isCloseOnly\": true,\n  \"isClosed\": true,\n  \"isPaused\": true,\n  \"isZeroSpread\": true\n}","schema":{"type":"object","types":["object"],"description":"Trading rules of the market: fees, margin ratios and the caps an order is checked against.","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[{"name":"fee","type":"string · int32","required":true,"description":"Trading fee rate, fp9 raw fraction (`1000000` = 0.1%).","example":"1000000000","schema":{"type":"string · int32","types":["string"],"description":"Trading fee rate, fp9 raw fraction (`1000000` = 0.1%).","example":"1000000000","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{"format":"int32","pattern":"^(?:-?[1-9][0-9]*|0)$"},"properties":[],"variants":[]}},{"name":"minInitMarginRatio","type":"string · int32","required":true,"description":"Smallest initial margin ratio the market accepts, fp9 raw fraction — the cap on leverage.","example":"1000000000","schema":{"type":"string · int32","types":["string"],"description":"Smallest initial margin ratio the market accepts, fp9 raw fraction — the cap on leverage.","example":"1000000000","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{"format":"int32","pattern":"^(?:-?[1-9][0-9]*|0)$"},"properties":[],"variants":[]}},{"name":"initMarginRatio","type":"string · int32","required":true,"description":"Default initial margin ratio of the market, fp9 raw fraction.","example":"1000000000","schema":{"type":"string · int32","types":["string"],"description":"Default initial margin ratio of the market, fp9 raw fraction.","example":"1000000000","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{"format":"int32","pattern":"^(?:-?[1-9][0-9]*|0)$"},"properties":[],"variants":[]}},{"name":"maintenanceMarginRatio","type":"string · int32","required":true,"description":"Margin ratio below which a position is liquidated, fp9 raw fraction.","example":"1000000000","schema":{"type":"string · int32","types":["string"],"description":"Margin ratio below which a position is liquidated, fp9 raw fraction.","example":"1000000000","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{"format":"int32","pattern":"^(?:-?[1-9][0-9]*|0)$"},"properties":[],"variants":[]}},{"name":"maxLeverageByAccount","type":"object","required":true,"description":"Highest leverage allowed per account type, fp9 raw, keyed by account type.","example":"{\n  \"key\": \"1000000000\"\n}","schema":{"type":"object","types":["object"],"description":"Highest leverage allowed per account type, fp9 raw, keyed by account type.","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[],"additionalProperties":{"type":"string · int32","types":["string"],"example":"1000000000","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{"format":"int32","pattern":"^(?:-?[1-9][0-9]*|0)$"},"properties":[],"variants":[]}}},{"name":"spreadLimit","type":"string · int32","required":true,"description":"Largest spread the market will charge, fp9 raw fraction.","example":"1000000000","schema":{"type":"string · int32","types":["string"],"description":"Largest spread the market will charge, fp9 raw fraction.","example":"1000000000","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{"format":"int32","pattern":"^(?:-?[1-9][0-9]*|0)$"},"properties":[],"variants":[]}},{"name":"maxPriceImpact","type":"string · int32","required":true,"description":"Largest price impact a single order may cause, fp9 raw fraction.","example":"1000000000","schema":{"type":"string · int32","types":["string"],"description":"Largest price impact a single order may cause, fp9 raw fraction.","example":"1000000000","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{"format":"int32","pattern":"^(?:-?[1-9][0-9]*|0)$"},"properties":[],"variants":[]}},{"name":"maxPriceSpread","type":"string · int32","required":true,"description":"Largest deviation allowed between market and index price, fp9 raw fraction.","example":"1000000000","schema":{"type":"string · int32","types":["string"],"description":"Largest deviation allowed between market and index price, fp9 raw fraction.","example":"1000000000","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{"format":"int32","pattern":"^(?:-?[1-9][0-9]*|0)$"},"properties":[],"variants":[]}},{"name":"maxOpenNotionalLong","type":"string · int32","required":true,"description":"Cap on open notional held long on this market, fp9 raw. `0` means no cap.","example":"1000000000","schema":{"type":"string · int32","types":["string"],"description":"Cap on open notional held long on this market, fp9 raw. `0` means no cap.","example":"1000000000","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{"format":"int32","pattern":"^(?:-?[1-9][0-9]*|0)$"},"properties":[],"variants":[]}},{"name":"maxOpenNotionalShort","type":"string · int32","required":true,"description":"Cap on open notional held short on this market, fp9 raw. `0` means no cap.","example":"1000000000","schema":{"type":"string · int32","types":["string"],"description":"Cap on open notional held short on this market, fp9 raw. `0` means no cap.","example":"1000000000","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{"format":"int32","pattern":"^(?:-?[1-9][0-9]*|0)$"},"properties":[],"variants":[]}},{"name":"minStopTriggerDistanceRatio","type":"string · int32","required":true,"description":"Minimum distance between the current price and a stop trigger, fp9 raw fraction. A closer trigger is pushed out to this distance.","example":"1000000000","schema":{"type":"string · int32","types":["string"],"description":"Minimum distance between the current price and a stop trigger, fp9 raw fraction. A closer trigger is pushed out to this distance.","example":"1000000000","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{"format":"int32","pattern":"^(?:-?[1-9][0-9]*|0)$"},"properties":[],"variants":[]}},{"name":"isCloseOnly","type":"boolean","required":true,"description":"Whether the market only accepts orders that close a position.","example":"true","schema":{"type":"boolean","types":["boolean"],"description":"Whether the market only accepts orders that close a position.","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}},{"name":"isClosed","type":"boolean","required":true,"example":"true","schema":{"type":"boolean","types":["boolean"],"nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}},{"name":"isPaused","type":"boolean","required":true,"example":"true","schema":{"type":"boolean","types":["boolean"],"nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}},{"name":"isZeroSpread","type":"boolean","required":true,"description":"Whether the market currently trades without a spread.","example":"true","schema":{"type":"boolean","types":["boolean"],"description":"Whether the market currently trades without a spread.","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}}],"variants":[]}},{"name":"change","type":"object","required":true,"description":"Reference prices for computing 1h, 4h and 24h price changes.","example":"{\n  \"initialPrice\": 0,\n  \"initialPrice1h\": 0,\n  \"initialPrice4h\": 0\n}","schema":{"type":"object","types":["object"],"description":"Reference prices for computing 1h, 4h and 24h price changes.","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[{"name":"initialPrice","type":"number","required":true,"description":"Price 24 hours ago, as a decimal number — the base of the daily change. `0` when no history is available.","example":"0","schema":{"type":"number","types":["number"],"description":"Price 24 hours ago, as a decimal number — the base of the daily change. `0` when no history is available.","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}},{"name":"initialPrice1h","type":"number","required":true,"description":"Price one hour ago, as a decimal number. `0` when no history is available.","example":"0","schema":{"type":"number","types":["number"],"description":"Price one hour ago, as a decimal number. `0` when no history is available.","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}},{"name":"initialPrice4h","type":"number","required":true,"description":"Price four hours ago, as a decimal number. `0` when no history is available.","example":"0","schema":{"type":"number","types":["number"],"description":"Price four hours ago, as a decimal number. `0` when no history is available.","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}}],"variants":[]}},{"name":"schedule","type":"object · nullable","required":true,"description":"Trading sessions of the market. Null when it trades around the clock.","example":"{\n  \"nextPauseAt\": 0,\n  \"nextUnpauseAt\": 0,\n  \"closestPauseAt\": 0,\n  \"closestUnpauseAt\": 0,\n  \"pausedAt\": 0,\n  \"inPause\": true\n}","schema":{"type":"object · nullable","types":["object"],"description":"Trading sessions of the market. Null when it trades around the clock.","nullable":true,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[{"name":"nextPauseAt","type":"number","required":true,"description":"Start of the next scheduled break, unix timestamp in milliseconds. `0` when the market has no breaks at all, and `9007199254740991` when none is scheduled ahead of the current one.","example":"0","schema":{"type":"number","types":["number"],"description":"Start of the next scheduled break, unix timestamp in milliseconds. `0` when the market has no breaks at all, and `9007199254740991` when none is scheduled ahead of the current one.","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}},{"name":"nextUnpauseAt","type":"number","required":true,"description":"End of the break the market is in, or of the next one, unix timestamp in milliseconds. Same `0` and sentinel rules as `nextPauseAt`.","example":"0","schema":{"type":"number","types":["number"],"description":"End of the break the market is in, or of the next one, unix timestamp in milliseconds. Same `0` and sentinel rules as `nextPauseAt`.","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}},{"name":"closestPauseAt","type":"number","required":true,"description":"Same value as `nextPauseAt`. Kept for backward compatibility.","example":"0","schema":{"type":"number","types":["number"],"description":"Same value as `nextPauseAt`. Kept for backward compatibility.","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}},{"name":"closestUnpauseAt","type":"number","required":true,"description":"Same value as `nextUnpauseAt`. Kept for backward compatibility.","example":"0","schema":{"type":"number","types":["number"],"description":"Same value as `nextUnpauseAt`. Kept for backward compatibility.","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}},{"name":"pausedAt","type":"number","required":true,"description":"Start of the break currently running, unix timestamp in milliseconds. `0` when the market is trading.","example":"0","schema":{"type":"number","types":["number"],"description":"Start of the break currently running, unix timestamp in milliseconds. `0` when the market is trading.","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}},{"name":"inPause","type":"boolean","required":true,"description":"Whether the market is inside a scheduled break right now. Orders are refused while it is.","example":"true","schema":{"type":"boolean","types":["boolean"],"description":"Whether the market is inside a scheduled break right now. Orders are refused while it is.","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}}],"variants":[]}}],"schema":{"type":"object","types":["object"],"reference":"#/components/schemas/MarketV2Response","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[{"name":"id","type":"string · uuid","required":true,"description":"Identificador de mercado — el valor que la creación de orden toma como `marketId`.","example":"00000000-0000-4000-8000-000000000000","schema":{"type":"string · uuid","types":["string"],"description":"Identificador de mercado — el valor que la creación de orden toma como `marketId`.","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{"format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$"},"properties":[],"variants":[]}},{"name":"config","type":"object","required":true,"description":"Descripción estática del mercado: activos, denominación y categoría.","example":"{\n  \"baseAsset\": \"BTC\",\n  \"quoteAsset\": \"USD\",\n  \"settlementToken\": \"USD\",\n  \"type\": \"base\",\n  \"name\": \"BTC\",\n  \"description\": \"Market description\",\n  \"ticker\": \"BTC/USD\",\n  \"imageLink\": \"https://app.storm.tg/markets/btc.png\",\n  \"tags\": [\n    \"Crypto\"\n  ],\n  \"category\": \"crypto\",\n  \"priority\": 0\n}","schema":{"type":"object","types":["object"],"description":"Descripción estática del mercado: activos, denominación y categoría.","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[{"name":"baseAsset","type":"string","required":true,"description":"Ticker del activo base — el valor que los endpoints por mercado toman como `asset`.","example":"BTC","schema":{"type":"string","types":["string"],"description":"Ticker del activo base — el valor que los endpoints por mercado toman como `asset`.","example":"BTC","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}},{"name":"quoteAsset","type":"string","required":true,"description":"Los precios de los activos y los importes nocionales se cotizan en.","example":"USD","schema":{"type":"string","types":["string"],"description":"Los precios de los activos y los importes nocionales se cotizan en.","example":"USD","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}},{"name":"settlementToken","type":"string","required":true,"description":"Las posiciones de activos se liquidan en.","example":"USD","schema":{"type":"string","types":["string"],"description":"Las posiciones de activos se liquidan en.","example":"USD","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}},{"name":"type","type":"string","required":true,"description":"Modelo de precios del mercado.","example":"base","schema":{"type":"string","types":["string"],"description":"Modelo de precios del mercado.","example":"base","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}},{"name":"name","type":"string","required":true,"description":"Nombre para mostrar del mercado.","example":"BTC","schema":{"type":"string","types":["string"],"description":"Nombre para mostrar del mercado.","example":"BTC","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}},{"name":"description","type":"string","required":true,"description":"Descripción de formato libre que se muestra en la aplicación.","example":"Market description","schema":{"type":"string","types":["string"],"description":"Descripción de formato libre que se muestra en la aplicación.","example":"Market description","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}},{"name":"ticker","type":"string","required":true,"description":"Etiqueta completa del par.","example":"BTC/USD","schema":{"type":"string","types":["string"],"description":"Etiqueta completa del par.","example":"BTC/USD","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}},{"name":"imageLink","type":"string","required":true,"description":"Icono del mercado.","example":"https://app.storm.tg/markets/btc.png","schema":{"type":"string","types":["string"],"description":"Icono del mercado.","example":"https://app.storm.tg/markets/btc.png","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}},{"name":"tags","type":"string[]","required":true,"description":"Etiquetas por las que la aplicación agrupa los mercados.","example":"[\n  \"Crypto\"\n]","schema":{"type":"string[]","types":["array"],"description":"Etiquetas por las que la aplicación agrupa los mercados.","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"items":{"type":"string","types":["string"],"example":"Crypto","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]},"variants":[]}},{"name":"category","type":"string · enum","required":true,"description":"Si el mercado es cripto o un activo del mundo real — una cuenta puede estar limitada a uno de los dos.","example":"crypto","schema":{"type":"string · enum","types":["string"],"description":"Si el mercado es cripto o un activo del mundo real — una cuenta puede estar limitada a uno de los dos.","enum":["crypto","rwa"],"nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}},{"name":"priority","type":"number · nullable","required":true,"description":"Peso de ordenación en la lista de mercados; el mayor va primero. Nulo cuando no está clasificado.","example":"0","schema":{"type":"number · nullable","types":["number","null"],"description":"Peso de ordenación en la lista de mercados; el mayor va primero. Nulo cuando no está clasificado.","nullable":true,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}}],"variants":[]}},{"name":"state","type":"object","required":true,"description":"Estado en vivo: precio del índice, financiación y la profundidad contra la que se fija el precio de una orden.","example":"{\n  \"indexPrice\": \"1000000000\",\n  \"blockTimestamp\": 0,\n  \"fundingRate\": \"1000000000\",\n  \"nextFundingAt\": 0,\n  \"lastFundingAt\": 0,\n  \"vpiSpread\": \"1000000000\",\n  \"vpiMarketDepthLong\": \"1000000000\",\n  \"vpiMarketDepthShort\": \"1000000000\",\n  \"vpiCoefficientLong\": \"1000000000\",\n  \"vpiCoefficientShort\": \"1000000000\"\n}","schema":{"type":"object","types":["object"],"description":"Estado en vivo: precio del índice, financiación y la profundidad contra la que se fija el precio de una orden.","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[{"name":"indexPrice","type":"string · int32","required":true,"description":"Precio de índice actual del mercado, fp9 en bruto — contra lo que se fijan los precios de las órdenes y se comparan los disparadores.","example":"1000000000","schema":{"type":"string · int32","types":["string"],"description":"Precio de índice actual del mercado, fp9 en bruto — contra lo que se fijan los precios de las órdenes y se comparan los disparadores.","example":"1000000000","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{"format":"int32","pattern":"^(?:-?[1-9][0-9]*|0)$"},"properties":[],"variants":[]}},{"name":"blockTimestamp","type":"number","required":true,"description":"Cuándo se produjo esta instantánea de estado, marca de tiempo unix en milisegundos.","example":"0","schema":{"type":"number","types":["number"],"description":"Cuándo se produjo esta instantánea de estado, marca de tiempo unix en milisegundos.","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}},{"name":"fundingRate","type":"string · int32","required":true,"description":"Tasa de financiación del intervalo en curso, fp9 fracción sin procesar. Positivo significa que los largos pagan a los cortos.","example":"1000000000","schema":{"type":"string · int32","types":["string"],"description":"Tasa de financiación del intervalo en curso, fp9 fracción sin procesar. Positivo significa que los largos pagan a los cortos.","example":"1000000000","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{"format":"int32","pattern":"^(?:-?[1-9][0-9]*|0)$"},"properties":[],"variants":[]}},{"name":"nextFundingAt","type":"number","required":true,"description":"Cuándo se liquida la financiación a continuación, marca de tiempo unix en milisegundos.","example":"0","schema":{"type":"number","types":["number"],"description":"Cuándo se liquida la financiación a continuación, marca de tiempo unix en milisegundos.","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}},{"name":"lastFundingAt","type":"number · nullable","required":true,"description":"Cuándo se liquidó la financiación por última vez, marca de tiempo unix en milisegundos. Nulo antes de la primera liquidación.","example":"0","schema":{"type":"number · nullable","types":["number","null"],"description":"Cuándo se liquidó la financiación por última vez, marca de tiempo unix en milisegundos. Nulo antes de la primera liquidación.","nullable":true,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}},{"name":"vpiSpread","type":"string · int32","required":true,"description":"Spread actual cobrado sobre el precio del índice, fp9 fracción sin procesar.","example":"1000000000","schema":{"type":"string · int32","types":["string"],"description":"Spread actual cobrado sobre el precio del índice, fp9 fracción sin procesar.","example":"1000000000","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{"format":"int32","pattern":"^(?:-?[1-9][0-9]*|0)$"},"properties":[],"variants":[]}},{"name":"vpiMarketDepthLong","type":"string · int32","required":true,"description":"Profundidad disponible en el lado largo, fp9 en bruto. Las órdenes grandes en su contra mueven el precio de ejecución.","example":"1000000000","schema":{"type":"string · int32","types":["string"],"description":"Profundidad disponible en el lado largo, fp9 en bruto. Las órdenes grandes en su contra mueven el precio de ejecución.","example":"1000000000","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{"format":"int32","pattern":"^(?:-?[1-9][0-9]*|0)$"},"properties":[],"variants":[]}},{"name":"vpiMarketDepthShort","type":"string · int32","required":true,"description":"Profundidad disponible en el lado corto, fp9 en bruto.","example":"1000000000","schema":{"type":"string · int32","types":["string"],"description":"Profundidad disponible en el lado corto, fp9 en bruto.","example":"1000000000","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{"format":"int32","pattern":"^(?:-?[1-9][0-9]*|0)$"},"properties":[],"variants":[]}},{"name":"vpiCoefficientLong","type":"string · int32","required":true,"description":"Coeficiente de impacto en el precio aplicado a las órdenes largas, fp9 en bruto.","example":"1000000000","schema":{"type":"string · int32","types":["string"],"description":"Coeficiente de impacto en el precio aplicado a las órdenes largas, fp9 en bruto.","example":"1000000000","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{"format":"int32","pattern":"^(?:-?[1-9][0-9]*|0)$"},"properties":[],"variants":[]}},{"name":"vpiCoefficientShort","type":"string · int32","required":true,"description":"Coeficiente de impacto en el precio aplicado a las órdenes cortas, fp9 en bruto.","example":"1000000000","schema":{"type":"string · int32","types":["string"],"description":"Coeficiente de impacto en el precio aplicado a las órdenes cortas, fp9 en bruto.","example":"1000000000","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{"format":"int32","pattern":"^(?:-?[1-9][0-9]*|0)$"},"properties":[],"variants":[]}}],"variants":[]}},{"name":"settings","type":"object","required":true,"description":"Reglas de negociación del mercado: comisiones, ratios de margen y los límites máximos contra los que se verifica una orden.","example":"{\n  \"fee\": \"1000000000\",\n  \"minInitMarginRatio\": \"1000000000\",\n  \"initMarginRatio\": \"1000000000\",\n  \"maintenanceMarginRatio\": \"1000000000\",\n  \"maxLeverageByAccount\": {\n    \"key\": \"1000000000\"\n  },\n  \"spreadLimit\": \"1000000000\",\n  \"maxPriceImpact\": \"1000000000\",\n  \"maxPriceSpread\": \"1000000000\",\n  \"maxOpenNotionalLong\": \"1000000000\",\n  \"maxOpenNotionalShort\": \"1000000000\",\n  \"minStopTriggerDistanceRatio\": \"1000000000\",\n  \"isCloseOnly\": true,\n  \"isClosed\": true,\n  \"isPaused\": true,\n  \"isZeroSpread\": true\n}","schema":{"type":"object","types":["object"],"description":"Reglas de negociación del mercado: comisiones, ratios de margen y los límites máximos contra los que se verifica una orden.","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[{"name":"fee","type":"string · int32","required":true,"description":"Tasa de comisión de negociación, fp9 fracción en bruto (`1000000` = 0.1%).","example":"1000000000","schema":{"type":"string · int32","types":["string"],"description":"Tasa de comisión de negociación, fp9 fracción en bruto (`1000000` = 0.1%).","example":"1000000000","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{"format":"int32","pattern":"^(?:-?[1-9][0-9]*|0)$"},"properties":[],"variants":[]}},{"name":"minInitMarginRatio","type":"string · int32","required":true,"description":"La menor ratio de margen inicial que acepta el mercado, fp9 fracción bruta — el límite máximo de apalancamiento.","example":"1000000000","schema":{"type":"string · int32","types":["string"],"description":"La menor ratio de margen inicial que acepta el mercado, fp9 fracción bruta — el límite máximo de apalancamiento.","example":"1000000000","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{"format":"int32","pattern":"^(?:-?[1-9][0-9]*|0)$"},"properties":[],"variants":[]}},{"name":"initMarginRatio","type":"string · int32","required":true,"description":"Ratio de margen inicial predeterminado del mercado, fp9 fracción bruta.","example":"1000000000","schema":{"type":"string · int32","types":["string"],"description":"Ratio de margen inicial predeterminado del mercado, fp9 fracción bruta.","example":"1000000000","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{"format":"int32","pattern":"^(?:-?[1-9][0-9]*|0)$"},"properties":[],"variants":[]}},{"name":"maintenanceMarginRatio","type":"string · int32","required":true,"description":"Ratio de margen por debajo del cual se liquida una posición, fp9 fracción bruta.","example":"1000000000","schema":{"type":"string · int32","types":["string"],"description":"Ratio de margen por debajo del cual se liquida una posición, fp9 fracción bruta.","example":"1000000000","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{"format":"int32","pattern":"^(?:-?[1-9][0-9]*|0)$"},"properties":[],"variants":[]}},{"name":"maxLeverageByAccount","type":"object","required":true,"description":"Apalancamiento máximo permitido por tipo de cuenta, fp9 bruto, indexado por tipo de cuenta.","example":"{\n  \"key\": \"1000000000\"\n}","schema":{"type":"object","types":["object"],"description":"Apalancamiento máximo permitido por tipo de cuenta, fp9 bruto, indexado por tipo de cuenta.","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[],"additionalProperties":{"type":"string · int32","types":["string"],"example":"1000000000","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{"format":"int32","pattern":"^(?:-?[1-9][0-9]*|0)$"},"properties":[],"variants":[]}}},{"name":"spreadLimit","type":"string · int32","required":true,"description":"El mayor spread que cobrará el mercado, fp9 fracción bruta.","example":"1000000000","schema":{"type":"string · int32","types":["string"],"description":"El mayor spread que cobrará el mercado, fp9 fracción bruta.","example":"1000000000","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{"format":"int32","pattern":"^(?:-?[1-9][0-9]*|0)$"},"properties":[],"variants":[]}},{"name":"maxPriceImpact","type":"string · int32","required":true,"description":"Mayor impacto en el precio que puede causar una sola orden, fp9 fracción sin procesar.","example":"1000000000","schema":{"type":"string · int32","types":["string"],"description":"Mayor impacto en el precio que puede causar una sola orden, fp9 fracción sin procesar.","example":"1000000000","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{"format":"int32","pattern":"^(?:-?[1-9][0-9]*|0)$"},"properties":[],"variants":[]}},{"name":"maxPriceSpread","type":"string · int32","required":true,"description":"Mayor desviación permitida entre el precio de mercado y el precio del índice, fp9 fracción sin procesar.","example":"1000000000","schema":{"type":"string · int32","types":["string"],"description":"Mayor desviación permitida entre el precio de mercado y el precio del índice, fp9 fracción sin procesar.","example":"1000000000","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{"format":"int32","pattern":"^(?:-?[1-9][0-9]*|0)$"},"properties":[],"variants":[]}},{"name":"maxOpenNotionalLong","type":"string · int32","required":true,"description":"Límite máximo sobre el nocional abierto mantenido en largo en este mercado, fp9 sin procesar. `0` significa sin límite.","example":"1000000000","schema":{"type":"string · int32","types":["string"],"description":"Límite máximo sobre el nocional abierto mantenido en largo en este mercado, fp9 sin procesar. `0` significa sin límite.","example":"1000000000","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{"format":"int32","pattern":"^(?:-?[1-9][0-9]*|0)$"},"properties":[],"variants":[]}},{"name":"maxOpenNotionalShort","type":"string · int32","required":true,"description":"Límite máximo sobre el nocional abierto mantenido en corto en este mercado, fp9 sin procesar. `0` significa sin límite.","example":"1000000000","schema":{"type":"string · int32","types":["string"],"description":"Límite máximo sobre el nocional abierto mantenido en corto en este mercado, fp9 sin procesar. `0` significa sin límite.","example":"1000000000","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{"format":"int32","pattern":"^(?:-?[1-9][0-9]*|0)$"},"properties":[],"variants":[]}},{"name":"minStopTriggerDistanceRatio","type":"string · int32","required":true,"description":"Distancia mínima entre el precio actual y un disparador de stop, fp9 fracción sin procesar. Un disparador más cercano se empuja hasta esta distancia.","example":"1000000000","schema":{"type":"string · int32","types":["string"],"description":"Distancia mínima entre el precio actual y un disparador de stop, fp9 fracción sin procesar. Un disparador más cercano se empuja hasta esta distancia.","example":"1000000000","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{"format":"int32","pattern":"^(?:-?[1-9][0-9]*|0)$"},"properties":[],"variants":[]}},{"name":"isCloseOnly","type":"boolean","required":true,"description":"Si el mercado solo acepta órdenes que cierran una posición.","example":"true","schema":{"type":"boolean","types":["boolean"],"description":"Si el mercado solo acepta órdenes que cierran una posición.","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}},{"name":"isClosed","type":"boolean","required":true,"example":"true","schema":{"type":"boolean","types":["boolean"],"nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}},{"name":"isPaused","type":"boolean","required":true,"example":"true","schema":{"type":"boolean","types":["boolean"],"nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}},{"name":"isZeroSpread","type":"boolean","required":true,"description":"Si el mercado actualmente cotiza sin spread.","example":"true","schema":{"type":"boolean","types":["boolean"],"description":"Si el mercado actualmente cotiza sin spread.","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}}],"variants":[]}},{"name":"change","type":"object","required":true,"description":"Precios de referencia para calcular las variaciones de precio de 1h, 4h y 24h.","example":"{\n  \"initialPrice\": 0,\n  \"initialPrice1h\": 0,\n  \"initialPrice4h\": 0\n}","schema":{"type":"object","types":["object"],"description":"Precios de referencia para calcular las variaciones de precio de 1h, 4h y 24h.","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[{"name":"initialPrice","type":"number","required":true,"description":"Precio hace 24 horas, como número decimal — la base del cambio diario. `0` cuando no hay historial disponible.","example":"0","schema":{"type":"number","types":["number"],"description":"Precio hace 24 horas, como número decimal — la base del cambio diario. `0` cuando no hay historial disponible.","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}},{"name":"initialPrice1h","type":"number","required":true,"description":"Precio hace una hora, como número decimal. `0` cuando no hay historial disponible.","example":"0","schema":{"type":"number","types":["number"],"description":"Precio hace una hora, como número decimal. `0` cuando no hay historial disponible.","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}},{"name":"initialPrice4h","type":"number","required":true,"description":"Precio de hace cuatro horas, como número decimal. `0` cuando no hay historial disponible.","example":"0","schema":{"type":"number","types":["number"],"description":"Precio de hace cuatro horas, como número decimal. `0` cuando no hay historial disponible.","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}}],"variants":[]}},{"name":"schedule","type":"object · nullable","required":true,"description":"Sesiones de negociación del mercado. Nulo cuando cotiza sin interrupción.","example":"{\n  \"nextPauseAt\": 0,\n  \"nextUnpauseAt\": 0,\n  \"closestPauseAt\": 0,\n  \"closestUnpauseAt\": 0,\n  \"pausedAt\": 0,\n  \"inPause\": true\n}","schema":{"type":"object · nullable","types":["object"],"description":"Sesiones de negociación del mercado. Nulo cuando cotiza sin interrupción.","nullable":true,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[{"name":"nextPauseAt","type":"number","required":true,"description":"Inicio de la próxima pausa programada, marca de tiempo Unix en milisegundos. `0` cuando el mercado no tiene ninguna pausa, y `9007199254740991` cuando no hay ninguna programada con posterioridad a la actual.","example":"0","schema":{"type":"number","types":["number"],"description":"Inicio de la próxima pausa programada, marca de tiempo Unix en milisegundos. `0` cuando el mercado no tiene ninguna pausa, y `9007199254740991` cuando no hay ninguna programada con posterioridad a la actual.","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}},{"name":"nextUnpauseAt","type":"number","required":true,"description":"Fin de la pausa en la que se encuentra el mercado, o de la siguiente, marca de tiempo Unix en milisegundos. Mismas reglas de `0` y de centinela que en `nextPauseAt`.","example":"0","schema":{"type":"number","types":["number"],"description":"Fin de la pausa en la que se encuentra el mercado, o de la siguiente, marca de tiempo Unix en milisegundos. Mismas reglas de `0` y de centinela que en `nextPauseAt`.","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}},{"name":"closestPauseAt","type":"number","required":true,"description":"Mismo valor que `nextPauseAt`. Se mantiene por compatibilidad con versiones anteriores.","example":"0","schema":{"type":"number","types":["number"],"description":"Mismo valor que `nextPauseAt`. Se mantiene por compatibilidad con versiones anteriores.","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}},{"name":"closestUnpauseAt","type":"number","required":true,"description":"Mismo valor que `nextUnpauseAt`. Se conserva por compatibilidad con versiones anteriores.","example":"0","schema":{"type":"number","types":["number"],"description":"Mismo valor que `nextUnpauseAt`. Se conserva por compatibilidad con versiones anteriores.","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}},{"name":"pausedAt","type":"number","required":true,"description":"Inicio de la pausa actualmente en curso, marca de tiempo unix en milisegundos. `0` cuando el mercado está operando.","example":"0","schema":{"type":"number","types":["number"],"description":"Inicio de la pausa actualmente en curso, marca de tiempo unix en milisegundos. `0` cuando el mercado está operando.","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}},{"name":"inPause","type":"boolean","required":true,"description":"Si el mercado se encuentra dentro de una pausa programada en este momento. Las órdenes se rechazan mientras esté en ella.","example":"true","schema":{"type":"boolean","types":["boolean"],"description":"Si el mercado se encuentra dentro de una pausa programada en este momento. Las órdenes se rechazan mientras esté en ella.","nullable":false,"readOnly":false,"writeOnly":false,"constraints":{},"properties":[],"variants":[]}}],"variants":[]}}],"variants":[]},"example":"{\n  \"id\": \"00000000-0000-4000-8000-000000000000\",\n  \"config\": {\n    \"baseAsset\": \"BTC\",\n    \"quoteAsset\": \"USD\",\n    \"settlementToken\": \"USD\",\n    \"type\": \"base\",\n    \"name\": \"BTC\",\n    \"description\": \"Market description\",\n    \"ticker\": \"BTC/USD\",\n    \"imageLink\": \"https://app.storm.tg/markets/btc.png\",\n    \"tags\": [\n      \"Crypto\"\n    ],\n    \"category\": \"crypto\",\n    \"priority\": 0\n  },\n  \"state\": {\n    \"indexPrice\": \"1000000000\",\n    \"blockTimestamp\": 0,\n    \"fundingRate\": \"1000000000\",\n    \"nextFundingAt\": 0,\n    \"lastFundingAt\": 0,\n    \"vpiSpread\": \"1000000000\",\n    \"vpiMarketDepthLong\": \"1000000000\",\n    \"vpiMarketDepthShort\": \"1000000000\",\n    \"vpiCoefficientLong\": \"1000000000\",\n    \"vpiCoefficientShort\": \"1000000000\"\n  },\n  \"settings\": {\n    \"fee\": \"1000000000\",\n    \"minInitMarginRatio\": \"1000000000\",\n    \"initMarginRatio\": \"1000000000\",\n    \"maintenanceMarginRatio\": \"1000000000\",\n    \"maxLeverageByAccount\": {\n      \"key\": \"1000000000\"\n    },\n    \"spreadLimit\": \"1000000000\",\n    \"maxPriceImpact\": \"1000000000\",\n    \"maxPriceSpread\": \"1000000000\",\n    \"maxOpenNotionalLong\": \"1000000000\",\n    \"maxOpenNotionalShort\": \"1000000000\",\n    \"minStopTriggerDistanceRatio\": \"1000000000\",\n    \"isCloseOnly\": true,\n    \"isClosed\": true,\n    \"isPaused\": true,\n    \"isZeroSpread\": true\n  },\n  \"change\": {\n    \"initialPrice\": 0,\n    \"initialPrice1h\": 0,\n    \"initialPrice4h\": 0\n  },\n  \"schedule\": {\n    \"nextPauseAt\": 0,\n    \"nextUnpauseAt\": 0,\n    \"closestPauseAt\": 0,\n    \"closestUnpauseAt\": 0,\n    \"pausedAt\": 0,\n    \"inPause\": true\n  }\n}","headers":[]}],"security":[{"name":"bearer","type":"http · bearer","description":"Clave de API personal, con el prefijo `usk_`.","required":true,"scopes":[]}],"codeSamples":[{"label":"cURL","language":"bash","source":"curl --request GET 'https://api.upscale.trade/v2/markets/{id}' \\\n  --header 'Accept: application/json' \\\n  --header 'Authorization: Bearer YOUR_API_KEY'"},{"label":"JavaScript","language":"javascript","source":"const response = await fetch(\"https://api.upscale.trade/v2/markets/{id}\", {\n  method: \"GET\",\n  headers: {\n    \"Accept\": \"application/json\",\n    \"Authorization\": \"Bearer YOUR_API_KEY\"\n  },\n});\nconsole.log(response.status, await response.text());"},{"label":"Python","language":"python","source":"import requests\n\nresponse = requests.request(\n    \"GET\",\n    \"https://api.upscale.trade/v2/markets/{id}\",\n    headers={\"Accept\":\"application/json\",\"Authorization\":\"Bearer YOUR_API_KEY\"},\n    timeout=30,\n)\nprint(response.status_code, response.text)"}]},"breadcrumbs":[{"title":"Qué es el prop trading","url":"https://docs.upscale.trade/es"},{"title":"Developers","url":"https://docs.upscale.trade/es/developers"},{"title":"Obtener mercado por id","url":"https://docs.upscale.trade/es/developers/operations/getmarket"}],"headings":[{"depth":2,"id":"authorization","title":"Autorización"},{"depth":2,"id":"parameters","title":"Parámetros"},{"depth":2,"id":"examples","title":"Ejemplos"},{"depth":2,"id":"responses","title":"Respuestas"}],"markdown":"# Obtener mercado por id\n\n`GET /v2/markets/{id}`\n\nUn mercado con la misma instantánea que devuelve la lista.\n\nResponde `404` cuando el mercado no existe, está deslistado o está oculto para el llamador.\n\n<a id=\"authorization\"></a>\n\n## Autorización\n\nbearer: http · bearer (obligatorio). Clave de API personal, con el prefijo `usk_`.\n\n<a id=\"parameters\"></a>\n\n## Parámetros\n\n- path: id (string · uuid; obligatorio). Identificador de mercado, tal como lo devuelve `GET /v2/markets`.\n\nTipo: string · uuid\n\nformat: uuid\n\n- query: accountId (string · uuid; opcional). Cuenta de trader respecto a la cual resolver la lista de mercados: los límites de apalancamiento y la disponibilidad se devuelven tal como se aplican a esa cuenta. Omitida — se devuelven los valores predeterminados de toda la plataforma.\n\nTipo: string · uuid\n\nformat: uuid\n\npattern: ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$\n\n<a id=\"example-curl\"></a>\n\n## Ejemplo · cURL\n\n```bash\ncurl --request GET 'https://api.upscale.trade/v2/markets/{id}' \\\n  --header 'Accept: application/json' \\\n  --header 'Authorization: Bearer YOUR_API_KEY'\n```\n\n<a id=\"example-javascript\"></a>\n\n## Ejemplo · JavaScript\n\n```javascript\nconst response = await fetch(\"https://api.upscale.trade/v2/markets/{id}\", {\n  method: \"GET\",\n  headers: {\n    \"Accept\": \"application/json\",\n    \"Authorization\": \"Bearer YOUR_API_KEY\"\n  },\n});\nconsole.log(response.status, await response.text());\n```\n\n<a id=\"example-python\"></a>\n\n## Ejemplo · Python\n\n```python\nimport requests\n\nresponse = requests.request(\n    \"GET\",\n    \"https://api.upscale.trade/v2/markets/{id}\",\n    headers={\"Accept\":\"application/json\",\"Authorization\":\"Bearer YOUR_API_KEY\"},\n    timeout=30,\n)\nprint(response.status_code, response.text)\n```\n\n<a id=\"response-401\"></a>\n\n## Respuesta 401\n\n**401**  — No autorizado\n\n<a id=\"response-404\"></a>\n\n## Respuesta 404\n\n**404**  — Mercado no encontrado, deslistado u oculto para el llamador.\n\n<a id=\"response-429\"></a>\n\n## Respuesta 429\n\n**429**  — Se superó el límite de velocidad de la clave de API (`api_key_rate_limit_exceeded`). `Retry-After` indica cuándo volver; el cuerpo incluye el bucket (`read` / `write`), la ventana que se activó, su límite y `retryAt`.\n\n<a id=\"response-default-marketv2response\"></a>\n\n## Respuesta default · MarketV2Response\n\n**default** application/json — Respuesta\n\nEsquema: MarketV2Response\n\nTipo: object\n\nCampos obligatorios: id, config, state, settings, change, schedule\n\nTipos de campos obligatorios: id (string · uuid; obligatorio), config (object; obligatorio), state (object; obligatorio), settings (object; obligatorio), change (object; obligatorio), schedule (object · nullable; obligatorio)\n\n- id (string · uuid; obligatorio)\n\nid ejemplo: 00000000-0000-4000-8000-000000000000\n\nid.Tipo: string · uuid\n\nid.Identificador de mercado — el valor que la creación de orden toma como `marketId`.\n\nid.format: uuid\n\nid.pattern: ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$\n\n- config (object; obligatorio)\n\nconfig ejemplo: {\n  \"baseAsset\": \"BTC\",\n  \"quoteAsset\": \"USD\",\n  \"settlementToken\": \"USD\",\n  \"type\": \"base\",\n  \"name\": \"BTC\",\n  \"description\": \"Market description\",\n  \"ticker\": \"BTC/USD\",\n  \"imageLink\": \"https://app.storm.tg/markets/btc.png\",\n  \"tags\": [\n    \"Crypto\"\n  ],\n  \"category\": \"crypto\",\n  \"priority\": 0\n}\n\nconfig.Tipo: object\n\nconfig.Campos obligatorios: baseAsset, quoteAsset, settlementToken, type, name, description, ticker, imageLink, tags, category, priority\n\nconfig.Tipos de campos obligatorios: baseAsset (string; obligatorio), quoteAsset (string; obligatorio), settlementToken (string; obligatorio), type (string; obligatorio), name (string; obligatorio), description (string; obligatorio), ticker (string; obligatorio), imageLink (string; obligatorio), tags (string[]; obligatorio), category (string · enum; obligatorio), priority (number · nullable; obligatorio)\n\nconfig.Descripción estática del mercado: activos, denominación y categoría.\n\n- config.baseAsset (string; obligatorio)\n\nconfig.baseAsset ejemplo: BTC\n\nconfig.baseAsset.Tipo: string\n\nconfig.baseAsset.Ticker del activo base — el valor que los endpoints por mercado toman como `asset`.\n\n- config.quoteAsset (string; obligatorio)\n\nconfig.quoteAsset ejemplo: USD\n\nconfig.quoteAsset.Tipo: string\n\nconfig.quoteAsset.Los precios de los activos y los importes nocionales se cotizan en.\n\n- config.settlementToken (string; obligatorio)\n\nconfig.settlementToken ejemplo: USD\n\nconfig.settlementToken.Tipo: string\n\nconfig.settlementToken.Las posiciones de activos se liquidan en.\n\n- config.type (string; obligatorio)\n\nconfig.type ejemplo: base\n\nconfig.type.Tipo: string\n\nconfig.type.Modelo de precios del mercado.\n\n- config.name (string; obligatorio)\n\nconfig.name ejemplo: BTC\n\nconfig.name.Tipo: string\n\nconfig.name.Nombre para mostrar del mercado.\n\n- config.description (string; obligatorio)\n\nconfig.description ejemplo: Market description\n\nconfig.description.Tipo: string\n\nconfig.description.Descripción de formato libre que se muestra en la aplicación.\n\n- config.ticker (string; obligatorio)\n\nconfig.ticker ejemplo: BTC/USD\n\nconfig.ticker.Tipo: string\n\nconfig.ticker.Etiqueta completa del par.\n\n- config.imageLink (string; obligatorio)\n\nconfig.imageLink ejemplo: https://app.storm.tg/markets/btc.png\n\nconfig.imageLink.Tipo: string\n\nconfig.imageLink.Icono del mercado.\n\n- config.tags (string[]; obligatorio)\n\nconfig.tags ejemplo: [\n  \"Crypto\"\n]\n\nconfig.tags.Tipo: string[]\n\nconfig.tags.Etiquetas por las que la aplicación agrupa los mercados.\n\nconfig.tags.[]Tipo: string\n\n- config.category (string · enum; obligatorio)\n\nconfig.category ejemplo: crypto\n\nconfig.category.Tipo: string · enum\n\nconfig.category.Si el mercado es cripto o un activo del mundo real — una cuenta puede estar limitada a uno de los dos.\n\nconfig.category.Valores permitidos: [\"crypto\",\"rwa\"]\n\n- config.priority (number · nullable; obligatorio)\n\nconfig.priority ejemplo: 0\n\nconfig.priority.Tipo: number · nullable\n\nconfig.priority.Peso de ordenación en la lista de mercados; el mayor va primero. Nulo cuando no está clasificado.\n\n- state (object; obligatorio)\n\nstate ejemplo: {\n  \"indexPrice\": \"1000000000\",\n  \"blockTimestamp\": 0,\n  \"fundingRate\": \"1000000000\",\n  \"nextFundingAt\": 0,\n  \"lastFundingAt\": 0,\n  \"vpiSpread\": \"1000000000\",\n  \"vpiMarketDepthLong\": \"1000000000\",\n  \"vpiMarketDepthShort\": \"1000000000\",\n  \"vpiCoefficientLong\": \"1000000000\",\n  \"vpiCoefficientShort\": \"1000000000\"\n}\n\nstate.Tipo: object\n\nstate.Campos obligatorios: indexPrice, blockTimestamp, fundingRate, nextFundingAt, lastFundingAt, vpiSpread, vpiMarketDepthLong, vpiMarketDepthShort, vpiCoefficientLong, vpiCoefficientShort\n\nstate.Tipos de campos obligatorios: indexPrice (string · int32; obligatorio), blockTimestamp (number; obligatorio), fundingRate (string · int32; obligatorio), nextFundingAt (number; obligatorio), lastFundingAt (number · nullable; obligatorio), vpiSpread (string · int32; obligatorio), vpiMarketDepthLong (string · int32; obligatorio), vpiMarketDepthShort (string · int32; obligatorio), vpiCoefficientLong (string · int32; obligatorio), vpiCoefficientShort (string · int32; obligatorio)\n\nstate.Estado en vivo: precio del índice, financiación y la profundidad contra la que se fija el precio de una orden.\n\n- state.indexPrice (string · int32; obligatorio)\n\nstate.indexPrice ejemplo: 1000000000\n\nstate.indexPrice.Tipo: string · int32\n\nstate.indexPrice.Precio de índice actual del mercado, fp9 en bruto — contra lo que se fijan los precios de las órdenes y se comparan los disparadores.\n\nstate.indexPrice.format: int32\n\nstate.indexPrice.pattern: ^(?:-?[1-9][0-9]*|0)$\n\n- state.blockTimestamp (number; obligatorio)\n\nstate.blockTimestamp ejemplo: 0\n\nstate.blockTimestamp.Tipo: number\n\nstate.blockTimestamp.Cuándo se produjo esta instantánea de estado, marca de tiempo unix en milisegundos.\n\n- state.fundingRate (string · int32; obligatorio)\n\nstate.fundingRate ejemplo: 1000000000\n\nstate.fundingRate.Tipo: string · int32\n\nstate.fundingRate.Tasa de financiación del intervalo en curso, fp9 fracción sin procesar. Positivo significa que los largos pagan a los cortos.\n\nstate.fundingRate.format: int32\n\nstate.fundingRate.pattern: ^(?:-?[1-9][0-9]*|0)$\n\n- state.nextFundingAt (number; obligatorio)\n\nstate.nextFundingAt ejemplo: 0\n\nstate.nextFundingAt.Tipo: number\n\nstate.nextFundingAt.Cuándo se liquida la financiación a continuación, marca de tiempo unix en milisegundos.\n\n- state.lastFundingAt (number · nullable; obligatorio)\n\nstate.lastFundingAt ejemplo: 0\n\nstate.lastFundingAt.Tipo: number · nullable\n\nstate.lastFundingAt.Cuándo se liquidó la financiación por última vez, marca de tiempo unix en milisegundos. Nulo antes de la primera liquidación.\n\n- state.vpiSpread (string · int32; obligatorio)\n\nstate.vpiSpread ejemplo: 1000000000\n\nstate.vpiSpread.Tipo: string · int32\n\nstate.vpiSpread.Spread actual cobrado sobre el precio del índice, fp9 fracción sin procesar.\n\nstate.vpiSpread.format: int32\n\nstate.vpiSpread.pattern: ^(?:-?[1-9][0-9]*|0)$\n\n- state.vpiMarketDepthLong (string · int32; obligatorio)\n\nstate.vpiMarketDepthLong ejemplo: 1000000000\n\nstate.vpiMarketDepthLong.Tipo: string · int32\n\nstate.vpiMarketDepthLong.Profundidad disponible en el lado largo, fp9 en bruto. Las órdenes grandes en su contra mueven el precio de ejecución.\n\nstate.vpiMarketDepthLong.format: int32\n\nstate.vpiMarketDepthLong.pattern: ^(?:-?[1-9][0-9]*|0)$\n\n- state.vpiMarketDepthShort (string · int32; obligatorio)\n\nstate.vpiMarketDepthShort ejemplo: 1000000000\n\nstate.vpiMarketDepthShort.Tipo: string · int32\n\nstate.vpiMarketDepthShort.Profundidad disponible en el lado corto, fp9 en bruto.\n\nstate.vpiMarketDepthShort.format: int32\n\nstate.vpiMarketDepthShort.pattern: ^(?:-?[1-9][0-9]*|0)$\n\n- state.vpiCoefficientLong (string · int32; obligatorio)\n\nstate.vpiCoefficientLong ejemplo: 1000000000\n\nstate.vpiCoefficientLong.Tipo: string · int32\n\nstate.vpiCoefficientLong.Coeficiente de impacto en el precio aplicado a las órdenes largas, fp9 en bruto.\n\nstate.vpiCoefficientLong.format: int32\n\nstate.vpiCoefficientLong.pattern: ^(?:-?[1-9][0-9]*|0)$\n\n- state.vpiCoefficientShort (string · int32; obligatorio)\n\nstate.vpiCoefficientShort ejemplo: 1000000000\n\nstate.vpiCoefficientShort.Tipo: string · int32\n\nstate.vpiCoefficientShort.Coeficiente de impacto en el precio aplicado a las órdenes cortas, fp9 en bruto.\n\nstate.vpiCoefficientShort.format: int32\n\nstate.vpiCoefficientShort.pattern: ^(?:-?[1-9][0-9]*|0)$\n\n- settings (object; obligatorio)\n\nsettings ejemplo: {\n  \"fee\": \"1000000000\",\n  \"minInitMarginRatio\": \"1000000000\",\n  \"initMarginRatio\": \"1000000000\",\n  \"maintenanceMarginRatio\": \"1000000000\",\n  \"maxLeverageByAccount\": {\n    \"key\": \"1000000000\"\n  },\n  \"spreadLimit\": \"1000000000\",\n  \"maxPriceImpact\": \"1000000000\",\n  \"maxPriceSpread\": \"1000000000\",\n  \"maxOpenNotionalLong\": \"1000000000\",\n  \"maxOpenNotionalShort\": \"1000000000\",\n  \"minStopTriggerDistanceRatio\": \"1000000000\",\n  \"isCloseOnly\": true,\n  \"isClosed\": true,\n  \"isPaused\": true,\n  \"isZeroSpread\": true\n}\n\nsettings.Tipo: object\n\nsettings.Campos obligatorios: fee, minInitMarginRatio, initMarginRatio, maintenanceMarginRatio, maxLeverageByAccount, spreadLimit, maxPriceImpact, maxPriceSpread, maxOpenNotionalLong, maxOpenNotionalShort, minStopTriggerDistanceRatio, isCloseOnly, isClosed, isPaused, isZeroSpread\n\nsettings.Tipos de campos obligatorios: fee (string · int32; obligatorio), minInitMarginRatio (string · int32; obligatorio), initMarginRatio (string · int32; obligatorio), maintenanceMarginRatio (string · int32; obligatorio), maxLeverageByAccount (object; obligatorio), spreadLimit (string · int32; obligatorio), maxPriceImpact (string · int32; obligatorio), maxPriceSpread (string · int32; obligatorio), maxOpenNotionalLong (string · int32; obligatorio), maxOpenNotionalShort (string · int32; obligatorio), minStopTriggerDistanceRatio (string · int32; obligatorio), isCloseOnly (boolean; obligatorio), isClosed (boolean; obligatorio), isPaused (boolean; obligatorio), isZeroSpread (boolean; obligatorio)\n\nsettings.Reglas de negociación del mercado: comisiones, ratios de margen y los límites máximos contra los que se verifica una orden.\n\n- settings.fee (string · int32; obligatorio)\n\nsettings.fee ejemplo: 1000000000\n\nsettings.fee.Tipo: string · int32\n\nsettings.fee.Tasa de comisión de negociación, fp9 fracción en bruto (`1000000` = 0.1%).\n\nsettings.fee.format: int32\n\nsettings.fee.pattern: ^(?:-?[1-9][0-9]*|0)$\n\n- settings.minInitMarginRatio (string · int32; obligatorio)\n\nsettings.minInitMarginRatio ejemplo: 1000000000\n\nsettings.minInitMarginRatio.Tipo: string · int32\n\nsettings.minInitMarginRatio.La menor ratio de margen inicial que acepta el mercado, fp9 fracción bruta — el límite máximo de apalancamiento.\n\nsettings.minInitMarginRatio.format: int32\n\nsettings.minInitMarginRatio.pattern: ^(?:-?[1-9][0-9]*|0)$\n\n- settings.initMarginRatio (string · int32; obligatorio)\n\nsettings.initMarginRatio ejemplo: 1000000000\n\nsettings.initMarginRatio.Tipo: string · int32\n\nsettings.initMarginRatio.Ratio de margen inicial predeterminado del mercado, fp9 fracción bruta.\n\nsettings.initMarginRatio.format: int32\n\nsettings.initMarginRatio.pattern: ^(?:-?[1-9][0-9]*|0)$\n\n- settings.maintenanceMarginRatio (string · int32; obligatorio)\n\nsettings.maintenanceMarginRatio ejemplo: 1000000000\n\nsettings.maintenanceMarginRatio.Tipo: string · int32\n\nsettings.maintenanceMarginRatio.Ratio de margen por debajo del cual se liquida una posición, fp9 fracción bruta.\n\nsettings.maintenanceMarginRatio.format: int32\n\nsettings.maintenanceMarginRatio.pattern: ^(?:-?[1-9][0-9]*|0)$\n\n- settings.maxLeverageByAccount (object; obligatorio)\n\nsettings.maxLeverageByAccount ejemplo: {\n  \"key\": \"1000000000\"\n}\n\nsettings.maxLeverageByAccount.Tipo: object\n\nsettings.maxLeverageByAccount.Apalancamiento máximo permitido por tipo de cuenta, fp9 bruto, indexado por tipo de cuenta.\n\nsettings.maxLeverageByAccount.*.Tipo: string · int32\n\nsettings.maxLeverageByAccount.*.Ejemplo: \"1000000000\"\n\nsettings.maxLeverageByAccount.*.format: int32\n\nsettings.maxLeverageByAccount.*.pattern: ^(?:-?[1-9][0-9]*|0)$\n\n- settings.spreadLimit (string · int32; obligatorio)\n\nsettings.spreadLimit ejemplo: 1000000000\n\nsettings.spreadLimit.Tipo: string · int32\n\nsettings.spreadLimit.El mayor spread que cobrará el mercado, fp9 fracción bruta.\n\nsettings.spreadLimit.format: int32\n\nsettings.spreadLimit.pattern: ^(?:-?[1-9][0-9]*|0)$\n\n- settings.maxPriceImpact (string · int32; obligatorio)\n\nsettings.maxPriceImpact ejemplo: 1000000000\n\nsettings.maxPriceImpact.Tipo: string · int32\n\nsettings.maxPriceImpact.Mayor impacto en el precio que puede causar una sola orden, fp9 fracción sin procesar.\n\nsettings.maxPriceImpact.format: int32\n\nsettings.maxPriceImpact.pattern: ^(?:-?[1-9][0-9]*|0)$\n\n- settings.maxPriceSpread (string · int32; obligatorio)\n\nsettings.maxPriceSpread ejemplo: 1000000000\n\nsettings.maxPriceSpread.Tipo: string · int32\n\nsettings.maxPriceSpread.Mayor desviación permitida entre el precio de mercado y el precio del índice, fp9 fracción sin procesar.\n\nsettings.maxPriceSpread.format: int32\n\nsettings.maxPriceSpread.pattern: ^(?:-?[1-9][0-9]*|0)$\n\n- settings.maxOpenNotionalLong (string · int32; obligatorio)\n\nsettings.maxOpenNotionalLong ejemplo: 1000000000\n\nsettings.maxOpenNotionalLong.Tipo: string · int32\n\nsettings.maxOpenNotionalLong.Límite máximo sobre el nocional abierto mantenido en largo en este mercado, fp9 sin procesar. `0` significa sin límite.\n\nsettings.maxOpenNotionalLong.format: int32\n\nsettings.maxOpenNotionalLong.pattern: ^(?:-?[1-9][0-9]*|0)$\n\n- settings.maxOpenNotionalShort (string · int32; obligatorio)\n\nsettings.maxOpenNotionalShort ejemplo: 1000000000\n\nsettings.maxOpenNotionalShort.Tipo: string · int32\n\nsettings.maxOpenNotionalShort.Límite máximo sobre el nocional abierto mantenido en corto en este mercado, fp9 sin procesar. `0` significa sin límite.\n\nsettings.maxOpenNotionalShort.format: int32\n\nsettings.maxOpenNotionalShort.pattern: ^(?:-?[1-9][0-9]*|0)$\n\n- settings.minStopTriggerDistanceRatio (string · int32; obligatorio)\n\nsettings.minStopTriggerDistanceRatio ejemplo: 1000000000\n\nsettings.minStopTriggerDistanceRatio.Tipo: string · int32\n\nsettings.minStopTriggerDistanceRatio.Distancia mínima entre el precio actual y un disparador de stop, fp9 fracción sin procesar. Un disparador más cercano se empuja hasta esta distancia.\n\nsettings.minStopTriggerDistanceRatio.format: int32\n\nsettings.minStopTriggerDistanceRatio.pattern: ^(?:-?[1-9][0-9]*|0)$\n\n- settings.isCloseOnly (boolean; obligatorio)\n\nsettings.isCloseOnly ejemplo: true\n\nsettings.isCloseOnly.Tipo: boolean\n\nsettings.isCloseOnly.Si el mercado solo acepta órdenes que cierran una posición.\n\n- settings.isClosed (boolean; obligatorio)\n\nsettings.isClosed ejemplo: true\n\nsettings.isClosed.Tipo: boolean\n\n- settings.isPaused (boolean; obligatorio)\n\nsettings.isPaused ejemplo: true\n\nsettings.isPaused.Tipo: boolean\n\n- settings.isZeroSpread (boolean; obligatorio)\n\nsettings.isZeroSpread ejemplo: true\n\nsettings.isZeroSpread.Tipo: boolean\n\nsettings.isZeroSpread.Si el mercado actualmente cotiza sin spread.\n\n- change (object; obligatorio)\n\nchange ejemplo: {\n  \"initialPrice\": 0,\n  \"initialPrice1h\": 0,\n  \"initialPrice4h\": 0\n}\n\nchange.Tipo: object\n\nchange.Campos obligatorios: initialPrice, initialPrice1h, initialPrice4h\n\nchange.Tipos de campos obligatorios: initialPrice (number; obligatorio), initialPrice1h (number; obligatorio), initialPrice4h (number; obligatorio)\n\nchange.Precios de referencia para calcular las variaciones de precio de 1h, 4h y 24h.\n\n- change.initialPrice (number; obligatorio)\n\nchange.initialPrice ejemplo: 0\n\nchange.initialPrice.Tipo: number\n\nchange.initialPrice.Precio hace 24 horas, como número decimal — la base del cambio diario. `0` cuando no hay historial disponible.\n\n- change.initialPrice1h (number; obligatorio)\n\nchange.initialPrice1h ejemplo: 0\n\nchange.initialPrice1h.Tipo: number\n\nchange.initialPrice1h.Precio hace una hora, como número decimal. `0` cuando no hay historial disponible.\n\n- change.initialPrice4h (number; obligatorio)\n\nchange.initialPrice4h ejemplo: 0\n\nchange.initialPrice4h.Tipo: number\n\nchange.initialPrice4h.Precio de hace cuatro horas, como número decimal. `0` cuando no hay historial disponible.\n\n- schedule (object · nullable; obligatorio)\n\nschedule ejemplo: {\n  \"nextPauseAt\": 0,\n  \"nextUnpauseAt\": 0,\n  \"closestPauseAt\": 0,\n  \"closestUnpauseAt\": 0,\n  \"pausedAt\": 0,\n  \"inPause\": true\n}\n\nschedule.Tipo: object · nullable\n\nschedule.Campos obligatorios: nextPauseAt, nextUnpauseAt, closestPauseAt, closestUnpauseAt, pausedAt, inPause\n\nschedule.Tipos de campos obligatorios: nextPauseAt (number; obligatorio), nextUnpauseAt (number; obligatorio), closestPauseAt (number; obligatorio), closestUnpauseAt (number; obligatorio), pausedAt (number; obligatorio), inPause (boolean; obligatorio)\n\nschedule.Sesiones de negociación del mercado. Nulo cuando cotiza sin interrupción.\n\n- schedule.nextPauseAt (number; obligatorio)\n\nschedule.nextPauseAt ejemplo: 0\n\nschedule.nextPauseAt.Tipo: number\n\nschedule.nextPauseAt.Inicio de la próxima pausa programada, marca de tiempo Unix en milisegundos. `0` cuando el mercado no tiene ninguna pausa, y `9007199254740991` cuando no hay ninguna programada con posterioridad a la actual.\n\n- schedule.nextUnpauseAt (number; obligatorio)\n\nschedule.nextUnpauseAt ejemplo: 0\n\nschedule.nextUnpauseAt.Tipo: number\n\nschedule.nextUnpauseAt.Fin de la pausa en la que se encuentra el mercado, o de la siguiente, marca de tiempo Unix en milisegundos. Mismas reglas de `0` y de centinela que en `nextPauseAt`.\n\n- schedule.closestPauseAt (number; obligatorio)\n\nschedule.closestPauseAt ejemplo: 0\n\nschedule.closestPauseAt.Tipo: number\n\nschedule.closestPauseAt.Mismo valor que `nextPauseAt`. Se mantiene por compatibilidad con versiones anteriores.\n\n- schedule.closestUnpauseAt (number; obligatorio)\n\nschedule.closestUnpauseAt ejemplo: 0\n\nschedule.closestUnpauseAt.Tipo: number\n\nschedule.closestUnpauseAt.Mismo valor que `nextUnpauseAt`. Se conserva por compatibilidad con versiones anteriores.\n\n- schedule.pausedAt (number; obligatorio)\n\nschedule.pausedAt ejemplo: 0\n\nschedule.pausedAt.Tipo: number\n\nschedule.pausedAt.Inicio de la pausa actualmente en curso, marca de tiempo unix en milisegundos. `0` cuando el mercado está operando.\n\n- schedule.inPause (boolean; obligatorio)\n\nschedule.inPause ejemplo: true\n\nschedule.inPause.Tipo: boolean\n\nschedule.inPause.Si el mercado se encuentra dentro de una pausa programada en este momento. Las órdenes se rechazan mientras esté en ella.\n\nEjemplo\n\n\n\n```json\n{\n  \"id\": \"00000000-0000-4000-8000-000000000000\",\n  \"config\": {\n    \"baseAsset\": \"BTC\",\n    \"quoteAsset\": \"USD\",\n    \"settlementToken\": \"USD\",\n    \"type\": \"base\",\n    \"name\": \"BTC\",\n    \"description\": \"Market description\",\n    \"ticker\": \"BTC/USD\",\n    \"imageLink\": \"https://app.storm.tg/markets/btc.png\",\n    \"tags\": [\n      \"Crypto\"\n    ],\n    \"category\": \"crypto\",\n    \"priority\": 0\n  },\n  \"state\": {\n    \"indexPrice\": \"1000000000\",\n    \"blockTimestamp\": 0,\n    \"fundingRate\": \"1000000000\",\n    \"nextFundingAt\": 0,\n    \"lastFundingAt\": 0,\n    \"vpiSpread\": \"1000000000\",\n    \"vpiMarketDepthLong\": \"1000000000\",\n    \"vpiMarketDepthShort\": \"1000000000\",\n    \"vpiCoefficientLong\": \"1000000000\",\n    \"vpiCoefficientShort\": \"1000000000\"\n  },\n  \"settings\": {\n    \"fee\": \"1000000000\",\n    \"minInitMarginRatio\": \"1000000000\",\n    \"initMarginRatio\": \"1000000000\",\n    \"maintenanceMarginRatio\": \"1000000000\",\n    \"maxLeverageByAccount\": {\n      \"key\": \"1000000000\"\n    },\n    \"spreadLimit\": \"1000000000\",\n    \"maxPriceImpact\": \"1000000000\",\n    \"maxPriceSpread\": \"1000000000\",\n    \"maxOpenNotionalLong\": \"1000000000\",\n    \"maxOpenNotionalShort\": \"1000000000\",\n    \"minStopTriggerDistanceRatio\": \"1000000000\",\n    \"isCloseOnly\": true,\n    \"isClosed\": true,\n    \"isPaused\": true,\n    \"isZeroSpread\": true\n  },\n  \"change\": {\n    \"initialPrice\": 0,\n    \"initialPrice1h\": 0,\n    \"initialPrice4h\": 0\n  },\n  \"schedule\": {\n    \"nextPauseAt\": 0,\n    \"nextUnpauseAt\": 0,\n    \"closestPauseAt\": 0,\n    \"closestUnpauseAt\": 0,\n    \"pausedAt\": 0,\n    \"inPause\": true\n  }\n}\n```","text":"Obtener mercado por id Un mercado con la misma instantánea que devuelve la lista. Responde `404` cuando el mercado no existe, está deslistado o está oculto para el llamador. GET /v2/markets/{id} Config id Identificador de mercado, tal como lo devuelve `GET /v2/markets`. string · uuid accountId Cuenta de trader respecto a la cual resolver la lista de mercados: los límites de apalancamiento y la disponibilidad se devuelven tal como se aplican a esa cuenta. Omitida — se devuelven los valores predeterminados de toda la plataforma. string · uuid 401 No autorizado 404 Mercado no encontrado, deslistado u oculto para el llamador. 429 Se superó el límite de velocidad de la clave de API (`api_key_rate_limit_exceeded`). `Retry-After` indica cuándo volver; el cuerpo incluye el bucket (`read` / `write`), la ventana que se activó, su límite y `retryAt`. default Respuesta id Market identifier — the value order creation takes as `marketId`. string · uuid config Static description of the market: assets, naming and category. object state Live state: index price, funding and the depth an order is priced against. object settings Trading rules of the market: fees, margin ratios and the caps an order is checked against. object change Reference prices for computing 1h, 4h and 24h price changes. object schedule Trading sessions of the market. Null when it trades around the clock. object · nullable","api":{"title":"API pública de Upscale","version":"d796ac9","documentation":"https://docs.upscale.trade/es/developers","playgroundServer":"https://api.upscale.trade"}}