Ожидание...
Исключение пользователя

Можно указать peer_id (например 2000000230) или локальный chat_id (230). Действие выполняется от вашего аккаунта: вы должны быть создателем беседы или администратором.

Ответ
Ожидание...
Параметры VK
VK APP ID {esc(vk_app_id)}
VK USER ID {esc(vk_user_id)}
VK PLATFORM {esc(vk_platform)}
VK LANGUAGE {esc(vk_language)}
VK IS APP USER {esc(vk_is_app_user)}
VK IS FAVORITE {esc(vk_is_favorite)}
VK REF {esc(vk_ref)}
VK TS {esc(vk_ts)}
SIGN {"ПОЛУЧЕН" if sign else "НЕТ"}
""" # ============================================================ # API TEST # ============================================================ @app.get("/api/test") async def api_test(request: Request): return { "status": "ok", "message": "FastAPI работает", [2 lines collapsed] } # ============================================================ # API KICK # ============================================================ @app.post("/api/kick") async def kick(request: Request): try: data = await request.json() except Exception as error: [12 lines collapsed] { "status": "error", "error": "missing_access_token", "message": "message": ( "Нужен пользовательский access_token " "(получите через VKWebAppGetAuthToken со scope messages).", "(VKWebAppGetAuthToken, scope: messages)." ), }, status_code=400, ) [16 lines collapsed] sign_valid = verify_launch_sign(launch_params, VK_CLIENT_SECRET or "") api_url = "https://api.vk.com/method/messages.removeChatUser" payload = { "chat_id": chat_id, "member_id": user_id, [6 lines collapsed] response = await client.post(api_url, data=payload) response_text = response.text try: vk_response = response.json() except json.JSONDecodeError: [6 lines collapsed] }, status_code=502, ) except httpx.RequestError as error: return JSONResponse( { [30 lines collapsed] } # ============================================================ # DEBUG # ============================================================ @app.get("/debug") async def debug(request: Request): return { "status": "ok", "app_id": VK_APP_ID, "vk_user_id": request.query_params.get("vk_user_id"), "service_token_configured": bool(VK_SERVICE_TOKEN), "client_secret_configured": bool(VK_CLIENT_SECRET), "note": "index_html_exists": Path(__file__).with_name("index.html").is_file(), "note": ( "messages.removeChatUser работает только с пользовательским " "access_token, не с service token.", "access_token, не с service token." ), }