Generate Mashup
Mix two audio files to generate a new mashup work using AI models.
Usage Guide
- This endpoint creates mashup music from up to 2 uploaded audio files
- Combines elements from multiple tracks into a cohesive new composition
- You can control detail level with custom mode and instrumental settings
Parameter Details
-
uploadUrlListis required and must contain exactly 2 audio file URLs -
model (string, required):
V4,V4_5,V4_5PLUS,V4_5ALL,V5,V5_5.V5_5: Unleash Your Voice: Custom Models Tailored to Your Unique Taste — same custom-mode limits asV5. -
In Custom Mode (
customMode: true):- Character limits vary by model:
- V4:
prompt3000 characters,style200 characters - V4_5 & V4_5PLUS:
prompt5000 characters,style1000 characters - V4_5ALL:
prompt5000 characters,style1000 characters - V5:
prompt5000 characters,style1000 characters - V5_5: same
prompt/stylelimits as V5 (Unleash Your Voice: Custom Models Tailored to Your Unique Taste)
- V4:
titlelength limit: 80 characters (all models)
- Character limits vary by model:
-
In Non-custom Mode (
customMode: false):promptlength limit: 500 charactersinstrumental: whether to generate instrumental music- Other parameters should be left empty
Optional parameters
- vocalGender (string): Preferred vocal gender. Allowed values:
m(male),f(female) - styleWeight (number): Style adherence weight in range 0–1 (recommended two decimals)
- weirdnessConstraint (number): Creativity/novelty constraint in range 0–1 (recommended two decimals)
- audioWeight (number): Relative weight of audio consistency in range 0–1 (recommended two decimals)
Developer Notes
- Recommendation for new users: Start with
customMode: falsefor simpler usage - Generated files are retained for 14 days
- Callback process has three stages:
text(text generation),first(first track complete),complete(all tracks complete) - The two audio files in
uploadUrlListmust be valid and accessible URLs - Audio files should be in supported formats (MP3, WAV, etc.)
Authorizations
🔑 API Authentication
All endpoints require authentication using Bearer Token.
Get API Key
- Visit the API Key Management Page to obtain your API Key
Usage
Add to request headers:
Authorization: Bearer YOUR_API_KEY
⚠️ Note:
- Keep your API Key secure and do not share it with others
- If you suspect your API Key has been compromised, reset it immediately from the management page
Body
Array of audio file URLs to mashup. Must contain exactly 2 URLs. Each URL must be publicly accessible.
2 elements[
"https://example.com/audio1.mp3",
"https://example.com/audio2.mp3"
]
Determines if advanced parameter customization is enabled.
- If
true: Allows detailed control with specific requirements forstyleandtitlefields. - If
false: Simplified mode where onlypromptis required and other parameters are ignored.
true
The AI model version to use for generation.
- Required for all requests.
- Available options:
V5: Superior musical expression, faster generation.V5_5: Unleash Your Voice: Custom Models Tailored to Your Unique Taste. Same custom-modepromptandstylecharacter limits as V5 (5000 / 1000).V4_5PLUS: V4.5+ delivers richer sound, new ways to create, max 8 min.V4_5: V4.5 enables smarter prompts, faster generations, max 8 min.V4_5ALL: V4.5ALL enables smarter prompts, faster generations, max 8 min.V4: V4 improves vocal quality, max 4 min.
V4, V4_5, V4_5PLUS, V4_5ALL, V5, V5_5 "V4"
The URL to receive music generation task completion updates. Required for all music generation requests.
- System will POST task status and results to this URL when generation completes
- Callback process has three stages:
text(text generation),first(first track complete),complete(all tracks complete) - Note: Some cases may skip
textandfirststages and returncompletedirectly - Your callback endpoint should accept POST requests with JSON payload containing task results and audio URLs
- For detailed callback format and implementation guide, see Music Generation Callbacks
- Alternatively, use the Get Music Details endpoint to poll task status
- To ensure callback security, see Webhook Verification Guide for signature verification implementation
"https://example.com/callback"
A description of the desired audio content.
- In Custom Mode (
customMode: true): Required ifinstrumentalisfalse. The prompt will be strictly used as the lyrics and sung in the generated track. Character limits by model:- V4: Maximum 3000 characters
- V4_5 & V4_5PLUS: Maximum 5000 characters
- V4_5ALL: Maximum 5000 characters
- V5: Maximum 5000 characters
- V5_5: Maximum 5000 characters (same limits as V5)
Example: "A calm and relaxing piano track with soft melodies"
- In Non-custom Mode (
customMode: false): Always required. The prompt serves as the core idea, and lyrics will be automatically generated based on it (not strictly matching the input). Maximum 500 characters.
Example: "A short relaxing piano tune"
"A calm and relaxing piano track with soft melodies"
Music style specification for the generated audio.
- Only available and required in Custom Mode (
customMode: true). Defines the genre, mood, or artistic direction. - Character limits by model:
- V4: Maximum 200 characters
- V4_5 & V4_5PLUS: Maximum 1000 characters
- V4_5ALL: Maximum 1000 characters
- V5: Maximum 1000 characters
- V5_5: Maximum 1000 characters (same limits as V5)
- Common examples: Jazz, Classical, Electronic, Pop, Rock, Hip-hop, etc.
"Jazz"
Title for the generated music track.
- Only available and required in Custom Mode (
customMode: true). - Max length: 80 characters.
- Will be displayed in player interfaces and filenames.
"Relaxing Piano"
Determines if the audio should be instrumental (no lyrics).
- In Custom Mode (
customMode: true):- If
true: Onlystyleandtitleare required. - If
false:style,title, andpromptare required (with prompt used as the exact lyrics).
- If
- In Non-custom Mode (
customMode: false): No impact on required fields (prompt only).
true
Vocal gender preference for the singing voice.
- Only available in Custom Mode (
customMode: true). Optional. Use 'm' for male and 'f' for female. Based on practice, this parameter can only increase the probability but cannot guarantee adherence to male/female voice instructions.
m, f "m"
Strength of adherence to the specified style.
- Only available in Custom Mode (
customMode: true). Optional. Range 0–1, up to 2 decimal places.
0 <= x <= 1Must be a multiple of 0.010.61
Controls experimental/creative deviation.
- Only available in Custom Mode (
customMode: true). Optional. Range 0–1, up to 2 decimal places.
0 <= x <= 1Must be a multiple of 0.010.72
Balance weight for audio features vs. other factors.
- Only available in Custom Mode (
customMode: true). Optional. Range 0–1, up to 2 decimal places.
0 <= x <= 1Must be a multiple of 0.010.65
Callbacks
POST{request.body#/callBackUrl}audioGenerated
Body
Response
Callback received successfully
Response status code
- 200: Success - Request has been processed successfully
- 400: Validation Error - Lyrics contained copyrighted material.
- 408: Rate Limited - Timeout.
- 413: Conflict - Uploaded audio matches existing work of art.
- 500: Server Error - An unexpected error occurred while processing the request
- 501: Audio generation failed.
- 531: Server Error - Sorry, the generation failed due to an issue. Your credits have been refunded. Please try again.
200, 400, 408, 413, 500, 501, 531 Error message when code != 200
"success"
Response
Request successful
Response Status Codes
- 200: Success - Request has been processed successfully
- 401: Unauthorized - Authentication credentials are missing or invalid
- 402: Insufficient Credits - Account does not have enough credits to perform the operation
- 404: Not Found - The requested resource or endpoint does not exist
- 409: Conflict - WAV record already exists
- 422: Validation Error - The request parameters failed validation checks
- 429: Rate Limited - Request limit has been exceeded for this resource
- 451: Unauthorized - Failed to fetch the image. Kindly verify any access limits set by you or your service provider
- 455: Service Unavailable - System is currently undergoing maintenance
- 500: Server Error - An unexpected error occurred while processing the request
200, 401, 402, 404, 409, 422, 429, 451, 455, 500 Error message when code != 200
"success"
