Как сделать авторизацию клиента в API и не облажаться?
Никак, вообще, веб так не умеет.

> Капча 
- убийца UX.

> в заголовок добавьте secretcode
Идиотизм.

У вас варианта два:
1. Авторизация, сложная, с верификацией и всем таким.
2. Не заниматься ерундой.
в заголовок добавьте secretcode, и принимайте запросы только при наличии этого условия