Берёшь какую нить дб для хранения данных или простую таблицу, как например Google Sheets.
При клике кнопки "Get key" отправляешь в дб билд и ключ и ещё желательно ник для защиты от спама
В дискорде при вводе ключа ищешь его в дб. Если такой есть - выдаёшь роль и помечаешь ключ как привязанный / использованный