Единственный способ по-настоящему обезопасить ваш API - это аутентифицировать пользователя вашего приложения с помощью чего-то вроде Oauth2 и проверить эти учетные данные на стороне сервера с помощью чего-то вроде паспорта и истечь авторизацию с сессиями. И используйте SSL, чтобы ничего из этого не было легко видно через анализатор протокола.
Конечно, вы можете жестко запрограммировать какой-то «секретный ключ» с помощью приложения, но любой, кто этого достаточно сильно хочет, прочитает его из вашего приложения или обнюхает пакеты через регистратор пакетов, пока не найдет ключ. .
РЕДАКТИРОВАТЬ: Да, и как часть авторизации при входе в систему, предоставьте им уникально сгенерированный «API-KEY» как часть идентичности, чтобы вы могли проверить их при отправке, и если они нарушают ваше доверие , отметьте их ключ API как недействительный на сервере, чтобы они больше не могли их использовать.