Клиент - в руках врага.
Вы ничего не можете сделать с этим. Всё, что вам остаётся - контролировать состояние на стороне сервера и уже там проверять, соблюдены ли условия. На стороне же клиента все эти проверки можете считать валидацией для удобства пользователя - не более.
Никакое шифрование вам не поможет (это не значит, что API должно работать по открытому HTTP, само собой).