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 adds AI-generated vocals to an existing instrumental track
  • Upload an instrumental file and provide lyrics or a description for the vocals
  • Perfect for transforming instrumental tracks into complete songs

Parameter Details

  • Required parameters:
    • upload_url: URL of the instrumental audio file
    • prompt: Lyrics or description for the vocals
    • title: Name for the generated track
    • style: Music style to guide vocal delivery
    • negative_tags: Styles to exclude from generation
  • Model selection:
    • V6: Greater musical expression with more natural vocals.
    • V6_MINI: Lightweight and fast.
    • V6_WILD: Bolder, more distinctive musical expression.
    • V5_5: Personalized model tuned to your unique taste.
    • V5: Superior musical expressiveness with faster generation
    • V4_5PLUS: Enhanced tonal richness (default)

Developer Notes

  • The prompt parameter serves as both lyrics and creative direction for the vocals
  • Use style to specify the vocal delivery style (e.g., “Pop Ballad”, “Rock”, “R&B”)
  • Combine with vocal_gender for more control over the vocal output

Optional parameters

  • mv (string): AI model version. Options: V4_5PLUS (default), V5, V5_5, V6, V6_MINI, V6_WILD.
  • vocal_gender (string): Vocal gender preference. Use m for male, f for female. Note: This parameter can only increase the probability but cannot guarantee the specified gender.
  • style_weight (number): Strength of adherence to style. Range 0-1, up to 2 decimals.
  • weirdness_constraint (number): Controls creative deviation. Range 0-1, up to 2 decimals.
  • audio_weight (number): Balance weight for audio features. Range 0-1, up to 2 decimals.

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 add-vocals for this endpoint.

Available options:
add-vocals
Example:

"add-vocals"

input
object
required

Input parameters for vocal generation

callback_url
string<uri>

Webhook callback URL for result notifications

Example:

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

Response

200 - application/json

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