Added API key verification for permissions
This commit is contained in:
@@ -299,6 +299,12 @@ async def settings_for_margin_type(
|
||||
deals = await get_active_positions_by_symbol(
|
||||
tg_id=callback_query.from_user.id, symbol=symbol
|
||||
)
|
||||
if deals == "Invalid API key permissions":
|
||||
await callback_query.answer(
|
||||
text="API ключ не имеет достаточных прав для смены маржи",
|
||||
)
|
||||
return
|
||||
|
||||
position = next((d for d in deals if d.get("symbol") == symbol), None)
|
||||
|
||||
if position:
|
||||
@@ -676,10 +682,19 @@ async def set_leverage_handler(message: Message, state: FSMContext) -> None:
|
||||
|
||||
await state.clear()
|
||||
except Exception as e:
|
||||
await message.answer(
|
||||
text="Произошла ошибка при установке кредитного плеча. Пожалуйста, попробуйте позже.",
|
||||
reply_markup=kbi.back_to_additional_settings,
|
||||
)
|
||||
errors_text = str(e)
|
||||
known_errors = {
|
||||
"Permission denied, please check your API key permissions": "API ключ не имеет достаточных прав для установки кредитного плеча"
|
||||
|
||||
}
|
||||
for key, msg in known_errors.items():
|
||||
if key in errors_text:
|
||||
await message.answer(msg, reply_markup=kbi.back_to_additional_settings)
|
||||
else:
|
||||
await message.answer(
|
||||
text="Произошла ошибка при установке кредитного плеча. Пожалуйста, попробуйте позже.",
|
||||
reply_markup=kbi.back_to_additional_settings,
|
||||
)
|
||||
logger.error(
|
||||
"Error processing command leverage for user %s: %s", message.from_user.id, e
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user