Skip to main content
Text to Text
curl --request POST \
  --url https://gptproto.com/v1/suno/submit/lyrics \
  --header 'Authorization: <authorization>' \
  --header 'Content-Type: application/json' \
  --data '{
  "prompt": "<string>"
}'
{
  "code": "error",
  "data": null,
  "message": "Invalid prompt: prompt cannot be empty"
}

Overview

Suno AI provides a powerful lyrics generation capability that creates high-quality song lyrics from text descriptions. Using Suno’s API, you can generate original lyrics for any musical style, theme, or mood by simply describing what you want in natural language. Related Guides: Suno Official Documentation | Lyrics Generation Guide This endpoint allows you to submit lyrics generation tasks using simple text prompts. The generation is processed asynchronously - you’ll receive a task ID immediately, which you can use to check the status and retrieve the generated lyrics once complete.

Authentication

This endpoint requires authentication using a Bearer token.
Authorization
string
default:"sk-***********"
required
Your API key in the format: Bearer YOUR_API_KEY

Request Body

prompt
string
required
Description of the lyrics you want to generate. Provide detailed information about the theme, mood, style, and any specific elements you want included in the lyrics.

Request Example

curl --location 'https://gptproto.com/v1/suno/submit/lyrics' \
--header 'Authorization: Bearer YOUR_API_KEY' \
--header 'Content-Type: application/json' \
--data '{
  "prompt": "Write lyrics about a sunrise over the ocean with a hopeful tone"
}'

Response

Success
200
Successful response
{
  "code": "success",
  "data": "a8f3d9e2-4b7c-41a8-9f2e-6d5c8e1a7b9f",
  "message": ""
}

Error Responses

{
  "code": "error",
  "data": null,
  "message": "Invalid prompt: prompt cannot be empty"
}

Next Steps

After successfully submitting a lyrics generation task, you’ll receive a task ID. Use this ID to:
  1. Check Task Status - Query the Task Status endpoint to monitor progress
  2. Retrieve Generated Lyrics - Once completed, get the lyrics content from the task status response
  3. Use with Music Generation - Combine the generated lyrics with the Text to Audio endpoint to create complete songs

Example Workflow

Python
import requests
import time

# Step 1: Submit lyrics generation task
submit_url = "https://gptproto.com/v1/suno/submit/lyrics"
headers = {
    "Authorization": "Bearer YOUR_API_KEY",
    "Content-Type": "application/json"
}

submit_data = {
    "prompt": "Write lyrics about overcoming challenges with themes of resilience and hope"
}

response = requests.post(submit_url, headers=headers, json=submit_data)
result = response.json()

if result["code"] == "success":
    task_id = result["data"]
    print(f"Task submitted: {task_id}")

    # Step 2: Poll for completion
    query_url = f"https://gptproto.com/v1/suno/fetch/{task_id}"

    while True:
        time.sleep(5)  # Wait 5 seconds between checks

        query_response = requests.get(query_url, headers=headers)
        query_result = query_response.json()

        if query_result["code"] == "success" and query_result["data"]:
            task = query_result["data"][0]

            if task["status"] == "completed":
                print(f"Lyrics generated successfully!")
                print(f"\nLyrics:\n{task['lyrics']}")

                # Step 3: Optionally use lyrics for music generation
                music_url = "https://gptproto.com/v1/suno/submit/music"
                music_data = {
                    "prompt": task['lyrics'],
                    "tags": "inspirational,uplifting,emotional",
                    "mv": "chirp-v3-5"
                }

                music_response = requests.post(music_url, headers=headers, json=music_data)
                print(f"\nMusic generation started: {music_response.json()}")
                break

            elif task["status"] == "failed":
                print(f"Generation failed: {task.get('error_message', 'Unknown error')}")
                break
            else:
                print(f"Status: {task['status']}...")

Best Practices

Writing Effective Prompts

