API Reference
Reference for the Lots of Sounds CC0 sound effects API, including authentication, search filters, responses, downloads, and error handling.
Lots of Sounds sound effects API
Lots of Sounds is a developer-first REST API for searching, previewing, and downloading CC0-licensed sound effects. It is designed for apps, games, creative tools, and AI agents that need predictable JSON and clear licensing.
curl -G https://api.lotsofsounds.com/api/v1/sounds \
-H "x-api-key: los_your_api_key_here" \
--data-urlencode "q=gentle notification chime" \
--data-urlencode "max_duration=3"Try it without an API key
The public sample endpoint returns a curated set of sounds with no authentication:
GET https://api.lotsofsounds.com/api/v1/sounds/sample.
Authentication
Send your API key in the x-api-key header. Create and manage keys in the
API Keys dashboard. Keep keys on your server and never include
them in browser or mobile application bundles.
curl "https://api.lotsofsounds.com/api/v1/sounds?q=thunder" \
-H "x-api-key: los_your_api_key_here"Endpoints
| Endpoint | Authentication | Purpose |
|---|---|---|
GET /api/v1/sounds/sample | None | Preview the response shape with curated samples |
GET /api/v1/sounds | API key | Search the catalog by text, tags, category, or duration |
GET /api/v1/sounds/{id} | API key | Retrieve metadata for one sound |
GET /api/v1/sounds/{id}/download | API key | Create a signed download URL valid for one hour |
See the interactive endpoint documentation for complete request and response schemas.
Search the catalog
Use q for natural-language search. Combine it with filters to narrow the results.
curl -G https://api.lotsofsounds.com/api/v1/sounds \
-H "x-api-key: los_your_api_key_here" \
--data-urlencode "q=retro game over" \
--data-urlencode "category=SFX" \
--data-urlencode "tags=game,retro" \
--data-urlencode "limit=5"const params = new URLSearchParams({
q: "retro game over",
category: "SFX",
tags: "game,retro",
limit: "5",
});
const response = await fetch(
`https://api.lotsofsounds.com/api/v1/sounds?${params}`,
{ headers: { "x-api-key": process.env.LOTS_OF_SOUNDS_API_KEY } }
);
if (!response.ok) throw new Error(`Lots of Sounds API: ${response.status}`);
const { data, pagination } = await response.json();import requests
response = requests.get(
"https://api.lotsofsounds.com/api/v1/sounds",
params={"q": "retro game over", "category": "SFX", "tags": "game,retro", "limit": 5},
headers={"x-api-key": "los_your_api_key_here"},
)
response.raise_for_status()
sounds = response.json()["data"]Query parameters
| Parameter | Type | Description |
|---|---|---|
q | string | Natural-language search across names and descriptions |
tags | string | Comma-separated tags using AND matching |
category | string | SFX, MUSIC, LOFI, or AMBIENT |
min_duration | number | Minimum duration in seconds |
max_duration | number | Maximum duration in seconds |
sort | string | created_at, duration, or name |
order | string | asc or desc |
page | integer | Page number, starting at 1 |
limit | integer | Results per page, up to 100 |
Response shape
{
"data": [
{
"id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"name": "Retro Game Over",
"description": "Short 8-bit fail stinger",
"tags": ["game", "8-bit", "retro"],
"duration": 1.8,
"license": "CC0",
"category": "SFX"
}
],
"pagination": {
"page": 1,
"limit": 5,
"total": 42,
"totalPages": 9
}
}Errors and rate limits
| Status | Meaning | Action |
|---|---|---|
400 | Invalid query parameter | Check parameter names and values |
401 | Missing or invalid API key | Send a valid x-api-key header |
403 | Plan does not include the operation | Review your plan or account access |
404 | Sound was not found | Verify the sound ID |
429 | Rate limit exceeded | Wait until X-RateLimit-Reset before retrying |
Use bounded exponential backoff for transient 429 and 5xx responses. Do not retry
authentication or validation errors without changing the request.
MCP and AI agents
Agents can use the same catalog through the hosted Model Context Protocol server, or call the REST API directly with tool calling. See LLM and AI agent integration for implementation patterns.
Next steps
Ready to integrate?
Get your API key and start building with thousands of sound effects and music tracks.