PiAPI
HomeWorkspace
HomeWorkspace
Join Discord
  1. Hailuo
  • Get Started
    • Overview
    • Quickstart
    • Make Instruction: How to Use PiAPI to Build a Workflow on Make?
  • Endpoints
    • Flux
      • Flux with LoRA and Controlnet
      • Available LoRA and Controlnet
      • Flux API with Redux Variation, Fill, Inpaint and Outpaint
      • Create Task
        • Text to Image
        • Image to Image
        • Kontext
      • Get task
    • Gemini
      • Gemini-2.5-flash-image
      • Nano Banana Pro
      • Get task
    • Qwen Image
      • Text to Image
      • Image Edit
      • Get task
    • Z-Image
      • Text to Image
      • Get task
    • Faceswap
      • Multi Faceswap
      • Image Faceswap
      • Video Faceswap
      • Get Task
    • Kling
      • Lipsync With PiAPI Kling API Examples
      • Motion Brush With PiAPI Kling API Example
      • Kling Elements Video Generation API
      • Kling Effects Video Generation
      • Cancel Task
        • Cancel Task
        • Cancel Tasks
      • Get Task
      • Create Task
      • Kling Virtual Try-On
      • Kling Effects
      • Kling Sound
      • Kling Avatar
      • Kling Motion Control
      • Kling Turbo
    • Veo3
      • Veo3 Text to Video
      • Veo3 Image to Video
      • Veo3.1 Text to Video
      • Veo3.1 Image to Video
      • Get task
    • Sora2
      • Sora2-preview Text to Video
      • Sora2 Text to Video
      • Sora2-Pro Text to Video
      • Sora2 Remove Watermark
      • Get task
    • Omni Human
      • OmniHuman 1.5
      • Get task
    • WanX
      • Generate WanX Task with LoRA Using PiAPI
      • Available LoRA Types for Wanx
      • Use Cases for Wanx LoRA
      • Use Cases for Wanx Control Camera
      • Create Task
      • Get Task
    • Wan
      • Wan2.6 Text to Video
      • Wan2.6 Image to Video
      • Get task
    • Hailuo
      • Generate Video
        POST
      • Get Task
        GET
    • Skyreels
      • Create Task
      • Get Task
    • Framepack
      • Create Task
      • Get Task
    • Hunyuan Video
      • How to Make a Hunyuan API Call
      • Available Hunyuan Lora models
      • Get Task
      • Generate Video
    • Luma Dream Machine
      • Cancel Task
        • Cancel Task
        • Cancel Tasks
      • Create Task
      • Get Task
    • LLM
      • Use Cases for GPT-4o Image API
      • How To Avoid Timeouts in Completion API
      • GPT-4o Image Generation API
      • LLM API | Basic Completions
    • Suno
      • Music
      • Lyrics
      • Get task
    • Song(Udio)
      • Song API Task Creation Examples
      • [Udio] Song Extend
      • Get Task
      • Create Task
      • [Udio] Generate Lyrics
    • Mmaudio
      • Get Task
      • Generate Audio
    • DiffRhythm
      • Generate Audio
      • Get Task
    • Ace Step
      • Create Task
        • Text to Audio
        • Audio to Audio
        • Audio Edit
        • Audio Extend
      • Get Task
    • TTS
      • Zeroshot Text-to-Speech F5-TTS
      • Get Task
    • Trellis
      • Trellis Create Task
      • Trellis2 Create Task
      • Get Task
    • Joycaption
      • Image Caption
      • Get Task
    • Midjourney
      • PiAPI Penalties on Midjourney Usage
      • Detailed Explaination on Midjourney Task Result
      • Midjourney V7 API Instructions
      • Create Task
        • Imagine
        • Upscale
        • Variation
        • Reroll
        • Describe
        • Seed
        • Blend
        • Inpaint
        • Outpaint
        • Pan
      • Cancel Task
        • Cancel Task
        • Cancel Tasks
      • Get Task
    • AI Hug
      • Get Task
      • Create Task
    • Tools
      • File Upload API
      • Remove Background API
      • Remove Background-Get Task
      • Segment With Prompt API
      • Segment With Prompt API-Get Task
      • Image Upscale(Super Resolution) API
      • Image Upscale-Get Task
      • Video Upscale
      • Video Upscale-Get Task
      • Video Remove Background
      • Video Remove Background-Get task
    • PiAPI Account Management
      • PiAPI Account Info
      • Task List Info
      • User Task History
    • GPT image
      • GPT-image API
  • Resources
    • Change Log
    • Output Storage
    • Unified API Schema
    • Webhook
    • Bulk Generation Service
    • Billings
    • PiAPI MCP Server
    • Workspace Manual
      • Host-your-account (HYA) | Back-up Account
      • Host-your-account (HYA) | Debug Checklist
      • Host-your-account (HYA) | Connected Account Status
    • Announcements
      • PiAPI 2025 January 1st Pricing Update
      • The discontinued support for midjourney
  • Schemas
    • Schemas
      • motion brush
      • Create Task
      • camera control
      • Cancel Params
      • Float2 Point
      • Control Points
      • txt2video-1.3b
      • txt2video-14b
      • txt2video-14b-lora
      • img2video-14b
      • img2video-14b-lora
      • img2video-14b-keyframe
      • img2video-14b-control-camera
      • wan22-txt2video-14b
      • wan22-img2video-14b
      • hunyuan-txt2video-lora
      • Trellis API/text-to-3D
      • Trellis API/image-to-3D
      • Trellis2 API/image-to-3D
      • VideoGenerationRequest
      • TaskRequest
      • VideoGenerationResponse
      • TaskConfig
      • TaskInput
      • TaskResponse
      • ErrorResponse
    • Response
      • Unified-Task-Response
    • RequestBodies
      • Unified-Task-Request-Body
    • config
    • control_net_setting
    • lora_setting
