A heavy sci-fi airlock door opening. Begins with a pressurized hiss of escaping air lasting about half a second, followed by mechanical servo motors whirring as the door slides laterally. Metal-on-metal scraping sound with a deep hydraulic clunk when the door locks into the open position. The entire sequence takes about 2 seconds. Clean recording with no background ambience — suitable for layering into a game or film sound mix.
sound-effect-v2/api/v1/elevenlabs/text_to_sound
RUN DETAILS
Model
sound-effect-v2
Provider
ElevenLabs
Service
Elevenlabs
Endpoint
Text To Sound
1. claude mcp add runapi -s user -- npx -y @runapi.ai/mcp
2. Restart Claude Code
3. Paste this prompt: Generate audio: "A heavy sci-fi airlock door opening. Begins with a pressurized hiss of escaping air lasting about half a second, followed by mechanical servo motors whirring as the door slides laterally. Metal-on-metal scraping sound with a deep hydraulic clunk when the door locks into the open position. The entire sequence takes about 2 seconds. Clean recording with no background ambience — suitable for layering into a game or film sound mix."
1. codex plugin install runapi-mcp@agents
2. Restart Codex
3. Paste this prompt: Generate audio: "A heavy sci-fi airlock door opening. Begins with a pressurized hiss of escaping air lasting about half a second, followed by mechanical servo motors whirring as the door slides laterally. Metal-on-metal scraping sound with a deep hydraulic clunk when the door locks into the open position. The entire sequence takes about 2 seconds. Clean recording with no background ambience — suitable for layering into a game or film sound mix."
1. npx @runapi.ai/mcp init cursor
2. Restart Cursor
3. Paste this prompt: Generate audio: "A heavy sci-fi airlock door opening. Begins with a pressurized hiss of escaping air lasting about half a second, followed by mechanical servo motors whirring as the door slides laterally. Metal-on-metal scraping sound with a deep hydraulic clunk when the door locks into the open position. The entire sequence takes about 2 seconds. Clean recording with no background ambience — suitable for layering into a game or film sound mix."
1. npx @runapi.ai/mcp init windsurf
2. Restart Windsurf
3. Paste this prompt: Generate audio: "A heavy sci-fi airlock door opening. Begins with a pressurized hiss of escaping air lasting about half a second, followed by mechanical servo motors whirring as the door slides laterally. Metal-on-metal scraping sound with a deep hydraulic clunk when the door locks into the open position. The entire sequence takes about 2 seconds. Clean recording with no background ambience — suitable for layering into a game or film sound mix."
curl -X POST https://runapi.ai/api/v1/elevenlabs/text_to_sound \
-H "Authorization: Bearer $RUNAPI_KEY" \
-H "Content-Type: application/json" \
--data-binary @- <<'JSON'
{
"model": "sound-effect-v2",
"text": "A heavy sci-fi airlock door opening. Begins with a pressurized hiss of escaping air lasting about half a second, followed by mechanical servo motors whirring as the door slides laterally. Metal-on-metal scraping sound with a deep hydraulic clunk when the door locks into the open position. The entire sequence takes about 2 seconds. Clean recording with no background ambience — suitable for layering into a game or film sound mix."
}
JSON
import { ElevenlabsClient } from "@runapi.ai/elevenlabs";
const client = new ElevenlabsClient({
apiKey: process.env.RUNAPI_API_KEY,
});
const result = await client.textToSound.run({
"model": "sound-effect-v2",
"text": "A heavy sci-fi airlock door opening. Begins with a pressurized hiss of escaping air lasting about half a second, followed by mechanical servo motors whirring as the door slides laterally. Metal-on-metal scraping sound with a deep hydraulic clunk when the door locks into the open position. The entire sequence takes about 2 seconds. Clean recording with no background ambience — suitable for layering into a game or film sound mix."
});
console.log(result.id);
require "runapi/elevenlabs"
client = RunApi::Elevenlabs::Client.new
result = client.text_to_sound.run(
model: "sound-effect-v2",
text: "A heavy sci-fi airlock door opening. Begins with a pressurized hiss of escaping air lasting about half a second, followed by mechanical servo motors whirring as the door slides laterally. Metal-on-metal scraping sound with a deep hydraulic clunk when the door locks into the open position. The entire sequence takes about 2 seconds. Clean recording with no background ambience — suitable for layering into a game or film sound mix."
)
puts result.id
package main
import (
"context"
"fmt"
"log"
"net/http"
"os"
"strings"
)
func main() {
body := strings.NewReader("{\"model\":\"sound-effect-v2\",\"text\":\"A heavy sci-fi airlock door opening. Begins with a pressurized hiss of escaping air lasting about half a second, followed by mechanical servo motors whirring as the door slides laterally. Metal-on-metal scraping sound with a deep hydraulic clunk when the door locks into the open position. The entire sequence takes about 2 seconds. Clean recording with no background ambience — suitable for layering into a game or film sound mix.\"}")
req, err := http.NewRequestWithContext(context.Background(), http.MethodPost, "https://runapi.ai/api/v1/elevenlabs/text_to_sound", body)
if err != nil {
log.Fatal(err)
}
req.Header.Set("Authorization", "Bearer "+os.Getenv("RUNAPI_API_KEY"))
req.Header.Set("Content-Type", "application/json")
resp, err := http.DefaultClient.Do(req)
if err != nil {
log.Fatal(err)
}
defer resp.Body.Close()
fmt.Println(resp.Status)
}
sound-effect-v2/api/v1/elevenlabs/text_to_soundGet API Key
curl -X POST https://runapi.ai/api/v1/elevenlabs/text_to_sound \
-H "Authorization: Bearer $RUNAPI_KEY" \
-H "Content-Type: application/json" \
--data-binary @- <<'JSON'
{
"model": "sound-effect-v2",
"text": "Distant thunder rumbling across a vast open plain during a summer storm, gradually building in intensity"
}
JSON
curl -X POST https://runapi.ai/api/v1/elevenlabs/text_to_sound \
-H "Authorization: Bearer $RUNAPI_KEY" \
-H "Content-Type: application/json" \
--data-binary @- <<'JSON'
{
"model": "sound-effect-v2",
"text": "Futuristic laser gun battle: rapid-fire energy blasts, ricochets, and explosions in a metal corridor"
}
JSON
FAQ
Using this sound-effect-v2 prompt
How do I copy this prompt safely?
Use the copy button beside the full prompt block. It copies only the prompt text, not surrounding page labels, so you can paste it into an agent instruction, a JSON request body, or your own prompt library.
Why does the detail page show parameters?
Some prompts were collected with saved generation settings such as aspect ratio, duration, or voice controls. When parameters exist, the page lists them separately so you can reuse the prompt text and the structured settings together.
Which endpoint should I call?
Use the endpoint path shown in the API code block. The path is generated from the prompt's RunAPI service and endpoint name, then rendered as the public API URL used by curl and SDK examples.
Can I use this prompt in an agent instead of code?
Yes. Pick Claude Code, Codex, Cursor, or Windsurf in the tab switcher, install the RunAPI MCP Server, and paste the generated instruction. The instruction includes the full prompt text.