---
title: "Produce a looping background ambiance soundscape from a text description, such as \"windy forest at dusk\" or \"busy tavern interior\". Synchronous: the call blocks until generation finishes and returns a single audio result containing a URL; there is no separate polling step. The description field is required and duration is capped at 10 seconds (0 means auto-pick based on the description). Credits are charged on success. Use this for continuous, atmospheric background loops; use createSoundEffect for short discrete sound effects, createMusic for musical pieces, and createAudioTransform to remix an existing audio sample. Pass an optional request_id to tag the result so you can locate it later via getAudioResults. Requires an API key (user scope)."
method: POST
path: "/audio/ambiance"
tags: ["Audio"]
---

# Produce a looping background ambiance soundscape from a text description, such as "windy forest at dusk" or "busy tavern interior". Synchronous: the call blocks until generation finishes and returns a single audio result containing a URL; there is no separate polling step. The description field is required and duration is capped at 10 seconds (0 means auto-pick based on the description). Credits are charged on success. Use this for continuous, atmospheric background loops; use createSoundEffect for short discrete sound effects, createMusic for musical pieces, and createAudioTransform to remix an existing audio sample. Pass an optional request_id to tag the result so you can locate it later via getAudioResults. Requires an API key (user scope).

`POST /audio/ambiance`

## Request body

- GenerateAmbiancePayload — Payload for generating a seamless looping ambiance soundscape from a text description
  - `description` string, required — Text description of the ambiance to generate (e.g., "windy forest at dusk", "busy tavern interior").
  - `duration` number, float — Duration in seconds. Use 0 for automatic duration based on the description.
  - `augment_prompt` boolean — Augment the prompt behind the scenes. Disable to have more control.
  - `request_id` string — Optional client-provided identifier for this request. Use this to retrieve results later via the results endpoint.

## Response `200`

Success

- AudioResult
  - `url` string — URL to the generated audio file
  - `type` string
  - `duration` number, float
  - `request_id` string
  - `created_at` integer

## Other responses

- `400` — Error

---

[API](https://skmtc.net/ludo/apis/ludo-ai-api.md) · [All operations](https://skmtc.net/ludo/apis/ludo-ai-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/ludo/ludo-ai-api/revisions/3af866d68651/schema)
