curl --request POST \
--url http://localhost:8000/bot-orchestration/deploy-v2-script \
--header 'Authorization: Basic <encoded-value>' \
--header 'Content-Type: application/json' \
--data '
{
"instance_name": "<string>",
"credentials_profile": "<string>",
"image": "hummingbot/hummingbot:latest",
"script": "<string>",
"script_config": "<string>",
"headless": false
}
'import requests
url = "http://localhost:8000/bot-orchestration/deploy-v2-script"
payload = {
"instance_name": "<string>",
"credentials_profile": "<string>",
"image": "hummingbot/hummingbot:latest",
"script": "<string>",
"script_config": "<string>",
"headless": False
}
headers = {
"Authorization": "Basic <encoded-value>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Basic <encoded-value>', 'Content-Type': 'application/json'},
body: JSON.stringify({
instance_name: '<string>',
credentials_profile: '<string>',
image: 'hummingbot/hummingbot:latest',
script: '<string>',
script_config: '<string>',
headless: false
})
};
fetch('http://localhost:8000/bot-orchestration/deploy-v2-script', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_PORT => "8000",
CURLOPT_URL => "http://localhost:8000/bot-orchestration/deploy-v2-script",
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([
'instance_name' => '<string>',
'credentials_profile' => '<string>',
'image' => 'hummingbot/hummingbot:latest',
'script' => '<string>',
'script_config' => '<string>',
'headless' => false
]),
CURLOPT_HTTPHEADER => [
"Authorization: Basic <encoded-value>",
"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 := "http://localhost:8000/bot-orchestration/deploy-v2-script"
payload := strings.NewReader("{\n \"instance_name\": \"<string>\",\n \"credentials_profile\": \"<string>\",\n \"image\": \"hummingbot/hummingbot:latest\",\n \"script\": \"<string>\",\n \"script_config\": \"<string>\",\n \"headless\": false\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Basic <encoded-value>")
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("http://localhost:8000/bot-orchestration/deploy-v2-script")
.header("Authorization", "Basic <encoded-value>")
.header("Content-Type", "application/json")
.body("{\n \"instance_name\": \"<string>\",\n \"credentials_profile\": \"<string>\",\n \"image\": \"hummingbot/hummingbot:latest\",\n \"script\": \"<string>\",\n \"script_config\": \"<string>\",\n \"headless\": false\n}")
.asString();require 'uri'
require 'net/http'
url = URI("http://localhost:8000/bot-orchestration/deploy-v2-script")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Basic <encoded-value>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"instance_name\": \"<string>\",\n \"credentials_profile\": \"<string>\",\n \"image\": \"hummingbot/hummingbot:latest\",\n \"script\": \"<string>\",\n \"script_config\": \"<string>\",\n \"headless\": false\n}"
response = http.request(request)
puts response.read_body{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"input": "<unknown>",
"ctx": {}
}
]
}Deploy V2 Script
Deploy a V2 script bot with optional script configuration. This endpoint creates and starts a Hummingbot instance running the specified script.
Args: deployment: V2ScriptDeployment configuration containing instance name, credentials, optional script name and configuration docker_manager: Docker service dependency db_manager: Database manager dependency
Returns: Dictionary with deployment response including instance details
Raises: HTTPException: 500 if deployment fails
curl --request POST \
--url http://localhost:8000/bot-orchestration/deploy-v2-script \
--header 'Authorization: Basic <encoded-value>' \
--header 'Content-Type: application/json' \
--data '
{
"instance_name": "<string>",
"credentials_profile": "<string>",
"image": "hummingbot/hummingbot:latest",
"script": "<string>",
"script_config": "<string>",
"headless": false
}
'import requests
url = "http://localhost:8000/bot-orchestration/deploy-v2-script"
payload = {
"instance_name": "<string>",
"credentials_profile": "<string>",
"image": "hummingbot/hummingbot:latest",
"script": "<string>",
"script_config": "<string>",
"headless": False
}
headers = {
"Authorization": "Basic <encoded-value>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Basic <encoded-value>', 'Content-Type': 'application/json'},
body: JSON.stringify({
instance_name: '<string>',
credentials_profile: '<string>',
image: 'hummingbot/hummingbot:latest',
script: '<string>',
script_config: '<string>',
headless: false
})
};
fetch('http://localhost:8000/bot-orchestration/deploy-v2-script', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_PORT => "8000",
CURLOPT_URL => "http://localhost:8000/bot-orchestration/deploy-v2-script",
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([
'instance_name' => '<string>',
'credentials_profile' => '<string>',
'image' => 'hummingbot/hummingbot:latest',
'script' => '<string>',
'script_config' => '<string>',
'headless' => false
]),
CURLOPT_HTTPHEADER => [
"Authorization: Basic <encoded-value>",
"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 := "http://localhost:8000/bot-orchestration/deploy-v2-script"
payload := strings.NewReader("{\n \"instance_name\": \"<string>\",\n \"credentials_profile\": \"<string>\",\n \"image\": \"hummingbot/hummingbot:latest\",\n \"script\": \"<string>\",\n \"script_config\": \"<string>\",\n \"headless\": false\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Basic <encoded-value>")
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("http://localhost:8000/bot-orchestration/deploy-v2-script")
.header("Authorization", "Basic <encoded-value>")
.header("Content-Type", "application/json")
.body("{\n \"instance_name\": \"<string>\",\n \"credentials_profile\": \"<string>\",\n \"image\": \"hummingbot/hummingbot:latest\",\n \"script\": \"<string>\",\n \"script_config\": \"<string>\",\n \"headless\": false\n}")
.asString();require 'uri'
require 'net/http'
url = URI("http://localhost:8000/bot-orchestration/deploy-v2-script")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Basic <encoded-value>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"instance_name\": \"<string>\",\n \"credentials_profile\": \"<string>\",\n \"image\": \"hummingbot/hummingbot:latest\",\n \"script\": \"<string>\",\n \"script_config\": \"<string>\",\n \"headless\": false\n}"
response = http.request(request)
puts response.read_body{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"input": "<unknown>",
"ctx": {}
}
]
}Authorizations
Basic authentication header of the form Basic <encoded-value>, where <encoded-value> is the base64-encoded string username:password.
Body
Configuration for deploying a bot with a script
Unique name for the bot instance
Name of the credentials profile to use
Docker image for the Hummingbot instance
Script name to run (without .py extension)
Script configuration file name (without .yml extension)
Run in headless mode (no UI)
Response
Successful Response
Was this page helpful?

