Skip to main content
POST
/
api
/
v1
/
vendors
/
{vendorId}
/
organizations
/
{organizationId}
/
llm-generation-strategies
Create LLM Generation Strategy
curl --request POST \
  --url https://app.deepslate.eu/api/v1/vendors/{vendorId}/organizations/{organizationId}/llm-generation-strategies \
  --header 'Content-Type: application/json' \
  --data '
{
  "name": "My Opal Strategy",
  "type": "phonebot-v2.1",
  "parameters": {
    "temperature": 0.2,
    "outputSampleRate": 44100,
    "voice": {
      "provider": "elevenlabs",
      "voiceId": "lcMyyd2HUfFzxdCaC4Ta",
      "modelId": "eleven_multilingual_v2",
      "speed": 1,
      "stability": 0.5,
      "similarityBoost": 0.75,
      "style": 0,
      "useSpeakerBoost": false
    },
    "vad": {
      "confidenceThreshold": 0.5,
      "minVolume": 0,
      "startDuration": 0.3,
      "stopDuration": 0.7,
      "backbufferDuration": 1
    }
  }
}
'
import requests

url = "https://app.deepslate.eu/api/v1/vendors/{vendorId}/organizations/{organizationId}/llm-generation-strategies"

payload = {
"name": "My Opal Strategy",
"type": "phonebot-v2.1",
"parameters": {
"temperature": 0.2,
"outputSampleRate": 44100,
"voice": {
"provider": "elevenlabs",
"voiceId": "lcMyyd2HUfFzxdCaC4Ta",
"modelId": "eleven_multilingual_v2",
"speed": 1,
"stability": 0.5,
"similarityBoost": 0.75,
"style": 0,
"useSpeakerBoost": False
},
"vad": {
"confidenceThreshold": 0.5,
"minVolume": 0,
"startDuration": 0.3,
"stopDuration": 0.7,
"backbufferDuration": 1
}
}
}
headers = {"Content-Type": "application/json"}

response = requests.post(url, json=payload, headers=headers)

print(response.text)
const options = {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({
name: 'My Opal Strategy',
type: 'phonebot-v2.1',
parameters: {
temperature: 0.2,
outputSampleRate: 44100,
voice: {
provider: 'elevenlabs',
voiceId: 'lcMyyd2HUfFzxdCaC4Ta',
modelId: 'eleven_multilingual_v2',
speed: 1,
stability: 0.5,
similarityBoost: 0.75,
style: 0,
useSpeakerBoost: false
},
vad: {
confidenceThreshold: 0.5,
minVolume: 0,
startDuration: 0.3,
stopDuration: 0.7,
backbufferDuration: 1
}
}
})
};

fetch('https://app.deepslate.eu/api/v1/vendors/{vendorId}/organizations/{organizationId}/llm-generation-strategies', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));
<?php

$curl = curl_init();

