И это лучший выбор для ограничения API на основе HTTP для известных клиентов?
Меня интересует, прежде всего, то, что только определенные доверенные приложения (например, собственные мобильные приложения) могут получить доступ к API.
Это не то, что OAuth 2.0 предназначен для решения. В частности, мобильные приложения трудно идентифицировать как «известных клиентов», поскольку они не могут хранить секреты - их код приложения загружен и может быть декомпилирован мотивированным хакером, желающим написать своего собственного клиента, который говорит по тому же протоколу.
Вопрос несколько дублирует этот: Вопросы безопасности OAuth2 для client_id