> ## Documentation Index
> Fetch the complete documentation index at: https://docs.acedata.cloud/llms.txt
> Use this file to discover all available pages before exploring further.

# API de síntesis de voz de OpenAI (/v1/audio/speech)

> OpenAI generation API guide - Ace Data Cloud

Convierte texto en voz natural, **totalmente compatible con el `/v1/audio/speech` de OpenAI**. Cualquier SDK de OpenAI solo necesita apuntar `base_url` a `https://api.acedata.cloud` y cambiar la clave por tu AceData Token para usarlo directamente. La interfaz devuelve un flujo de bytes de audio de forma sincrónica.

* **URL de solicitud**: `POST https://api.acedata.cloud/v1/audio/speech` (alias `POST /openai/audio/speech`)
* **Autenticación**: encabezado de solicitud `Authorization: Bearer {token}`
* **Facturación**: se cobra según el número de bytes de texto de la solicitud, aproximadamente el 85% del precio oficial de OpenAI (ver tabla a continuación).

## Parámetros de solicitud

| Campo | Tipo | Requerido | Descripción |
| - | - | - | - |
| `input` | string | Sí | El texto a sintetizar. |
| `model` | string | No | `tts-1` (más rápido) o `tts-1-hd` (mejor calidad de audio, por defecto). |
| `voice` | string | No | Uno de `alloy`, `echo`, `fable`, `onyx`, `nova`, `shimmer`, por defecto `alloy`. |
| `response_format` | string | No | `mp3` (por defecto), `opus`, `aac`, `flac`, `wav`, `pcm`. |
| `speed` | number | No | Velocidad de habla 0.25–4.0, por defecto 1.0. |

## Ejemplo

```shell theme={null}
curl -X POST 'https://api.acedata.cloud/v1/audio/speech' \
  -H 'authorization: Bearer {token}' \
  -H 'content-type: application/json' \
  -o speech.mp3 \
  -d '{
    "model": "tts-1-hd",
    "input": "¿Qué pasaría si una API te diera todos los modelos de video de IA?",
    "voice": "nova",
    "response_format": "mp3"
  }'
```

La respuesta es el archivo de audio en sí (`Content-Type: audio/mpeg`), que se puede escribir directamente en `speech.mp3` para reproducir.

Usando el SDK oficial de OpenAI para Python:

```python theme={null}
from openai import OpenAI
client = OpenAI(base_url="https://api.acedata.cloud/v1", api_key="{token}")
client.audio.speech.create(model="tts-1-hd", voice="nova", input="Hola desde AceData.").stream_to_file("speech.mp3")
```

## Precios

| Modelo | Precio oficial de OpenAI | Precio en esta plataforma (aprox. 15% de descuento) |
| - | - | - |
| `tts-1` | \$15 / 1 millón de caracteres | Aproximadamente \$12.75 / 1 millón de caracteres |
| `tts-1-hd` | \$30 / 1 millón de caracteres | Aproximadamente \$25.5 / 1 millón de caracteres |

> Se cobra según el número de bytes de texto de la solicitud; el campo `official_price` muestra el precio oficial de OpenAI para comparación.

## Códigos de error

| Código de estado | código | Descripción |
| - | - | - |
| 400 | `bad_request` | `input` está vacío o los parámetros son inválidos. |
| 401 | `authentication_failed` | Token inválido. |
| 403 | `used_up` | Saldo insuficiente. |
| 429 | `too_many_requests` | Solicitudes demasiado frecuentes. |
| 500 | `api_error` | Error en upstream/interno. |


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.