Compare commits

...
Author SHA1 Message Date
Brandon Thomas 9bb28ad71b moderation tag 2026-03-05 05:54:31 -05:00
Brandon Thomas 2edb3f7040 add missing api docs 2026-03-05 05:48:52 -05:00
2 changed files with 207 additions and 0 deletions
@@ -225,6 +225,55 @@ use tokens::tokens::user_bookmarks::*;
use tokens::tokens::users::*;
use tokens::tokens::zs_voice_datasets::*;
// Cost estimate
use artcraft_api_defs::generate::cost_estimate::estimate_image_cost::*;
use artcraft_api_defs::generate::cost_estimate::estimate_video_cost::*;
// Image multi-function
use artcraft_api_defs::generate::image::multi_function::nano_banana_multi_function_image_gen::*;
use artcraft_api_defs::generate::image::multi_function::nano_banana_pro_multi_function_image_gen::*;
use artcraft_api_defs::generate::image::multi_function::nano_banana_2_multi_function_image_gen::*;
use artcraft_api_defs::generate::image::multi_function::gpt_image_1p5_multi_function_image_gen::*;
use artcraft_api_defs::generate::image::multi_function::bytedance_seedream_v4_multi_function_image_gen::*;
use artcraft_api_defs::generate::image::multi_function::bytedance_seedream_v4p5_multi_function_image_gen::*;
use artcraft_api_defs::generate::image::multi_function::bytedance_seedream_5_lite_multi_function_image_gen::*;
// Image edit (missing handlers)
use artcraft_api_defs::generate::image::edit::flux_pro_kontext_max_edit_image::*;
use artcraft_api_defs::generate::image::edit::gemini_25_flash_edit_image::*;
use artcraft_api_defs::generate::image::edit::qwen_edit_image::*;
use artcraft_api_defs::generate::image::edit::seededit_3_edit_image::*;
// Image inpaint
use artcraft_api_defs::generate::image::inpaint::flux_dev_juggernaut_inpaint_image::*;
use artcraft_api_defs::generate::image::inpaint::flux_pro_1_inpaint_image::*;
// Video (missing handlers)
use artcraft_api_defs::generate::video::generate_seedance_1_0_pro_image_to_video::*;
use artcraft_api_defs::generate::video::generate_veo_3_image_to_video::*;
use artcraft_api_defs::generate::video::generate_veo_3_fast_image_to_video::*;
// Video multi-function
use artcraft_api_defs::generate::video::multi_function::kling_2_5_turbo_multi_function_video_gen::*;
use artcraft_api_defs::generate::video::multi_function::kling_2_6_multi_function_video_gen::*;
use artcraft_api_defs::generate::video::multi_function::seedance_2p0_multi_function_video_gen::*;
use artcraft_api_defs::generate::video::multi_function::sora_2_multi_function_video_gen::*;
use artcraft_api_defs::generate::video::multi_function::sora_2_pro_multi_function_video_gen::*;
use artcraft_api_defs::generate::video::multi_function::veo_3p1_multi_function_video_gen::*;
use artcraft_api_defs::generate::video::multi_function::veo_3p1_fast_multi_function_video_gen::*;
// Object multi-function
use artcraft_api_defs::generate::object::multi_function::hunyuan3d_v3_multi_function_object_gen::*;
// Analytics, credits, subscriptions, media files
use artcraft_api_defs::analytics::log_active_user::*;
use artcraft_api_defs::credits::get_session_credits::*;
use artcraft_api_defs::subscriptions::get_session_subscription::*;
use artcraft_api_defs::media_file::list_batch_generated_media_files::*;
// Handler modules with locally-defined types
use crate::http_server::endpoints::moderation::info::moderator_token_info_handler::*;
use crate::http_server::endpoints::webhooks::fal_webhook_handler::*;
use crate::http_server::endpoints::image_studio::update_gpt_image_job_status_handler::*;
use crate::http_server::endpoints::voice_conversion::enqueue_seed_vc_inference_handler::*;
use crate::http_server::endpoints::credits::get_session_credits_handler::*;
use crate::http_server::endpoints::subscriptions::get_session_subscription_handler::*;
use crate::http_server::endpoints::analytics::log_app_active_user_handler::*;
use crate::http_server::endpoints::analytics::log_app_active_user_json_handler::*;
use crate::http_server::endpoints::media_files::list::list_batch_generated_redux_media_files_handler::*;
#[derive(OpenApi)]
#[openapi(
paths(
@@ -341,6 +390,58 @@ use tokens::tokens::zs_voice_datasets::*;
crate::http_server::endpoints::weights::search::search_model_weights_http_post_handler::search_model_weights_http_post_handler,
crate::http_server::endpoints::weights::update::set_model_weight_cover_image_handler::set_model_weight_cover_image_handler,
crate::http_server::endpoints::weights::update::update_weight_handler::update_weight_handler,
// Cost Estimate
crate::http_server::endpoints::generate::cost_estimate::image::estimate_image_cost_handler::estimate_image_cost_handler,
crate::http_server::endpoints::generate::cost_estimate::video::estimate_video_cost_handler::estimate_video_cost_handler,
// Generate Images (Multi-Function)
crate::http_server::endpoints::generate::image::multi_function::nano_banana_multi_function_image_gen_handler::nano_banana_multi_function_image_gen_handler,
crate::http_server::endpoints::generate::image::multi_function::nano_banana_pro_multi_function_image_gen_handler::nano_banana_pro_multi_function_image_gen_handler,
crate::http_server::endpoints::generate::image::multi_function::nano_banana_2_multi_function_image_gen_handler::nano_banana_2_multi_function_image_gen_handler,
crate::http_server::endpoints::generate::image::multi_function::gpt_image_1p5_multi_function_image_gen_handler::gpt_image_1p5_multi_function_image_gen_handler,
crate::http_server::endpoints::generate::image::multi_function::bytedance_seedream_v4_multi_function_image_gen_handler::bytedance_seedream_v4_multi_function_image_gen_handler,
crate::http_server::endpoints::generate::image::multi_function::bytedance_seedream_v4p5_multi_function_image_gen_handler::bytedance_seedream_v4p5_multi_function_image_gen_handler,
crate::http_server::endpoints::generate::image::multi_function::bytedance_seedream_5_lite_multi_function_image_gen_handler::bytedance_seedream_5_lite_multi_function_image_gen_handler,
// Generate Images (Edit)
crate::http_server::endpoints::generate::image::edit::flux_pro_kontext_max_edit_image_handler::flux_pro_kontext_max_edit_image_handler,
crate::http_server::endpoints::generate::image::edit::gemini_25_flash_edit_image_handler::gemini_25_flash_edit_image_handler,
crate::http_server::endpoints::generate::image::edit::qwen_edit_image_handler::qwen_edit_image_handler,
crate::http_server::endpoints::generate::image::edit::seededit_3_edit_image_handler::seededit_3_edit_image_handler,
// Generate Images (Inpaint)
crate::http_server::endpoints::generate::image::inpaint::flux_dev_juggernaut_inpaint_handler::flux_dev_juggernaut_inpaint_image_handler,
crate::http_server::endpoints::generate::image::inpaint::flux_pro_1_inpaint_handler::flux_pro_1_inpaint_image_handler,
// Generate Videos
crate::http_server::endpoints::generate::video::generate_seedance_1_0_pro_image_to_video_handler::generate_seedance_1_0_pro_image_to_video_handler,
crate::http_server::endpoints::generate::video::generate_veo_3_image_to_video_handler::generate_veo_3_image_to_video_handler,
crate::http_server::endpoints::generate::video::generate_veo_3_fast_image_to_video_handler::generate_veo_3_fast_image_to_video_handler,
// Generate Video (Multi-Function)
crate::http_server::endpoints::generate::video::multi_function::kling_2p5_turbo_pro_multi_function_video_gen_handler::kling_2p5_turbo_pro_multi_function_video_gen_handler,
crate::http_server::endpoints::generate::video::multi_function::kling_2p6_pro_multi_function_video_gen_handler::kling_2p6_pro_multi_function_video_gen_handler,
crate::http_server::endpoints::generate::video::multi_function::seedance_2p0_multi_function_video_gen_handler::seedance_2p0_multi_function_video_gen_handler,
crate::http_server::endpoints::generate::video::multi_function::sora_2_multi_function_video_gen_handler::sora_2_multi_function_video_gen_handler,
crate::http_server::endpoints::generate::video::multi_function::sora_2_pro_multi_function_video_gen_handler::sora_2_pro_multi_function_video_gen_handler,
crate::http_server::endpoints::generate::video::multi_function::veo_3p1_multi_function_video_gen_handler::veo_3p1_multi_function_video_gen_handler,
crate::http_server::endpoints::generate::video::multi_function::veo_3p1_fast_multi_function_video_gen_handler::veo_3p1_fast_multi_function_video_gen_handler,
// Generate Objects (Multi-Function)
crate::http_server::endpoints::generate::object::multi_function::generate_hunyuan3d_v3_multi_function_object_handler::generate_hunyuan3d_v3_multi_function_object_handler,
// Media Files
crate::http_server::endpoints::media_files::list::list_batch_generated_redux_media_files_handler::list_batch_generated_redux_media_files_handler,
// Analytics
crate::http_server::endpoints::analytics::log_app_active_user_handler::log_app_active_user_handler,
crate::http_server::endpoints::analytics::log_app_active_user_json_handler::log_app_active_user_json_handler,
// Voice Conversion
crate::http_server::endpoints::voice_conversion::enqueue_seed_vc_inference_handler::enqueue_infer_seed_vc_handler,
// TTS
crate::http_server::endpoints::tts::enqueue_infer_f5_tts_handler::enqueue_infer_f5_tts_handler::enqueue_infer_f5_tts_handler,
// Moderation
crate::http_server::endpoints::moderation::info::moderator_token_info_handler::moderator_get_token_info_handler,
// Credits
crate::http_server::endpoints::credits::get_session_credits_handler::get_session_credits_handler,
// Subscriptions
crate::http_server::endpoints::subscriptions::get_session_subscription_handler::get_session_subscription_handler,
// Webhooks
crate::http_server::endpoints::webhooks::fal_webhook_handler::fal_webhook_handler,
// Image Studio
crate::http_server::endpoints::image_studio::update_gpt_image_job_status_handler::update_gpt_image_job_status_handler,
),
components(schemas(
// Tokens
@@ -797,6 +898,111 @@ use tokens::tokens::zs_voice_datasets::*;
WriteEngineAssetMediaSuccessResponse,
WriteSceneFileMediaSuccessResponse,
ZsDatasetRecord,
// Cost Estimate types
EstimateImageCostRequest,
EstimateImageCostResponse,
EstimateImageCostError,
EstimateImageCostErrorType,
EstimateVideoCostRequest,
EstimateVideoCostResponse,
EstimateVideoCostError,
EstimateVideoCostErrorType,
// Image Multi-Function types
NanoBananaMultiFunctionImageGenRequest,
NanoBananaMultiFunctionImageGenResponse,
NanoBananaMultiFunctionImageGenAspectRatio,
NanoBananaMultiFunctionImageGenNumImages,
NanoBananaProMultiFunctionImageGenRequest,
NanoBananaProMultiFunctionImageGenResponse,
NanoBananaProMultiFunctionImageGenAspectRatio,
NanoBananaProMultiFunctionImageGenNumImages,
NanoBananaProMultiFunctionImageGenImageResolution,
NanaBanana2MultiFunctionImageGenRequest,
NanaBanana2MultiFunctionImageGenResponse,
NanaBanana2MultiFunctionImageGenAspectRatio,
NanaBanana2MultiFunctionImageGenNumImages,
NanaBanana2MultiFunctionImageGenImageResolution,
GptImage1p5MultiFunctionImageGenRequest,
GptImage1p5MultiFunctionImageGenResponse,
GptImage1p5MultiFunctionImageGenBackground,
GptImage1p5MultiFunctionImageGenInputFidelity,
GptImage1p5MultiFunctionImageGenNumImages,
GptImage1p5MultiFunctionImageGenQuality,
GptImage1p5MultiFunctionImageGenSize,
BytedanceSeedreamV4MultiFunctionImageGenRequest,
BytedanceSeedreamV4MultiFunctionImageGenResponse,
BytedanceSeedreamV4MultiFunctionImageGenImageSize,
BytedanceSeedreamV4MultiFunctionImageGenNumImages,
BytedanceSeedreamV4p5MultiFunctionImageGenRequest,
BytedanceSeedreamV4p5MultiFunctionImageGenResponse,
BytedanceSeedreamV4p5MultiFunctionImageGenImageSize,
BytedanceSeedreamV4p5MultiFunctionImageGenNumImages,
BytedanceSeedream5LiteMultiFunctionImageGenRequest,
BytedanceSeedream5LiteMultiFunctionImageGenResponse,
BytedanceSeedream5LiteMultiFunctionImageGenImageSize,
BytedanceSeedream5LiteMultiFunctionImageGenNumImages,
// Image Edit types
FluxProKontextMaxEditImageRequest,
FluxProKontextMaxEditImageResponse,
FluxProKontextMaxEditImageNumImages,
Gemini25FlashEditImageRequest,
Gemini25FlashEditImageResponse,
Gemini25FlashEditImageNumImages,
QwenEditImageRequest,
QwenEditImageResponse,
QwenEditImageAcceleration,
QwenEditImageNumImages,
SeedEdit3EditImageRequest,
SeedEdit3EditImageResponse,
// Image Inpaint types
FluxDevJuggernautInpaintImageRequest,
FluxDevJuggernautInpaintImageResponse,
FluxDevJuggernautInpaintImageNumImages,
FluxPro1InpaintImageRequest,
FluxPro1InpaintImageResponse,
FluxPro1InpaintImageNumImages,
// Video types (missing handlers)
GenerateSeedance10ProImageToVideoRequest,
GenerateSeedance10ProImageToVideoResponse,
GenerateVeo3ImageToVideoRequest,
GenerateVeo3ImageToVideoResponse,
GenerateVeo3FastImageToVideoRequest,
GenerateVeo3FastImageToVideoResponse,
// Video Multi-Function types
Kling2p5TurboProMultiFunctionVideoGenRequest,
Kling2p5TurboProMultiFunctionVideoGenResponse,
Kling2p6ProMultiFunctionVideoGenRequest,
Kling2p6ProMultiFunctionVideoGenResponse,
Seedance2p0MultiFunctionVideoGenRequest,
Seedance2p0MultiFunctionVideoGenResponse,
Sora2MultiFunctionVideoGenRequest,
Sora2MultiFunctionVideoGenResponse,
Sora2ProMultiFunctionVideoGenRequest,
Sora2ProMultiFunctionVideoGenResponse,
Veo3p1MultiFunctionVideoGenRequest,
Veo3p1MultiFunctionVideoGenResponse,
Veo3p1FastMultiFunctionVideoGenRequest,
Veo3p1FastMultiFunctionVideoGenResponse,
// Object Multi-Function types
Hunyuan3dV3MultiFunctionObjectGenRequest,
Hunyuan3dV3MultiFunctionObjectGenResponse,
// Other types
LogAppActiveUserRequest,
LogAppActiveUserResponse,
GetSessionCreditsPathInfo,
GetSessionCreditsResponse,
GetSessionSubscriptionPathInfo,
GetSessionSubscriptionResponse,
ListBatchGeneratedReduxMediaFilesPathInfo,
ListBatchGeneratedReduxMediaFilesSuccessResponse,
))
)]
pub struct ApiDoc;
@@ -68,6 +68,7 @@ impl fmt::Display for ModeratorTokenInfoError {
#[utoipa::path(
get,
tag = "Moderation",
path = "/v1/moderation/token_info/{token}",
responses(
(status = 200, description = "Found", body = ModeratorTokenInfoResponse),