Для передачи дополнительных данных при авторизации через VK API можно использовать параметр "state" при формировании ссылки для авторизации.
При формировании ссылки для авторизации необходимо добавить параметр "state" со значением, которое вы хотите передать. Например:
```python
import urllib.parse
client_id = "Ваш client_id"
redirect_uri = "Ваш redirect_uri"
state = "Дополнительные данные, которые нужно передать"
params = {
"client_id": client_id,
"redirect_uri": redirect_uri,
"response_type": "code",
"state": state
}
auth_url = "https://oauth.vk.com/authorize?" + urllib.parse.urlencode(params)
```
После авторизации VK API автоматически добавит значение параметра "state" в конец redirect_uri. Например, если ваш redirect_uri указан как "https://example.com/auth/vk/callback", после авторизации пользователь будет перенаправлен по ссылке "https://example.com/auth/vk/callback?code=код_авторизации&state=дополнительные_данные".
На вашем сервере, в обработчике callback-запроса, вы сможете получить значение параметра "state" из URL и использовать его по своему усмотрению.
Например, если вы используете Python и фреймворк Flask, то обработчик может выглядеть примерно так:
```python
from flask import Flask, request
app = Flask(__name__)
@app.route("/auth/vk/callback")
def auth_callback():
code = request.args.get("code")
state = request.args.get("state")
# Далее можете использовать значение state по своему усмотрению
return "Авторизация прошла успешно!"
if __name__ == "__main__":
app.run()
```