Skip to main content
POST
  1. After submission, a task_id will be returned. If you provided a callback_url, when the task status becomes finished or failed, a POST request will be sent to the callback_url.
  2. Regardless of whether callback_url is provided, you can retrieve the response result through the unified Query Music Detail endpoint.

Usage Guide

  • This endpoint generates visualized music videos from audio tracks
  • Creates MP4 videos with audio visualization and optional branding
  • Useful for social media content, promotional materials, or music sharing

Parameter Details

  • task_id (required): Task ID from a completed music generation (Generate Music or Extend Music)
  • audio_id (required): Specific audio track identifier from the callback data

Developer Notes

  • Each audio track can only have one music video generated
  • If a video already exists, the API returns error code 409
  • The callback includes a download URL for the generated MP4 video
  • Video generation may take longer than audio processing tasks

Optional parameters

  • author (string): Artist or creator name displayed on the video cover. Maximum 50 characters.
  • domain_name (string): Website or brand watermark displayed at the bottom of the video. Maximum 50 characters.

Authorizations

Authorization
string
header
required

All API endpoints require Bearer Token authentication.

Create an API key: sign in to PoYo, open Dashboard → API Key at poyo.ai/dashboard/api-key, and click to create a key.

Add it to the request header:

Body

application/json
model
enum<string>
required

API model identifier.

Must be create-music-video for this endpoint.

Available options:
create-music-video
Example:

"create-music-video"

callback_url
string<uri>
required

Webhook callback URL for result notifications.

The endpoint will receive POST requests with music video generation completion status and download URL.

Example:

"https://your-domain.com/callback"

input
object
required

Input parameters for music video creation

Response

Task submitted successfully

code
enum<integer>
required

Business status code. 200 means success; any other value means the request failed. Always check this field: some validation errors return HTTP 200 with code: 400 in the body.

  • 200: Success
  • 400: Invalid request parameters
  • 401: Missing or invalid API key
  • 402: Insufficient credits
  • 403: Permission denied
  • 404: Resource not found
  • 408: Request timeout
  • 429: Rate limit exceeded
  • 500: Internal server error
  • 502: Upstream service error
  • 503: Service unavailable

See Error Codes for details.

Available options:
200,
400,
401,
402,
403,
404,
408,
429,
500,
502,
503
Example:

200

data
object
required