AIMV API

API Documentation

Explore the AIMV API endpoints. All endpoints require an API Key via Authorization: Bearer sk-...

Quick Start

curl -X POST "https://api.aimv.art/v1/music/creations" \
  -H "Authorization: Bearer sk-your-api-key" \
  -H "Content-Type: application/json" \
  -d '{
    "creative_description": "A cheerful pop song about summer",
    "style": "pop",
    "vocal_preference": "female"
  }'

Music Generation

Music Script (AI Producer)

Text/image/video to production parameters

POST /v1/music/scripts

Music Generation

Generate songs from lyrics and style

POST /v1/music/generations

Music Creation

One-click: script + generation combined

POST /v1/music/creations

Visual & Video

Cover Generation

AI album cover art

POST /v1/covers/generations

Video Generation

Music video with lyrics overlay

POST /v1/videos/generations

Audio Processing

Stem Separation

Split audio into tracks (2/6/12)

POST /v1/stem-separation

MIDI Extraction

Convert audio to MIDI

POST /v1/midi/extractions

Audio Mixing

Mix stems with volume control

POST /v1/audio/mix

Lyrics & Style

Lyrics Optimization

Polish and structure lyrics

POST /v1/lyrics/optimize

Reference & Conversion

Reference Audio Upload

Upload voice sample for style transfer

POST /v1/music/reference-audio/uploads

WAV Conversion

Convert to WAV format

POST /v1/music/generations/{id}/wav

Add Instrumental

Generate backing track for vocals

POST /v1/music/add-instrumental

Authentication

All API requests require an API key in the Authorization header:

Authorization: Bearer sk-your-api-key

Create API keys in your Dashboard. Keys starting with sk- are required.

Async Task Model

All generation endpoints return a task immediately (202 Accepted). Poll the status endpoint until the task completes:

# 1. Create task
POST /v1/music/generations → { "task_id": "abc123", "status": "pending" }

# 2. Poll until complete
GET /v1/music/generations/abc123 → { "status": "generating", ... }
GET /v1/music/generations/abc123 → { "status": "completed", "output": { ... } }

# Or use webhook callback:
POST /v1/music/generations { ..., "callback_url": "https://you.com/webhook" }