Base and Quote oracle symbols are always fetched from the market itself. They can be in a different representation than plain symbols (i.e hashes for pyth oracle).
import { IndexerGrpcOracleApi, IndexerGrpcDerivativeApi,} from'@injectivelabs/sdk-ts'import { getNetworkEndpoints, Network } from'@injectivelabs/networks'constendpoints=getNetworkEndpoints(Network.Testnet)constmarkets=newIndexerGrpcDerivativeApi(endpoints.indexer)constindexerGrpcOracleApi=newIndexerGrpcOracleApi(endpoints.indexer)constmarket=markets.find((market) =>market.ticker ==='INJ/USDT PERP')// These values are a part of the market object// fetched from the chain i.e `oracle_base` and `oracle_quote`constbaseSymbol=market.oracle_baseconstquoteSymbol=market.oracle_quoteconstoracleType=market.oracle_typeconstoraclePrice=awaitindexerGrpcOracleApi.fetchOraclePriceNoThrow({ baseSymbol, quoteSymbol, oracleType,})console.log(oraclePrice)