curl --request POST \
--url https://api.poyo.ai/api/generate/submit \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"model": "generate-persona",
"callback_url": "https://your-domain.com/callback",
"input": {
"task_id": "5c79xxxxbe8e",
"audio_id": "e231xxxx-xxxx-xxxx-xxxx-xxxx8cadc7dc",
"name": "Smooth Jazz Singer",
"description": "A sultry jazz vocalist with smooth, mellow tones. Specializes in late-night jazz ballads with piano accompaniment and warm, intimate delivery."
}
}
'{
"code": 200,
"data": {
"task_id": "task-unified-1757165031-uyujaw3d",
"status": "not_started",
"created_time": "2025-11-12T10:30:00"
}
}{
"code": 409,
"error": {
"message": "Persona already exists for this audio",
"type": "conflict_error"
}
}Suno AI
Generate Persona
Create reusable musical personas from existing audio tracks
POST
/
api
/
generate
/
submit
curl --request POST \
--url https://api.poyo.ai/api/generate/submit \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"model": "generate-persona",
"callback_url": "https://your-domain.com/callback",
"input": {
"task_id": "5c79xxxxbe8e",
"audio_id": "e231xxxx-xxxx-xxxx-xxxx-xxxx8cadc7dc",
"name": "Smooth Jazz Singer",
"description": "A sultry jazz vocalist with smooth, mellow tones. Specializes in late-night jazz ballads with piano accompaniment and warm, intimate delivery."
}
}
'{
"code": 200,
"data": {
"task_id": "task-unified-1757165031-uyujaw3d",
"status": "not_started",
"created_time": "2025-11-12T10:30:00"
}
}{
"code": 409,
"error": {
"message": "Persona already exists for this audio",
"type": "conflict_error"
}
}- After submission, a
task_idwill be returned. If you provided acallback_url, when the task status becomesfinishedorfailed, a POST request will be sent to thecallback_url. - Regardless of whether
callback_urlis provided, you can retrieve the response result through the unified Query Music Detail endpoint.
vocal_start and vocal_end select a 10–30 second source segment and must be supplied together. style can describe the intended persona style.
Usage Guide
- This endpoint creates a reusable musical persona from an existing audio track
- Personas capture the vocal style, genre characteristics, and musical personality
- Once created, personas can be used with the Generate Music and Extend Music endpoints via the
persona_idparameter
Parameter Details
task_id(required): Task ID from a completed Generate or Extend taskaudio_id(required): Specific audio track identifier from the callback dataname(required): A descriptive name that captures the musical style or characterdescription(required): Detailed description including:- Genre and mood
- Instrumentation preferences
- Vocal characteristics
- Unique musical personality traits
Developer Notes
- Each audio track can only have one persona created from it
- If a persona already exists for the audio, the API returns error code 409
- You can apply the
persona_idto the following endpoints: - Provide detailed descriptions for best results when using the persona
Authorizations
All API endpoints require Bearer Token authentication
Get your API Key:
Visit the API Key Management Page to get your API Key
Add it to the request header:
Authorization: Bearer PoYo_API_KEY
Body
application/json
API model identifier.
Must be generate-persona for this endpoint.
Available options:
generate-persona Example:
"generate-persona"
Input parameters for persona generation
Show child attributes
Show child attributes
Webhook callback URL for result notifications
Example:
"https://your-domain.com/callback"
