VibeVoice API

Complete REST API documentation for Microsoft's 1.5B parameter neural voice synthesis engine. Build powerful voice applications with our comprehensive API.

REST

API Architecture

Python

SDK Available

99.9%

Uptime SLA

50+

Voice Options

API Overview

Neural Voice Synthesis API

VibeVoice API provides developers with powerful REST endpoints to integrate Microsoft's 1.5B parameter neural voice synthesis engine into their applications. Generate studio-quality voice audio programmatically with support for multiple voices, languages, and advanced synthesis options.

50+ Professional Voices - Access to our complete voice library with consistent quality

8 Language Support - Native language processing with proper pronunciation and intonation

90-Minute Continuous Synthesis - Generate long-form audio without quality degradation

Studio-Quality Audio - 48kHz/24-bit professional audio output for all applications

API Capabilities

Programmatic access to VibeVoice's advanced neural voice synthesis with enterprise-grade reliability and comprehensive documentation.

1.5B
Parameters
<200ms
Latency
99.9%
Uptime
24/7
Support

Authentication & API Keys

Get Your API Key

To use VibeVoice API, you'll need an API key. Register for a free account to get started with 1,000 free requests per month.

1

Register Account - Create your free VibeVoice API account

2

Generate API Key - Access your dashboard to create an API key

3

Start Building - Use your API key in requests immediately

Usage Example

# Include your API key in request headers
curl -X POST "https://api.vibevoice.online/v1/synthesize" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "text": "Hello, world!",
    "voice": "sarah",
    "language": "en"
  }'

Free Tier: 1,000 requests/month
Pro Tier: 100,000 requests/month
Enterprise: Custom limits

API Endpoints

POST

/v1/synthesize

Generate voice audio from text input with advanced synthesis options.

Request Parameters

text string (required)
voice string (required)
language string (optional)
speed float (optional)
format string (optional)

Response

{
  "audio_url": "https://cdn.vibevoice.online/audio/abc123.wav",
  "duration": 2.34,
  "format": "wav",
  "size": 1024000,
  "request_id": "req_abc123"
}
GET

/v1/voices

Retrieve list of available voices with language and style information.

# Get all available voices
curl -X GET "https://api.vibevoice.online/v1/voices" \
  -H "Authorization: Bearer YOUR_API_KEY"

Response Example

[
  {
    "id": "sarah",
    "name": "Sarah",
    "language": "en",
    "gender": "female",
    "style": "professional",
    "preview_url": "https://cdn.vibevoice.online/previews/sarah.mp3"
  },
  {
    "id": "marcus", 
    "name": "Marcus",
    "language": "en",
    "gender": "male",
    "style": "authoritative",
    "preview_url": "https://cdn.vibevoice.online/previews/marcus.mp3"
  }
]
POST

/v1/batch-synthesize

Generate multiple voice files in a single request for efficient batch processing.

# Batch synthesis request
curl -X POST "https://api.vibevoice.online/v1/batch-synthesize" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "requests": [
      {
        "text": "Hello, world!",
        "voice": "sarah",
        "language": "en"
      },
      {
        "text": "Bonjour le monde!",
        "voice": "sofia", 
        "language": "fr"
      }
    ]
  }'

Python SDK

Easy Integration

Our Python SDK makes it simple to integrate VibeVoice into your applications with intuitive methods and comprehensive error handling.

Installation

pip install vibevoice-sdk

Quick Example

from vibevoice import VibeVoice

# Initialize client
client = VibeVoice(api_key="your_api_key")

# Generate voice
result = client.synthesize(
    text="Hello, this is a test of VibeVoice API",
    voice="sarah",
    language="en"
)

# Save audio file
with open("output.wav", "wb") as f:
    f.write(result.audio_data)

print(f"Generated {result.duration} seconds of audio")

Advanced Features

Batch Processing

Process multiple texts simultaneously for improved efficiency

# Batch synthesis
batch_results = client.batch_synthesize([
    {"text": "Text 1", "voice": "sarah"},
    {"text": "Text 2", "voice": "marcus"}
])

Voice Management

List and manage available voices programmatically

# List voices
voices = client.list_voices(language="en")
for voice in voices:
    print(f"{voice.name}: {voice.style}")

Error Handling

Comprehensive error handling and retry logic

try:
    result = client.synthesize(text, voice)
except VibeVoiceError as e:
    print(f"API Error: {e.message}")
except RateLimitError:
    print("Rate limit exceeded")

Code Examples

Python Integration

#!/usr/bin/env python3
"""
Complete VibeVoice API integration example
"""

import os
from vibevoice import VibeVoice

def main():
    # Initialize client
    client = VibeVoice(api_key=os.getenv('VIBEVOICE_API_KEY'))
    
    # Synthesis configuration
    config = {
        'text': 'Welcome to the future of voice synthesis!',
        'voice': 'sarah',
        'language': 'en',
        'speed': 1.0,
        'format': 'wav'
    }
    
    try:
        # Generate audio
        result = client.synthesize(**config)
        
        # Save to file
        output_path = f"voice_output_{result.request_id}.wav"
        with open(output_path, 'wb') as f:
            f.write(result.audio_data)
            
        print(f"✅ Audio saved: {output_path}")
        print(f"🎵 Duration: {result.duration:.2f} seconds")
        print(f"📊 File size: {result.size:,}","ytes")
        
    except Exception as e:
        print(f"❌ Error: {str(e)}")

if __name__ == "__main__":
    main()

JavaScript/Node.js

const axios = require('axios');

class VibeVoiceClient {
    constructor(apiKey) {
        this.apiKey = apiKey;
        this.baseURL = 'https://api.vibevoice.online/v1';
    }
    
    async synthesize(text, voice, options = {}) {
        try {
            const response = await axios.post(
                `${this.baseURL}/synthesize`,
                {
                    text,
                    voice,
                    language: options.language || 'en',
                    speed: options.speed || 1.0,
                    format: options.format || 'wav'
                },
                {
                    headers: {
                        'Authorization': `Bearer ${this.apiKey}`,
                        'Content-Type': 'application/json'
                    }
                }
            );
            
            return response.data;
        } catch (error) {
            throw new Error(`Synthesis failed: ${error.message}`);
        }
    }
}

// Usage example
async function main() {
    const client = new VibeVoiceClient(process.env.VIBEVOICE_API_KEY);
    
    const result = await client.synthesize(
        'Hello from VibeVoice API!',
        'marcus',
        { language: 'en', speed: 1.1 }
    );
    
    console.log('Generated audio:', result.audio_url);
}

main().catch(console.error);

API FAQ

How do I get started with VibeVoice API?

Register for a free account to get your API key, then install our Python SDK or use REST endpoints directly. Check our authentication guide for detailed setup instructions.

Is VibeVoice API free to use?

Yes, we offer a generous free tier with 1,000 requests per month. For higher volume usage, check out our Pro and Enterprise plans with custom limits and priority support.

What audio formats are supported?

VibeVoice API supports WAV (48kHz/24-bit), MP3 (320kbps), OGG, and FLAC formats. You can specify your preferred format in the synthesis request parameters.

How many concurrent requests can I make?

Free tier: 5 concurrent requests
Pro tier: 50 concurrent requests
Enterprise: Custom limits
Upgrade your plan for higher limits.

What languages are supported?

VibeVoice API supports 8 languages: English, Chinese, Spanish, French, German, Japanese, Korean, and Arabic with native pronunciation and intonation.

Do you provide technical support?

Yes, all API users get access to our documentation and community support. Pro and Enterprise customers receive priority email support and dedicated assistance.

Related Resources