Lazybird Platform

API Reference

List Lazybird voices and generate MP3 speech from text or SSML in your own application.

Overview

The Lazybird Speech API lets you list available voices and generate MP3 speech from text or SSML.

Base URL:

Text
1https://api.lazybird.app/v1

Authentication

Create an API key from your Lazybird Studio settings, then send it with each request.

Preferred header:

HTTP
1X-API-Key: YOUR_API_KEY

You can also pass the key as an api_key query parameter when a tool cannot set headers:

Text
1https://api.lazybird.app/v1/voices?api_key=YOUR_API_KEY

Keep API keys private. Do not expose them in browser code, mobile apps, public repositories, or client-side logs.

Agent skill

When you are using an AI coding agent, install the official Lazybird API skill so the agent has the current API shape, examples, and integration gotchas available in context.

Install the Lazybird API skill
1npx skills add lazybirdai/skills --agent codex --skill lazybird-api

Quickstart

Generate speech with a known voice ID:

Generate speech
1curl -X POST "https://api.lazybird.app/v1/generate-speech" \2  -H "X-API-Key: $LAZYBIRD_API_KEY" \3  -H "Content-Type: application/json" \4  --output speech.mp3 \5  --data '{6    "voiceId": "msa.en-US.SerenaMultilingual",7    "text": "My name is Serena and I am a voice from Lazybird."8  }'

The response is an MP3 audio file. Save the response body to a file instead of trying to display it as JSON.

Check service status

HTTP
1GET /status

Returns the current API health.

Example:

Terminal
1curl "https://api.lazybird.app/v1/status"

Response:

JSON
1{2  "status": "ok"3}

List voices

HTTP
1GET /voices

Returns voices that can be used with generate-speech.

Example:

Terminal
1curl "https://api.lazybird.app/v1/voices" \2  -H "X-API-Key: $LAZYBIRD_API_KEY"

Response:

JSON
1[2  {3    "id": "msa.en-US.Jenny",4    "displayName": "Jenny",5    "language": "English (United States)",6    "gender": "Female",7    "previewText": "Hi, I am Jenny.",8    "avatar": "https://example.com/avatar.jpg"9  }10]

Use the id value as voiceId when generating speech.

Generate speech

HTTP
1POST /generate-speech

Generates speech with the selected voice and returns an MP3 audio file.

Headers:

Header Required Value
X-API-Key Yes Your Lazybird API key
Content-Type Yes application/json

Body:

Field Type Required Description
voiceId string Yes Voice ID from /voices
text string No Plain text to convert to speech
ssml string No SSML content. Use this instead of text when you need pauses or speech markup.
settings object No Optional voice settings for this generation

Provide either text or ssml.

Plain text example

Terminal
1curl -X POST "https://api.lazybird.app/v1/generate-speech" \2  -H "X-API-Key: $LAZYBIRD_API_KEY" \3  -H "Content-Type: application/json" \4  --output speech.mp3 \5  --data '{6    "voiceId": "msa.en-US.SerenaMultilingual",7    "text": "My name is Serena and I am a voice from Lazybird."8  }'

SSML example

Terminal
1curl -X POST "https://api.lazybird.app/v1/generate-speech" \2  -H "X-API-Key: $LAZYBIRD_API_KEY" \3  -H "Content-Type: application/json" \4  --output speech.mp3 \5  --data '{6    "voiceId": "msa.en-US.SerenaMultilingual",7    "ssml": "<speak>My name is Serena <break time=\"1s\"/> and I am a voice from Lazybird.</speak>"8  }'

Voice settings example

All settings fields are optional.

JSON
1{2  "voiceId": "msa.en-US.SerenaMultilingual",3  "text": "This line is slower and slightly higher pitched.",4  "settings": {5    "style": "sad",6    "speed": 0.7,7    "pitch": 1.2,8    "volume": 1,9    "styleIntensity": 110  }11}

Settings:

Field Type Description
style string Speaking style or tone, when supported by the selected voice
speed number Speech speed. 1 is normal speed.
pitch number Voice pitch. 1 is the default pitch.
volume number Output volume. 1 is the default volume.
styleIntensity number Strength of the selected speaking style

Responses

Successful generate-speech requests return an MP3 file.

HTTP
1HTTP/1.1 200 OK2Content-Type: audio/mpeg

If a request fails, check that your API key is valid, the voiceId exists, and the request includes either text or ssml.

Testing tips

  • Make API requests from a server environment, not browser code.
  • Start by calling /voices and copying a voice ID from the response.
  • Save generate-speech responses with --output speech.mp3.
  • Keep SSML valid XML. Escape quotation marks correctly when sending SSML inside JSON.