Liquidity on cryptocurrency pairs when executing a market order

In regular FX trading one does not require having a liquidity in both currencies that form the trading pair, i.e. you could have only USD in your trading account and still execute USDEUR Buy and Sell orders.
Is it the same case while creating market orders through the Binance API, i.e. if one has only BTC in his account, can he make both Buy and Sell orders with the BTCUSDT pair OR he needs to hold separate amounts in both cryptocurrencies?

On the spot market with spot wallet/account - you need USDT to buy BTCUSDT or you need BTC to sell BTCUSDT.

If you use cross-margin account then you can (auto-)borrow BTC/USDT (supported margin currency) with any supported currency as collateral to sell/buy BTCUSDT. It supports up to 3x leverage (you can borrow up to 200% of your collateral).

If you use isolated-margin account then you need to allocate BTC or USDT as collateral to BTCUSDT pair to (auto-)borrow BTC/USDT to sell/buy. It supports up to 10x leverage and more currencies than cross.

On margin accounts you’ll need to (auto-)repay your loan later, until that you’ll be charged interest on borrowed assets. Both cross/isolated accounts trade on the same market as spot account (vs futures which are separate markets with their own separate orderbooks etc).

Info on margin markets:

On futures markets you need corresponding currency as collateral to trade any side. On futures you will be charged/paid interest depending on the side of your position and the current futures price vs spot price.

Info on futures: