well the two lines provided by OP doesn't really explain much about why he needs this data and what he is going to do with it, so i can't really tell what is best for his purpose.
as for APIs, they are not "non-public"! the market data is always public, that is how all these sites like CMC are gathering the data. and even shittiest exchanges have such features. and you can get the order books directly to see the "live" price:
example from a shitty exchange:
https://yobit.net/api/3/depth/btc_usd?limit=10By public/non-public I mean whether they require API key or not. It makes a huge difference, because you can't expect clients to setup API keys, so apps like
this (shameless plug) are not possible. And even if there's no keys there's still a need for CORS headers, because without them you can't make requests from clients (like in that YoBit api that you have linked), and you'd have to use third-party proxies, which introduced another point of failure.
But if OP will be using API from his server, then of course they can use an exchange API's, but should they? Even Bisq, for example, uses Bitcoinaverage instead of exchange API's, and they are not afraid that it will tamper with data. And the API that I've recommended - Coingecko, is used by Trezor, Electrum, MEW.