Skip to main content
POST
Create Suno Cover Task

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

πŸ”‘ API Authentication

All endpoints require authentication using Bearer Token.

Get API Key

  1. Visit the API Key Management Page to obtain your API Key

Usage

Add to request headers:

⚠️ 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

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"

Callbacks

POST
{$request.body#/callBackUrl}onCoverGenerated

Body

application/json
code
enum<integer>
required

Status code, 200 indicates success

Available options:
200,
500
Example:

200

msg
string
required

Status message

Example:

"success"

data
object
required

Response

200

Callback received successfully

Response

Success

code
enum<integer>

Status code

Available options:
200,
400,
401,
402,
404,
409,
422,
429,
430,
455,
500
Example:

200

msg
string

Status message

Example:

"success"

data
object