Мой общий совет - отделить API от процедур аутентификации. Ваш веб-сервер должен обрабатывать взаимодействие для вас.
Решения для вашей стороны сценария клиент-сертификат зависят от вашей среды. Вы не опубликовали это здесь, но, похоже, целевой поиск в Google должен дать вам представление о том, что необходимо.
Поскольку вы предоставляете API другим сторонам, у вас есть некоторые соображения относительно поддержки среды для этих разработчиков. Вы хорошо справляетесь с базой REST, и большинство сред программирования будут взаимодействовать с ними довольно хорошо.
Поддержка клиентских сертификатов, вероятно, будет изменяться с точки зрения эффективности поддержки в средах, платформах и т. Д. Кроме того, теперь вы влияете на реализацию на стороне клиента, когда вам требуются сертификаты. Это почти наверняка поставит вас в положение, требующее от вас поддержки ваших клиентов и запуска их с вашим API. Это означает знакомство с другими языками, веб-серверами, фреймворками и т. Д.