fix(api): Use poem_openapi::param::Path for OpenAPI documentation

- Fix Path import in message.rs, account.rs, mailbox.rs, oauth2.rs,
  and auto_config.rs to use poem_openapi::param::Path instead of
  poem::web::Path
- This ensures path parameters appear in OpenAPI/Swagger documentation
- Update frontend API calls to use message_id parameter
- Add parameter documentation comments for better API clarity

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
Michel-Marie MAUDET
2025-12-14 09:33:18 +01:00
co-authored by Claude Opus 4.5
parent 934e81c5f9
commit 6b18d7371d
6 changed files with 15 additions and 12 deletions
+1 -2
View File
@@ -31,8 +31,7 @@ use crate::modules::rest::response::DataPage;
use crate::modules::rest::ApiResult;
use crate::modules::token::{AccessToken, AccountInfo};
use crate::raise_error;
use poem::web::Path;
use poem_openapi::param::Query;
use poem_openapi::param::{Path, Query};
use poem_openapi::payload::Json;
use poem_openapi::OpenApi;
+1 -1
View File
@@ -23,7 +23,7 @@ use crate::modules::error::code::ErrorCode;
use crate::modules::rest::api::ApiTags;
use crate::modules::rest::ApiResult;
use crate::raise_error;
use poem::web::Path;
use poem_openapi::param::Path;
use poem_openapi::payload::Json;
use poem_openapi::OpenApi;
+1 -2
View File
@@ -22,8 +22,7 @@ use crate::modules::common::auth::ClientContext;
use crate::modules::mailbox::list::get_account_mailboxes;
use crate::modules::rest::api::ApiTags;
use crate::modules::rest::ApiResult;
use poem::web::Path;
use poem_openapi::param::Query;
use poem_openapi::param::{Path, Query};
use poem_openapi::payload::Json;
use poem_openapi::OpenApi;
+8 -2
View File
@@ -32,9 +32,8 @@ use crate::modules::rest::response::DataPage;
use crate::modules::rest::ApiResult;
use crate::modules::rest::ErrorCode;
use crate::raise_error;
use poem::web::Path;
use poem::Body;
use poem_openapi::param::Query;
use poem_openapi::param::{Path, Query};
use poem_openapi::payload::{Attachment, AttachmentType, Json};
use poem_openapi::OpenApi;
use std::collections::HashMap;
@@ -134,7 +133,9 @@ impl MessageApi {
)]
async fn fetch_message_content(
&self,
/// The ID of the account.
account_id: Path<u64>,
/// The ID of the message to fetch.
message_id: Query<u64>,
context: ClientContext,
) -> ApiResult<Json<FullMessageContent>> {
@@ -151,7 +152,9 @@ impl MessageApi {
)]
async fn download_message(
&self,
/// The ID of the account.
account_id: Path<u64>,
/// The ID of the message to download.
message_id: Query<u64>,
context: ClientContext,
) -> ApiResult<Attachment<Body>> {
@@ -175,8 +178,11 @@ impl MessageApi {
)]
async fn download_attachment(
&self,
/// The ID of the account.
account_id: Path<u64>,
/// The ID of the message containing the attachment.
message_id: Query<u64>,
/// The filename of the attachment to download.
name: Query<String>,
context: ClientContext,
) -> ApiResult<Attachment<Body>> {
+1 -2
View File
@@ -26,8 +26,7 @@ use crate::modules::rest::api::ApiTags;
use crate::modules::rest::response::DataPage;
use crate::modules::rest::ApiResult;
use crate::raise_error;
use poem::web::Path;
use poem_openapi::param::Query;
use poem_openapi::param::{Path, Query};
use poem_openapi::payload::{Json, PlainText};
use poem_openapi::OpenApi;