For best results:
  • Be Specific: Clearly describe the theme, mood, and style you want
  • Include Context: Mention the genre, intended use, or target audience
  • Specify Tone: Describe the emotional tone (e.g., hopeful, melancholic, energetic)
  • Add Details: Include specific imagery, metaphors, or concepts you want
  • Define Structure: Mention if you want verses, chorus, bridge, etc.
  • Set Language Style: Specify if you want poetic, conversational, or narrative style

Example Prompts

"Write romantic lyrics about falling in love under the stars, with poetic and emotional language suitable for a slow ballad"

"Create uplifting lyrics about chasing dreams and never giving up, with motivational themes for a pop-rock anthem"

"Generate melancholic lyrics about lost love and memories, using metaphors of rain and autumn for an indie folk song"

"Write energetic rap lyrics about success and overcoming obstacles, with strong rhythm and confident wordplay"

"Create nostalgic lyrics about childhood summers and friendship, with vivid imagery for an acoustic folk song"

Prompt Templates by Genre

GenrePrompt TemplateExample
Pop”Write lyrics about with language for a pop song""Write upbeat lyrics about summer romance with catchy, relatable language for a pop song”
Rock”Create lyrics about with for a rock song""Create powerful lyrics about rebellion with urban imagery for an alternative rock song”
R&B/Soul”Generate lyrics about with phrasing for an R&B track""Generate passionate lyrics about desire with smooth, sensual phrasing for an R&B track”
Hip-Hop”Write rap lyrics about with and ""Write confident rap lyrics about ambition with clever wordplay and strong flow”
Country”Create lyrics about with for a country song""Create heartfelt lyrics about small-town life with storytelling elements for a country song”
Folk”Write lyrics about with and narrative style""Write introspective lyrics about nature with vivid imagery and narrative style”

Use Cases

1. Songwriting Assistance

Generate lyrics as a starting point or inspiration for original songs:
data = {
    "prompt": "Write introspective lyrics about finding yourself after a major life change, with themes of growth and self-discovery"
}

2. Music Production

Create lyrics for instrumental tracks or production projects:
data = {
    "prompt": "Generate energetic club lyrics about dancing and celebration with repetitive hooks perfect for electronic music"
}

3. Content Creation

Generate lyrics for videos, podcasts, or multimedia projects:
data = {
    "prompt": "Write inspiring lyrics about innovation and technology for a corporate video soundtrack"
}

4. Educational Purposes

Create example lyrics for teaching songwriting or music theory:
data = {
    "prompt": "Write simple, clear lyrics about friendship using AABB rhyme scheme suitable for beginner songwriters"
}

5. Creative Exploration

Experiment with different styles and themes:
data = {
    "prompt": "Create surreal, abstract lyrics mixing dreams and reality with unconventional imagery for an experimental art piece"
}

Lyrics Structure Tips

Common Song Structures:
  • Verse-Chorus-Verse-Chorus-Bridge-Chorus (Most common pop structure)
  • AABA (Traditional song form)
  • Verse-Chorus (Simple, repetitive structure)
  • Free Form (No fixed structure, common in rap/spoken word)
You can specify your desired structure in the prompt: “Write lyrics with 2 verses, a catchy chorus, and a bridge about

Integration with Music Generation

Once you have generated lyrics, you can use them to create full songs:
# Step 1: Generate lyrics
lyrics_response = requests.post(
    "https://gptproto.com/v1/suno/submit/lyrics",
    headers=headers,
    json={"prompt": "Write uplifting lyrics about new beginnings"}
)
lyrics_task_id = lyrics_response.json()["data"]

# Wait for lyrics completion...
# (polling code here)

# Step 2: Use lyrics for music generation
music_response = requests.post(
    "https://gptproto.com/v1/suno/submit/music",
    headers=headers,
    json={
        "prompt": generated_lyrics,  # Use the generated lyrics
        "tags": "pop,uplifting,inspirational",
        "title": "New Dawn",
        "mv": "chirp-v3-5"
    }
)

Official Resources

Suno AI Documentation

GPT Proto Resources

Additional Resources