{"openapi":"3.0.0","paths":{"/v1/last-price/config":{"get":{"operationId":"LastPriceController_getConfig","parameters":[],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConfigDto"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BadRequestDto"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnauthorizedDto"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ForbiddenDto"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundDto"}}}},"413":{"description":"Payload Too Large","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PayloadTooLargeDto"}}}},"422":{"description":"Unprocessable Entity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnprocessableEntityDto"}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TooManyRequestsDto"}}}},"500":{"description":"Internal Server Error"}},"summary":"Get UDF configuration","tags":["Last Price"]}},"/v1/last-price/symbols":{"get":{"operationId":"LastPriceController_getResolveSymbol","parameters":[{"name":"symbol","required":true,"in":"query","description":"Symbol ticker in the format {ticker}-{type}","schema":{"example":"ETHUSD-Perp","type":"string"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SymbolInfoDto"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BadRequestDto"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnauthorizedDto"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ForbiddenDto"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundDto"}}}},"413":{"description":"Payload Too Large","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PayloadTooLargeDto"}}}},"422":{"description":"Unprocessable Entity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnprocessableEntityDto"}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TooManyRequestsDto"}}}},"500":{"description":"Internal Server Error"}},"summary":"Resolve symbol information by symbol ticker","tags":["Last Price"]}},"/v1/last-price/search":{"get":{"operationId":"LastPriceController_getSearchSymbols","parameters":[{"name":"query","required":true,"in":"query","description":"Search query string to match against symbol tickers","schema":{"maxLength":255,"example":"ETH","type":"string"}},{"name":"type","required":false,"in":"query","description":"Filter results by symbol type","schema":{"default":"Perp","example":"Perp","type":"string","enum":["Perp","Spot"]}},{"name":"limit","required":false,"in":"query","description":"Maximum number of search results to return","schema":{"minimum":1,"maximum":50,"example":10,"type":"number"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SymbolSearchResultDto"}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BadRequestDto"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnauthorizedDto"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ForbiddenDto"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundDto"}}}},"413":{"description":"Payload Too Large","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PayloadTooLargeDto"}}}},"422":{"description":"Unprocessable Entity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnprocessableEntityDto"}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TooManyRequestsDto"}}}},"500":{"description":"Internal Server Error"}},"summary":"Search for symbols","tags":["Last Price"]}},"/v1/last-price/history":{"get":{"operationId":"LastPriceController_getHistory","parameters":[{"name":"symbol","required":true,"in":"query","description":"Symbol ticker in the format {ticker}-{type}","schema":{"example":"ETHUSD-Perp","type":"string"}},{"name":"resolution","required":true,"in":"query","description":"TradingView resolution format (e.g., 1, 60, 1D)","schema":{"example":"1D","type":"string","enum":["1","3","5","15","30","60","120","240","480","720","1D","3D","1W","1M"]}},{"name":"from","required":true,"in":"query","description":"Start of the requested time range (seconds since Unix Epoch)","schema":{"type":"number"}},{"name":"to","required":true,"in":"query","description":"End of the requested time range (seconds since Unix Epoch)","schema":{"type":"number"}},{"name":"countback","required":false,"in":"query","description":"Maximum number of bars to return, counted back from the \"to\" timestamp","schema":{"minimum":1,"maximum":4000,"type":"number"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HistoryResponseDto"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BadRequestDto"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnauthorizedDto"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ForbiddenDto"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundDto"}}}},"413":{"description":"Payload Too Large","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PayloadTooLargeDto"}}}},"422":{"description":"Unprocessable Entity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnprocessableEntityDto"}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TooManyRequestsDto"}}}},"500":{"description":"Internal Server Error"}},"summary":"Get historical bar data","tags":["Last Price"]}},"/v1/last-price/time":{"get":{"operationId":"LastPriceController_getServerTime","parameters":[],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"type":"number"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BadRequestDto"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnauthorizedDto"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ForbiddenDto"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundDto"}}}},"413":{"description":"Payload Too Large","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PayloadTooLargeDto"}}}},"422":{"description":"Unprocessable Entity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnprocessableEntityDto"}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TooManyRequestsDto"}}}},"500":{"description":"Internal Server Error"}},"summary":"Get server time (Unix timestamp)","tags":["Last Price"]}},"/v1/oracle-price/config":{"get":{"operationId":"OraclePriceController_getConfig","parameters":[],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConfigDto"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BadRequestDto"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnauthorizedDto"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ForbiddenDto"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundDto"}}}},"413":{"description":"Payload Too Large","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PayloadTooLargeDto"}}}},"422":{"description":"Unprocessable Entity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnprocessableEntityDto"}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TooManyRequestsDto"}}}},"500":{"description":"Internal Server Error"}},"summary":"Get UDF configuration","tags":["Oracle Price"]}},"/v1/oracle-price/symbols":{"get":{"operationId":"OraclePriceController_getResolveSymbol","parameters":[{"name":"symbol","required":true,"in":"query","description":"Symbol ticker in the format {ticker}-{type}","schema":{"example":"ETHUSD-Perp","type":"string"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SymbolInfoDto"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BadRequestDto"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnauthorizedDto"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ForbiddenDto"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundDto"}}}},"413":{"description":"Payload Too Large","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PayloadTooLargeDto"}}}},"422":{"description":"Unprocessable Entity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnprocessableEntityDto"}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TooManyRequestsDto"}}}},"500":{"description":"Internal Server Error"}},"summary":"Resolve symbol information by symbol ticker","tags":["Oracle Price"]}},"/v1/oracle-price/search":{"get":{"operationId":"OraclePriceController_getSearchSymbols","parameters":[{"name":"query","required":true,"in":"query","description":"Search query string to match against symbol tickers","schema":{"maxLength":255,"example":"ETH","type":"string"}},{"name":"type","required":false,"in":"query","description":"Filter results by symbol type","schema":{"default":"Perp","example":"Perp","type":"string","enum":["Perp","Spot"]}},{"name":"limit","required":false,"in":"query","description":"Maximum number of search results to return","schema":{"minimum":1,"maximum":50,"example":10,"type":"number"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SymbolSearchResultDto"}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BadRequestDto"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnauthorizedDto"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ForbiddenDto"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundDto"}}}},"413":{"description":"Payload Too Large","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PayloadTooLargeDto"}}}},"422":{"description":"Unprocessable Entity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnprocessableEntityDto"}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TooManyRequestsDto"}}}},"500":{"description":"Internal Server Error"}},"summary":"Search for symbols","tags":["Oracle Price"]}},"/v1/oracle-price/history":{"get":{"operationId":"OraclePriceController_getHistory","parameters":[{"name":"symbol","required":true,"in":"query","description":"Symbol ticker in the format {ticker}-{type}","schema":{"example":"ETHUSD-Perp","type":"string"}},{"name":"resolution","required":true,"in":"query","description":"TradingView resolution format (e.g., 1, 60, 1D)","schema":{"example":"1D","type":"string","enum":["1","3","5","15","30","60","120","240","480","720","1D","3D","1W","1M"]}},{"name":"from","required":true,"in":"query","description":"Start of the requested time range (seconds since Unix Epoch)","schema":{"type":"number"}},{"name":"to","required":true,"in":"query","description":"End of the requested time range (seconds since Unix Epoch)","schema":{"type":"number"}},{"name":"countback","required":false,"in":"query","description":"Maximum number of bars to return, counted back from the \"to\" timestamp","schema":{"minimum":1,"maximum":4000,"type":"number"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HistoryResponseDto"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BadRequestDto"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnauthorizedDto"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ForbiddenDto"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundDto"}}}},"413":{"description":"Payload Too Large","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PayloadTooLargeDto"}}}},"422":{"description":"Unprocessable Entity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnprocessableEntityDto"}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TooManyRequestsDto"}}}},"500":{"description":"Internal Server Error"}},"summary":"Get historical bar data","tags":["Oracle Price"]}},"/v1/oracle-price/time":{"get":{"operationId":"OraclePriceController_getServerTime","parameters":[],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"type":"number"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BadRequestDto"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnauthorizedDto"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ForbiddenDto"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundDto"}}}},"413":{"description":"Payload Too Large","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PayloadTooLargeDto"}}}},"422":{"description":"Unprocessable Entity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnprocessableEntityDto"}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TooManyRequestsDto"}}}},"500":{"description":"Internal Server Error"}},"summary":"Get server time (Unix timestamp)","tags":["Oracle Price"]}},"/v1/pyth-price/config":{"get":{"operationId":"PythPriceController_getConfig","parameters":[],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PythPriceConfigDto"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BadRequestDto"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnauthorizedDto"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ForbiddenDto"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundDto"}}}},"413":{"description":"Payload Too Large","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PayloadTooLargeDto"}}}},"422":{"description":"Unprocessable Entity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnprocessableEntityDto"}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TooManyRequestsDto"}}}},"500":{"description":"Internal Server Error"}},"summary":"Get Pyth UDF configuration","tags":["Pyth Price"]}},"/v1/pyth-price/symbols":{"get":{"description":"Unknown or unavailable symbols return HTTP 200 with the UDF unknown_symbol response.","operationId":"PythPriceController_getResolveSymbol","parameters":[{"name":"symbol","required":true,"in":"query","description":"Symbol ticker in the format {ticker}-{type}","schema":{"maxLength":128,"example":"ETHUSD-Perp","type":"string"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/PythPriceSymbolDto"},{"$ref":"#/components/schemas/PythPriceErrorDto"}]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BadRequestDto"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnauthorizedDto"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ForbiddenDto"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundDto"}}}},"413":{"description":"Payload Too Large","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PayloadTooLargeDto"}}}},"422":{"description":"Unprocessable Entity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnprocessableEntityDto"}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TooManyRequestsDto"}}}},"500":{"description":"Internal Server Error"}},"summary":"Resolve a perpetual market for Pyth charts","tags":["Pyth Price"]}},"/v1/pyth-price/search":{"get":{"operationId":"PythPriceController_getSearchSymbols","parameters":[{"name":"query","required":true,"in":"query","description":"Canonical or display ticker search text","schema":{"maxLength":64,"example":"ETH","type":"string"}},{"name":"type","required":false,"in":"query","description":"Only Perp symbols have Pyth charts","schema":{"default":"Perp","example":"Perp","type":"string","enum":["Perp","Spot"]}},{"name":"exchange","required":false,"in":"query","schema":{"maxLength":64,"example":"Meridian","type":"string"}},{"name":"limit","required":false,"in":"query","schema":{"minimum":1,"maximum":50,"default":15,"type":"number"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SymbolSearchResultDto"}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BadRequestDto"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnauthorizedDto"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ForbiddenDto"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundDto"}}}},"413":{"description":"Payload Too Large","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PayloadTooLargeDto"}}}},"422":{"description":"Unprocessable Entity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnprocessableEntityDto"}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TooManyRequestsDto"}}}},"500":{"description":"Internal Server Error"}},"summary":"Search active perpetual markets with Pyth history","tags":["Pyth Price"]}},"/v1/pyth-price/history":{"get":{"description":"from is inclusive, to is exclusive, and countback overrides from. Maximum 5000 bars.","operationId":"PythPriceController_getHistory","parameters":[{"name":"symbol","required":true,"in":"query","description":"Symbol ticker in the format {ticker}-{type}","schema":{"maxLength":128,"example":"ETHUSD-Perp","type":"string"}},{"name":"resolution","required":true,"in":"query","description":"Candle resolution; numeric values are minutes","schema":{"type":"string","enum":["1","2","5","15","30","60","120","240","360","720","D","W","M","1D","1W","1M"]}},{"name":"from","required":false,"in":"query","description":"Inclusive Unix seconds; required unless countback is supplied","schema":{"minimum":1,"maximum":253402300799,"type":"number"}},{"name":"to","required":true,"in":"query","description":"Exclusive end in Unix seconds","schema":{"minimum":1,"maximum":253402300799,"type":"number"}},{"name":"countback","required":false,"in":"query","description":"Bars counted back from to; overrides from","schema":{"minimum":1,"maximum":5000,"type":"number"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PythPriceHistoryDto"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BadRequestDto"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnauthorizedDto"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ForbiddenDto"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundDto"}}}},"413":{"description":"Payload Too Large","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PayloadTooLargeDto"}}}},"422":{"description":"Unprocessable Entity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnprocessableEntityDto"}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TooManyRequestsDto"}}}},"500":{"description":"Internal Server Error"}},"summary":"Get Pyth OHLC history without volume","tags":["Pyth Price"]}},"/v1/pyth-price/time":{"get":{"operationId":"PythPriceController_getServerTime","parameters":[],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"type":"number"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BadRequestDto"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnauthorizedDto"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ForbiddenDto"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundDto"}}}},"413":{"description":"Payload Too Large","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PayloadTooLargeDto"}}}},"422":{"description":"Unprocessable Entity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnprocessableEntityDto"}}}},"429":{"description":"Too Many Requests","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TooManyRequestsDto"}}}},"500":{"description":"Internal Server Error"}},"summary":"Get server time (Unix timestamp)","tags":["Pyth Price"]}}},"info":{"title":"Ethereal TradingView UDF API","description":"TradingView UDF-compatible API for historical OHLCV candlestick data, symbol resolution, and search.","version":"0.1.0","contact":{}},"tags":[],"servers":[{"url":"https://trading-view.meridian.xyz/","description":"Meridian Mainnet"}],"components":{"schemas":{"ConfigDto":{"type":"object","properties":{"supports_search":{"type":"boolean","default":true,"description":"Whether the API supports symbol search"},"supports_group_request":{"type":"boolean","default":false,"description":"Whether the API supports group symbol requests"},"supports_marks":{"type":"boolean","default":false,"description":"Whether the API supports marks on bars"},"supports_timescale_marks":{"type":"boolean","default":false,"description":"Whether the API supports timescale marks"},"symbol_types":{"default":[{"name":"Perp","type":"Perp"},{"name":"Spot","type":"Spot"}],"type":"array","description":"List of supported symbol types","items":{"type":"object","required":["name","type"],"properties":{"name":{"type":"string"},"type":{"type":"string","enum":["Perp","Spot"]}}}},"supported_resolutions":{"default":["1","3","5","15","30","60","120","240","480","720","1D","3D","1W","1M"],"description":"List of supported bar resolutions","type":"array","items":{"type":"string"}}},"required":["supports_search","supports_group_request","supports_marks","supports_timescale_marks","symbol_types","supported_resolutions"]},"BadRequestDto":{"type":"object","properties":{"statusCode":{"type":"number","default":400,"enum":[400]},"message":{"description":"Validation error message(s). Can be a single string or an array of strings.","oneOf":[{"type":"string","example":"property must be a string"},{"type":"array","items":{"type":"string"},"example":["property must be a string","nestedProperty.field must be an integer"]}]},"error":{"type":"string","default":"Bad Request","enum":["Bad Request"]}},"required":["statusCode","message","error"]},"UnauthorizedDto":{"type":"object","properties":{"statusCode":{"type":"number","default":401,"enum":[401]},"message":{"type":"string"},"error":{"type":"string","default":"Unauthorized","enum":["Unauthorized"]}},"required":["statusCode","message","error"]},"ForbiddenDto":{"type":"object","properties":{"statusCode":{"type":"number","default":403,"enum":[403]},"message":{"type":"string"},"error":{"type":"string","default":"Forbidden","enum":["Forbidden"]}},"required":["statusCode","message","error"]},"NotFoundDto":{"type":"object","properties":{"statusCode":{"type":"number","default":404,"enum":[404]},"message":{"type":"string"},"error":{"type":"string","default":"Not Found","enum":["Not Found"]}},"required":["statusCode","message","error"]},"PayloadTooLargeDto":{"type":"object","properties":{"statusCode":{"type":"number","default":413,"enum":[413]},"message":{"type":"string"},"error":{"type":"string","default":"Payload Too Large","enum":["Payload Too Large"]}},"required":["statusCode","message","error"]},"UnprocessableEntityDto":{"type":"object","properties":{"statusCode":{"type":"number","default":422,"enum":[422]},"message":{"type":"string"},"error":{"type":"string","default":"Unprocessable Entity","enum":["Unprocessable Entity"]}},"required":["statusCode","message","error"]},"TooManyRequestsDto":{"type":"object","properties":{"statusCode":{"type":"number","default":429,"enum":[429]},"message":{"type":"string"},"error":{"type":"string","default":"Too Many Requests","enum":["Too Many Requests"]},"type":{"enum":["RATE_LIMIT_IP","RATE_LIMIT_ACCOUNT","RATE_LIMIT_WITHDRAW","RATE_LIMIT_LINKED_SIGNER","RATE_LIMIT_CONVERSION"],"type":"string","description":"Specific rate limit type that was exceeded"}},"required":["statusCode","message","error","type"]},"SymbolInfoDto":{"type":"object","properties":{"description":{"type":"string","description":"Human-readable symbol description","example":"ETH / USD Perpetual"},"exchange":{"type":"string","default":"Meridian","description":"Exchange name"},"format":{"type":"string","default":"decimal","description":"Price display format","enum":["decimal"]},"has_empty_bars":{"type":"boolean","default":true,"description":"Whether the data feed generates empty bars when there is no data"},"has_daily":{"type":"boolean","default":true,"description":"Whether the symbol has daily bars"},"daily_multipliers":{"type":"array","default":["1","3"],"description":"Supported daily multipliers","items":{"type":"string","enum":["1","3"]}},"has_intraday":{"type":"boolean","default":true,"description":"Whether the symbol has intraday bars"},"intraday_multipliers":{"type":"array","default":["1","5","15","30","60","120","240","480","720"],"description":"Supported intraday multipliers (minutes)","items":{"type":"string","enum":["1","5","15","30","60","120","240","480","720"]}},"has_weekly_and_monthly":{"type":"boolean","default":true,"description":"Whether the symbol has weekly and monthly bars"},"minmov":{"type":"number","description":"Minimum price movement"},"name":{"type":"string","description":"Symbol display name","example":"ETHUSD"},"pricescale":{"type":"number","description":"Price scale; price precision = minmov / pricescale"},"session":{"type":"string","default":"24x7","description":"Trading session hours"},"ticker":{"type":"string","description":"Unique ticker identifier in the format {ticker}-{type}","example":"ETHUSD-Perp"},"timezone":{"type":"string","default":"Etc/UTC","description":"Timezone of the exchange"},"type":{"type":"string","default":"crypto","description":"Symbol type"},"volume_precision":{"type":"number","default":5,"description":"Number of decimal places for volume"},"listed_exchange":{"type":"string","default":"Meridian","description":"Listed exchange name"}},"required":["description","exchange","format","has_empty_bars","has_daily","daily_multipliers","has_intraday","intraday_multipliers","has_weekly_and_monthly","minmov","name","pricescale","session","ticker","timezone","type","volume_precision","listed_exchange"]},"SymbolSearchResultDto":{"type":"object","properties":{"description":{"type":"string","description":"Human-readable symbol description","example":"ETH / USD Perpetual"},"exchange":{"type":"string","default":"Meridian","description":"Exchange name"},"symbol":{"type":"string","description":"Symbol short name","example":"ETHUSD"},"ticker":{"type":"string","description":"Full ticker in the format {ticker}-{type}","example":"ETHUSD-Perp"},"type":{"enum":["Perp","Spot"],"type":"string","description":"Symbol type"}},"required":["description","exchange","symbol","ticker","type"]},"HistoryResponseDto":{"type":"object","properties":{"s":{"type":"string","description":"Response status","enum":["ok","error","no_data"]},"errmsg":{"type":"string","description":"Error message when status is \"error\""},"t":{"description":"Array of bar timestamps (seconds since Unix Epoch)","type":"array","items":{"type":"number"}},"c":{"description":"Array of close prices","type":"array","items":{"type":"number"}},"o":{"description":"Array of open prices","type":"array","items":{"type":"number"}},"h":{"description":"Array of high prices","type":"array","items":{"type":"number"}},"l":{"description":"Array of low prices","type":"array","items":{"type":"number"}},"v":{"description":"Array of volumes","type":"array","items":{"type":"number"}}},"required":["s"]},"PythPriceSymbolDto":{"type":"object","properties":{"description":{"type":"string","description":"Human-readable symbol description","example":"ETH / USD Perpetual"},"exchange":{"type":"string","default":"Meridian","description":"Exchange name"},"has_daily":{"type":"boolean","default":true,"description":"Whether the symbol has daily bars"},"has_intraday":{"type":"boolean","default":true,"description":"Whether the symbol has intraday bars"},"has_weekly_and_monthly":{"type":"boolean","default":true,"description":"Whether the symbol has weekly and monthly bars"},"minmov":{"type":"number","description":"Minimum price movement"},"name":{"type":"string","description":"Symbol display name","example":"ETHUSD"},"pricescale":{"type":"number","description":"Price scale; price precision = minmov / pricescale"},"session":{"type":"string","default":"24x7","description":"Trading session hours"},"ticker":{"type":"string","description":"Unique ticker identifier in the format {ticker}-{type}","example":"ETHUSD-Perp"},"timezone":{"type":"string","default":"Etc/UTC","description":"Timezone of the exchange"},"type":{"type":"string","default":"crypto","description":"Symbol type"},"listed_exchange":{"type":"string","default":"Meridian","description":"Listed exchange name"},"format":{"type":"string","default":"price","enum":["price"]},"has_empty_bars":{"type":"boolean","default":false},"supported_resolutions":{"default":["1","2","5","15","30","60","120","240","360","720","D","W","M"],"type":"array","items":{"type":"string"}},"intraday_multipliers":{"default":["1","2","5","15","30","60","120","240","360","720"],"type":"array","items":{"type":"string"}},"daily_multipliers":{"default":["1"],"type":"array","items":{"type":"string"}},"weekly_multipliers":{"default":["1"],"type":"array","items":{"type":"string"}},"monthly_multipliers":{"default":["1"],"type":"array","items":{"type":"string"}},"visible_plots_set":{"type":"string","default":"ohlc","enum":["ohlc"]}},"required":["description","exchange","has_daily","has_intraday","has_weekly_and_monthly","minmov","name","pricescale","session","ticker","timezone","type","listed_exchange","format","has_empty_bars","supported_resolutions","intraday_multipliers","daily_multipliers","weekly_multipliers","monthly_multipliers","visible_plots_set"]},"PythPriceErrorDto":{"type":"object","properties":{"s":{"type":"string","default":"error","enum":["error"]},"errmsg":{"type":"string","default":"unknown_symbol","enum":["unknown_symbol"]}},"required":["s","errmsg"]},"PythPriceConfigDto":{"type":"object","properties":{"supports_search":{"type":"boolean","default":true,"description":"Whether the API supports symbol search"},"supports_group_request":{"type":"boolean","default":false,"description":"Whether the API supports group symbol requests"},"supports_marks":{"type":"boolean","default":false,"description":"Whether the API supports marks on bars"},"supports_timescale_marks":{"type":"boolean","default":false,"description":"Whether the API supports timescale marks"},"supported_resolutions":{"default":["1","2","5","15","30","60","120","240","360","720","D","W","M"],"type":"array","items":{"type":"string"}},"symbol_types":{"type":"array","default":[{"name":"Perp","type":"Perp"}],"items":{"type":"object","required":["name","type"],"properties":{"name":{"type":"string"},"type":{"type":"string"}}}}},"required":["supports_search","supports_group_request","supports_marks","supports_timescale_marks","supported_resolutions","symbol_types"]},"PythPriceHistoryDto":{"type":"object","properties":{"s":{"type":"string","description":"Response status","enum":["ok","error","no_data"]},"errmsg":{"type":"string","description":"Error message when status is \"error\""},"t":{"description":"Array of bar timestamps (seconds since Unix Epoch)","type":"array","items":{"type":"number"}},"c":{"description":"Array of close prices","type":"array","items":{"type":"number"}},"o":{"description":"Array of open prices","type":"array","items":{"type":"number"}},"h":{"description":"Array of high prices","type":"array","items":{"type":"number"}},"l":{"description":"Array of low prices","type":"array","items":{"type":"number"}}},"required":["s"]}}}}