Built-in songs, characters and styles for music videos

November 10, 2026

Table of contents

  1. Request Headers
  2. Query Parameters
  3. Responses
  4. Model
  5. Examples
  6. Try It

PixVerse ships a small library for its music videos: 13 songs, 15 characters and 28 style images (as of November 2026). Pass a song’s audio_path, a character’s image_path or a style’s image_path (as style_image_path, with style: custom) straight to POST music-video/create, with nothing to upload.

The library is the same for every account. The API keeps a copy for an hour, so repeated calls are fast.

https://api.useapi.net/v2/pixverse/music-video/library/?…

Request Headers
Authorization: Bearer {API token}
Query Parameters
  • email is optional when only one account is configured. However, if you have multiple accounts configured, this parameter becomes required.

  • type is optional, songs, characters or styles to return only that list. Default: all three.

Responses
  • 200 OK

    {
        "songs": [
            {
                "name": "Street Level",
                "audio_path": "asset/music/material/audio/street_level.mp3",
                "url": "https://media.pixverse.ai/asset%2Fmusic%2Fmaterial%2Faudio%2Fstreet_level.mp3",
                "duration": 28.824
            }
        ],
        "characters": [
            {
                "name": "MVMV 1",
                "image_path": "asset/music/material/character/mvmv1.png",
                "url": "https://media.pixverse.ai/asset%2Fmusic%2Fmaterial%2Fcharacter%2Fmvmv1.png",
                "width": 1254,
                "height": 1254
            }
        ],
        "styles": [
            {
                "name": "Style 1",
                "image_path": "asset/music/material/style/style_01.png",
                "url": "https://media.pixverse.ai/asset%2Fmusic%2Fmaterial%2Fstyle%2Fstyle_01.png",
                "width": 1254,
                "height": 1254
            }
        ]
    }
    
  • 400 Bad Request

    {
      "error": "Parameter type (voices) valid values: songs,characters,styles",
      "code": 400
    }
    
  • 401 Unauthorized

    {
      "error": "Unauthorized"
    }
    
  • 596 Pending mod message

    The account has a pending error, and the API does not use it until you add it again with POST accounts/email. You receive an email when this happens. There are three causes.

    PixVerse could not sign the account in, most often because its password was changed. Add the account again with the current password.

    {
      "error": "Your PixVerse account has pending error. Please address this issue at https://useapi.net/docs/api-pixverse-v2/post-pixverse-accounts-email before making any new API calls.",
      "code": 596
    }
    

    Or PixVerse suspended the account. PixVerse suspends accounts that break its content rules and does not say which generation caused it. The first response carries PixVerse’s own details in account_moderation, and later calls return the same error. Add the account again after reinstatement_at. To ask PixVerse to lift the suspension earlier, write to the support_email it gives.

    {
      "error": "PixVerse suspended account [email protected] for 30 days, from 2026-10-16 09:26 UTC until 2026-11-15 09:26 UTC. PixVerse suspends accounts that break its content rules and does not say which generation caused it. Add the account again at https://useapi.net/docs/api-pixverse-v2/post-pixverse-accounts-email after 2026-11-15 09:26 UTC. To ask PixVerse to lift it earlier, write to [email protected].",
      "code": 596,
      "account_moderation": {
        "ban_level": "suspend_30d",
        "action": "temporary_suspend",
        "duration_days": 30,
        "suspended_at": "2026-10-16 09:26:25 (UTC)",
        "reinstatement_at": "2026-11-15 09:26:25 (UTC)",
        "support_email": "[email protected]"
      }
    }
    

    Or PixVerse banned the account for violating its community guidelines. A ban is permanent unless PixVerse accepts an appeal, and the error quotes PixVerse’s own message, which says how to appeal. Remove the account with DELETE accounts/email, or add it again only if PixVerse lifts the ban.

    {
      "error": "PixVerse banned account [email protected] for violating its community guidelines (400024). A ban is permanent unless PixVerse accepts an appeal. PixVerse says: \"Your account has been banned for violating community guidelines. If you wish to appeal, please contact us via ...\" Remove it with DELETE /v2/pixverse/accounts/[email protected], or add it again (https://useapi.net/docs/api-pixverse-v2/post-pixverse-accounts-email) only if PixVerse lifts the ban.",
      "code": 596
    }
    

    If every account you have is in this state, a request without email returns 596 as well.

Model
{ // TypeScript, all fields are optional
    songs: {
        name: string
        audio_path: string
        url: string
        duration: number
    }[]
    characters: {
        name: string
        image_path: string
        url: string
        width: number
        height: number
    }[]
    styles: {
        name: string
        image_path: string
        url: string
        width: number
        height: number
    }[]
}
Examples
  • curl "https://api.useapi.net/v2/pixverse/music-video/library/?type=songs" \
       -H "Accept: application/json" \
       -H "Authorization: Bearer …"
    
  • const token = "API token";
    const apiUrl = `https://api.useapi.net/v2/pixverse/music-video/library/?type=songs`;
    const response = await fetch(apiUrl, {
      headers: {
        "Authorization": `Bearer ${token}`,
      },
    });
    const result = await response.json();
    console.log("response", {response, result});
    
  • import requests
    token = "API token"
    apiUrl = "https://api.useapi.net/v2/pixverse/music-video/library/?type=songs"
    headers = {
        "Content-Type": "application/json",
        "Authorization" : f"Bearer {token}"
    }
    response = requests.get(apiUrl, headers=headers)
    print(response, response.json())
    
Try It