Ошибка vk_api.exceptions.ApiError
Есть код:
session.method('messages.send', {'user_id' : id, 'message' : 'test', 'random_id' : '0'})
При выполнении кода получаю ошибку:
vk_api.exceptions.ApiError: [17] Validation required: please open redirect_uri in browser
Ответы (1 шт):
Автор решения: mironovmeow
→ Ссылка
В документации VK API по коду ошибки 17 сказано:
Действие требует подтверждения — необходимо перенаправить пользователя на служебную страницу для валидации.
В библиотеке vk_api получить redirect_uri можно в объекте ApiError
from vk_api.exceptions import ApiError
try:
session.method('messages.send', {'user_id': id, 'message': 'test', 'random_id': '0'})
except ApiError as e:
print(e.error["redirect_uri"])
Эту ссылку уже открывает пользователь токена в браузере. Пользователь подтверждает и метод можно использовать снова.