use crate::ApiResponse; use crate::error::ApiError; use actix_web::{HttpResponse, Result, web}; use service::AppService; use session::Session; #[utoipa::path( post, path = "/api/auth/logout", responses( (status = 401, description = "Unauthorized", body = ApiResponse), (status = 200, description = "Logout successful", body = ApiResponse), (status = 500, description = "Internal server error", body = ApiResponse), (status = 404, description = "Not found", body = ApiResponse), ), tag = "Auth" )] pub async fn api_auth_logout( service: web::Data, session: Session, ) -> Result { service.auth_logout(&session).await?; Ok(crate::api_success()) }