Documentation

Audio Generation
Multi-Task

ACE-Step

Advanced audio generation and editing model supporting text-to-audio, audio-to-audio conversion, audio editing, and audio extension with precise control over style, lyrics, and duration.

Quick Start
Get started with ACE-Step API in seconds

Base URL

https://api.qubico.ai/v1/inference

Header Params

x-api-key: YOUR_API_KEY

Model ID

Qubico/ace-step

Task Types

Text-to-Audio Generation
Generate audio from text descriptions with specified duration and style.
{
  "model": "Qubico/ace-step",
  "task_type": "txt2audio",
  "input": {
    "style_prompt": "guitar and piano",
    "negative_prompt": "noise",
    "lyrics": "[inst]",
    "duration": 10
  },
  "config": {
    "webhook_config": {
      "endpoint": "https://your-app.com/webhook",
      "secret": "your-webhook-secret"
    }
  }
}

Parameters Reference

Required Parameters

model
string
required

Model identifier. Must be "Qubico/ace-step".

task_type
string
required

Task type for this request. Must be "txt2audio" for text-to-audio generation.

input.style_prompt
string
required

Text description of the desired audio style (e.g., "guitar and piano", "rock", "jazz").

Optional Parameters

input.negative_prompt
string
optional

Text description of what to avoid in the generated audio (e.g., "noise", "distortion").

input.lyrics
string
optional

Lyrics or vocal content. Use "[inst]" for instrumental music.

input.duration
integer
optional

Duration of the generated audio in seconds.

Configuration Parameters

config.webhook_config
object
config

Webhook configuration for receiving completion notifications.

endpointstring - Your webhook URL to receive completion notifications
secretstring - Webhook secret for request verification

Response Format

Initial Response

{
  "request_id": "req_abc123def456",
  "status": "processing",
  "message": "Audio generation started",
  "estimated_time": 45
}

Completion Response (via webhook)

{
  "request_id": "req_abc123def456",
  "status": "completed",
  "result": {
    "audio_url": "https://cdn.qubico.ai/audio/generated_audio.mp3",
    "duration": 10.5,
    "format": "mp3",
    "sample_rate": 44100,
    "channels": 2
  },
  "metadata": {
    "task_type": "txt2audio",
    "processing_time": 42.3,
    "cost": 0.00525
  }
}

Error Handling

Common Error Response

{
  "error": {
    "code": "INVALID_PARAMETER",
    "message": "Duration must be between 1 and 300 seconds",
    "details": {
      "parameter": "duration",
      "provided_value": 500,
      "valid_range": "1-300"
    }
  }
}

400 - Bad Request

  • • Missing required parameters
  • • Invalid audio URL format
  • • Duration out of range

429 - Rate Limited

  • • Too many requests
  • • Quota exceeded
  • • Concurrent limit reached

Code Examples

curl -X POST "https://api.qubico.ai/v1/inference" \
  -H "Content-Type: application/json" \
  -H "x-api-key: YOUR_API_KEY" \
  -d '{
    "model": "Qubico/ace-step",
    "task_type": "txt2audio",
    "input": {
      "style_prompt": "guitar and piano",
      "negative_prompt": "noise",
      "lyrics": "[inst]",
      "duration": 10
    },
    "config": {
      "webhook_config": {
        "endpoint": "https://your-app.com/webhook",
        "secret": "your-webhook-secret"
      }
    }
  }'

Rate Limits & Pricing

Pricing

$0.0005

per second of generated audio

Rate Limit

10

requests per minute

Concurrent

3

simultaneous requests

Max Duration

300s

per generation