HomeWorkspace
HomeWorkspace
Join Discord
  1. Hailuo

Generate Video

POST
https://api.piapi.ai/api/v1/task
Hailuo API provides video generation services with various models supporting text-to-video and image-to-video conversions.

Pricing#

Hailuo v2.3#

Price (USD)durationresolution
$0.236768
$0.4510768
$0.461080

Hailuo v2.3-fast#

Price (USD)durationresolution
$0.166768
$0.2610768
$0.2661080

Model Requirements#

Required fields: prompt
Optional fields: image_url, expand_prompt, duration, resolution

Input Constraints#

Text Prompt (prompt)#

Maximum length: 2000 characters

Image Requirements (image_url)#

File formats: JPG, PNG only
Size limit: 20MB maximum
Dimensions:
Minimum: 300px (width or height)
Maximum: 4096px (width or height)
Aspect ratio: Must be between 2:5 and 5:2

Hailuo v2.3#

Duration: 6, 10
Resolution: 768, 1080
1080p+10s is not supported

Configuration Options#

Service Mode#

Currently only supports "public" mode (aka. PPU)

Important Notes#

1.
Image processing:
All dimensions must be within 300px to 4096px range
Aspect ratio must be between 2:5 and 5:2
Only JPG and PNG formats are accepted
Images larger than 20MB will be rejected
2.
Billing:
Cost is calculated per generation
Charges are applied upon successful task completion only

Request

Header Params

Body Params application/json

Examples
{
    "model": "hailuo",
    "task_type": "video_generation",
    "input": {
        "prompt": "autumn wind",
        "model": "v2.3",
        "expand_prompt": true,
        "duration": 6,
        "resolution": 768
    },
    "config": {
        "service_mode": "public",
        "webhook_config": {
            "endpoint": "https://webhook.site/7b206bbd-089a-4c96-9cf7-5927c91bfcca",
            "secret": ""
        }
    }
}

Request Code Samples

Shell
JavaScript
Java
Swift
Go
PHP
Python
HTTP
C
C#
Objective-C
Ruby
OCaml
Dart
R
Request Request Example
Shell
JavaScript
Java
Swift
cURL
curl --location --request POST 'https://api.piapi.ai/api/v1/task' \
--header 'x-api-key;' \
--header 'Content-Type: application/json' \
--data-raw '{
    "model": "hailuo",
    "task_type": "video_generation",
    "input": {
        "prompt": "autumn wind",
        "model": "v2.3",
        "expand_prompt": true,
        "duration": 6,
        "resolution": 768
    },
    "config": {
        "service_mode": "public",
        "webhook_config": {
            "endpoint": "https://webhook.site/7b206bbd-089a-4c96-9cf7-5927c91bfcca",
            "secret": ""
        }
    }
}'

Responses

🟢200OK
application/json
Successful response
Body

Example
{
    "timestamp": 1769349220,
    "data": {
        "task_id": "4d5fe927-66ca-4614-ad53-73430dd1f965",
        "model": "hailuo",
        "task_type": "video_generation",
        "status": "completed",
        "config": {
            "service_mode": "public",
            "webhook_config": {
                "endpoint": "https://webhook.site/7b206bbd-089a-4c96-9cf7-5927c91bfcca",
                "secret": ""
            }
        },
        "input": {
            "duration": 6,
            "expand_prompt": true,
            "image_url": "",
            "model": "v2.3",
            "prompt": "autumn wind",
            "resolution": 768
        },
        "output": {
            "video": "https://img.theapi.app/ephemeral/d9cb24bc-3166-41bc-9fe0-7cd7c9942b27.mp4"
        },
        "meta": {
            "created_at": "2026-01-25T13:52:23.125177638Z",
            "started_at": "2026-01-25T13:52:24.247634887Z",
            "ended_at": "2026-01-25T13:53:40.726939834Z",
            "usage": {
                "type": "llm",
                "frozen": 0,
                "consume": 2300000
            },
            "is_using_private_pool": false
        },
        "detail": null,
        "logs": [],
        "error": {
            "code": 0,
            "raw_message": "",
            "message": "",
            "detail": null
        }
    }
}
Modified at 2026-01-26 02:35:28
Previous
Get task
Next
Get Task