curl --request POST \
--url https://api.poyo.ai/api/generate/submit \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"model": "replace-section",
"callback_url": "https://your-domain.com/callback",
"input": {
"task_id": "5c79xxxxbe8e",
"audio_id": "e231xxxx-xxxx-xxxx-xxxx-xxxx8cadc7dc",
"prompt": "A powerful chorus with soaring vocals",
"tags": "pop, upbeat",
"title": "Summer Dreams",
"infill_start_s": 30,
"infill_end_s": 60,
"full_lyrics": "Complete song lyrics including the replacement chorus"
}
}
'{
"code": 200,
"data": {
"task_id": "task-unified-1757165031-uyujaw3d",
"status": "not_started",
"created_time": "2025-11-12T10:30:00"
}
}Suno AI
Replace Section
Replace specific sections of generated music 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": "replace-section",
"callback_url": "https://your-domain.com/callback",
"input": {
"task_id": "5c79xxxxbe8e",
"audio_id": "e231xxxx-xxxx-xxxx-xxxx-xxxx8cadc7dc",
"prompt": "A powerful chorus with soaring vocals",
"tags": "pop, upbeat",
"title": "Summer Dreams",
"infill_start_s": 30,
"infill_end_s": 60,
"full_lyrics": "Complete song lyrics including the replacement chorus"
}
}
'{
"code": 200,
"data": {
"task_id": "task-unified-1757165031-uyujaw3d",
"status": "not_started",
"created_time": "2025-11-12T10:30:00"
}
}- 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.
task_id plus audio_id, or an uploaded upload_url plus mv. Uploaded audio can be edited directly. The replacement interval must be at least 10 seconds and cannot exceed 50% of the source duration.
Usage Guide
- This endpoint replaces a specific time range of an existing music track with new content
- Useful for editing verses, choruses, or any specific part of a generated track
- The replacement content is generated based on your prompt and style tags
Parameter Details
task_idandaudio_id: Required together when editing a previously generated track; omit both when usingupload_urlupload_urlandmv: Required together when editing uploaded audio; mutually exclusive withtask_idandaudio_idtags(required): Style tags for the replacement sectiontitle(required): Title for the resulting trackinfill_start_s(required): Start time in seconds (minimum 0, up to 2 decimals)infill_end_s(required): End time in seconds (must be greater than start time)full_lyrics(required): Complete lyrics for the entire track after modification
Developer Notes
- Ensure
infill_end_sis always greater thaninfill_start_s - The time range should be within the duration of the original track
- Use
full_lyricswhen you want to maintain lyrical consistency across the entire track
Optional parameters
negative_tags(string): Styles to exclude from the replacement sectionprompt(string): Description of the replacement content (lyrics or musical description)callback_url(string): Webhook URL for receiving completion notifications
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 replace-section for this endpoint.
Available options:
replace-section Example:
"replace-section"
Input parameters for section replacement
- Option 1
- Option 2
Show child attributes
Show child attributes
Webhook callback URL for result notifications
Example:
"https://your-domain.com/callback"
