Я думаю, что вам может понадобиться включить кэширование на вашем API-шлюзе и установить TTL равным 600 (5 минут).Затем пользователь может использовать ваш API столько раз, сколько он хочет, в пределах заданной им квоты, но он действительно не сможет запрашивать новые данные в течение 5 минут, так как срок действия TTL должен истечь первым.Тем не менее, предполагается, что ваш метод является методом GET - может быть, вы можете просто изменить его на GET, если нет?
Если это не соответствует вашим потребностям, вам, к сожалению, придется использовать эту логику для управленияВы уже заявили в своем вопросе.На самом деле это очень необычно для того, что вы хотите сделать (я не говорю, что это неверно), но сдерживание пользователей тем, что они могут делать запрос каждые 5 минут, является чрезвычайно медленным и, вероятно, очень необычным.Чаще всего значение доступно для многих запросов, но обновляется каждые несколько минут с использованием метода TTL.
Имейте в виду, что целью регулирования является защита ваших служб от слишком большой нагрузки или атаки DDos.и т. д. Если у вас есть части вашего приложения, у которых есть рабочие процессы, в которых их бизнес-логика требует, чтобы пользователи выполняли действия не чаще, чем раз в 5 минут, это должно находиться в области управления рабочими процессами вашего приложения, например:в менеджере бизнес-процессов BPM или, если вы хотите использовать AWS, вы можете использовать SWF или пошаговые функции.Причина в том, что бизнес-логику не следует вводить в вашу инфраструктуру, по крайней мере, IMO.