GET

/v1/schemas/runway/audio/v1/sound_effect

kind inputactivity audiohash fcd2c319…extracted Aug 15, 2026version currentsource upstream spec ↗
fieldrecorded source
schemaSource linked above.

upstream-spec

Source trace
cbe9ae85cc6ad0ff714fd5ad664993f943b9d51a6155383212951177e4bc2acb
{
  "fetchedAt": 1786771313,
  "extractorVersion": "1",
  "verifiedAt": null
}

Request body

0 properties · 0 required · 0 $defs

This schema isn’t a plain object with properties — showing the raw JSON instead.

application/json
{
  "provider": "runway",
  "activity": "audio",
  "endpointId": "v1/sound_effect",
  "kind": "input",
  "contentHash": "fcd2c3195a8575026e9913c101213159210e1ba62b8d63f40df021399901d63c",
  "specRevision": null,
  "provenance": {
    "sourceUrl": "https://raw.githubusercontent.com/runwayml/openapi/next/openapi.json",
    "sourceHash": "cbe9ae85cc6ad0ff714fd5ad664993f943b9d51a6155383212951177e4bc2acb",
    "fetchedAt": 1786771313,
    "extractorVersion": "1",
    "derivation": "upstream-spec",
    "verifiedAt": null
  },
  "createdAt": 1786771313,
  "supersededAt": null,
  "schema": {
    "$schema": "https://json-schema.org/draft/2020-12/schema",
    "oneOf": [
      {
        "title": "seed_audio",
        "type": "object",
        "properties": {
          "promptText": {
            "description": "A non-empty text prompt. For text-to-speech, the words to speak. For text-to-audio, a scene description that can include voice direction, dialogue, music, and sound effects.",
            "type": "string",
            "minLength": 1,
            "maxLength": 2048
          },
          "referenceAudios": {
            "description": "Up to three reference audio clips. When provided, reference them in promptText as @Audio1, @Audio2, and @Audio3 in order.",
            "maxItems": 3,
            "type": "array",
            "items": {
              "description": "A HTTPS URL, Runway or data URI containing an encoded audio. See [our docs](/assets/inputs#audio) on audio inputs for more information.",
              "example": "https://example.com/audio.mp3",
              "anyOf": [
                {
                  "description": "A HTTPS URL, Runway upload URI, or base64 data URI (e.g. `data:audio/mp3;base64,...`, up to 16MB) containing an encoded audio. See [our docs](/assets/inputs#audio) on audio inputs for more information.",
                  "example": "https://example.com/audio.mp3",
                  "type": "string",
                  "minLength": 13,
                  "maxLength": 2048,
                  "pattern": "^https:\\/\\/.*"
                },
                {
                  "description": "A Runway upload URI. See https://docs.dev.runwayml.com/assets/uploads for more information.",
                  "example": "runway://<token>",
                  "type": "string",
                  "minLength": 13,
                  "maxLength": 5000,
                  "pattern": "^runway:\\/\\/.*"
                },
                {
                  "description": "A data URI containing encoded media.",
                  "example": "data:image/jpeg;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR42mNk+M9QDwADhgGAWjR9awAAAABJRU5ErkJggg==",
                  "type": "string",
                  "minLength": 13,
                  "maxLength": 16777216,
                  "pattern": "^data:audio\\/.*"
                }
              ]
            }
          },
          "speechRate": {
            "description": "Relative speech speed. Negative is slower, positive is faster; 0 is normal.",
            "type": "integer",
            "minimum": -50,
            "maximum": 100
          },
          "loudnessRate": {
            "description": "Relative output loudness. Negative is quieter, positive is louder; 0 is normal.",
            "type": "integer",
            "minimum": -50,
            "maximum": 100
          },
          "pitchRate": {
            "description": "Pitch shift in semitones. Negative lowers, positive raises; 0 is unchanged.",
            "type": "integer",
            "minimum": -12,
            "maximum": 12
          },
          "sampleRate": {
            "description": "Output sample rate in Hz.",
            "type": "number",
            "enum": [
              8000,
              16000,
              24000,
              32000,
              44100,
              48000
            ]
          },
          "outputFormat": {
            "description": "Output audio container/format.",
            "type": "string",
            "enum": [
              "wav",
              "mp3",
              "ogg_opus"
            ]
          },
          "model": {
            "type": "string",
            "const": "seed_audio"
          }
        },
        "required": [
          "promptText",
          "model"
        ],
        "additionalProperties": false
      },
      {
        "title": "eleven_text_to_sound_v2",
        "type": "object",
        "properties": {
          "promptText": {
            "description": "A text description of the sound effect to generate.",
            "type": "string",
            "minLength": 1,
            "maxLength": 3000
          },
          "duration": {
            "description": "The duration of the sound effect in seconds, between 0.5 and 30 seconds. If not provided, the duration will be determined automatically based on the text description.",
            "type": "number",
            "minimum": 0.5,
            "maximum": 30
          },
          "loop": {
            "description": "Whether the output sound effect should be designed to loop seamlessly.",
            "default": false,
            "type": "boolean"
          },
          "model": {
            "type": "string",
            "const": "eleven_text_to_sound_v2"
          }
        },
        "required": [
          "promptText",
          "model"
        ]
      }
    ],
    "discriminator": {
      "propertyName": "model"
    }
  }
}

Validate a payload

before you spend tokens
shell
$ curl -X POST https://modelschemas.com/v1/validate \
    -d '{"provider":"runway","endpointId":"v1/sound_effect","payload":{…}}'
→ {"valid": false, "errors": [{"path": "#", "keyword": "required", …}]}