Deepresearch Interactive Agent
curl --request POST \
--url https://chat.sambanova.ai/api/agent/deepresearch/interactive \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"prompt": "Research AI accelerator market",
"resume": false
}
'import requests
url = "https://chat.sambanova.ai/api/agent/deepresearch/interactive"
payload = {
"prompt": "Research AI accelerator market",
"resume": False
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({prompt: 'Research AI accelerator market', resume: false})
};
fetch('https://chat.sambanova.ai/api/agent/deepresearch/interactive', 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://chat.sambanova.ai/api/agent/deepresearch/interactive",
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([
'prompt' => 'Research AI accelerator market',
'resume' => false
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"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://chat.sambanova.ai/api/agent/deepresearch/interactive"
payload := strings.NewReader("{\n \"prompt\": \"Research AI accelerator market\",\n \"resume\": false\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
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://chat.sambanova.ai/api/agent/deepresearch/interactive")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"prompt\": \"Research AI accelerator market\",\n \"resume\": false\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://chat.sambanova.ai/api/agent/deepresearch/interactive")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"prompt\": \"Research AI accelerator market\",\n \"resume\": false\n}"
response = http.request(request)
puts response.read_body{
"status": "interrupt",
"thread_id": "thread-a"
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}Subagents Interactive
Deepresearch Interactive Agent
Two-step interactive deep research API: Step 1: Submit prompt, get thread_id and research plan for approval. Step 2: Submit prompt with thread_id and resume=true to get the final report.
POST
/
agent
/
deepresearch
/
interactive
Deepresearch Interactive Agent
curl --request POST \
--url https://chat.sambanova.ai/api/agent/deepresearch/interactive \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"prompt": "Research AI accelerator market",
"resume": false
}
'import requests
url = "https://chat.sambanova.ai/api/agent/deepresearch/interactive"
payload = {
"prompt": "Research AI accelerator market",
"resume": False
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({prompt: 'Research AI accelerator market', resume: false})
};
fetch('https://chat.sambanova.ai/api/agent/deepresearch/interactive', 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://chat.sambanova.ai/api/agent/deepresearch/interactive",
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([
'prompt' => 'Research AI accelerator market',
'resume' => false
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"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://chat.sambanova.ai/api/agent/deepresearch/interactive"
payload := strings.NewReader("{\n \"prompt\": \"Research AI accelerator market\",\n \"resume\": false\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
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://chat.sambanova.ai/api/agent/deepresearch/interactive")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"prompt\": \"Research AI accelerator market\",\n \"resume\": false\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://chat.sambanova.ai/api/agent/deepresearch/interactive")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"prompt\": \"Research AI accelerator market\",\n \"resume\": false\n}"
response = http.request(request)
puts response.read_body{
"status": "interrupt",
"thread_id": "thread-a"
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}Authorizations
SambaNova API Key
Body
application/json
Response
Successful Response
Unified schema for agent responses, including success and interrupt states.
status of agent gereneration
Identifier for maintaining persistent conversation or context
results description
List of generated artifact IDs (e.g., files, images, reports)
ID of a generated artifact
Optional list of file identifiers associated with the response
ID of an uploaded or generated file
Information about an interrupt event requiring user action
Show child attributes
Show child attributes

