POST
/
api
/
v1
/
suno
/
cover
/
generate
Create Suno Cover Task
curl --request POST \
  --url https://api.kie.ai/api/v1/suno/cover/generate \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
  "taskId": "73d6128b3523a0079df10da9471017c8",
  "callBackUrl": "https://api.example.com/callback"
}'
{
  "code": 200,
  "msg": "success",
  "data": {
    "taskId": "21aee3c3c2a01fa5e030b3799fa4dd56"
  }
}

Usage Guide

  • Use this interface to create personalized cover images for generated music
  • Requires the taskId of the original music task
  • Each music task can only generate a Cover once; duplicate requests will return the existing taskId
  • Results will be notified through the callback URL upon completion

Parameter Details

  • taskId identifies the unique identifier of the original music generation task
  • callBackUrl receives callback address for completion notifications

Developer Notes

  • Cover image file URLs will be retained for 14 days
  • If a Cover has already been generated for this music task, a 400 status code and existing taskId will be returned
  • It’s recommended to call this interface after music generation is complete
  • Usually generates 2 different style images for selection

Authorizations

Authorization
string
header
required

All APIs require authentication via Bearer Token.

Get API Key:

  1. Visit API Key Management Page to get your API Key

Usage: Add to request header: 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 in the management page

Body

application/json
taskId
string
required

Original music task ID, should be the taskId returned by the music generation interface.

Example:

"73d6128b3523a0079df10da9471017c8"

callBackUrl
string<uri>
required

URL address for receiving Cover generation task completion updates. This parameter is required for all Cover generation requests.

  • The system will send POST requests to this URL when Cover generation is complete, including task status and results
  • Your callback endpoint should be able to accept JSON payloads containing cover image URLs
  • For detailed callback format and implementation guide, see Cover Generation Callbacks
  • Alternatively, you can use the Get Cover Details interface to poll task status
Example:

"https://api.example.com/callback"

Response

Success

code
enum<integer>

Status code Response status code

  • 200: Success - Request processed successfully
  • 400: Validation error - Cover already generated for this task
  • 401: Unauthorized - Authentication credentials missing or invalid
  • 402: Insufficient credits - Account doesn't have enough credits for this operation
  • 404: Not found - Requested resource or endpoint doesn't exist
  • 409: Conflict - Cover record already exists
  • 422: Validation error - Request parameters failed validation checks
  • 429: Rate limited - Your call frequency is too high. Please try again later.
  • 455: Service unavailable - System currently undergoing maintenance
  • 500: Server error - Unexpected error occurred while processing request Build failed - Cover image generation failed
Available options:
200,
400,
401,
402,
404,
409,
422,
429,
455,
500
Example:

200

msg
string

Status message Error message when code != 200

Example:

"success"

data
object