24 KiB
24 KiB
Text Video Agent Client
A comprehensive Rust client for the Text Video Agent API - an AI content generation service that supports:
- 🎨 Image Generation - Multiple AI models (Midjourney, Stable Diffusion, etc.)
- 🎬 Video Generation - Text-to-video and image-to-video conversion
- 🎵 Audio Synthesis - Text-to-speech and voice cloning
- 💋 Lip Sync - Advanced lip synchronization with Hedra
- 🤖 Digital Human - Create and animate digital avatars
- 🧠 LLM Integration - Multi-modal AI analysis and inference
- 🔧 Workflow Automation - ComfyUI workflow execution
Features
- Type-safe API - Generated from OpenAPI 3.1 specification
- Async/await support - Built on
reqwestandtokio - Comprehensive coverage - All API endpoints included
- File upload support - Multipart form data handling
- Error handling - Structured error responses
- Documentation - Complete API documentation
Installation
Add this to your Cargo.toml:
[dependencies]
text_video_agent_client = "1.0.6"
tokio = { version = "1.0", features = ["full"] }
Quick Start
use text_video_agent_client::{apis::configuration::Configuration, apis::default_api};
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
let config = Configuration {
base_path: "https://your-api-endpoint.com".to_string(),
..Default::default()
};
// Generate an image
let response = default_api::submit_image_task_api_custom_image_submit_task_post(
&config,
// Add your parameters here
).await?;
println!("Task submitted: {:?}", response);
Ok(())
}
API Overview
This client was generated from the Text Video Agent API specification and provides access to all available endpoints:
- API version: 1.0.6
- Package version: 1.0.6
- Generated with: OpenAPI Generator 7.14.0
Documentation for API Endpoints
All URIs are relative to http://localhost
| Class | Method | HTTP request | Description |
|---|---|---|---|
| DefaultApi | check_template_task_type_api_template_check_task_type_get | GET /api/template/check/task_type | 检查任务类型是否可用 |
| DefaultApi | create_higgsfield_character_api_custom_extend_higgsfield_create_character_post | POST /api/custom/extend/higgsfield/create/character | 提交创建生成角色任务 |
| DefaultApi | get_sample_prompt_api_prompt_default_get | GET /api/prompt/default | 获取示例提示词 |
| DefaultApi | get_supported_model_api_custom_extend_model_list_get | GET /api/custom/extend/model/list | 获取支持的模型列表 |
| DefaultApi | get_supported_model_api_custom_model_list_get | GET /api/custom/model/list | 获取支持的模型列表 |
| DefaultApi | handler_create_digital_api_ark_digital_create_post | POST /api/ark/digital/create | 提交创建数字人任务 |
| DefaultApi | handler_create_video_template_api_template_create_post | POST /api/template/create | 创建新的视频模板 |
| DefaultApi | handler_delete_video_template_api_template_delete_template_id_delete | DELETE /api/template/delete/{template_id} | 删除视频模板 |
| DefaultApi | handler_higgsfield_submit_task_api_custom_extend_higgsfield_submit_task_post | POST /api/custom/extend/higgsfield/submit/task | higgsfield Soul(文生图片)模型 |
| DefaultApi | handler_submit_generate_video_api_ark_digital_video_submit_task_post | POST /api/ark/digital/video/submit/task | 生成数字人视频 |
| DefaultApi | handler_update_video_template_api_template_update_put | PUT /api/template/update | 更新视频模板 |
| DefaultApi | health_check_api_file_health_get | GET /api/file/health | 健康检测 |
| DefaultApi | health_check_api_prompt_health_get | GET /api/prompt/health | 健康检测 |
| DefaultApi | query_frame_task_status_api_custom_extend_frame_task_status_get | GET /api/custom/extend/frame/task/status | 查询首尾帧任务状态 |
| DefaultApi | query_higgsfield_character_status_api_custom_extend_higgsfield_character_status_post | POST /api/custom/extend/higgsfield/character/status | 查询创建角色状态 |
| DefaultApi | query_higgsfield_task_status_api_custom_extend_higgsfield_task_status_get | GET /api/custom/extend/higgsfield/task/status | higgsfield 查询任务执行状态 |
| DefaultApi | query_task_status_api_ark_digital_task_status_get | GET /api/ark/digital/task/status | 查询任务状态 |
| DefaultApi | query_task_status_api_custom_task_status_get | GET /api/custom/task/status | Query Task Status |
| DefaultApi | query_video_template_v2_api_template_default_get | GET /api/template/default | 获取视频模板列表 |
| DefaultApi | submit_frame_video_task_api_custom_extend_frame_submit_task_post | POST /api/custom/extend/frame/submit/task | 【首尾帧生成视频】 |
| DefaultApi | submit_image_task_api_custom_image_submit_task_post | POST /api/custom/image/submit/task | 提交图片生成任务 |
| DefaultApi | submit_video_task_api_custom_video_submit_task_post | POST /api/custom/video/submit/task | 提交视频生成任务 |
| DefaultApi | upload_file2cloud_api_ark_digital_url2vid_post | POST /api/ark/digital/url2vid | 【异步】上传视频生成视频云id, 仅仅支持mp4格式的视频,视频时长较时时,建议使用链接 |
| DefaultApi | upload_file_api_file_upload_post | POST /api/file/upload | 上传文件到COS |
| DefaultApi | upload_s3_api_file_upload_s3_post | POST /api/file/upload/s3 | 上传文件到s3【推荐 cdn加速】 |
| ApiApi | get_voices_hl_api302_hl_router_sync_get_voices_get | GET /api/302/hl_router/sync/get/voices | 查询克隆的音色ID, 【接口来自官方, 302没有对应的中转接口】 |
| ApiApi | hl_tts_api302_hl_router_sync_generate_speech_post | POST /api/302/hl_router/sync/generate/speech | 海螺同步生成音频 |
| ApiApi | upload_material_file_api302_hl_router_sync_file_upload_post | POST /api/302/hl_router/sync/file/upload | 上传素材到302ai,用于复刻 |
| ApiApi | voice_clone_api302_hl_router_sync_voice_clone_post | POST /api/302/hl_router/sync/voice/clone | 声音克隆 |
| ApiApi | async_gen_video_api_jm_async_generate_video_post | POST /api/jm/async/generate/video | 异步生成视频,提交任务 |
| ApiApi | async_query_video_status_api_jm_async_query_status_get | GET /api/jm/async/query/status | 异步查询生成视频的任务状态 |
| ApiApi | generate_video_api_api_jm_generate_video_post | POST /api/jm/generate-video | 生成视频 |
| ApiApi | get_task_status_v2_api_task_status_task_id_get | GET /api/task/status/{task_id} | 异步查询任务状态 |
| ApiApi | health_check_api_jm_health_get | GET /api/jm/health | 健康检查 |
| ApiApi | health_check_api_task_health_get | GET /api/task/health | 健康检测 |
| ApiApi | submit_task_v2_api_task_create_task_post | POST /api/task/create/task | 新版异步提交任务) |
| ApiApi | submit_task_v3_api_task_create_task_v2_post | POST /api/task/create/task/v2 | 新版本异步提交任务 |
| ApiApi | sync_generate_video_v2_api_jm_sync_generate_video_post | POST /api/jm/sync/generate/video | 同步:生成视频v2,支持通过图片文件生成视频 |
| Class302Api | fetch_supported_model_api_union_img_model_list_get | GET /api/union/img/model/list | 获取支持的模型列表 |
| Class302Api | fetch_supported_model_api_union_video_model_list_get | GET /api/union/video/model/list | 获取支持的模型列表 |
| Class302Api | query_task_status_api_union_video_async_task_id_status_get | GET /api/union/video/async/{task_id}/status | 异步查询任务状态 |
| Class302Api | submit_task_api_union_video_async_generate_video_post | POST /api/union/video/async/generate/video | 异步提交任务 |
| Class302Api | sync_gen_image_api_union_img_sync_generate_image_post | POST /api/union/img/sync/generate/image | 生图 |
| Class302aiApiApi | async_gen_video_api302_jm_async_generate_video_post | POST /api/302/jm/async/generate/video | 异步生成视频,提交任务 |
| Class302aiApiApi | async_query_video_status_api302_jm_async_query_status_get | GET /api/302/jm/async/query/status | 异步查询生成视频的任务状态 |
| Class302aiApiApi | sync_generate_video_v2_api302_jm_sync_generate_video_post | POST /api/302/jm/sync/generate/video | 【302ai】同步:生成视频v2,支持通过图片文件生成视频 |
| Class302aiMidjourneyApi | async_gen_image_api302_mj_async_generate_image_post | POST /api/302/mj/async/generate/image | 异步提交生图任务 |
| Class302aiMidjourneyApi | async_query_status_api302_mj_async_query_status_get | GET /api/302/mj/async/query/status | 异步查询任务状态 |
| Class302aiMidjourneyApi | async_query_task_status_api302_mj_video_async_task_status_post | POST /api/302/mj/video/async/task/status | 异步查询生成任务进度 |
| Class302aiMidjourneyApi | cancel_task_api302_mj_task_cancel_post | POST /api/302/mj/task/cancel | 取消任务 |
| Class302aiMidjourneyApi | desc_img_by_file_api302_mj_sync_file_img_describe_post | POST /api/302/mj/sync/file/img/describe | 通过文件获取生图的提示词 |
| Class302aiMidjourneyApi | describe_image_api_api302_mj_sync_img_describe_post | POST /api/302/mj/sync/img/describe | 获取图像描述 |
| Class302aiMidjourneyApi | generate_image_sync_api302_mj_sync_image_post | POST /api/302/mj/sync/image | 同步生成图片接口 |
| Class302aiMidjourneyApi | submit_task_api302_mj_video_async_submit_post | POST /api/302/mj/video/async/submit | 异步提交生成视频任务 |
| Class302aiMidjourneyApi | sync_gen_video_api302_mj_video_sync_generate_video_post | POST /api/302/mj/video/sync/generate/video | 同步生成视频【text+img-->video】 |
| Class302aiVeoApi | get_task_status_api302_veo_video_task_task_id_get | GET /api/302/veo/video/task/{task_id} | 异步: 获取任务执行状态 |
| Class302aiVeoApi | submit_iv_submit_api302_veo_video_async_submit_post | POST /api/302/veo/video/async/submit | 异步:text-->video or text + img --> video |
| Class302aiVeoApi | sync_img2video_api302_veo_video_sync_generate_video_post | POST /api/302/veo/video/sync/generate/video | 同步: 生成视频【文本+图片 OR 文生成视频】 |
| ComfyuiApi | get_running_node_api_comfy_fetch_running_node_get | GET /api/comfy/fetch/running/node | 根据任务数,获取运行节点 |
| ComfyuiApi | query_task_status_api_comfy_async_task_status_get | GET /api/comfy/async/task/status | 查询任务状态 |
| ComfyuiApi | submit_task_api_comfy_async_submit_task_post | POST /api/comfy/async/submit/task | 异步提交任务 |
| ComfyuiApi | sync_execute_workflow_api_comfy_sync_execute_workflow_post | POST /api/comfy/sync/execute/workflow | 同步执行comfy工作流 |
| DefaultApi | root_get | GET / | Root |
| Hedra20Api | internal_upload_file_api302_hedra_v2_upload_post | POST /api/302/hedra/v2/upload | 上传文件到hedra服务器仅支持,image, audio |
| Hedra20Api | query_task_status_api302_hedra_v2_task_status_get | GET /api/302/hedra/v2/task/status | 查询任务状态 |
| Hedra20Api | submit_character_task_api302_hedra_v2_submit_task_post | POST /api/302/hedra/v2/submit/task | 提交口型合成任务 |
| Hedra30Api | handler_hedra_task_submit_api302_hedra_v3_submit_task_post | POST /api/302/hedra/v3/submit/task | 异步提交任务 |
| Hedra30Api | handler_query_task_status_api302_hedra_v3_task_status_get | GET /api/302/hedra/v3/task/status | 查询任务状态 |
| Hedra30Api | upload_file_to_hedra_api302_hedra_v3_file_upload_post | POST /api/302/hedra/v3/file/upload | 上传文件到hedra平台,返回资源的id |
| LlmApi | google_file_upload | POST /api/llm/google/vertex-ai/upload | 上传文件到谷歌存储,用于gemini视觉功能 |
| LlmApi | invoke_gemini_ai_api_llm_google_chat_post | POST /api/llm/google/chat | 调用google推理 |
| LlmApi | invoke_media_analysis_api_llm_google_sync_media_analysis_post | POST /api/llm/google/sync/media/analysis | 【同步适合小文件】gemini多模态分析,支持视频,音频,图片 |
| LlmApi | llm_chat | POST /api/llm/chat | 调用大模型进行推理 |
| LlmApi | llm_supported_models | GET /api/llm/model/list | 获取支持的模型列表 |
| LlmApi | llm_task_id | GET /api/llm/task/status | 查询推理过程结果 |
| LlmApi | submit_media_inference_api_llm_google_async_media_analysis_post | POST /api/llm/google/async/media/analysis | 【异步适合需要长时间的推理过程】gemini多模态分析,支持视频,音频,图片 |
| MidjourneyApi | async_gen_image_api_mj_async_generate_image_post | POST /api/mj/async/generate/image | 异步提交生图任务 |
| MidjourneyApi | async_query_status_api_mj_async_query_status_get | GET /api/mj/async/query/status | 异步查询任务状态 |
| MidjourneyApi | desc_img_by_file_api_mj_sync_file_img_describe_post | POST /api/mj/sync/file/img/describe | 通过文件获取生图的提示词 |
| MidjourneyApi | describe_image_api_api_mj_sync_img_describe_post | POST /api/mj/sync/img/describe | 获取图像描述 |
| MidjourneyApi | generate_image_api_api_mj_generate_image_post | POST /api/mj/generate-image | 生成图片 |
| MidjourneyApi | generate_image_sync_api_mj_sync_image_post | POST /api/mj/sync/image | 同步生成图片接口 |
| MidjourneyApi | health_check_api_mj_health_get | GET /api/mj/health | 健康检查 |
| MidjourneyApi | prompt_check_api_mj_prompt_check_get | GET /api/mj/prompt/check | 🔥图片提示词预审 |
| MidjourneyapiApi | async_query_task_status_api_mj_video_async_task_status_post | POST /api/mj/video/async/task/status | 异步查询生成任务进度 |
| MidjourneyapiApi | health_check_api_mj_video_health_get | GET /api/mj/video/health | 健康检查 |
| MidjourneyapiApi | submit_video_task_api_mj_video_async_submit_post | POST /api/mj/video/async/submit | 异步提交生成视频任务 |
| MidjourneyapiApi | sync_submit_task_api_mj_video_sync_gen_post | POST /api/mj/video/sync/gen | 同步生成视频视频 |
| OmniHumanApi | query_img_recognition_status_api_ark_omnihuman_task_status_get | GET /api/ark/omnihuman/task/status | 查询任务状态 |
| OmniHumanApi | submit_img_recognition_api_ark_omnihuman_img_recognition_post | POST /api/ark/omnihuman/img/recognition | 提交图片检测任务,图片中是否包含人、类人、拟人等主体 |
| OmniHumanApi | submit_video_generate_task_api_ark_omnihuman_video_submit_task_post | POST /api/ark/omnihuman/video/submit/task | 提交视频生成任务 |
Documentation For Models
Examples
Image Generation
use text_video_agent_client::{apis::configuration::Configuration, apis::default_api};
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
let config = Configuration::default();
// Submit image generation task
let response = default_api::submit_image_task_api_custom_image_submit_task_post(
&config,
// Add your parameters
).await?;
Ok(())
}
Video Generation
use text_video_agent_client::{apis::configuration::Configuration, apis::default_api};
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
let config = Configuration::default();
// Submit video generation task
let response = default_api::submit_video_task_api_custom_video_submit_task_post(
&config,
// Add your parameters
).await?;
Ok(())
}
LLM Integration
use text_video_agent_client::{apis::configuration::Configuration, apis::llm_api};
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
let config = Configuration::default();
// Get supported models
let models = llm_api::llm_supported_models(&config).await?;
println!("Available models: {:?}", models);
Ok(())
}
API Categories
The client provides access to the following API categories:
- DefaultApi - Core functionality (templates, file upload, health checks)
- ApiApi - Task management and basic operations
- Class302Api - 302AI integration services
- Class302aiApiApi - 302AI JiMeng video generation
- Class302aiMidjourneyApi - 302AI Midjourney integration
- Class302aiVeoApi - 302AI VEO video generation
- ComfyuiApi - ComfyUI workflow execution
- Hedra20Api - Hedra 2.0 lip sync services
- Hedra30Api - Hedra 3.0 lip sync services
- LlmApi - Large Language Model integration
- MidjourneyApi - Midjourney image generation
- MidjourneyapiApi - Midjourney video generation
- OmniHumanApi - Digital human services
Documentation
To access the complete API documentation:
cargo doc --open
Or visit docs.rs/text_video_agent_client
Contributing
This client is auto-generated from the OpenAPI specification. For issues related to the API itself, please contact the API provider. For issues with this Rust client, please open an issue in the repository.
License
Licensed under either of
- Apache License, Version 2.0 (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)
at your option.