curl_setopt_array($curl, [
CURLOPT_URL => "https://app.deepslate.eu/api/v1/vendors/{vendorId}/organizations/{organizationId}/llm-generation-strategies",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'name' => 'My Opal Strategy',
'type' => 'phonebot-v2.1',
'parameters' => [
'temperature' => 0.2,
'outputSampleRate' => 44100,
'voice' => [
'provider' => 'elevenlabs',
'voiceId' => 'lcMyyd2HUfFzxdCaC4Ta',
'modelId' => 'eleven_multilingual_v2',
'speed' => 1,
'stability' => 0.5,
'similarityBoost' => 0.75,
'style' => 0,
'useSpeakerBoost' => false
],
'vad' => [
'confidenceThreshold' => 0.5,
'minVolume' => 0,
'startDuration' => 0.3,
'stopDuration' => 0.7,
'backbufferDuration' => 1
]
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json"
],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
package main

import (
"fmt"
"strings"
"net/http"
"io"
)

func main() {

url := "https://app.deepslate.eu/api/v1/vendors/{vendorId}/organizations/{organizationId}/llm-generation-strategies"

payload := strings.NewReader("{\n \"name\": \"My Opal Strategy\",\n \"type\": \"phonebot-v2.1\",\n \"parameters\": {\n \"temperature\": 0.2,\n \"outputSampleRate\": 44100,\n \"voice\": {\n \"provider\": \"elevenlabs\",\n \"voiceId\": \"lcMyyd2HUfFzxdCaC4Ta\",\n \"modelId\": \"eleven_multilingual_v2\",\n \"speed\": 1,\n \"stability\": 0.5,\n \"similarityBoost\": 0.75,\n \"style\": 0,\n \"useSpeakerBoost\": false\n },\n \"vad\": {\n \"confidenceThreshold\": 0.5,\n \"minVolume\": 0,\n \"startDuration\": 0.3,\n \"stopDuration\": 0.7,\n \"backbufferDuration\": 1\n }\n }\n}")

req, _ := http.NewRequest("POST", url, payload)

req.Header.Add("Content-Type", "application/json")

res, _ := http.DefaultClient.Do(req)

defer res.Body.Close()
body, _ := io.ReadAll(res.Body)

fmt.Println(string(body))

}
HttpResponse<String> response = Unirest.post("https://app.deepslate.eu/api/v1/vendors/{vendorId}/organizations/{organizationId}/llm-generation-strategies")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"My Opal Strategy\",\n \"type\": \"phonebot-v2.1\",\n \"parameters\": {\n \"temperature\": 0.2,\n \"outputSampleRate\": 44100,\n \"voice\": {\n \"provider\": \"elevenlabs\",\n \"voiceId\": \"lcMyyd2HUfFzxdCaC4Ta\",\n \"modelId\": \"eleven_multilingual_v2\",\n \"speed\": 1,\n \"stability\": 0.5,\n \"similarityBoost\": 0.75,\n \"style\": 0,\n \"useSpeakerBoost\": false\n },\n \"vad\": {\n \"confidenceThreshold\": 0.5,\n \"minVolume\": 0,\n \"startDuration\": 0.3,\n \"stopDuration\": 0.7,\n \"backbufferDuration\": 1\n }\n }\n}")
.asString();
require 'uri'
require 'net/http'

url = URI("https://app.deepslate.eu/api/v1/vendors/{vendorId}/organizations/{organizationId}/llm-generation-strategies")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"My Opal Strategy\",\n \"type\": \"phonebot-v2.1\",\n \"parameters\": {\n \"temperature\": 0.2,\n \"outputSampleRate\": 44100,\n \"voice\": {\n \"provider\": \"elevenlabs\",\n \"voiceId\": \"lcMyyd2HUfFzxdCaC4Ta\",\n \"modelId\": \"eleven_multilingual_v2\",\n \"speed\": 1,\n \"stability\": 0.5,\n \"similarityBoost\": 0.75,\n \"style\": 0,\n \"useSpeakerBoost\": false\n },\n \"vad\": {\n \"confidenceThreshold\": 0.5,\n \"minVolume\": 0,\n \"startDuration\": 0.3,\n \"stopDuration\": 0.7,\n \"backbufferDuration\": 1\n }\n }\n}"

response = http.request(request)
puts response.read_body
{
  "success": true,
  "timestamp": "2025-04-17T14:23:30Z",
  "message": "<string>",
  "data": {
    "id": "550e8400-e29b-41d4-a716-446655440000",
    "name": "My Opal Strategy",
    "type": "phonebot-v2.1",
    "parameters": {
      "temperature": 0.2,
      "outputSampleRate": 44100,
      "voice": {
        "provider": "elevenlabs",
        "voiceId": "lcMyyd2HUfFzxdCaC4Ta",
        "modelId": "eleven_multilingual_v2",
        "speed": 1,
        "stability": 0.5,
        "similarityBoost": 0.75,
        "style": 0,
        "useSpeakerBoost": false
      },
      "vad": {
        "confidenceThreshold": 0.5,
        "minVolume": 0,
        "startDuration": 0.3,
        "stopDuration": 0.7,
        "backbufferDuration": 1
      }
    },
    "organizationId": "f0e9d8c7-b6a5-4321-fedc-ba9876543210"
  },
  "traceId": "<string>"
}

Path Parameters

vendorId
string
required

ID of the Vendor (UUID)

organizationId
string
required

ID of the Organization (UUID)

Body

application/json

Strategy creation data

Request body for creating a new LLM Generation Strategy.

name
string
required

Name of the strategy.

Example:

"My Opal Strategy"

type
string
required

Type identifier of the strategy.

Example:

"phonebot-v2.1"

parameters
object
required

Type-specific configuration parameters for the strategy. Structure depends on the strategy type.

Example:
{
"temperature": 0.2,
"outputSampleRate": 44100,
"voice": {
"provider": "elevenlabs",
"voiceId": "lcMyyd2HUfFzxdCaC4Ta",
"modelId": "eleven_multilingual_v2",
"speed": 1,
"stability": 0.5,
"similarityBoost": 0.75,
"style": 0,
"useSpeakerBoost": false
},
"vad": {
"confidenceThreshold": 0.5,
"minVolume": 0,
"startDuration": 0.3,
"stopDuration": 0.7,
"backbufferDuration": 1
}
}

Response

Strategy successfully created

Standard API response wrapper

success
boolean
required

Indicates if the request was successful

Example:

true

timestamp
string<date-time>
required

Response timestamp in ISO-8601 format

Example:

"2025-04-17T14:23:30Z"

message
string

Human-readable message

data
object

Payload data object

traceId
string

Correlation or trace ID