---
title: "Render a voice preview"
method: POST
path: "/voices/{voiceId}/preview"
---

# Render a voice preview

`POST /voices/{voiceId}/preview`

## Request

- Base URL: `https://api.lazybird.app/v1`
- URL: `https://api.lazybird.app/v1/voices/{voiceId}/preview`
- Auth: one of:
  - API key in header `X-API-Key`
  - API key in query parameter `api_key`

Returns the voice's short preview clip (the `previewText` line), rendering it on first call. Later calls return the stored clip. Rendering uses the voice owner's credits. Changing the voice language clears the preview so the next call renders it again.

## Path parameters

- `voiceId` string, required

## Response `200`

Preview clip

- object
  - `previewUrl` string, uri, required: MP3 URL
  - `duration` number: Seconds; only set when the clip was rendered by this call

## Other responses

- `400`: Invalid input
- `401`: Missing or invalid API key
- `422`: Plan limit reached (credits, voice slots or plan feature)
- `429`: Too many requests; retry after `Retry-After` seconds
- `500`: Server error

---

[API](https://skmtc.dev/lazybird/apis/lazybird-speech-api.md) · [All operations](https://skmtc.dev/lazybird/apis/lazybird-speech-api/llms.txt) · [OpenAPI document](https://skmtc.dev/lazybird/apis/lazybird-speech-api/revisions/aaa34f32852f?raw)
