Schedule Stream
curl --request POST \
--url https://streaming.lingopal.ai/v1/scheduled_streams \
--header 'Content-Type: application/json' \
--header 'X-API-Key: <api-key>' \
--data '
{
"ingest_url": "<string>",
"dst_language": [
"en"
],
"src_language": "en",
"scheduled_time": "2023-11-07T05:31:56Z",
"timezone": "",
"vocals_track": "0",
"background_track": 0,
"mix": "-9,-6",
"enable_captions_708": false,
"enable_captions_608": false,
"start_wowza": false,
"use_contextual_translation": false,
"lipsync": true,
"channel_uuid": "<string>",
"is_hls_stream": false,
"stop_time": "2023-11-07T05:31:56Z"
}
'import requests
url = "https://streaming.lingopal.ai/v1/scheduled_streams"
payload = {
"ingest_url": "<string>",
"dst_language": ["en"],
"src_language": "en",
"scheduled_time": "2023-11-07T05:31:56Z",
"timezone": "",
"vocals_track": "0",
"background_track": 0,
"mix": "-9,-6",
"enable_captions_708": False,
"enable_captions_608": False,
"start_wowza": False,
"use_contextual_translation": False,
"lipsync": True,
"channel_uuid": "<string>",
"is_hls_stream": False,
"stop_time": "2023-11-07T05:31:56Z"
}
headers = {
"X-API-Key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'X-API-Key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
ingest_url: '<string>',
dst_language: ['en'],
src_language: 'en',
scheduled_time: '2023-11-07T05:31:56Z',
timezone: '',
vocals_track: '0',
background_track: 0,
mix: '-9,-6',
enable_captions_708: false,
enable_captions_608: false,
start_wowza: false,
use_contextual_translation: false,
lipsync: true,
channel_uuid: '<string>',
is_hls_stream: false,
stop_time: '2023-11-07T05:31:56Z'
})
};
fetch('https://streaming.lingopal.ai/v1/scheduled_streams', 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://streaming.lingopal.ai/v1/scheduled_streams",
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([
'ingest_url' => '<string>',
'dst_language' => [
'en'
],
'src_language' => 'en',
'scheduled_time' => '2023-11-07T05:31:56Z',
'timezone' => '',
'vocals_track' => '0',
'background_track' => 0,
'mix' => '-9,-6',
'enable_captions_708' => false,
'enable_captions_608' => false,
'start_wowza' => false,
'use_contextual_translation' => false,
'lipsync' => true,
'channel_uuid' => '<string>',
'is_hls_stream' => false,
'stop_time' => '2023-11-07T05:31:56Z'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-API-Key: <api-key>"
],
]);
$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://streaming.lingopal.ai/v1/scheduled_streams"
payload := strings.NewReader("{\n \"ingest_url\": \"<string>\",\n \"dst_language\": [\n \"en\"\n ],\n \"src_language\": \"en\",\n \"scheduled_time\": \"2023-11-07T05:31:56Z\",\n \"timezone\": \"\",\n \"vocals_track\": \"0\",\n \"background_track\": 0,\n \"mix\": \"-9,-6\",\n \"enable_captions_708\": false,\n \"enable_captions_608\": false,\n \"start_wowza\": false,\n \"use_contextual_translation\": false,\n \"lipsync\": true,\n \"channel_uuid\": \"<string>\",\n \"is_hls_stream\": false,\n \"stop_time\": \"2023-11-07T05:31:56Z\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-API-Key", "<api-key>")
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://streaming.lingopal.ai/v1/scheduled_streams")
.header("X-API-Key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"ingest_url\": \"<string>\",\n \"dst_language\": [\n \"en\"\n ],\n \"src_language\": \"en\",\n \"scheduled_time\": \"2023-11-07T05:31:56Z\",\n \"timezone\": \"\",\n \"vocals_track\": \"0\",\n \"background_track\": 0,\n \"mix\": \"-9,-6\",\n \"enable_captions_708\": false,\n \"enable_captions_608\": false,\n \"start_wowza\": false,\n \"use_contextual_translation\": false,\n \"lipsync\": true,\n \"channel_uuid\": \"<string>\",\n \"is_hls_stream\": false,\n \"stop_time\": \"2023-11-07T05:31:56Z\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://streaming.lingopal.ai/v1/scheduled_streams")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["X-API-Key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"ingest_url\": \"<string>\",\n \"dst_language\": [\n \"en\"\n ],\n \"src_language\": \"en\",\n \"scheduled_time\": \"2023-11-07T05:31:56Z\",\n \"timezone\": \"\",\n \"vocals_track\": \"0\",\n \"background_track\": 0,\n \"mix\": \"-9,-6\",\n \"enable_captions_708\": false,\n \"enable_captions_608\": false,\n \"start_wowza\": false,\n \"use_contextual_translation\": false,\n \"lipsync\": true,\n \"channel_uuid\": \"<string>\",\n \"is_hls_stream\": false,\n \"stop_time\": \"2023-11-07T05:31:56Z\"\n}"
response = http.request(request)
puts response.read_body"<string>"Streams
Schedule Stream
Schedule a stream with the provided parameters.
POST
/
v1
/
scheduled_streams
Schedule Stream
curl --request POST \
--url https://streaming.lingopal.ai/v1/scheduled_streams \
--header 'Content-Type: application/json' \
--header 'X-API-Key: <api-key>' \
--data '
{
"ingest_url": "<string>",
"dst_language": [
"en"
],
"src_language": "en",
"scheduled_time": "2023-11-07T05:31:56Z",
"timezone": "",
"vocals_track": "0",
"background_track": 0,
"mix": "-9,-6",
"enable_captions_708": false,
"enable_captions_608": false,
"start_wowza": false,
"use_contextual_translation": false,
"lipsync": true,
"channel_uuid": "<string>",
"is_hls_stream": false,
"stop_time": "2023-11-07T05:31:56Z"
}
'import requests
url = "https://streaming.lingopal.ai/v1/scheduled_streams"
payload = {
"ingest_url": "<string>",
"dst_language": ["en"],
"src_language": "en",
"scheduled_time": "2023-11-07T05:31:56Z",
"timezone": "",
"vocals_track": "0",
"background_track": 0,
"mix": "-9,-6",
"enable_captions_708": False,
"enable_captions_608": False,
"start_wowza": False,
"use_contextual_translation": False,
"lipsync": True,
"channel_uuid": "<string>",
"is_hls_stream": False,
"stop_time": "2023-11-07T05:31:56Z"
}
headers = {
"X-API-Key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'X-API-Key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
ingest_url: '<string>',
dst_language: ['en'],
src_language: 'en',
scheduled_time: '2023-11-07T05:31:56Z',
timezone: '',
vocals_track: '0',
background_track: 0,
mix: '-9,-6',
enable_captions_708: false,
enable_captions_608: false,
start_wowza: false,
use_contextual_translation: false,
lipsync: true,
channel_uuid: '<string>',
is_hls_stream: false,
stop_time: '2023-11-07T05:31:56Z'
})
};
fetch('https://streaming.lingopal.ai/v1/scheduled_streams', 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://streaming.lingopal.ai/v1/scheduled_streams",
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([
'ingest_url' => '<string>',
'dst_language' => [
'en'
],
'src_language' => 'en',
'scheduled_time' => '2023-11-07T05:31:56Z',
'timezone' => '',
'vocals_track' => '0',
'background_track' => 0,
'mix' => '-9,-6',
'enable_captions_708' => false,
'enable_captions_608' => false,
'start_wowza' => false,
'use_contextual_translation' => false,
'lipsync' => true,
'channel_uuid' => '<string>',
'is_hls_stream' => false,
'stop_time' => '2023-11-07T05:31:56Z'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-API-Key: <api-key>"
],
]);
$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://streaming.lingopal.ai/v1/scheduled_streams"
payload := strings.NewReader("{\n \"ingest_url\": \"<string>\",\n \"dst_language\": [\n \"en\"\n ],\n \"src_language\": \"en\",\n \"scheduled_time\": \"2023-11-07T05:31:56Z\",\n \"timezone\": \"\",\n \"vocals_track\": \"0\",\n \"background_track\": 0,\n \"mix\": \"-9,-6\",\n \"enable_captions_708\": false,\n \"enable_captions_608\": false,\n \"start_wowza\": false,\n \"use_contextual_translation\": false,\n \"lipsync\": true,\n \"channel_uuid\": \"<string>\",\n \"is_hls_stream\": false,\n \"stop_time\": \"2023-11-07T05:31:56Z\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-API-Key", "<api-key>")
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://streaming.lingopal.ai/v1/scheduled_streams")
.header("X-API-Key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"ingest_url\": \"<string>\",\n \"dst_language\": [\n \"en\"\n ],\n \"src_language\": \"en\",\n \"scheduled_time\": \"2023-11-07T05:31:56Z\",\n \"timezone\": \"\",\n \"vocals_track\": \"0\",\n \"background_track\": 0,\n \"mix\": \"-9,-6\",\n \"enable_captions_708\": false,\n \"enable_captions_608\": false,\n \"start_wowza\": false,\n \"use_contextual_translation\": false,\n \"lipsync\": true,\n \"channel_uuid\": \"<string>\",\n \"is_hls_stream\": false,\n \"stop_time\": \"2023-11-07T05:31:56Z\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://streaming.lingopal.ai/v1/scheduled_streams")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["X-API-Key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"ingest_url\": \"<string>\",\n \"dst_language\": [\n \"en\"\n ],\n \"src_language\": \"en\",\n \"scheduled_time\": \"2023-11-07T05:31:56Z\",\n \"timezone\": \"\",\n \"vocals_track\": \"0\",\n \"background_track\": 0,\n \"mix\": \"-9,-6\",\n \"enable_captions_708\": false,\n \"enable_captions_608\": false,\n \"start_wowza\": false,\n \"use_contextual_translation\": false,\n \"lipsync\": true,\n \"channel_uuid\": \"<string>\",\n \"is_hls_stream\": false,\n \"stop_time\": \"2023-11-07T05:31:56Z\"\n}"
response = http.request(request)
puts response.read_body"<string>"Description
This endpoint schedules a stream to start at a specific time with the provided parameters. Use this to automate stream launches for future dates and times. See the Quickstart guide for usage context.Authentication
This endpoint requires an API Key.Include your API key in the
x-api-key header:
x-api-key: YOUR_API_KEY
Request
- Method: POST
- Endpoint:
/v1/scheduled_streams - Body:
{
"ingest_url": "string",
"vocals_track": "0",
"background_track": 0,
"mix": "-9,-6",
"enable_captions_708": false,
"enable_captions_608": false,
"dst_language": ["en"],
"src_language": "en",
"start_wowza": false,
"use_contextual_translation": false,
"lipsync": true,
"channel_uuid": "string",
"is_hls_stream": false,
"scheduled_time": "2025-12-07T02:00:00Z",
"stop_time": "2025-12-07T03:00:00Z",
"timezone": "America/New_York"
}
Note: All request body fields are the same as in the Start Stream endpoint, with the addition ofscheduled_timeandtimezonefor scheduling purposes.
Request Body Parameters
| Field | Type | Required | Description |
|---|---|---|---|
| scheduled_time | string | Yes | The scheduled start time for the stream (ISO 8601 format). |
| stop_time | string | No | Optional scheduled stop time for the stream (ISO 8601). |
| timezone | string | Yes | The timezone for the scheduled time (default: “UTC”). |
Response
- Status: 200 OK
- Content-Type:
application/json
"string"
Example Usage (cURL)
curl -X POST "https://streaming.lingopal-dev.com/v1/scheduled_streams" \
-H "Content-Type: application/json" \
-H "x-api-key: YOUR_API_KEY" \
-d '{
"ingest_url": "rtmp://example.com/live",
"vocals_track": "0",
"background_track": 0,
"mix": "-9,-6",
"enable_captions_708": false,
"enable_captions_608": false,
"dst_language": ["en"],
"src_language": "en",
"start_wowza": false,
"use_contextual_translation": false,
"lipsync": true,
"channel_uuid": "your-channel-uuid",
"is_hls_stream": false,
"scheduled_time": "2025-12-07T02:00:00Z",
"stop_time": "2025-12-07T03:00:00Z",
"timezone": "America/New_York"
}'
Authorizations
Body
application/json
Scheduled start time in ISO 8601 format (e.g., 2025-12-07T02:00:00Z)
Optional scheduled stop time in ISO 8601 format
Response
200 - application/json
Successful Response
The response is of type string.
⌘I